systems analysis and design agile iterative approach chapter 4

Upload: ulbrich

Post on 06-Jul-2018

237 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    1/49

    Systems Analysis and Design in a Changing World, 6th Edition 1

    Chapter 4

    INTRODUCTION TO

    SYSTEMS ANALYSIS AND

    DESIGN:AN AGILE, ITERATIVE APPROACH

    SATZINGE ! "AC#S$N ! %&D

    C'A(TE 4

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    2/49

    Domain Modeling

    Introd)*tion to Systems

     Analysis and Design+

     An Agile, Itera*tie Approa*h

    6th Ed

    Sat-inger, "a*.son / %)rd

    Chapter 4

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    3/49

    Introd)*tion to Systems Analysis and Design, 6th Edition 0

    Chapter 4 Outline

    Things2 in the (ro3lem Domain Data entities

    Domain *lassesThe Domain odel Class Diagram

    The Entity5elationship Diagram

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    4/49

    4

    Learning Objectives E=plain ho< the *on*ept o; things2 in the pro3lem

    domain also de;ine re>)irements

    Identi;y and analy-e data entities and domain

    *lasses needed in the system

    ead, interpret, and *reate an entity5relationshipdiagram

    ead, interpret, and *reate a domain model *lass

    diagram

    &nderstand the domain model *lass diagram ;or

    the $ Consolidated Sales and ar.eting

    System

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    5/49

    ?

    Overview

    Chapter 0 proided an oerie< o; identi;ying)se *ases to de;ine ;)n*tional re>)irements This *hapter ;o*)ses on another .ey *on*epts

    ;or de;ining re>)irements@ data entities or

    domain *lasses In the $ Tradesho< System ;rom Chapter 1,

    some domain *lasses are S)pplier, (rod)*t, andConta*t

    In this *hapters opening *ase Waiters on Call,e=amples o; domain *lasses are esta)rants,en) items, C)stomers, $rders, Driers,

     Addresses, o)tes, and (ayments

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    6/49

    6

    Things in the Problem Domain

    (ro3lem domain@the spe*i;i* area Bor domaino; the )sers 3)siness need that is

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    7/49

    Things in the Problem DomainTwo Techniques for dentif!ing them

    %rainstorming Te*hni>)e &se a *he*.list o; all o; the )s)al types o; things

    typi*ally ;o)nd and 3rainstorm to identi;y domain

    *lasses o; ea*h type

    No)n Te*hni>)e Identi;y all o; the no)ns that *ome )p

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    8/49

    "rainstorming Technique  Are there any tangi3le thingsF Are there any

    organi-ational )nitsF Siteslo*ationsF Are there in*identsor eents that need to 3e re*ordedF

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    9/49

    H

    "rainstorming Technique#

    $teps

    1: Identi;y a )ser and a set o; )se *ases7: %rainstorm

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    10/49

    18

    The %oun Technique

     A te*hni>)e to identi;y pro3lem domain *lassesBthings 3y ;inding, *lassi;ying, and re;ining alist o; no)ns that *ome )p in in dis*)ssions ordo*)ments

    (op)lar te*hni>)e: Systemati*: Does end )p

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    11/49

    11

    Partial Listof %ouns

    for &MO

    'ith notes on

    whether to

    include as

    domain class

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    12/49

    17

    The %oun Technique#

    $teps

    1: &sing the )se *ases, a*tors, and other in;ormationa3o)t the system@ in*l)ding inp)ts and o)tp)ts@identi;y all no)ns: or the $ CSS, the no)ns might in*l)de *)stomer, prod)*t item,

    sale, *on;irmation, transa*tion, shipping, 3an., *hange re>)est,s)mmary report, management, transa*tion report, a**o)nting, 3a*.

    order, 3a*. order noti;i*ation, ret)rn, ret)rn *on;irmationJ

    7: &sing other in;ormation ;rom e=isting systems, *)rrentpro*ed)res, and *)rrent reports or ;orms, add items or*ategories o; in;ormation needed: 

    or the $ CSS, these might in*l)de pri*e, si-e, *olor, style,season, inentory >)antity, payment method, and shipping address:

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    13/49

    10

    The %oun Technique#

    $teps (continued)

    0:  As this list o; no)ns 3)ilds, re;ine it: As. these>)estions a3o)t ea*h no)n to help yo) de*ide )e thing the system needs to .no< a3o)tF Is it inside the s*ope o; the system I am )estions to de*ide to e=*l)de it+ Is it really a synonym ;or some other thing I hae identi;iedF Is it really K)st an o)tp)t o; the system prod)*ed ;rom other

    in;ormation I hae identi;iedF Is it really K)st an inp)t that res)lts in re*ording some other in;ormation

    I hae identi;iedF As. these >)estions to resear*h it+ Is it li.ely to 3e a spe*i;i* pie*e o; in;ormation Battri3)te a3o)t some

    other thing I hae identi;iedF Is it something I might need i; ass)mptions *hangeF

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    14/49

    14

    The %oun Technique#

    $teps (continued)

    4: Create a master list o; all no)ns identi;ied and thennote

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    15/49

    1?

    Details about Domain Classes

     Attri3)te@ des*ri3es one pie*e o; in;ormationa3o)t ea*h instan*e o; the *lass C)stomer has ;irst name, last name, phone n)m3er 

    Identi;ier or .ey $ne attri3)te )ni>)ely identi;ies an instan*e o; the

    *lass: e>)ired ;or data entities, optional ;or domain*lasses: C)stomer ID identi;ies a *)stomer 

    Compo)nd attri3)te T

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    16/49

    16

    *ttributes and +alues

    Class is a type o; thing: $3Ke*t is a spe*i;i* instan*e o; the *lass:

    Ea*h instan*e has its o

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    17/49

    1

    *ssociations *mong Things

     Asso*iation@ a nat)rally o**)rring relationship3et

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    18/49

    1

    ,ust to Clarif!-

    Called association on *lass diagram in &9 )ltipli*ity is term ;or the n)m3er o; asso*iations 3et

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    19/49

    1H

    Minimum and Ma.imum Multiplicit!

     Asso*iations hae minim)m and ma=im)m *onstraints minim)m is -ero, the asso*iation is optional

    I; minim)m is at least one, the asso*iation is mandatory

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    20/49

    78

    T!pes of *ssociations

    %inary Asso*iation  Asso*iations 3et

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    21/49

    71

    $emantic %et

    $hows instances andhow the! are lin/ed

    0.ample shows

    instances of three

    classes

    1uic/ qui2#

    3ow man! associations are

    there

    'hat are the minimum andma.imum multiplicities in

    each direction

    'hat t!pe of associations are

    the!

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    22/49

    77

    The Domain Model Class Diagram Class  A *ategory o; *lassi;i*ation )sed to des*ri3e a *olle*tion

    o; o3Ke*ts

    Domain Class Classes that des*ri3e o3Ke*ts in the pro3lem domain

    Class Diagram  A &9 diagram that sho

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    23/49

    70

    Domain Class %otation

    Domain *lass has no methods Class name is al

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    24/49

    74

    * $imple Domain Model Class

    Diagram

    Note+ This diagram mat*hes the semanti* net sho

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    25/49

    7?

    5ML %otation for Multiplicit!

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    26/49

    76

    Domain Model Class Diagramfor a ban/ with man! branches

    Introd)*tion to Systems Analysis and Design, 6th Edition 7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    27/49

    7

    Domain Model Class Diagramfor course enrollment at a universit!

    Where is ea*h st)dents grade remem3ered in this modelF Ea*h se*tion has many grades and ea*h grade is asso*iation

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    28/49

    7

    &efined Course 0nrollment Modelwith an *ssociation Class Course0nrollment

     Asso*iation *lass@ an asso*iation that is treated as a *lass in a

    many to many asso*iation 3e*a)se it has attri3)tes that need to3e remem3ered, s)*h as grade

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    29/49

    7H

    More Comple. ssues about Classes#6enerali2ation7$peciali2ation &elationships

    Generali-ationSpe*iali-ation  A hierar*hi*al relationship

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    30/49

    08

    6enerali2ation7$peciali2ationnheritance

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    31/49

    01

    6enerali2ation7$peciali2ationnheritance for &MO Three T!pes of $ales

     A3stra*t *lass@ a *lass that allo< s)3*lasses to inherit

    *hara*teristi*s 3)t neer gets instantiated: In Itali*s BSale a3oe

    Con*rete *lass@ a *lass that *an hae instan*es

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    32/49

    07

    6enerali2ation7$peciali2ationnheritance for the "an/ with $pecial T!pes of *ccounts

     A SaingsA**o)nt

    has 4 attri3)tes

     A Che*.ingA**o)nt

    'as ? attri3)tes

    Note+ the s)3*lasses

    inherit the

    asso*iations, too

    Introd)*tion to Systems Analysis and Design, 6th Edition 7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    33/49

    00

    More Comple. ssues about Classes#'hole Part &elationships

    Whole5part relationship@ a relationship 3et

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    34/49

    04

    'hole Part &elationshipsComputer and its Parts

    Note+ this is

    *omposition,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    35/49

    0?

    More on 5ML &elationships

    There are a*t)ally three types o; relationships in*lass diagrams  Asso*iation elationships

    These are asso*iations dis*)ssed preio)sly, K)st li.e

    ED relationships Whole (art elationships

    $ne *lass is a *omponent or part o; another *lass

    Generali-ationsSpe*iali-ation elationships

    Inheritan*e

    So, try not to *on;)se relationship

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    36/49

    06

    &MO C$M$ ProjectDomain Model Class Diagrams

    There are seeral

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    37/49

    0

    &MO C$M$ ProjectDomain Model Class Diagrams

    There are seeral

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    38/49

    0

    &MO C$M$

    Project$ales $ubs!stem

    Domain Model

    Class Diagrams

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    39/49

    0H

    &MO C$M$

    ProjectCustomer *ccount$ubs!stem Domain

    Model Class

    Diagram

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    40/49

    48

    &MO C$M$

    ProjectComplete Domain

    Model Class

    Diagram

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    41/49

    41

    &MO C$M$ ProjectDomain Model Class Diagrams Gien the *omplete $ CSS Domain odel

    Class Diagram and Sales and C)stomer A**o)nts)3system e=amples+ Try *ompleting the $rder )l;ilment S)3system Domain odel

    Class Diagram

    Try Completing the ar.eting S)3system Domain odel Class

    Diagram

    Try Completing the eporting S)3system Domain odel Class

    Diagram

    eie< the )se *ases ;rom Chapter 0 and de*ide )ired ;or ea*h s)3system Classes and asso*iations might 3e d)pli*ated in more than

    one s)3system model

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    42/49

    47

    0ntit!8&elationship Diagrams

    0&D An ED sho

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    43/49

    40

    0.ample of 0&D %otation

     A simple ED

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    44/49

    44

    0&D Cardinalit! $!mbolsoften called the crows feet notation

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    45/49

    4?

    0.panded 0&D with *ttributes

    Note+ This diagram mat*hes the semanti* net sho

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    46/49

    46

    *n 0&D for a "an/

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    47/49

    4

    $ummar! This *hapter is the se*ond o; three that ;o*)ses

    on modeling ;)n*tional re>)irements as a part o;systems analysis

    Things2 in the pro3lem domain are identi;ied and

    modeled, *alled domain *lasses or data entities

    T)es ;or identi;ying domain *lassesdataentities are the 3rainstorming te*hni>)e and the no)n

    te*hni>)e

    Domain *lasses hae attri3)tes and asso*iations

     Asso*iations are nat)rally o**)rring relationshipsamong *lasses, and asso*iations hae minim)m and

    ma=im)m m)ltipli*ity

    7817 Cengage 9earning: All ights esered: This edition is intended ;or )se o)tside o; the &:S: only,

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    48/49

    4

    $ummar!

    The &9 *lass diagram notation is )sed to *reate

     a domain model *lass diagram ;or a system: The

    domain model *lasses do not hae methods 3e*a)se

    they are not yet so;t

  • 8/17/2019 Systems analysis and design agile iterative approach chapter 4

    49/49

    4H

    $ummar!

    Entity5relationship diagrams BEDs sho< the

    same in;ormation as a domain model *lass

    diagram

    EDs are pre;erred 3y data3ase analysts and are