0% found this document useful (0 votes)
17 views31 pages

Unit-2 Oom

The document provides an overview of Object Modeling Technique (OMT) and its applications in software modeling and design, developed by Rumbaugh and others. It discusses the Rumbaugh OMT's three main models (Object, Dynamic, Functional), Booch OMT's analysis and design phases, and Jacobson's Object-Oriented Software Engineering (OOSE) methodology. Additionally, it outlines the software engineering life cycle, including requirements engineering, object-oriented design, implementation, and various testing types.

Uploaded by

arpanpatil01574
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
17 views31 pages

Unit-2 Oom

The document provides an overview of Object Modeling Technique (OMT) and its applications in software modeling and design, developed by Rumbaugh and others. It discusses the Rumbaugh OMT's three main models (Object, Dynamic, Functional), Booch OMT's analysis and design phases, and Jacobson's Object-Oriented Software Engineering (OOSE) methodology. Additionally, it outlines the software engineering life cycle, including requirements engineering, object-oriented design, implementation, and various testing types.

Uploaded by

arpanpatil01574
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 31

UNIT-II

Unit Structure:

2.1 Introduction to OMT 2.4 Jacobson OOSE

2.2 Rumbaugh OMT 2.5 Object-oriented Software


Engineering Life Cycle
2.3 Booch OMT
Introduction to OMT

 Object Modeling Technique (OMT) is a real-world-based


modeling approach for

• software modeling and designing.

 It was developed by Rumbaugh, Blaha, Premerlani, Eddy and


Lorensen

• as a method to develop object-oriented systems,

• and to support object-oriented programming.


Introduction to OMT Contd..

 It describes the static structure of the system.

 OMT is one of the most popular object-oriented development


techniques used nowadays.
Introduction to OMT Contd..

 It is used in many applications like

• Telecommunication,

• Transportation,

• Compilers, etc.
Rumbaugh OMT

 The purposes of modeling according to Rumbaugh (1991) are:

• To test physical entities before construction (simulation) of


them.

• To make communication easier with the customers.

• To present information in an alternative way i.e.,


visualization.

• To reduce the complexity of software.


Rumbaugh OMT Contd..

 The Rumbaugh OMT has proposed three main types of models:

• Object Model

• Dynamic Model

• Functional Model
Rumbaugh OMT
(Object Model)
Object Model:

 Main concepts are classes and associations, with attributes and


operations.

 Aggregation and generalization are predefined relationships.


Rumbaugh OMT
(Dynamic Model)
Dynamic Model:

 The dynamic model represents a state/transition view on the


model.

 Main concepts are states, transitions between states, and events


to trigger transitions.

 Actions can be modeled as occurring within states.


Rumbaugh OMT
(Functional Model)
Functional model:

 The functional model handles the process of the model,

• corresponding to data flow diagrams.

 Main concepts are process, data store, data flow, and actors.

 OMT is a predecessor of the Unified Modeling Language (UML).


Booch OMT

The major phases included in Booch OMT are following:

 Analysis Phase

 Design Phase
Booch OMT
(Analysis Phase)
 The analysis phase is split into steps.

• Customer’s requirements collection

• Domain Analysis

• Validation
Booch OMT: Analysis Phase
(Customer’s Requirements Collection)
Customer’s requirements collection:

• First step is to gather the requirements from the customer


perspective.

• This analysis step generates a high-level description of the


system's function and structure.
Booch OMT: Analysis Phase
(Domain Analysis)
Domain Analysis:

 The domain analysis is done by

• defining object classes;

• their attributes, inheritance, and methods.

 State diagrams for the objects are then established.


Booch OMT: Analysis Phase
(Validation)
Validation:

 The analysis phase is completed with a validation step.

 The analysis phase iterates between

• the customer's requirements step,

• the domain analysis step,

• and the validation step until consistency is reached.


Booch OMT: Design Phase

 Once the analysis phase is completed,

• the Booch methodology develops the architecture in the


design phase.

 A prototype is created and tested.


Booch OMT: Design Phase
Contd..
 A logical design is mapped to physical design like

• Processes,

• Data types,

• Data structures,

• Visibility are defined.


Booch OMT: Design Phase
Contd..

 The design phase is iterative.

 The process iterates between

• Logical design,

• Physical design,

• Prototypes,

• and Testing.
Booch OMT: Design Phase
Contd..
 The Booch software engineering methodology is sequential in
the sense

• that the analysis phase is completed and then the design


phase is completed.

 The methodology is cyclical in the sense

• that each phase is composed of smaller cyclical steps.


Booch OMT
(Drawbacks)
Drawbacks:

 There is no explicit priority setting nor a non-monotonic control


mechanism.

 The Booch methodology concentrates on the analysis and


design phase

• and does not consider implementation or the testing


phase in much detail.
Jacobson OOSE

 Object-Oriented Software Engineering (OOSE) is a software


design technique

• that is used in software design in object-oriented


programming.

 OOSE is developed by Ivar Jacobson in 1992.


Jacobson OOSE Contd..

 OOSE is the first object-oriented design methodology

• that employs use cases in software design.


Jacobson OOSE Contd..

 It includes

• Requirements,

• Analysis,

• Design,

• Implementation,

• and a Testing model.


Object-oriented
Software Engineering Life Cycle

 Main steps in Software Engineering Life Cycle includes:

• Requirements Engineering

• Object Oriented Design

• Implementation or Coding

• Testing
Object-oriented
Software Engineering Life Cycle
(Requirements Engineering)
 Requirements Engineering:

• Requirements gathering,

• Object oriented analysis,

• and Specification.
Object-oriented
Software Engineering Life Cycle
(Object Oriented Design)
 Object Oriented Design:

• Architectural design,

• Detailed design,

• both require the transformation of functional


requirements into object oriented design elements.
Object-oriented
Software Engineering Life Cycle
(Implementation or Coding)

 Implementation or Coding:

• Programming using Object Oriented programming


languages and tools.
Object-oriented
Software Engineering Life Cycle
(Testing)
Different types of testing:

 Unit Testing

 Integration Testing

 System Testing

 Acceptance Testing
Object-oriented
Software Engineering Life Cycle Contd..
(Testing)
 Testing:

• Unit testing;

❑ To test methods within each object.

• Integration testing;

❑ To test collaborations between objects.


Object-oriented
Software Engineering Life Cycle Contd..
(Testing)
• System testing;

❑ To test the entire system as a collection of


objects.

• Acceptance testing;

❑ To test for standards and customer satisfaction.

You might also like