stems Development Life Cycle & systems development methodologies

advertisement
Asper School of Business
University of Manitoba
Systems Analysis & Design
Instructor: Bob Travica
Systems development life cycle &
development methodologies
Updated: September 2014
Outline
Systems development life cycle
 System development methodology
 Structured methodology
 Object-oriented methodology
 Objects and Classes
 Inheritance
 Specialization/Generalization
 Polymorphism

3510 Systems Analysis & Design * Bob Travica
2 of 13
Systems development life cycle (SDLC)

SDLC: process of planning, building,
using, and updating an information
system.
Plan
Use &
Maintain
Develop
3510 Systems Analysis & Design * Bob Travica
3 of 13
System development methodology

SD Methodology
Guidelines for developing system.
 Kind of knowledge.


Two kinds of methodologies
Structured (since 1970s)
 Newer ones focused on rapid
development

3510 Systems Analysis & Design * Bob Travica
4 of 13
Structured methodology
(“Waterfall”)
MAINTAIN
DURING
PRODUCTION
PHASE
*
INSTALLATION,
TESTING
Also called “Waterfall” methodology
3510 Systems Analysis & Design * Bob Travica
5 of 13
Object oriented methodology Unified Process
Project
Planning
Analysis
P
P
Installation,
Testing
Development activities are
similar to Waterfall but they
are run many times on
system parts added incrementally.
Iteration =
One run of Analysis, Design, Implementation,
Deployment within a UP phase.
A phase has 1 or more iterations.
3510 Systems Analysis & Design * Bob Travica
6 of 13
Structured vs. OO Methodology
Structured
Methodology
Object Oriented
(Unified Process)
Use of development
activities (Planning,
Analysis..)
Each activity covers a
whole phase in SDLC
All activities run in each
phase, N-times
(iterations)
Names of
development phases
Planning, Analysis,
Design, Implementation,
Installation/Testing
Inception, Elaboration,
Construction, Transition
Appropriate to use
When system goals
certain, static IT
When system goals less
certain, dynamic IT
Modeling technique
Data Flow Diagrams,
Entity-Relationship
Diagrams
Diagrams defined by
Relation to reality
Predictive
Adaptive
Unified Modeling
Language (Use Cases,
Class Diagrams…)
3510 Systems Analysis & Design * Bob Travica
7 of 13
Object – key concept

Object: Software entity with data (attributes)
and methods (associated behaviors, or
functions).


Object encapsulates data and processes.
Object’s data are private, inaccessible directly
to other objects.
Examples of objects
Problem domain objects (student,
customer)
 User interface (buttons, text boxes)

3510 Systems Analysis & Design * Bob Travica
8 of 13
Object examples
Objects are associated and interact via messages –
calls for applying some function on data (e.g., read).

3510 Systems Analysis & Design * Bob Travica
9 of 13
Class


Class: Definition of object properties.
Like a skeleton od database record plus applicable
data functions (write, read, change…).
Objects are instances of a class (e.g., Customer
object is an instance of a Customer class).
Object – An instance of class
with specified Values of
Attributes (specific data)
Class
Name
Attribute
s
Functions
3510 Systems Analysis & Design * Bob Travica
12005
09/10/2003
16/10/2003
10 of 13
Inheritance and
Specialization/Generalization

Inheritance: Property of OO systems allowing
for attributes and methods to be shared
among objects.

Reduces system development costs.

Inheritance enables a special association
between classes called
Specialization/Generalization
3510 Systems Analysis & Design * Bob Travica
11 of 13
Inheritance & Specialization/
Generalization (Cont.)
Parent class or
Super-class
• Specialization:
Subclasses inherit
attributes and operations
of the superclass, plus
have some of their own.
• Subclasses “specialize”
the superclass.
• Generalization
represented by arrows
from subclasses to
superclass.
• Class “generalizes”
attributes & methods
of subclasses.
Children classes
or Sub-classes
3510 Systems Analysis & Design * Bob Travica
12 of 13
Inheritance and Polymorphism

Polymorphism: Ability of subclasses to react
differently to the same.
Same message
”Calculate price”
triggers methods
specific to
subclasses.
3510 Systems Analysis & Design * Bob Travica
13 of 13
Download