SlideShare a Scribd company logo
1 of 43
CS8592 OOAD
INTRODUCTION TO OOAD
WITH
OO BASICS
Dr.P.Mayil Vel Kumar
HOD/CSE
Karpagam Institute of Technology
CS8592 OOAD
• Object-Oriented Analysis (Overview)
– An investigation of the problem (rather than how a solution is
defined)
– During OO analysis, there is an emphasis on finding and
describing the objects (or concepts) in the problem domain.
– For example, concepts in a Library Information System include
Book, and Library.
– High level views found in the application domain.
– Oftentimes called domain objects; entitie
CS8592 OOAD
• Object-Oriented Design
– Emphasizes a conceptual solution that fulfills the
requirements.
– Need to define software objects and how they
collaborate to meet the requirements.
– For example, in the Library Information System, a
Book software object may have a title attribute and a
getChapter method.
• What are the methods needed to process the attributes?
4
From Design to Implementation
Book
title
print()
public class Book {
public void print();
private String title;
}
Book
(concept)
Analysis
investigation
of the problem
Design
logical solution
Construction
code
Domain concept Representation in
analysis of concepts
Representation in an
object-oriented
programming language.
Can you see the services / responsibilities in the Book class?
CS8592 OOAD
CS8592 OOAD
Unified Process
CS8592 OOAD
Unified Process
CS8592 OOAD
Unified Process
CS8592 OOAD
Unified Process
CS8592 OOAD
Unified Process
CS8592 OOAD
UML diagrams
There are two broad categories of diagrams and they are again divided into
subcategories −
Structural Diagrams
Behavioral Diagrams
Structural Diagrams
The structural diagrams represent the static aspect of the system. These static
aspects represent those parts of a diagram, which forms the main structure and
are therefore stable.
These static parts are represented by classes, interfaces, objects, components,
and nodes. The 3 structural diagrams are −
•Class diagram
•Component diagram
•Deployment diagram
CS8592 OOAD
UML diagrams
Class Diagram
Class diagrams are the most common diagrams used in UML. Class diagram consists of
classes, interfaces, associations, and collaboration.
Class diagrams basically represent the object-oriented view of a system, which is static
in nature Active class is used in a class diagram to represent the concurrency of the
system.
Class diagram represents the object orientation of a system. Hence, it is generally used
for development purpose. This is the most widely used diagram at the time of system
construction.
CS8592 OOAD
UML diagrams
Component Diagram
Component diagrams represent a set of components and their relationships. These
components consist of classes, interfaces, or collaborations. Component diagrams
represent the implementation view of a system.
During the design phase, software artifacts (classes, interfaces, etc.) of a system are
arranged in different groups depending upon their relationship. Now, these groups are
known as components.
Finally, it can be said component diagrams are used to visualize the implementation.
Deployment Diagram
Deployment diagrams are a set of nodes and their relationships. These nodes are physical
entities where the components are deployed.
Deployment diagrams are used for visualizing the deployment view of a system. This is
generally used by the deployment team
CS8592 OOAD
UML diagrams
Behavioral Diagrams
Any system can have two aspects, static and dynamic. So, a model is considered as
complete when both the aspects are fully covered.
Behavioral diagrams basically capture the dynamic aspect of a system. Dynamic
aspect can be further described as the changing/moving parts of a system.
UML has the following five types of behavioral diagrams −
•Use case diagram
•Sequence diagram
•Collaboration diagram
•State chart diagram
•Activity diagram
CS8592 OOAD
UML diagrams
Use Case Diagram
Use case diagrams are a set of use cases, actors, and their relationships. They represent
the use case view of a system.
A use case represents a particular functionality of a system. Hence, use case diagram is
used to describe the relationships among the functionalities and their internal/external
controllers. These controllers are known as actors.
Sequence Diagram
A sequence diagram is an interaction diagram. From the name, it is clear that the
diagram deals with some sequences, which are the sequence of messages flowing from
one object to another.
Interaction among the components of a system is very important from implementation
and execution perspective. Sequence diagram is used to visualize the sequence of calls
in a system to perform a specific functionality.
CS8592 OOAD
UML diagrams
Collaboration Diagram
Collaboration diagram is another form of interaction diagram. It represents the structural
organization of a system and the messages sent/received. Structural organization
consists of objects and links.
The purpose of collaboration diagram is similar to sequence diagram. However, the
specific purpose of collaboration diagram is to visualize the organization of objects and
their interaction.
State chart Diagram
Any real-time system is expected to be reacted by some kind of internal/external events.
These events are responsible for state change of the system.
State chart diagram is used to represent the event driven state change of a system. It
basically describes the state change of a class, interface, etc.
State chart diagram is used to visualize the reaction of a system by internal/external
factors.
CS8592 OOAD
UML diagrams
Activity Diagram
Activity diagram describes the flow of control in a system. It consists of activities
and links. The flow can be sequential, concurrent, or branched.
Activities are nothing but the functions of a system. Numbers of activity diagrams
are prepared to capture the entire flow in a system.
Activity diagrams are used to visualize the flow of controls in a system. This is
prepared to have an idea of how the system will work when executed.
CS8592 OOAD
UML diagrams
Use Case Diagrams
Introduction and importance
• Use cases are widely regarded as one of the
important artifacts needed to successfully
develop complex software systems
• Use cases define the scope of the system and
clarify the behavioral system requirements
CS8592 OOAD
UML diagrams
Use Case Diagrams
Introduction and importance
• Provide a basis for a coherent conceptual
understanding of the system under
consideration without requiring knowledge of
software design or implementation
technology
• Used as organized means of capturing domain
expertise
CS8592 OOAD
UML diagrams
Use Case Diagrams
Introduction and importance
• Can be used to track the progress of the
system development effort
• Provide means to trace requirements to the
design
• Provide the basis for developing system
acceptance tests
Use Case Driven
Req.ts Impl. Test
Use Cases bind these workflows together
Analysis Design
Use Cases Drive Iterations
• Drive a number of development activities
– Creation and validation of the system’s
architecture
– Definition of test cases and procedures
– Planning of iterations
– Creation of user documentation
– Deployment of system
• Synchronize the content of different models
Use Case Diagrams
Introduction and importance
• The identification of use cases and actors
occurs during the initial requirements
analysis phase of a project
• The use cases most essential to the
system are selected, analyzed, and
specified.
Use Case Diagrams
Introduction and importance
• These essential use cases eventually
become the basis for defining the
architecture of the system during the first
iterations of system development
• The use cases are then allocated to
iterative releases, which are planned and
eventually executed
Use Case Diagrams
Introduction and importance
• In the requirements phase of each
delivery, the use cases allocated to that
delivery are analyzed and completely
specified
• the use cases would then be realized by
domain level analysis/design using class
and interaction diagrams
Use Case Diagrams
Introduction and importance
• The domain level realization is further
refined into a detailed design that typically
employs class and interaction diagrams
and often includes state transition
diagrams and/or decision tables.
outline
• Review of development phases and UML Development – Overview
• Requirements Engineering and the Requirements model
• Introduction and importance of Use Case Diagrams
• Use Case Diagram Rules
• Examples of Use Case diagrams
• Requirements Elicitation Process
1. Identify Actors
2. Identify Scenarios
3. Identify Use Cases
4. Refine Use Cases
5. Identify Relationships between actors and Use Cases
6. Identify Initial Analysis Objects
7. Identify Non-functional requirements
Use Case Diagrams
Use Case Diagram Rules
– Use a “stick man” figure for an actor, and show
the actor’s name below the stick man
– The UML standard allows for the option of
using a class rectangle with the stereotype
«actor»
Command End
Item Hardware
User
«actor»
Sensor
<<Stereotype>>
Use Case Diagram Rules
• The only valid relationship between an actor
and another actor is generalization
User Super User
Run Applications Install Applications
A User can Run Applications.
A Super User can Install
Applications and Run
Applications, since a Super
User is a specialization of
User.
Use Case Diagram Rules
• Use only the following relationships between
use cases
– Use the include relationship to show that the
behavior of one use case is wholly and
unconditionally used in another use case
– Use the generalization relationship to show that a
use case is a specialization of another use case
Use Case Diagram Rules
• the include relationship
Perform Transaction
Send Command Receive Response
Application «include» «include»
The Perform Transaction
use case includes the
processing specified by
both the Send Command
and Receive Response
use cases.
Use Case Diagram Rules
• the generalization relationship
Validate Identity Identif y by f ingerprint scan
Identif y by retinal scan
Identif y by badge scan
Customer
Use Case Diagram Rules
• Use the extend relationship to show that one
use case conditionally augment (or extend)
the behavior of another use case.
Example of Extends relationship
Use Case Diagram Rules
• Extension points for a base use case are identified
within the specification of that base use case
• These are the locations where another use case may
extend the base use case. These extension points are
optionally shown in a diagram by listing them in a
compartment of the base use case bubble under the
heading “extension points
• The extending relationship identifies, within
parenthesis, the extension point(s) in the use case
being extended
Log In
extension pt::
Set Priv ileges
User
Grant Administrator Priv ledges
<<extends>>
(Set Priv ileges)
[Administrator Login ev ent]]
Identify, within brackets, the condition under
which the extension is executed
Example of Extends, includes, and generalization
relationships
Use Case Diagram Rules
• There must be one extension point listed for
each segment identified in the extension use
case
• Although considered optional, it is
recommended that the extending relationship
also identify, within brackets, the condition
under which the extension is executed
Examples of Use Case Diagrams
Example 1: Medical Clinic Software,
could be missing use case relations
Each use-case is described further by textual document and by
Scenarios developed using UML sequence diagrams
Example 2: E-Commerce Application (Incomplete)
Missing a link between “Place Requisition” and “Supplier”
and missing use case relationships
Customer Supplier
Bank
Browse Catalog
Confirm Shipment
Process Delivery Order
Send Invoice
Place Requisition
Confirm Delivery
Example 3: Coffee Maker, “waiting state”
Not a good name for a use-case (bad example)
Example 4: Anesthesia System
(Incomplete)
Example 5:
Automated
Air
Traffic
Control
System
(AATCS)

