ooad unit2
Post on 10-Apr-2018
223 views
Embed Size (px)
TRANSCRIPT
8/8/2019 OOAD unit2
1/98
Unit-2
Rumbaugh Methodology Booch Methodology Jacobson Methodology Patterns Frameworks
Unified Approach Unified Modeling Language Use case class diagram Interactive Diagram
Collaboration Diagram State Diagram Activity Diagram.
8/8/2019 OOAD unit2
2/98
Chapter Objectives
You should be able to define and understand
Object Oriented methodologies.
- The Rumbaugh OMT- The Booch methodology
- Jacobsons methodologies
Patterns
Frameworks
8/8/2019 OOAD unit2
3/98
Rumbaughs Object Modeling Technique (OMT)
-A method for analysis,design and implementation by
an object oriented technique.
-fast and intuitive approach for identifying and
modeling all objects making up a system.-Class attributes, methods, inheritance and association can
be expressed easily.
-Dynamic behavior of objects can be described using
the OMT dynamic model.-Detailed specification of state transitions and their-descriptions within a system
8/8/2019 OOAD unit2
4/98
Four phases of OMT
(can be performed iteratively) Analysis: objects,dynamic and
functional models
System Design: Basic architecture ofthe system.
Object Design: static, dynamic andfunctional models of objects.
Implementation: reusable, extendibleand robust code.
8/8/2019 OOAD unit2
5/98
Three different parts of OMT
modeling An object model - object model &
data dictionary
A dynamic model - state diagrams &event flow diagrams
A functional model - data flow &
constraints
8/8/2019 OOAD unit2
6/98
Object Model structure of objects in a system.
Identity, relationships to otherobjects, attributes and operations.
Object diagram
8/8/2019 OOAD unit2
7/98
Object Diagram Classes interconnected by
association lines
Classes- a set of individual objects
Association lines- relationshipamong classes (i.e., objects of one
class to objects of another class)
8/8/2019 OOAD unit2
8/98
OMT Dynamic Model States, transitions, events and
actions
OMT state transition diagram-network of states and events
8/8/2019 OOAD unit2
9/98
OMT Functional Model DFD- (Data Flow Diagram) Shows flow of data between different
processes in a business. Simple and intuitive method for
describing business processes without
focusing on the details of computersystems.
8/8/2019 OOAD unit2
10/98
Data Flow Diagram Four primary symbols
Process- any function being performed
Data Flow- Direction of data element movement
Data Store Location where data is stored
External Entity-Source or Destinationof a data element
8/8/2019 OOAD unit2
11/98
The Booch Methodology Widely used OO method
Uses the object paradigm
Covers the design and analysisphase of an OO system
Criticized for his large set ofsymbols
8/8/2019 OOAD unit2
12/98
method Class diagrams-
describe roles and responsibilities of objects Object diagrams
describe the desired behavior of the system interms of scenarios
State transition diagrams
state of a class based on a stimulus
Module diagrams
to map out where each class & object should
be declared Process diagrams
to determine to which processor to allocate aprocess
Interaction diagramsdescribes behavior of the system in terms of
8/8/2019 OOAD unit2
13/98
Booch method prescribes: Macro Development Process
Micro Development Process
8/8/2019 OOAD unit2
14/98
Macro Development
Process Controlling framework for the
micro process.
Primary concern-technicalmanagement of the system.
8/8/2019 OOAD unit2
15/98
Steps for macro development
process1. Conceptualization
2. Analysis & Development of the model
3. Design or create the systemarchitecture
4. Evolution or implementation
5. Maintenance
8/8/2019 OOAD unit2
16/98
Micro Development ProcessEach macro process has its ownmicro development process
Steps:- Identify classes & objects
- Identify class & objects semantics
- Identify class & object relationship- Identify class & objects interface
and implementation
8/8/2019 OOAD unit2
17/98
JACOBSON METHODOLOGIES Use Cases.
Object Oriented SoftwareEngineering.
Object Oriented BusinessEngineering.
8/8/2019 OOAD unit2
18/98
Use Cases Understanding system requirements Interaction between Users and Systems The use case description must contain
How and when the use case begins and ends. The Interaction between the use case and its actors,
including when the interaction occurs and what isexchanged.
How and when the use case will need data stored inthe system.
Exception to the flow of events How and when concepts of the problem domain arehandled.
8/8/2019 OOAD unit2
19/98
OOSE Object Oriented Software
Engineering.
Objectory is built models Use case model
Domain object model
Analysis object model Implementation model
Test model
8/8/2019 OOAD unit2
20/98
OOBE Object Oriented Business
Engineering
OOBE is object modeling at theenterprise level. Analysis phase
Design and Implementation phaseTesting phase
E.g. Unit testing, integration and system
testing.
8/8/2019 OOAD unit2
21/98
PATTERNS It is an instructive information that
captures the essential structure
and insight of a successful familyof proven solutions to a recurringproblem that arises within a
certain context and system offorces.
8/8/2019 OOAD unit2
22/98
Good Pattern will do the
following It solves a problem.
It is a proven concept.
The Solution is not obvious.
It describes a relationship.
The pattern has a significanthuman component.
8/8/2019 OOAD unit2
23/98
Patterns
Patterns
Generative Patterns(describe recurring phenomena
with saying how to
reproduce them)
Non Generative Patterns(describe recurring phenomena
without saying how to
reproduce them)
8/8/2019 OOAD unit2
24/98
Patterns Template Essential Components should be clearly
recognizable on reading a pattern: Name
Problem Context Forces Solution Examples Resulting context Rationale Related Patterns Known uses
8/8/2019 OOAD unit2
25/98
Frameworks Way of delivering application
development patterns to support
best practice sharing duringapplication development.
Can be viewed as theimplementation of a system ofdesign patterns.
8/8/2019 OOAD unit2
26/98
Benefits of Frameworks Reusability
Modularity
Extensibility
Inversion of Control
8/8/2019 OOAD unit2
27/98
Difference between Patterns
and Frameworks Design patterns are more abstract
than frameworks.
Design patterns are smallerarchitectural elements thanframeworks.
Design patterns are lessspecialized than frameworks.
8/8/2019 OOAD unit2
28/98
Model An abstract representation of a
system.
Types of model1. Use case model
2. Domain model
3. Analysis object model4. Implementation model
5. Test model
8/8/2019 OOAD unit2
29/98
Model Types of model
Use case model defines the outside(actors) & inside (use case) of the
systems behavior. Domain model maps real world object
into the domain object model. Analysis object model how source code
should be carried out & written. Implementation model represents the
implementation of the system. Test model test plans, specifications &
reports.
8/8/2019 OOAD unit2
30/98
Model Model is an iterative process.
It can represent static or dynamic
situations. Model
Static Dynamic
Represents a systems behaviors
that, taken together, reflect its
behavior over time.
(e.g.) interaction & activity diagrams
Provides a systems
parameters at rest or at a
specific point in time.
(e.g.) class diagram
8/8/2019 OOAD unit2
31/98
Why modeling Blue print
Clarity
Familiarity
Maintenance
Simplification
8/8/2019 OOAD unit2
32/98
Advantages of modeling Easy to express complex ideas
Reduce complexity
Enhance & reinforce learning andtraining
Low cost
Easy to change the model
8/8/2019 OOAD unit2
33/98
What is Unified Modeling
Language (UML)? The UML is a graphical /
standard language for
visualizing, specifying,constructing & documentingthe artifacts of a software
system.
8/8/2019 OOAD unit2
34/98
History of UML 1980 1990 Many different
methodologies
Booch method by Grady Booch Object Modeling Technique (OMT) by JimRumbaugh
Object Oriented Software Engineering (OOSE) byIvar Jacobson
Each method had its strengths &weaknesses. Booch was great in design OMT & OOSE were great in analysis
8/8/2019 OOAD unit2
35/98
History of UMLUML 1.0 (Janua