Académique Documents
Professionnel Documents
Culture Documents
Development:
Development
Using the Unified Modeling Language
Chapter 4:
Object-Oriented Methodologies
Goals
• Object-Oriented Methodologies
–The Rumbaugh et al. OMT
–Jacobson's methodologies
Goals (Con’t)
• Patterns
• Frameworks
• layered Architecture
Basic Definitions
• A methodology is explained as the
science of methods.
• A method is a set of procedures in
firstName
lastName
pinCode ClientAccount Account Transaction
CheckingAccount
Withdraw
CheckingSavingAccount
SavingsAccount
OMT Dynamic Model
No account has been selected
Select transaction
type (withdraw, Enter the amount
depos it, transfer)
Confirmation
OMT Functional Model
Data
Store
Data
Flow
Card
Reader PIN Code Process PIN Code
External
Entity
The Booch Methodology
• The Booch methodology covers the
analysis and design phases of
systems development.
• Booch sometimes is criticized for his
–Module diagrams
–Process diagrams
–Interaction diagrams
The Booch Methodology (Con’t)
Car
color
manufacturer
superclass
cost
inherits
Ford
inherits
Enabled
SoundAlarm
Silenced Sounding
SilenceAlarm
Enable Disable
AlarmFixed
Disabled
The Booch Methodology (Con’t)
model.
–3. Design or create the system
architecture.
–4. Evolution or implementation.
–5. Maintenance.
The Micro Development Process
• The micro development process
consists of the following steps:
–1. Identify classes and objects.
–2. Identify class and object semantics.
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.
Use Cases
• Use cases are scenarios for
understanding system requirements.
• A use case is an interaction between
Getting an
Interlibrary loan
Doing research
Reading books,
Member
Newspapers
Purchasing Supplies
Supplier
Object-Oriented Software
Engineering: Objectory
• Object-oriented software
engineering (OOSE), also called
Objectory, is a method of object-
oriented development with the
specific aim to fit the development
of large, real-time systems.
Objectory (Con’t)
• Objectory is built around several
different models:
–Use case model.
–Domain object model.
model.
–Test model.
Object-Oriented Business
Engineering (OOBE)
• Object-oriented business
engineering (OOBE) is object
modeling at the enterprise level.
• Use cases again are the central
Tested in
Realized by
Express in Structured by
Implemented by
OK
NOT OK
• OOBE consists of :
–Analysis phase
–Design
–Testing phase.
Patterns
• A pattern is an instructive
information that captures the
essential structure and insight of a
successful family of proven
solutions to a recurring problem
that arises within a certain context
and system of forces.
Patterns (Con’t)
• The main idea behind using
patterns is to provide
documentation to help categorize
and communicate about solutions
to recurring problems.
• The pattern has a name to facilitate
–Nonanonymous review.
presentations.
–Careful editing.
Frameworks
• A framework is a way of presenting
a generic solution to a problem
that can be applied to all levels in
a development.
• A single framework typically
than frameworks.
The Unified Approach
• The idea behind the UA is not to
introduce yet another
methodology.
• The main motivation here is to
–Object-oriented design.
prototyping.
–Continuous testing.
UA Methods and Technology
• The methods and technology
employed includes:
–Unified modeling language (UML)
used for modeling.
–Layered approach.
development.
UA Object-Oriented Analysis:
Use-Case Driven
• The use-case model captures the
user requirements.
• The objects found during analysis
Name
Address
Title
Owner Data
Workstation
Problem With the Two-Layer
Architecture
• This approach results in objects that
are very specialized and cannot be
reused easily in other projects.
Three-Layer Architecture
• Your objects are completely
independent of how:
–they are represented to the user
(through an interface) or
–how they are physically stored.
Name
Address
Tit le
Owner Data
Workstatio n
User Interface layer
This layer is typically responsible
for two major aspects of the
applications:
• Responding to user interaction
mainframe, Internet, or
file.
Access Layer
• The access layer has two major
responsibilities:
• Translate request
• Translate result
Three-Layered Architecture
Access
Layer
Business
Layer
View
Layer
Summary
• we looked at current trends in
object-oriented methodologies,
which have been toward
combining the best aspects of
today's most popular methods.
Summary (Con’t)
• Each method has its strengths.
Rumbaugh et al. have a strong method
for producing object models.
• Jacobson et al. have a strong method for