More Related Content

What's hot

classes & objects introduction
classes & objects introductionclasses & objects introduction
classes & objects introductionKumar
 
Uml package diagram
Uml package  diagramUml package  diagram
Uml package diagramVedaraj M
 
Class diagram
Class diagramClass diagram
Class diagramSESP123
 
The Ultimate Guide for UML Class Diagrams by Creately
The Ultimate Guide for UML Class Diagrams by CreatelyThe Ultimate Guide for UML Class Diagrams by Creately
The Ultimate Guide for UML Class Diagrams by CreatelyCreately
 
Overview of UML Diagrams
Overview of UML DiagramsOverview of UML Diagrams
Overview of UML DiagramsManish Kumar
 
Unit 2(advanced class modeling & state diagram)
Unit  2(advanced class modeling & state diagram)Unit  2(advanced class modeling & state diagram)
Unit 2(advanced class modeling & state diagram)Manoj Reddy
 
Introduction to the Unified Modeling Language (UML)
Introduction to the Unified Modeling Language (UML)Introduction to the Unified Modeling Language (UML)
Introduction to the Unified Modeling Language (UML)Marwa Ali Eissa
 
UML for OOAD
UML for OOADUML for OOAD
UML for OOADDang Tuan
 
Lecture 4-oop class diagram
Lecture 4-oop class diagramLecture 4-oop class diagram
Lecture 4-oop class diagramktuonlinenotes
 
