oo software process model

Text-only Preview

Object-oriented Software
Engineering
Object-oriented
Process Model
TOPIC TWO
Software Engineering
1

Object-oriented Process
Model
Planning
Determine
Candidate
Risk Analysis
Classes
Communication
D
C
B
A
Look for the
Evaluation
OO Analysis &
Classes in
Design
the Library
Coding & Release
Build
Get the
New Class
Classes
A.
Initial Software Project
B.
Maintenance of New Software
Put New
C.
Enhancement of Software
Classes in
D.
Development of another interrelated system
Library
Build the nth
Iteration of
Software
Software Engineering
2

Features of the OO
Process Model

It follows an evolutionary spiral path.

By nature, it is iterative.

It supports the concept of reusability through a component-
based process in engineering.

It focuses on an architecture-centric approach by identifying
and using an architecture baseline upfront.
Software Engineering
3

Software Architecture

M. Shaw and D.Garlan [SHA95a]
- Software Architecture refers to the overall structure of the software
and the ways in which that structure provides conceptual integrity for
a system.

Rational Rose
- Software Architecture is about making decisions on how the system
will be built; it controls the iterative and incremental development of
a system throughout the life cycle
Software Engineering
4

Package

It is used as a general purpose mechanism for organizing
elements into groups.

It is a model element that can contain other model elements.

It can be used:
- to organize the model under development
- to serve as a unit of configuration management
Software Engineering
5

Subsystem

It is a concept that combines the definition of a package, ie,
it can contain other elements, and a class, ie, it has behavior
(interacts with other elements or systems).

It realizes one or more interfaces which define behavior.
Software Engineering
6

Subsystem Example
Software Engineering
7

Component

It is a replaceable, non-trivial and nearly independent part of
the system.

It fulfils a clear function in the context of a well-defined
architecture.

It may be:
- source code component
- runtime component
- executable component
Software Engineering
8

Subsystem and
Component

Components are physical realization of an abstract design.

Subsystems can be used to represent the component in the
design.
<<subsystem>>
Component Name
Component
Interface
Software Engineering
9

Component Example
Software Engineering
10