[go: up one dir, main page]

0% found this document useful (0 votes)
3 views8 pages

Object Oriented Methodolgies

Download as docx, pdf, or txt
Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1/ 8

OBJECT ORIENTED METHODOLOGIES

Object oriented methodologies are set of methods, models, and rules for
developing systems. Modeling can be done during any phase of the software life cycle
.A model is a an abstraction of a phenomenon for the purpose of understanding the
methodologies .Modeling provides means of communicating ideas which is easy to
understand the system complexity .

Object-Oriented Methodologies are widely classified into three


1.The Rumbaugh et al. OMT (Object modeling technique)
2.The Booch methodology
3. Jacobson's methodologies
A methodology is explained as the science of methods. A method is a set of
procedures in which a specific goal is approached step by step. Too min any
Methodologies have been reviewed earlier stages.
 In 1986, Booch came up with the object-oriented design concept, the Booch
method.
 In 1987,Sally Shlaer and Steve Mellor came up with the concept of the
recursive design approach.
 In 1989, Beck and Cunningham came up with class-responsibility
collaboration (CRC) cards.
 In 1990,Wirfs-Brock, Wilkerson, and Wiener came up with responsibility
driven design.
 In 1991, Peter Coad and Ed Yourdon developed the Coad lightweight and
prototype-oriented approach. In the same year Jim Rumbaugh led a team at the
research labs of General Electric to develop the object modeling technique
(OMT).
 In 1994,Ivar Jacobson introduced the concept of the use case.

These methodologies and many other forms of notational language provided


system designers and architects many choices but created a much split, competitive
and confusing environment. Also same basic concepts appeared in very different
notations, which caused confusion among users .Hence, a new evolvement of the
object oriented technologies which is called as second generation object-oriented
methods.

Advantages /Charecteristics
• The Rumbaugh et al. method is well-suited for describing the object model or static
structure of the system.
• The Jacobson et.al method is good for producing user-driven analysis models
• The Booch method detailed object-oriented design models

Rumbaugh et. al.’s Object Modeling Technique (OMT)


• OMT describes a method for the analysis, design, and implementation of a system
using an object-oriented technique.
• Class, attributes, methods, inheritance, and association also can be expressed easily
• The dynamic behavior of objects within a system can be described using OMT
Dynamic model
• Process description and consumer-producer relationships can expressed using
OMT’s Functional model

• OMT consists of four phases, which can be performed iteratively:


. Analysis. The results are objects and dynamic and functional models.
2. System design. The result is a structure of the basic architecture of the system.
3. Object design. This phase produces a design document, consisting of detailed
objects and dynamic and functional models.
4. Implementation. This activity produces reusable, extendible, and robust code.

• OMT separates modeling into three different parts:

1. An object model, presented by the object model and the data dictionary.
2. A dynamic model, presented by the state diagrams and event flow diagrams.
3. A functional model, presented by data flow and constraints.

OMT Object Model

• The object model describes the structure of objects in a system:


• Their identity , relationships to other objects, attributes, and operations
• The object model is represented graphically with an object diagram
• The object diagram contains classes interconnected by association lines
Example of an object model
 The above example provides OMT object model of a bank system. The boxes
represent classes and the filled triangle represents specialization.
 Association between Account and Transaction is one-to-many. Since one
account can have many transactions, the filled circle represents many (zero or
more).
The relationship between Client and Account classes is one-to-one. A client can
have only one account and account can belong to only one person (in this model
joint accounts are not considered )

OMT Dynamic Model


• OMT dynamic model depict states, transitions, events, and actions
• OMT state transition diagram is a network of states and events
• Each state receives one or more events, at which time it makes the transition to the
next state. Here the round boxes represent states and the arrows represent transitions

Example of a state transition for ATM Transaction


OMT Functional Model

• The OMT DFD shows the flow of data between different process in a business

• DFD use four primary symbols:

• Process is any function being performed ; For Ex, verify password or PIN in
the ATM system
• Data flow shows the direction of data element movement: foe Ex. PIN code
• Data store is a location where data are stored: for ex. Account is a data store in
the ATM example
• External entity is a source or destination of a data element; fro ex. The ATM
card Reader

The Booch Methodology

• It is a widely used object oriented method that helps us to design the


system using object paradigm.
• The Booch methodology covers the analysis and design phases of systems
development.
• Booch sometimes is criticized for his large set of symbols.
• You start with class and object diagram in the analysis phase and refine
these diagrams in various steps.

The Booch method consists of the following diagrams:

– Class diagrams
– Object diagrams
– State transition diagrams
– Module diagrams
– Process diagrams
– Interaction diagrams
Object Modeling using Booch Notation

Example : Alarm class state transition diagram with Booch notation.The arrows
represents specialization
The Booch methodology prescribes

– A macro development process serve as a controlling framework for the micro


process and can take weeks or even months. The primary concern of the macro
process is technical management of the system
– A micro development process.

The macro development process consists of the following steps:

1. Conceptualization :
 you establish the core requirements of the system
 You establish a set of goals and develop a prototype to prove the concept

2. Analysis and development of the model.


Use the class diagram to describe the roles and responsibilities objects are to carry out
in performing the desired behavior of the system .Also use the Object diagram to the
the desired behavior of the system in terms of scenarios or use the interaction diagram.

3. Design or create the system architecture.


In this phase, You use the class diagram to decide what class exist and how they relate
to each other .Object diagram to used to regulate how objects collaborate. Then use
module diagram to map out where each class and object should be declared. Process
diagram – determine to which processor to allocate a process.

4. Evolution or implementation. – refine the system through many iterations


5. Maintenance. - make localized changes the the system to add new
requirements and eliminate bugs.

Micro Development Process

Each macro development process has its own micro development process
• The micro process is a description of the day to- day activities by a single or
small group of
s/w developers
• The micro development process consists of the following steps:
1. Identify classes and objects.
2. Identify class and object semantics.
3. Identify class and object relationships.
4. Identify class and object interfaces and implementation.

The Jacobson et al. Methodologies

• The Jacobson et al. methodologies (e.g., OOBE, OOSE, and Objectory) cover the
entire life cycle and stress traceability between the different phases both forward and
backward. This traceability enables reuse of analysis and design work, possibly much
bigger factors in the reduction of development time than reuse of code.

Use Cases
• Use cases are scenarios for understanding system requirements.
• A use case is an interaction between users and a system.
• The use-case model captures the goal of the user and the responsibility of the system
to its users.

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 is exchanged. How and when the use case will store data in the system.
– Exceptions to the flow of events.
 Every single use case should describe one main flow events
 An exceptional or additional flow of events could be added
 The exceptional use case extends another use case to include the additional one
 The use-case model employs extends and uses relationships
 The extends relationship is used when you have one use case that is similar
to another use case

The uses relationships reuse common behavior in different use cases


• Use cases could be viewed as a concrete or abstract
• Abstract use case is not complete and has no actors that initiate it but is used
by another use case.
Abstract Usecase

You might also like