Slide 5 Class Diagram
Slide 5 Class DiagramSlide 5 Class Diagram
Slide 5 Class DiagramNiloy Rocker
 

What's hot (19)

classes & objects introduction
classes & objects introductionclasses & objects introduction
classes & objects introduction
 
Ooad ppt
Ooad pptOoad ppt
Ooad ppt
 
Uml - An Overview
Uml - An OverviewUml - An Overview
Uml - An Overview
 
Uml package diagram
Uml package  diagramUml package  diagram
Uml package diagram
 
Class diagram
Class diagramClass diagram
Class diagram
 
The Ultimate Guide for UML Class Diagrams by Creately
The Ultimate Guide for UML Class Diagrams by CreatelyThe Ultimate Guide for UML Class Diagrams by Creately
The Ultimate Guide for UML Class Diagrams by Creately
 
Overview of UML Diagrams
Overview of UML DiagramsOverview of UML Diagrams
Overview of UML Diagrams
 
Unit 2(advanced class modeling & state diagram)
Unit  2(advanced class modeling & state diagram)Unit  2(advanced class modeling & state diagram)
Unit 2(advanced class modeling & state diagram)
 
Introduction to the Unified Modeling Language (UML)
Introduction to the Unified Modeling Language (UML)Introduction to the Unified Modeling Language (UML)
Introduction to the Unified Modeling Language (UML)
 
