systems analysis and design with uml version 2.0, second ...miftakulamin.polsri.ac.id/adbo/ch09...

39
Systems Analysis and Systems Analysis and Systems Analysis and Systems Analysis and Design with UML Version Design with UML Version 2.0, Second Edition 2.0, Second Edition Alan Dennis, Barbara Wixom, and David Tegarden Chapter 9: Moving on to Design John Wiley & Sons, Inc. Copyright 2005 Slide 1 Copyright 2005

Upload: others

Post on 02-May-2020

11 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

Systems Analysis and Systems Analysis and Systems Analysis and Systems Analysis and Design with UML Version Design with UML Version 2.0, Second Edition2.0, Second Edition

Alan Dennis, Barbara Wixom, and David Tegardenega de

Chapter 9: Moving on to Design

John Wiley & Sons, Inc.Copyright 2005Slide 1

Copyright 2005

Page 2: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

Copyright © 2005J h Wil & S IJohn Wiley & Sons, Inc.

All rights reserved. Reproduction or translation of this All rights reserved. Reproduction or translation of this work beyond that permitted in Section 117 of the 1976 United States Copyright Act without the express written permission of the copyright owner is unlawful. p py gRequest for further information should be addressed to the Permissions Department, John Wiley & Sons, Inc. The purchaser may make back-up copies for his/her own The purchaser may make back up copies for his/her own use only and not for redistribution or resale. The Publisher assumes no responsibility for errors, omissions, or damages, caused by the use of these omissions, or damages, caused by the use of these programs or from the use of the information contained herein.

Slide 2

Page 3: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

Moving On To Design

Chapter 9

Slide 3

Page 4: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

K IdKey Ideas

The purpose of the analysis phase is The purpose of the analysis phase is to figure out what the business needs The purpose of the design needs. The purpose of the design phase is to figure out how to provide itprovide it.The steps in both analysis and d i h hi hl design phases are highly interrelated and may require much “ i b k d f th”Slide 4

“going back and forth”

Page 5: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

Obj tiObjectives■ Understand the transition from ■ Understand the transition from

analysis to design.■ Understand the use of factoring, g,

partitions, and layers.■ Be able to create package diagrams.■ Be familiar with the custom,

packaged, and outsource design alternativesalternatives.

■ Be able to create an alternative matrix.Slide 5

matrix.

Page 6: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

REVISITING THE OBJECT-ORIENTED APPROACH TO ORIENTED APPROACH TO ANALYSIS AND DESIGN

Slide 6

Page 7: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

OO Analysis and Design F d tiFoundation

Use case drivenUse-case drivenArchitecture centricIterative and incremental

Slide 7

Page 8: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

C bi i Th ViCombining Three Views

FunctionalFunctionalStaticDynamic

Slide 8

Page 9: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

A “Mi i li t” A hA “Minimalist” Approach

PlanningPlanningGathering requirementsPerform a series of “builds”Use results of each build as Use results of each build as feedback for design and implementation

Slide 9

Page 10: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

EVOLVING THE ANALYSIS MODELS INTO DESIGN MODELS INTO DESIGN MODELS

Slide 10

Page 11: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

Avoid Classic Design Mi t kMistakes

Reducing design timeReducing design timeFeature creepSilver bullet syndromeSwitching tools in mid projectSwitching tools in mid-project

Slide 11

Page 12: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

F t iFactoring

Creating modules that account for Creating modules that account for similarities and differences between units of interestunits of interestNew classes

GeneralizationAggregationgg g

AbstractingRefinementSlide 12

Refinement

Page 13: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

P i i d C ll b iPartitions and Collaborations

Creating “subsystems” or larger Creating subsystems or larger unitsG i it th t ll b tGrouping units that collaborateMay have collaboration among units or partitionsThe more messages or contracts gbetween objects, the more likely they are in the same partition

Slide 13

y p

Page 14: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

P f LPurpose of Layers

Model view controller (MVC) Model-view-controller (MVC) architecture

Models implement application logicViews and controllers do user interfaces

Separating application logic from Separating application logic from user interface logic

Slide 14

Page 15: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

LLayers

Slide 15

Page 16: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

PACKAGES AND PACKAGE PACKAGES AND PACKAGE DIAGRAMS

Slide 16

Page 17: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

P k Packages

Logical grouping of UML elementsLogical grouping of UML elementsSimplifies UML diagrams

Groups related elements into a single higher-level elementsingle higher level element

Dependency relationshipsSh d d b t Shows a dependency between packages

Slide 17

Page 18: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

Syntax for Package DiDiagram

A PACKAGE Package

