2 2009/10 object oriented technology 1 topic 2: introduction to object-oriented approach reference:...

17
2 2009/10 Object Oriented Technology 1 Topic 2 : Introduction to Object-Oriented Approach Reference: Ch.16 Current Trends in System Development (Satzinger: Systems Analysis & Design in a Changing World, 4 th Edition) Appendix B (C. Tsang: Object-Oriented Technology from Diagram to Code with Visual Paradigm for UML)

Upload: marian-banks

Post on 04-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:

2

2009/10 Object Oriented Technology 1

Topic 2:Introduction to

Object-Oriented Approach

Reference: Ch.16 Current Trends in System Development (Satzinger: Systems Analysis & Design in a Changing World, 4th Edition)

Appendix B (C. Tsang: Object-Oriented Technology from Diagram to Code with Visual Paradigm for UML)

Page 2: 2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:

2

2009/10 Object Oriented Technology 2

Learning Objectives

1. Describe the features and characteristics of the Unified Process (UP)

2. Recognize features of the Unified Modeling Language (UML)

Page 3: 2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:

2

2009/10 Object Oriented Technology 3

1. The Unified Process (UP)

Object-oriented system development methodology (system development process)

Offered by Rational / IBM, UP developed by Booch, Rumbaugh, and Jacobson

UP is an iterative, evolutionary and adaptive method

Project will be use-case driven and modeled using UML

Page 4: 2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:

2

2009/10 Object Oriented Technology 4

1.1 The Unified Process Life Cycle

UP life cycle Includes 4 phases which consist of iterations Iterations are “mini-projects”

Inception – develop and refine system vision Elaboration – define requirements and design

and implement core architecture Construction – continue design and

implementation of routine, less risky parts Transition – move the system into operational

mode

Page 5: 2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:

2

2009/10 Object Oriented Technology 5

The Unified Process Life Cycle (Figure 16-1)

Page 6: 2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:

2

2009/10 Object Oriented Technology 6

1.2 UP Phases and Objectives (Figure 16-2)

Page 7: 2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:

2

2009/10 Object Oriented Technology 7

1.3 The UP Disciplines

UP defines disciplines used within each phase

Discipline – set of functionally related development activities

Each iteration includes activities from all disciplines

Activities in each discipline produce artifacts – models, documents, source code, and executables

Learning CIS/MIS means learning techniques from these disciplines

Page 8: 2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:

2

2009/10 Object Oriented Technology 8

1.3 The UP Disciplines (continued)

Six main UP development disciplines

Business modeling, requirements, design, implementation, testing, and deployment

Three additional support disciplines

Project management, configuration and change management, and environment

Page 9: 2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:

2

2009/10 Object Oriented Technology 9

UP Disciplines Used in Varying Amounts in Each Iteration (Figure 16-3)

Page 10: 2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:

2

2009/10 Object Oriented Technology 10

UP Life Cycle Model Showing Phases, Iterations, and Disciplines (Figure 16-4)

Page 11: 2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:

2

2009/10 Object Oriented Technology 11

Iterative and Evolutionary

One iteration

Requirements

Design

Implementation &Test & Integration

& More Design

Final Integration & System Test

Requirements

Design

3 weeks (for example)The system grows incrementally.

Feedback from iteration N leads to refinement and adaptation of the requirements and design in iteration N+1.

Iterations are fixed in length, or timeboxed.

Time

Implementation &Test & Integration

& More Design

Final Integration & System Test

Page 12: 2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:

2

2009/10 Object Oriented Technology 12

2. The Unified Modeling Language (UML)

is a set of diagrammatic techniques, specifically tailored for object-oriented development,

has become an industry standard for modeling object-oriented systems

has been approved as a development standard by the Object Management Group

Page 13: 2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:

2

2009/10 Object Oriented Technology 13

2.1 The UML diagrams

Use case diagram Captures the requirements of the system being developed

How the system interacts with the users

Class diagram Used to describe the types of objects and their relationships

by providing a static and structural view of a system in terms of classes and relationships

Interaction diagram Two types of interaction diagrams: the sequence diagram

and the collaboration diagram

How the objects interact to achieve the functionality of a use case

Page 14: 2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:

2

2009/10 Object Oriented Technology 14

2.1 The UML diagrams (continued)

Activity diagram

Used to model workflow and computational flow

Used to elaborate the execution flow of a use case

State diagram, or state machine diagram

Represents state machines from the perspective of states and transitions, describing all the possible states that a particular object can get into and how the object’s state changes as a result of events that affect the object

Component diagram

Show the different software components of the system and the dependencies between them

Page 15: 2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:

2

2009/10 Object Oriented Technology 15

2.1 The UML diagrams (continued)

Package diagram

A package contains UML diagrams and may contain other packages, Related diagrams are usually grouped in a single package

Deployment diagram

Used to describe the runtime mapping of software components to the hardware resources (nodes)

Page 16: 2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:

2

2009/10 Object Oriented Technology 16

Relationships between the UML models

Activity Diagram

UseCase

Interaction Diagram

Class Diagram

State Diagram

elaborated by

realized by

Textual Analysis

realized by

describedbyuse

summarize

Page 17: 2 2009/10 Object Oriented Technology 1 Topic 2: Introduction to Object-Oriented Approach Reference: u Ch.16 Current Trends in System Development (Satzinger:

2

2009/10 Object Oriented Technology 17

Summary

UP is an Object-oriented system development methodology

UP projects are modeled using UML

UML specifies a variety of diagrams to capture the static, dynamic and behavioral aspects of a system