class diagram
class diagramclass diagram
class diagram
 
Uml class Diagram
Uml class DiagramUml class Diagram
Uml class Diagram
 
Uml
UmlUml
Uml
 
Capturing System Behaviour
Capturing System BehaviourCapturing System Behaviour
Capturing System Behaviour
 
Behavioural modelling
Behavioural modellingBehavioural modelling
Behavioural modelling
 
UML for OOAD
UML for OOADUML for OOAD
UML for OOAD
 
Lecture 4-oop class diagram
Lecture 4-oop class diagramLecture 4-oop class diagram
Lecture 4-oop class diagram
 
Slide 5 Class Diagram
Slide 5 Class DiagramSlide 5 Class Diagram
Slide 5 Class Diagram
 
Case Study Uml
Case Study UmlCase Study Uml
Case Study Uml
 
Interfaces & Packages V2
Interfaces & Packages V2Interfaces & Packages V2
Interfaces & Packages V2
 

Similar to Cs8592 ooad unit 1

8.Unified Process Modelling.ppt of software engg
8.Unified Process Modelling.ppt  of software engg8.Unified Process Modelling.ppt  of software engg
8.Unified Process Modelling.ppt of software enggSukhmanSingh91
 
CS6502 OOAD - Question Bank and Answer
CS6502 OOAD - Question Bank and AnswerCS6502 OOAD - Question Bank and Answer
CS6502 OOAD - Question Bank and AnswerGobinath Subramaniam
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologiesnaina-rani
 
Modeling software with UML
Modeling software with UMLModeling software with UML
Modeling software with UML6020 peaks
 
UNIT-3 Design Using UML (1).pptx
UNIT-3 Design Using UML (1).pptxUNIT-3 Design Using UML (1).pptx
UNIT-3 Design Using UML (1).pptxviju001
 
Ooad Overview
Ooad OverviewOoad Overview
Ooad OverviewDang Tuan
 
fdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.pptfdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.pptRAJESH S
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.docx
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.docxUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.docx
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.docxganeshkarthy
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptVGaneshKarthikeyan
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptVGaneshKarthikeyan
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptVGaneshKarthikeyan
 

Similar to Cs8592 ooad unit 1 (20)

Chapter1
Chapter1Chapter1
Chapter1
 
8.Unified Process Modelling.ppt of software engg
8.Unified Process Modelling.ppt  of software engg8.Unified Process Modelling.ppt  of software engg
8.Unified Process Modelling.ppt of software engg
 
Case stydy cs701
Case stydy cs701 Case stydy cs701
Case stydy cs701
 
Object oriented analysis and design unit- iv
Object oriented analysis and design unit- ivObject oriented analysis and design unit- iv
Object oriented analysis and design unit- iv
 
Ooad
OoadOoad
Ooad
 
CS6502 OOAD - Question Bank and Answer
CS6502 OOAD - Question Bank and AnswerCS6502 OOAD - Question Bank and Answer
CS6502 OOAD - Question Bank and Answer
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies
 