A DEPENDENCY RELATIONSHIPA DEPENDENCY RELATIONSHIP

Slide 18

Page 19: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

Package Diagram of Dependency Relationships Among Layers

Slide 19

Page 20: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

M difi ti D dModification Dependency

Indicates that a change in one package Indicates that a change in one package could cause a change to be required in another package.p gExample:

A change in one method will cause the A change in one method will cause the interface for all objects of this class to change. Therefore, all classes that have objects that send messages to the instances of the modified class

ld h t b difi dSlide 20

could have to be modified.

Page 21: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

Package Diagram of A i SAppointment System

Slide 21

Page 22: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

Steps for Identifying Packages and Building Package Diagrams

Set the contextSet the contextCluster classes together based on shared relationshipsrelationshipsModel clustered classes as a packageIdentify dependency relationships among Identify dependency relationships among packagesPlace dependency relationships between Place dependency relationships between packages

Slide 22

Page 23: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

Package Diagram of the PD Layer for the Appointment System

Slide 23

Page 24: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

Slide 24

Page 25: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

Slide 25

Page 26: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

DESIGN STRATEGIES

Slide 26

Page 27: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

C t D l tCustom Development

Allows for meeting highly Allows for meeting highly specialized requirementsAll fl ibilit d ti it i Allows flexibility and creativity in solving problemsEasier to change componentsBuilds personnel skillspMay tax firm’s resourcesMay add significant riskSlide 27

May add significant risk

Page 28: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

P k d S ftPackaged SoftwareSoftware already writtenSoftware already writtenMay be more efficientMay be more thoroughly tested and proveny g y pMay range from components to tools to whole enterprise systems

f l d dMust accept functionality providedMay require change in how the firm does businessbusinessMay require significant “customization” or “workarounds”

Slide 28

Page 29: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

S t I t tiSystem Integration

The process of combining packages The process of combining packages, legacy systems, and new softwareK h ll i i t ti d tKey challenge is integrating dataWrite data in the same formatRevise existing data formatsDevelop “object wrappers”Develop object wrappers

Slide 29

Page 30: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

O t iOutsourcing

Hire external firm to create systemHire external firm to create systemMay have more skillsMay extend existing resourcesNever outsource what you don’t yunderstandCarefully choose vendorCarefully choose vendorPrepare contract and payment style carefullySlide 30

carefully

Page 31: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

O t i G id liOutsourcing GuidelinesKeep lines of communication open with Keep lines of communication open with outsourcerDefine and stabilize requirements before signing a contractsigning a contractView outsourcing relationship as partnershipSelect outsource vender carefullyAssign person to manage relationshipDon’t outsource what you don’t understandEmphasize flexible requirements long-term Emphasize flexible requirements, long term relationships, and short-term contracts

Slide 31

Page 32: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

Selecting a Design St tStrategy

Business needBusiness needIn-house experienceProject skillsProject managementProject managementTime frame

Slide 32

Page 33: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

Y TYour Turn

Suppose that your university is Suppose that your university is interested in creating a new course registration system that can support registration system that can support Web-based registration?Wh t h ld th i it id What should the university consider when determining whether to invest i t k d in a custom, packaged, or outsourcing system solution?

Slide 33

Page 34: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

DEVELOPING THE ACTUAL DEVELOPING THE ACTUAL DESIGN

Slide 34

Page 35: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

Th Alt ti t iThe Alternative matrix

Combines several feasibility Combines several feasibility analyses into one gridRevisits technical, economic, and organizational feasibilityand organizational feasibility

Slide 35

Page 36: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

R t f P lRequest for Proposals

Description of the system you Description of the system you propose to be builtVendors, developers, service providers respond with providers respond with proposals including how they will address needs as well as will address needs as well as stating cost and time eq i ements

Slide 36

requirements.

Page 37: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

Slide 37

Page 38: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

SSummaryWhen evolving analysis into design When evolving analysis into design models, it is important to review the analysis models then add system environment informationenvironment information.Packages and package diagrams help provide structure and less complex views f th tof the new system.

Custom building, packages, and outsourcing are alternative ways of outsou c g a e a te at e ays ocreating the new system.The alternative matrix can help with the selection of a design strategySlide 38

selection of a design strategy.

Page 39: Systems Analysis and Design with UML Version 2.0, Second ...miftakulamin.polsri.ac.id/adbo/ch09 Moving on to Design.pdf · When evolving analysis into design models, it is important

E di th D iExpanding the Domain

Smalltalk is an object oriented Smalltalk is an object-oriented programming language with

l l dhmany very loyal adherents. For more information check the site at:http://www smalltalk org/mainhttp://www.smalltalk.org/main.html

Slide 39