Object Oriented - Analysis
Object Oriented - Analysis
TO
2/17/17
OBJECT OREINTED ANALYSIS (OOA)
BY:- ABDELA A.
TOPIC TO BE COVERED:
OVER VIEW OF OOAD
2/17/17
INRODUCTION TO OOA
DOMAIN ANALYSIS
OBJECT DESIGN PROCESS
2
2/17/17
SAD VS OOAD ?
3
OOAD -is popular technical approach used in
OVERVIEW OF OOAD
2/17/17
system or business by applying object
oriented paradigm and visual modeling
throughout SDLC for better communication and
product quality.
2/17/17
Language (e.g. C++, Java, smalltalk, etc).
It is the latest and most used way of design now.
UML (Unified Modeling Language) is a modeling
language for OOS.
The object-oriented S/W development Life Cycle (SDLC) consists of
three macro process.
Object-Oriented Analysis
Object-oriented Implementation 5
WHAT IS OBJECT ORIENTED DESIGN?
Emphasizes on conceptual solution that fulfills the
requirements specified in the analysis.
2/17/17
Need to define software objects and how they collaborate
to fulfill the requirements.
Designs are implemented in a Programming Language.
2/17/17
finding and describing the objectsor
conceptsin the problem domain.
2/17/17
8
ANALYSIS AND DESIGN ACTIVITIES
2/17/17
9
CONVENTIONAL VS. OO APPROACHES
2/17/17
data as components where as OOA
combine the data and process that acts
on the data into objects .
10
CONVENTIONAL VS. OO APPROACHES
2/17/17
11
OBJECT ORIENTED ANALYSIS?....
Its also called use case analysis
2/17/17
Its performed by system designer/Analyst
The objective of object-oriented analysis is:-
2/17/17
The Booch method(Produces detailed object-
oriented design methods. )
2/17/17
It covers the analysis and design phases of an object-oriented
system.
The Booch method consists of the following diagrams.
Class Diagrams.
Object Diagrams.
State Transition Diagrams.
Process Diagrams
interaction Diagrams.
Encompasses both a "micro development process and a
14
macro development process.
THE RUMBAUGH METHOD
(OMT) consists of three phase :-analysis, system
2/17/17
design, and implementation .
2/17/17
Object Oriented Software Engineering and
2/17/17
Modelling notation is relatively simple and
guidelines for developing the analysis model are
straightforward.
This method follow six steps
1. finding for class and object.
2. Define a generalization/specification
structure.
3. Define a whole/part structure.
4. Identify subjects (representations of
subsystem components). 17
5. Define attributes.
THE WIRFS-BROCK METHOD
2/17/17
not make a clear distinction between
analysis and design tasks.
2/17/17
steps:
1. Elicit customer requirements for the
system.
2. Identify scenarios or use-cases.
3. Select classes and objects using basic
requirements as a guide.
4. Identify attributes and operations for each
system object.
5. Define structures and hierarchies that
organize classes.
19
6. Build an object-relationship model.
7. Build an object-behavior model.
2/17/17
Unified Approach to OOA
20
UNIFIED MODELLING LANGUAGE (UML)
2/17/17
Rumbaugh, and Ivar Jacobson have collaborated
to combine the best features of their individual
object-oriented analysis and design methods into
a unified method.
2/17/17
This language is used for specifying, visualizing,
constructing and documenting software systems
through out the development. (Mostly object oriented
development).
UML is used to model systems build through Unified
Approach. Unified Approach combines the
methodologies of Booch, Rumbaugh and Jacobson.
22
2/17/17
23
2/17/17
24
VIEWS OF SYSTEMS IN UML
User model view. This view represents
the system (product) from the users
2/17/17
(called actors in UML)
Structural model view. Data and
functionality are viewed from inside the
system.
Behavioural model view. This part of the
analysis model represent.
Implementation model view. The
structural and behavioural aspects of the
system are represented as they are to be
25
built.
Environment model view. The structural
2/17/17
DOMAIN ANALYSIS
26
DOMAIN ANALYSIS
The objective of domain analysis is to
2/17/17
define a set of class or object that
encountered through an application
domain.
These can then reused in many application
Analysis for object-oriented systems can
occur at many different levels of
abstraction 27
DOMAIN ANALYSIS PROCESS
Software domain analysis is the
identification, analysis, and specification of
2/17/17
common requirements from a specific
application domain, typically for reuse on
multiple projects within that application
domain
28
INPUT AND OUTPUT FOR DOMAIN
ANALYSIS
2/17/17
29
2/17/17
THE OOA PROCESS
30
OOA PROCESS
2/17/17
analysis model for the object oriented
systems are:
Use case
CRC card
Defining Structures and Hierarchies
Defining Subjects and Subsystems
31
USE CASE
A use case is a methodology used in system
analysis to identify, clarify, and organize
2/17/17
system requirements.
A use case is a written description of how
users will perform tasks on your website.
It outlines, from a users point of view, a
systems behaviour as it responds to a
request.
Each use case is represented as a sequence
of simple steps, beginning with a user's goal
and ending when that goal is fulfilled 32
BENEFITS OF USE CASES
Use cases add value because they help explain
2/17/17
how the system should behave and in the
process, they also help brainstorm what could go
wrong.
They provide a list of goals and this list can be
used to establish the cost and complexity of the
system.
Project teams can then negotiate which functions
becomerequirementsand are built 33
WHEN WE???
2/17/17
34
EXAMPLE USE CASE FOR LIS
2/17/17
35
CONT. ..
A use case (or set of use cases) has these
characteristics:
2/17/17
Organizes functional requirements
Models the goals of system/actor (user)
interactions
Records paths (calledscenarios) from trigger
events to goals
Describes one main flow of events (also
called a basic course of action), and possibly
other ones, calledexceptionalflows of
events (also called alternate courses of
action) 36
CRC CARDS
CRC:- stands for Class, Responsibilities,
Collaborations
2/17/17
A brainstorming tool used in the design of
object-oriented software
a CRC card is an index card in a group
setting used to represent:
A class of objects
Their behavior
their interactions
37
CRC. ..
A collection of standard index cards that have
been divided into three sections
2/17/17
1. A class represents a collection of similar objects.
38
EXAMPLE
2/17/17
39
2/17/17
OBJECT DESIGN PROCESS
40
OBJECT DESIGN PROCESS
Object design is concerned with the detailed design
of the objects and their interactions.
2/17/17
It is completed within the overall architecture
defined during system design and according to
agreed design guidelines and protocols.
Object design is particularly concerned with the
specification of attribute types, how operations
function, and how objects are linked to other
objects.
It is at this stage that the basic concepts and
principles associated with component level design.
41
OBJECT DESIGN PROCESS
Object design includes the following phases:
2/17/17
Object identification
Object representation, i.e., construction of
design models
Classification of operations
Algorithm design
Design of relationships
Implementation of control for external
interactions
Package classes and associations into modules
42
2/17/17
THANK YOU!!
43