Modeling software with UML
Modeling software with UMLModeling software with UML
Modeling software with UML
 
Uml
UmlUml
Uml
 
Uml
UmlUml
Uml
 
SMD Unit ii
SMD Unit iiSMD Unit ii
SMD Unit ii
 
UNIT-3 Design Using UML (1).pptx
UNIT-3 Design Using UML (1).pptxUNIT-3 Design Using UML (1).pptx
UNIT-3 Design Using UML (1).pptx
 
Ooad Overview
Ooad OverviewOoad Overview
Ooad Overview
 
Ooad overview
Ooad overviewOoad overview
Ooad overview
 
fdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.pptfdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.ppt
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.docx
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.docxUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.docx
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.docx
 
Uml
UmlUml
Uml
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
 
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.pptUNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
 

Recently uploaded

Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionDr.Costas Sachpazis
 
chaitra-1.pptx fake news detection using machine learning
chaitra-1.pptx  fake news detection using machine learningchaitra-1.pptx  fake news detection using machine learning
chaitra-1.pptx fake news detection using machine learningmisbanausheenparvam
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2RajaP95
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSCAESB
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxPoojaBan
 
microprocessor 8085 and its interfacing
microprocessor 8085  and its interfacingmicroprocessor 8085  and its interfacing
microprocessor 8085 and its interfacingjaychoudhary37
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerAnamika Sarkar
 
Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...VICTOR MAESTRE RAMIREZ
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AIabhishek36461
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 

Recently uploaded (20)

Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
 
chaitra-1.pptx fake news detection using machine learning
chaitra-1.pptx  fake news detection using machine learningchaitra-1.pptx  fake news detection using machine learning
chaitra-1.pptx fake news detection using machine learning
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentation
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
Heart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptxHeart Disease Prediction using machine learning.pptx
Heart Disease Prediction using machine learning.pptx
 
microprocessor 8085 and its interfacing
microprocessor 8085  and its interfacingmicroprocessor 8085  and its interfacing
microprocessor 8085 and its interfacing
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
 
Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AI
 
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
VICTOR MAESTRE RAMIREZ - Planetary Defender on NASA's Double Asteroid Redirec...
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 

Cs8592 ooad unit 1

  • 1. CS8592 OOAD INTRODUCTION TO OOAD WITH OO BASICS Dr.P.Mayil Vel Kumar HOD/CSE Karpagam Institute of Technology
  • 2. CS8592 OOAD • Object-Oriented Analysis (Overview) – An investigation of the problem (rather than how a solution is defined) – During OO analysis, there is an emphasis on finding and describing the objects (or concepts) in the problem domain. – For example, concepts in a Library Information System include Book, and Library. – High level views found in the application domain. – Oftentimes called domain objects; entitie
  • 3. CS8592 OOAD • Object-Oriented Design – Emphasizes a conceptual solution that fulfills the requirements. – Need to define software objects and how they collaborate to meet the requirements. – For example, in the Library Information System, a Book software object may have a title attribute and a getChapter method. • What are the methods needed to process the attributes?
  • 4. 4 From Design to Implementation Book title print() public class Book { public void print(); private String title; } Book (concept) Analysis investigation of the problem Design logical solution Construction code Domain concept Representation in analysis of concepts Representation in an object-oriented programming language. Can you see the services / responsibilities in the Book class? CS8592 OOAD
  • 10. CS8592 OOAD UML diagrams There are two broad categories of diagrams and they are again divided into subcategories − Structural Diagrams Behavioral Diagrams Structural Diagrams The structural diagrams represent the static aspect of the system. These static aspects represent those parts of a diagram, which forms the main structure and are therefore stable. These static parts are represented by classes, interfaces, objects, components, and nodes. The 3 structural diagrams are − •Class diagram •Component diagram •Deployment diagram
  • 11. CS8592 OOAD UML diagrams Class Diagram Class diagrams are the most common diagrams used in UML. Class diagram consists of classes, interfaces, associations, and collaboration. Class diagrams basically represent the object-oriented view of a system, which is static in nature Active class is used in a class diagram to represent the concurrency of the system. Class diagram represents the object orientation of a system. Hence, it is generally used for development purpose. This is the most widely used diagram at the time of system construction.
  • 12. CS8592 OOAD UML diagrams Component Diagram Component diagrams represent a set of components and their relationships. These components consist of classes, interfaces, or collaborations. Component diagrams represent the implementation view of a system. During the design phase, software artifacts (classes, interfaces, etc.) of a system are arranged in different groups depending upon their relationship. Now, these groups are known as components. Finally, it can be said component diagrams are used to visualize the implementation. Deployment Diagram Deployment diagrams are a set of nodes and their relationships. These nodes are physical entities where the components are deployed. Deployment diagrams are used for visualizing the deployment view of a system. This is generally used by the deployment team
  • 13. CS8592 OOAD UML diagrams Behavioral Diagrams Any system can have two aspects, static and dynamic. So, a model is considered as complete when both the aspects are fully covered. Behavioral diagrams basically capture the dynamic aspect of a system. Dynamic aspect can be further described as the changing/moving parts of a system. UML has the following five types of behavioral diagrams − •Use case diagram •Sequence diagram •Collaboration diagram •State chart diagram •Activity diagram
  • 14. CS8592 OOAD UML diagrams Use Case Diagram Use case diagrams are a set of use cases, actors, and their relationships. They represent the use case view of a system. A use case represents a particular functionality of a system. Hence, use case diagram is used to describe the relationships among the functionalities and their internal/external controllers. These controllers are known as actors. Sequence Diagram A sequence diagram is an interaction diagram. From the name, it is clear that the diagram deals with some sequences, which are the sequence of messages flowing from one object to another. Interaction among the components of a system is very important from implementation and execution perspective. Sequence diagram is used to visualize the sequence of calls in a system to perform a specific functionality.
  • 15. CS8592 OOAD UML diagrams Collaboration Diagram Collaboration diagram is another form of interaction diagram. It represents the structural organization of a system and the messages sent/received. Structural organization consists of objects and links. The purpose of collaboration diagram is similar to sequence diagram. However, the specific purpose of collaboration diagram is to visualize the organization of objects and their interaction. State chart Diagram Any real-time system is expected to be reacted by some kind of internal/external events. These events are responsible for state change of the system. State chart diagram is used to represent the event driven state change of a system. It basically describes the state change of a class, interface, etc. State chart diagram is used to visualize the reaction of a system by internal/external factors.
  • 16. CS8592 OOAD UML diagrams Activity Diagram Activity diagram describes the flow of control in a system. It consists of activities and links. The flow can be sequential, concurrent, or branched. Activities are nothing but the functions of a system. Numbers of activity diagrams are prepared to capture the entire flow in a system. Activity diagrams are used to visualize the flow of controls in a system. This is prepared to have an idea of how the system will work when executed.
  • 17. CS8592 OOAD UML diagrams Use Case Diagrams Introduction and importance • Use cases are widely regarded as one of the important artifacts needed to successfully develop complex software systems • Use cases define the scope of the system and clarify the behavioral system requirements
  • 18. CS8592 OOAD UML diagrams Use Case Diagrams Introduction and importance • Provide a basis for a coherent conceptual understanding of the system under consideration without requiring knowledge of software design or implementation technology • Used as organized means of capturing domain expertise
  • 19. CS8592 OOAD UML diagrams Use Case Diagrams Introduction and importance • Can be used to track the progress of the system development effort • Provide means to trace requirements to the design • Provide the basis for developing system acceptance tests
  • 20. Use Case Driven Req.ts Impl. Test Use Cases bind these workflows together Analysis Design
  • 21. Use Cases Drive Iterations • Drive a number of development activities – Creation and validation of the system’s architecture – Definition of test cases and procedures – Planning of iterations – Creation of user documentation – Deployment of system • Synchronize the content of different models
  • 22.
  • 23. Use Case Diagrams Introduction and importance • The identification of use cases and actors occurs during the initial requirements analysis phase of a project • The use cases most essential to the system are selected, analyzed, and specified.
  • 24. Use Case Diagrams Introduction and importance • These essential use cases eventually become the basis for defining the architecture of the system during the first iterations of system development • The use cases are then allocated to iterative releases, which are planned and eventually executed
  • 25. Use Case Diagrams Introduction and importance • In the requirements phase of each delivery, the use cases allocated to that delivery are analyzed and completely specified • the use cases would then be realized by domain level analysis/design using class and interaction diagrams
  • 26. Use Case Diagrams Introduction and importance • The domain level realization is further refined into a detailed design that typically employs class and interaction diagrams and often includes state transition diagrams and/or decision tables.
  • 27. outline • Review of development phases and UML Development – Overview • Requirements Engineering and the Requirements model • Introduction and importance of Use Case Diagrams • Use Case Diagram Rules • Examples of Use Case diagrams • Requirements Elicitation Process 1. Identify Actors 2. Identify Scenarios 3. Identify Use Cases 4. Refine Use Cases 5. Identify Relationships between actors and Use Cases 6. Identify Initial Analysis Objects 7. Identify Non-functional requirements
  • 28. Use Case Diagrams Use Case Diagram Rules – Use a “stick man” figure for an actor, and show the actor’s name below the stick man – The UML standard allows for the option of using a class rectangle with the stereotype «actor» Command End Item Hardware User «actor» Sensor <<Stereotype>>
  • 29. Use Case Diagram Rules • The only valid relationship between an actor and another actor is generalization User Super User Run Applications Install Applications A User can Run Applications. A Super User can Install Applications and Run Applications, since a Super User is a specialization of User.
  • 30. Use Case Diagram Rules • Use only the following relationships between use cases – Use the include relationship to show that the behavior of one use case is wholly and unconditionally used in another use case – Use the generalization relationship to show that a use case is a specialization of another use case
  • 31. Use Case Diagram Rules • the include relationship Perform Transaction Send Command Receive Response Application «include» «include» The Perform Transaction use case includes the processing specified by both the Send Command and Receive Response use cases.
  • 32. Use Case Diagram Rules • the generalization relationship Validate Identity Identif y by f ingerprint scan Identif y by retinal scan Identif y by badge scan Customer
  • 33. Use Case Diagram Rules • Use the extend relationship to show that one use case conditionally augment (or extend) the behavior of another use case.
  • 34. Example of Extends relationship
  • 35. Use Case Diagram Rules • Extension points for a base use case are identified within the specification of that base use case • These are the locations where another use case may extend the base use case. These extension points are optionally shown in a diagram by listing them in a compartment of the base use case bubble under the heading “extension points • The extending relationship identifies, within parenthesis, the extension point(s) in the use case being extended
  • 36. Log In extension pt:: Set Priv ileges User Grant Administrator Priv ledges <<extends>> (Set Priv ileges) [Administrator Login ev ent]] Identify, within brackets, the condition under which the extension is executed
  • 37. Example of Extends, includes, and generalization relationships
  • 38. Use Case Diagram Rules • There must be one extension point listed for each segment identified in the extension use case • Although considered optional, it is recommended that the extending relationship also identify, within brackets, the condition under which the extension is executed
  • 39. Examples of Use Case Diagrams Example 1: Medical Clinic Software, could be missing use case relations Each use-case is described further by textual document and by Scenarios developed using UML sequence diagrams
  • 40. Example 2: E-Commerce Application (Incomplete) Missing a link between “Place Requisition” and “Supplier” and missing use case relationships Customer Supplier Bank Browse Catalog Confirm Shipment Process Delivery Order Send Invoice Place Requisition Confirm Delivery
  • 41. Example 3: Coffee Maker, “waiting state” Not a good name for a use-case (bad example)
  • 42. Example 4: Anesthesia System (Incomplete)