intro to ooad in uml

Upload: haffa

Post on 07-Jul-2018

235 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/18/2019 Intro to Ooad in UML

    1/83

    Introduction to OOAD and the

    UML

    Instructor: Dr. Hany H. Ammar 

    Dept. of Computer Science and

    Electrical Engineering, WVU

  • 8/18/2019 Intro to Ooad in UML

    2/83

    U!"I#E

    !$e de%elopment process

    &e%ie'ing ()ect riented Analysis and

    Design

    Visual modeling and t$e Unified *odeling

    "anguage U*"

  • 8/18/2019 Intro to Ooad in UML

    3/83

    U!"I#E

    !$e de%elopment process

     +  $ases of system de%elopment

     +  !$e Unified rocess

    ()ect riented Analysis and Design

    Visual *odeling and t$e Unified *odeling

    "anguage U*"

  • 8/18/2019 Intro to Ooad in UML

    4/83

    !$e De%elopment rocess

  • 8/18/2019 Intro to Ooad in UML

    5/83

    Requirements: Develop the Requirements Model

    Analysis: De%elop t$e "ogical *odel

    Design: De%elop t$e Arc$itecture*odel

    Implementati

    on Testing

    Phases of System Development

     Requirements

     Engineering 

     Engineering

     Design

  • 8/18/2019 Intro to Ooad in UML

    6/83

  • 8/18/2019 Intro to Ooad in UML

    7/83

    !$e IEEE -/0 De%elopment rocess

    Sys ArchDesign

    SystemReqts

    Analysis

    SystemQualTest

    SystemIntegra-

    tion

    SoftwareInstallation

    SoftwareAcceptanceSupport

    Hardware items

    Software Item 1:

    Software Item 2:

    Process Implementation Activity

    SoftwareQualTest

    SoftwareIntegra-

    tionSoftware

    Coe ! TestSoftware

    DetaileDesign

    SoftwareArch"

    DesignSoftwareReqts"Analysis

    Supporting Processes# Documentation$ C%$ QA$ &erification$ &aliation$ 'oint Review$ Auit$ Pro(lem resolution

    SoftwareQualTest

    SoftwareIntegra-

    tionSoftware

    Coe ! TestSoftware

    DetaileDesign

    SoftwareArch"

    DesignSoftwareReqts"

    Analysis

    SRS

    SARAD

    SRD$ )DD

    SAD$ SIDD$ D*DD$ T+&P

    SRD$ )DD

    ,CR$ SCR$T+&Pr$ T+&RR

    SIP$T+&Pr 

    T+&Pr 

    T+&RR

    T+&RR

    SCR

    T+&RR

    SCR

    SCR$ T+&RR

    DPP$ SDSD

      rgani.ational Processes# %anagement$ Infrastructure$ Improvement$ Training

    ne e/ample of applying 01123 to the 4aterfall evelopment strategy

    SC%P$ SC%R$ SCIR$ SQAP$ SQAR$ S&RR$ PR+PRR 0

  • 8/18/2019 Intro to Ooad in UML

    8/83

    !$e Unified rocess1!$e &ational Unified rocess 1&U2, adopted

     (y I3* for system de%elopment2 Supports System De%elopment Using t$e Unified

    *odel "anguage 1U*"2

    E%olutionary process '$ere t$e system is (uilt

    iterati%ely and incrementally in se%eral (uildsstarting from t$e re4uirements p$ase

    Arc$itecture5centric

  • 8/18/2019 Intro to Ooad in UML

    9/83

    !$e Unified rocess

    Inception: Define t$e scope of t$e system 1identify all e6ternalentities 'it$ '$ic$ t$e system 'ill interact and define t$e

    nature of t$e interactions2

    Elaboration: Specify features and de%elop t$e arc$itecture

    onstruction: 3uild t$e system

    !ransition: !ransition roduct to its users

  • 8/18/2019 Intro to Ooad in UML

    10/83

  • 8/18/2019 Intro to Ooad in UML

    11/83

    !$e Unified rocess

  • 8/18/2019 Intro to Ooad in UML

    12/83

    !$e Unified rocess

    !$e U de%elops t$e arc$itecture iterati%ely in successi%e

    &efinements during t$e Ela(oration p$ase

  • 8/18/2019 Intro to Ooad in UML

    13/83

    U!"I#E

    !$e de%elopment process

    &e%ie'ing ()ect riented Analysis and

    Design

     +  ()ect5riented Analysis A

     +  ()ect5riented Design D

     Visual *odeling and t$e Unified *odeling

    "anguage U*"

  • 8/18/2019 Intro to Ooad in UML

    14/83

    ()ect riented Analysis and

    Design 1AD2

  • 8/18/2019 Intro to Ooad in UML

    15/83

    &e%ie' of AD 3asic

    Concepts De%elops a system model using a set of interactingo()ects

    A Class:

     + 

    A class is a description used to instantiate o()ects An ()ect:

     +  Is an instance of a class, it $as a name, attri(utes and t$eir

    %alues, and met$ods

     + 

    An o()ect models an idea found in reality, 1tangi(le ora(stract2

  • 8/18/2019 Intro to Ooad in UML

    16/83

    3asic Concepts 1cont7d2

    Attri(utes of a class

    *et$ods of a class 1Ser%ices, Actions, *essages2

    Information $iding and Encapsulation: A tec$ni4ue in

    '$ic$ an o()ect re%eals as little as possi(le a(out its inner'or8ings 1ri%ate and u(lic met$ods or attri(utes2.

    In$eritance defines a class $ierarc$y (ased on a(straction

  • 8/18/2019 Intro to Ooad in UML

    17/83

    U!"I#E

    !$e de%elopment process

    &e%ie'ing ()ect riented Analysis and

    Design

     +  ()ect5riented Analysis A

     +  ()ect5riented Design D

     Visual *odeling and t$e Unified *odeling"anguage U*"

  • 8/18/2019 Intro to Ooad in UML

    18/83

    ()ect riented Analysis

    A A De%elops a "ogical *odel of t$e system as a set of

    interacting domain o()ects9 !$e model consists of t'o %ie's

    9 !$e static %ie': defines t$e classes

    and t$eir dependencies

     

    9!$e dynamic %ie': models t$e scenarios of

    interactions (et'een o()ects

    Class AClass 3

    "e#uiresService

    $rom

    lass %

    -(5 s#Class A

    Ob& y:lass %

    3: Set_Alarm(message)

  • 8/18/2019 Intro to Ooad in UML

    19/83

    E'ample:

    !he Static

    Analysis Model

    lass dia(ram

    !he dynamic

     Model:A Scenario

    Of 

    Interactions

    A 1cont.2

  • 8/18/2019 Intro to Ooad in UML

    20/83

    A 1cont.2

    OOA starts by identifyin( domain ob&ects

    from the re#uirements model )Use*ase Models+

    ,- Discoverin( Ob&ects +  The Data Perspective

    In t$e pro(lem space or e6ternal systems

    $ysical de%ices 1sensors, actuators2

    E%ents t$at need to (e recorded 1e6. *easurements2

    $ysical or geograp$ical locations

  • 8/18/2019 Intro to Ooad in UML

    21/83

    A 1cont7d2

     +  The Functional Perspective

    W$at responsi(ilities does t$e o()ect $a%e E6. An

    e%ent $andler, a controller, monitors, sensors, etc.

     +  The Behavioral Perspective

    W$o does t$e o()ect interact 'it$ Ho'

    Use a State !ransition Diagrams to descri(e t$eo()ect (e$a%ior 

  • 8/18/2019 Intro to Ooad in UML

    22/83

    A 1cont7d2: Identifying Domain

    Objects from the requirements model In t$e statements of t$e re4uirements: +  An o()ect may appear as a noun 1e6. *easurement2 or

    disguised in a %er( 1to measure2

     +  A met$od mig$t appear as a %er( 1e6. In%estigate2 ordisguised in a noun 1in%estigation2

     +  Attri(utes descri(e some 8ind of c$aracteristics for t$e

    o()ect 1ad)ecti%es2. Attri(utes can (e simple or comple6.

    Comple6 attri(utes may lead to forming ne' o()ects.Attri(utes can also (e nouns.

  • 8/18/2019 Intro to Ooad in UML

    23/83

    A 1cont7d2: Object Types

     +  E6ternal Entities and t$eir interfaces: Sensors,

    actuators, control panel, de%ices, operators, pilots

     +  Information Items : Displays, Commands,

    &e4uests, etc.

     +  Entities '$ic$ esta(lis$es t$e conte6t of t$e

     pro(lem : Controller, monitors, sc$edulers

  • 8/18/2019 Intro to Ooad in UML

    24/83

    A 1cont7d2

    .- Define lass /ierarchies

     +  ;enerali

  • 8/18/2019 Intro to Ooad in UML

    25/83

    A 1cont7d2

    0- lass "elationships

     +  !ypes

    Association +  ;eneral form of dependency

    Aggregation +  An o()ect may consist of ot$er o()ects

     In$eritance

     +  Cardinality 1 *ultiplicity2

    1 3inary, *any, .. 2

  • 8/18/2019 Intro to Ooad in UML

    26/83

    A 1cont7d2

    E'ample of identifyin( lass dia(rams 1ith "elationships2 Multiplicities2

    Attributes2 and operations )E*ommerce+

  • 8/18/2019 Intro to Ooad in UML

    27/83

    A 1cont7d2

    3- Ob&ect Attributes

     +  Disco%ering attri(utes of classes

     + 

    Attri(ute types #aming : E6. SensorID, Account

    Descripti%e E6. Card e6piration date

    &eferential E6. &eferring to ot$er o()ects

  • 8/18/2019 Intro to Ooad in UML

    28/83

    A 1cont7d2

    4- !he Dynamic 5ie1: Ob&ect %ehavior +  Disco%ering states, transitions (et'een states, and

    conditions and actions

     +  3uilding t$e state diagrams of o()ects

  • 8/18/2019 Intro to Ooad in UML

    29/83

  • 8/18/2019 Intro to Ooad in UML

    30/83

    U!"I#E

    !$e de%elopment process

    &e%ie'ing ()ect riented Analysis and

    Design +  ()ect5riented Analysis A

     +  ()ect5riented Design D

     Visual *odeling and t$e Unified *odeling"anguage U*"

  • 8/18/2019 Intro to Ooad in UML

    31/83

  • 8/18/2019 Intro to Ooad in UML

    32/83

    D: Arc$itecture Design

    9 Define t$e su(systems?components and t$eir dependencies9 Interactions (et'een components are defined in design se4uence diagrams

  • 8/18/2019 Intro to Ooad in UML

    33/83

  • 8/18/2019 Intro to Ooad in UML

    34/83

    D: !$e Dynamic Vie'

    Define design se4uence diagrams for scenarios defined in t$e re4uirementsmodel

  • 8/18/2019 Intro to Ooad in UML

    35/83

    0- Desi(n "efinement: Enhance Desi(n 7oodness riteria  1e.g., usingdesign patterns2 +  Coupling:

    !$e manner and degree of interdependence (et'een classes1o()ects2

     +  Co$esion: !$e degree and manner to '$ic$ t$e ser%ices or tas8s performed (y

    a component or an o()ect are related to eac$ ot$er. +  *odularity

    Understanda(ility

    Decomposa(ility +  Clarity

    Simple classes, messages, met$ods

    D 1Cont7d2

  • 8/18/2019 Intro to Ooad in UML

    36/83

    Summary of t$e ()ect5riented Analysis

    and Design 1A2 *et$odology

    3ased on descri(ing t$e logical model of t$esystem and t$e en%ironment as a set of interactingo()ects

     Defines t$e e6ternal o()ects 1actors2 interacting'it$ t$e system as 'ell as t$e internal o()ects t$att$e system must contain

    Defines t$e static arc$itecture of o()ects and t$e

    dynamic (e$a%ioral interactions (et'een t$em Defines t$e internal dynamic (e$a%ior of o()ects

  • 8/18/2019 Intro to Ooad in UML

    37/83

    U!"I#E

    !$e de%elopment process

    &e%ie'ing ()ect riented Analysis and

    Design

    Introducing %isual modeling and t$e Unified*odeling "anguage U*"

  • 8/18/2019 Intro to Ooad in UML

    38/83

    Visual *odeling and t$e

    Unified *odeling "anguage U*"

    W$at is t$e U*" U*" Concepts

    U*" De%elopment 5 %er%ie'

  • 8/18/2019 Intro to Ooad in UML

    39/83

    !$e Unified *odeling "anguage

    U*"W$at is t$e U*" U*" stands for Unified *odeling "anguage

    !$e U*" is t$e standard language for %isuali

  • 8/18/2019 Intro to Ooad in UML

    40/83

  • 8/18/2019 Intro to Ooad in UML

    41/83

  • 8/18/2019 Intro to Ooad in UML

    42/83

    Visual *odeling and t$e

    Unified *odeling "anguage U*"

    W$at is t$e U*" U*" Concepts

    U*" De%elopment 5 %er%ie'

  • 8/18/2019 Intro to Ooad in UML

    43/83

    U*" De%elopment 5 %er%ie'

    PROGRAM

     ACTORS

     ANALYSIS Specify Domain

    O!ects

    Detailed DESIGN 

    IMPLEMENTATION 

    D

     A

    T

     A

    D"

    C

    T

    "

    O

    #

     A

    R

    $

    Time%S& CAS&S

     A#A'$S"S

    C'ASS D"AGRAM(S)

    "MP'&MTAT"O#

     Actiity D"AGRAMS

    SystemO!ect

    S&*%C&

    D"AGRAMS

    OP&RAT"O# CO#TRACTS

    StateC+art

    D"AGRAMs

    D&P'O$MT D"AGRAMS%,S$ST&M C'ASS

    OR COMPO#T

    D"AGRAMS

     ArchitecturalDesign"ncl-.eDesign O!ects

    Object Design

    SCAR"OS

    E!"IE#EN$S ELI%I$A$I&N 

    D&S"G# D"AGRAMS

    "MP'&MTAT"O#

    C/O"C&S

    D&S"G# S&*%C& D"AG0

    "e#uirements

    En(ineerin(

    A *odel of em(edded systems

  • 8/18/2019 Intro to Ooad in UML

    44/83

    A *odel of em(edded systems

    de%elopment

  • 8/18/2019 Intro to Ooad in UML

    45/83

  • 8/18/2019 Intro to Ooad in UML

    46/83

    U*" De%elopment 5 %er%ie'

    PROGRAM

     ACTORS

     ANALYSIS Specify Domain

    O!ects

    Detailed DESIGN 

    IMPLEMENTATION 

    D

     A

    T

     A

    D"

    C

    T

    "

    O

    #

     A

    R

    $

    Time%S& CAS&S

     A#A'$S"S

    C'ASS D"AGRAM(S)

    "MP'&MTAT"O#

     Actiity D"AGRAMS

    SystemO!ect

    S&*%C&

    D"AGRAMS

    OP&RAT"O# CO#TRACTS

    StateC+art

    D"AGRAMs

    D&P'O$MT D"AGRAMS%,S$ST&M C'ASS

    OR COMPO#T

    D"AGRAMS

     ArchitecturalDesign"ncl-.eDesign O!ects

    Object Design

    SCAR"OS

    E!"IE#EN$S ELI%I$A$I&N 

    D&S"G# D"AGRAMS

    "MP'&MTAT"O#

    C/O"C&S

    D&S"G# S&*%C& D"AG0

    "e#uirements

    En(ineerin(

  • 8/18/2019 Intro to Ooad in UML

    47/83

    U*" Use Case Diagrams:

    !$e &e4uirements *odel

    Defining Actors 1E6ternal o()ects2

    An actor is an o()ect t$at must interact 'it$ t$e system under

    de%elopment

  • 8/18/2019 Intro to Ooad in UML

    48/83

    U*" Use Case Diagrams:

     !$e &e4uirements *odelDefining Use Cases A use case captures t$e user re4uirements, it is a pattern of

     (e$a%ior t$e system e6$i(its

     +  Eac$ use case is a se4uence of related interactions performed (y an actor and t$e system in a dialogue

    Actors are e6amined to determine t$eir needs

     +  Eac$ actor must $a%e association 'it$ at least one use

    case +  Use cases can (e related to eac$ ot$er 

  • 8/18/2019 Intro to Ooad in UML

    49/83

    U*" Use Case Diagrams:

     !$e &e4uirements *odel

    Case

    Study

  • 8/18/2019 Intro to Ooad in UML

    50/83

    U*" Use Case Diagrams:

     !$e &e4uirements *odel

    Documenting Use Cases A flo' of e%ents document is created for eac$ use cases

     +  Written from an actor point of %ie'

    Details '$at t$e system must pro%ide to t$e actor '$en t$euse cases is e6ecuted

    !ypical contents

     +  Ho' t$e use case starts and ends

     +   #ormal flo' of e%ents +  Alternate flo' of e%ents

     +  E6ceptional flo' of e%ents

  • 8/18/2019 Intro to Ooad in UML

    51/83

    U*" Use Case Diagrams:

    !$e &e4uirements *odel

    Use Case &eali

  • 8/18/2019 Intro to Ooad in UML

    52/83

    U*" Use Case Diagrams:

    !$e &e4uirements *odel

     Digital Sound &ecorder Case Study A se4uence diagram displays o()ect interactions arranged

    in a time se4uence capturing a specific scenario of

    interactions in a use case supported (y t$e system

    !ime

  • 8/18/2019 Intro to Ooad in UML

    53/83

  • 8/18/2019 Intro to Ooad in UML

    54/83

    U*" De%elopment 5 %er%ie'

    PROGRAM

     ACTORS

     ANALYSIS Specify Domain

    O!ects

    Detailed DESIGN 

    IMPLEMENTATION 

    D

     A

    T

     A

    D

    "

    C

    T

    "

    O

    #

     A

    R

    $

    Time%S& CAS&S

     A#A'$S"S

    C'ASS D"AGRAM(S)

    "MP'&MTAT"O#

     Actiity D"AGRAMS

    SystemO!ect

    S&*%C&

    D"AGRAMS

    OP&RAT"O# CO#TRACTS

    StateC+art

    D"AGRAMs

    D&P'O$MT D"AGRAMS%,S$ST&M C'ASS

    OR COMPO#T

    D"AGRAMS

     ArchitecturalDesign"ncl-.eDesign O!ects

    Object Design

    SCAR"OS

    E!"IE#EN$S ELI%I$A$I&N 

    D&S"G# D"AGRAMS

    "MP'&MTAT"O#

    C/O"C&S

    D&S"G# S&*%C& D"AG0

    "e#uirements

    En(ineerin(

  • 8/18/2019 Intro to Ooad in UML

    55/83

    U*" Class Diagrams:

    !$e Analysis *odel A class diagram s$o's t$e e6istence of classes and

    t$eir relations$ips in t$e logical %ie' of a system

    U*" modeling elements in class diagrams

    -. Classes and t$eir structure and (e$a%ior 

    . Association, aggregation, and in$eritance

    relations$ips

    . *ultiplicity and na%igation indicatorsB. &ole names

    U*" Cl Di

  • 8/18/2019 Intro to Ooad in UML

    56/83

    U*" Class Diagrams:

    !$e Analysis *odel

    Define lasses2 "elationships2 Multiplicities2Attributes2 and operations

  • 8/18/2019 Intro to Ooad in UML

    57/83

  • 8/18/2019 Intro to Ooad in UML

    58/83

    U*" State c$arts:

    !$e Analysis *odel !$e State of an ()ect A state transition diagram s$o's

     +  !$e life $istory of a gi%en class

     +  !$e e%ents t$at cause a transition from one stateto anot$er 

     +  !$e actions t$at result from a state c$ange

    State transition diagrams are created foro()ects 'it$ significant dynamic (e$a%ior 

  • 8/18/2019 Intro to Ooad in UML

    59/83

    U*" State c$arts:

    !$e Analysis *odel

  • 8/18/2019 Intro to Ooad in UML

    60/83

    U*" State c$arts:

    !$e Analysis *odel 

    Digital Sound &ecorder Case Study

    Vi l * d li d t$

  • 8/18/2019 Intro to Ooad in UML

    61/83

    Visual *odeling and t$e

    Unified *odeling "anguage U*"

    W$at is t$e U*" U*" Concepts

    U*" De%elopment + %er%ie' &e4uirements Engineering &e4uirements Elicitation

    !$e Analysis *odel !$e Design *odel

  • 8/18/2019 Intro to Ooad in UML

    62/83

    U*" De%elopment 5 %er%ie'

    PROGRAM

     ACTORS

     ANALYSIS Specify DomainO!ects

    Detailed DESIGN 

    IMPLEMENTATION 

    D

     A

    T

     A

    D

    "

    C

    T

    "

    O

    #

     A

    R

    $

    Time%S& CAS&S

     A#A'$S"S

    C'ASS D"AGRAM(S)

    "MP'&MTAT"O#

     Actiity D"AGRAMS

    SystemO!ect

    S&*%C&

    D"AGRAMS

    OP&RAT"O# CO#TRACTS

    StateC+art

    D"AGRAMs

    D&P'O$MT D"AGRAMS)*S6ST,%S +

    C7ASS+

    OR COMPO#T

    DIA8RA%S

     ArchitecturalDesign"ncl-.eDesign O!ects

    Object Design

    SCAR"OS

    E!"IE#EN$S ELI%I$A$I&N 

    D&S"G# D"AGRAMS

    "MP'&MTAT"O#

    C/O"C&S

    D&S"G# S&*%C& or 

    CO''A,ORAT"O# D"AGRAMS0

    "e#uirements

    En(ineerin(

  • 8/18/2019 Intro to Ooad in UML

    63/83

    ()ect riented Design D

    ,- Architecture Desi(n )Subsystem8omponent Dia(rams+  +  !$e static %ie': structural description 1defining t$e

    components and su(systems2

     +  !$e Dynamic %ie' 1defining t$e interactions (et'een

    components and su(systems 2

    .- Detailed Desi(n: Define detailed lass and ob&ect description

     +  Visi(ility 1ri%ate, protected, .. 2

     +  Containment 1e6. ac8ages or Components2

     +  Concurrency

    U*" Cl Di

  • 8/18/2019 Intro to Ooad in UML

    64/83

    U*" Class Diagrams:

    Arc$itecture Design: !$e static %ie'

     Digital Sound &ecorder Case Study9 Define t$e su(systems?components and t$eir dependencies9 Interactions (et'een components are defined in design se4uence diagrams

    U*" Class Diagrams:

  • 8/18/2019 Intro to Ooad in UML

    65/83

    U*" Class Diagrams:

    Detailed Design: !$e static %ie'

     Digital Sound &ecorder Case Study

    Define t$e detailed design of eac$ su(system?component

    &ecall: A 1cont 2

  • 8/18/2019 Intro to Ooad in UML

    66/83

    E'ample:

    !he Static

    Analysis Model

    lass dia(ram

    !he dynamic

     Model:

    A Scenario

    Of 

    Interactions

    &ecall: A 1cont.2

    Satellite Control E6ample

    U*" Class Diagrams:

  • 8/18/2019 Intro to Ooad in UML

    67/83

    U*" Class Diagrams:Detailed Design: !$e static %ie'

    Composite Structure Diagrams 1U*"2Satellite Control E6ample

    U*" D l i

  • 8/18/2019 Intro to Ooad in UML

    68/83

    U*" De%elopment + %er%ie'

    Detailed Design: !$e dynamic %ie', Design Se4uence Diagrams

    PROGRAM

     ACTORS

     ANALYSIS Specify DomainO!ects

    Detailed DESIGN 

    IMPLEMENTATION 

    D

     A

    T

     A

    D

    "

    C

    T

    "

    O

    #

     A

    R$

    Time%S& CAS&S

     A#A'$S"S

    C'ASS D"AGRAM(S)

    "MP'&MTAT"O#

     Actiity D"AGRAMS

    SystemO!ect

    S&*%C&

    D"AGRAMS

    OP&RAT"O# CO#TRACTS

    StateC+art

    D"AGRAMs

    D&P'O$MT D"AGRAMS%,S$ST&M C'ASS

    OR COMPO#T

    D"AGRAMS

     ArchitecturalDesign"ncl-.eDesign O!ects

    Object Design

    SCAR"OS

    E!"IE#EN$S ELI%I$A$I&N 

    D&S"G# D"AGRAMS

    "MP'&MTAT"O#

    C/O"C&S

    D,SI89 S,Q),9C, +or 

    C-77A*-RATI-9 DIA8RA%S"

    "e#uirements

    En(ineerin(

    U*" S Di

  • 8/18/2019 Intro to Ooad in UML

    69/83

    U*" Se4uence Diagrams:

    Detailed Design: !$e dynamic %ie'

     Digital Sound &ecorder Case StudyDefine design se4uence diagrams for scenarios defined in t$e re4uirementsmodel

    Detailed Design: !$e dynamic %ie' U*"

  • 8/18/2019 Intro to Ooad in UML

    70/83

    Detailed Design: !$e dynamic %ie', U*"

    Colla(oration Diagrams!$is diagram $as similar information as in se4uence diagrams

    'it$ no time a6isDigital

    Sound

    &ecorder 

    Case

    Study

  • 8/18/2019 Intro to Ooad in UML

    71/83

    U*" Component and Deployment

    Diagrams Component diagrams illustrate t$eorgani

  • 8/18/2019 Intro to Ooad in UML

    72/83

    U*" De%elopment + %er%ie'

    Detailed Design: !$e dynamic %ie', Design Se4uence Diagrams

    PROGRAM

     ACTORS

     ANALYSIS Specify DomainO!ects

    Detailed DESIGN 

    IMPLEMENTATION 

    D

     A

    T

     A

    D

    "

    C

    T

    "

    O

    #

     A

    R$

    Time%S& CAS&S

     A#A'$S"S

    C'ASS D"AGRAM(S)

    "MP'&MTAT"O#

     Actiity D"AGRAMS

    SystemO!ect

    S&*%C&

    D"AGRAMS

    OP&RAT"O# CO#TRACTS

    StateC+art

    D"AGRAMs

    D&P'O$MT D"AGRAMS%,S$ST&M C'ASS

    OR C-%P-9,9T

    DIA8RA%S

     ArchitecturalDesign"ncl-.eDesign O!ects

    Object Design

    SCAR"OS

    E!"IE#EN$S ELI%I$A$I&N 

    D&S"G# D"AGRAMS

    "MP'&MTAT"O#

    C/O"C&S

    D&S"G# S&*%C& or 

    CO''A,ORAT"O# D"AGRAMS"

    "e#uirements

    En(ineerin(

  • 8/18/2019 Intro to Ooad in UML

    73/83

    Component Diagram

    Co-rse"nfo

    People"nfo

    Co-rse

    Co-rseOffering

    St-.ent"nfo Professor"nfo

    Register0e1e

    Course registrationSystem e6ample

    C t Di

  • 8/18/2019 Intro to Ooad in UML

    74/83

    Component Diagram:

    Components Interfaces

    !$e interfaces to a component may (e

    s$o'n on a component diagram

    Registration0e1e ,illing0e1e,illing

    System

    U*" De%elopment %er%ie'

  • 8/18/2019 Intro to Ooad in UML

    75/83

    U*" De%elopment + %er%ie'

    Detailed Design: !$e dynamic %ie', Design Se4uence Diagrams

    PROGRAM

     ACTORS

     ANALYSIS Specify DomainO!ects

    Detailed DESIGN 

    IMPLEMENTATION 

    D

     A

    T

     A

    D

    "

    C

    T

    "

    O

    #

     A

    R$

    Time%S& CAS&S

     A#A'$S"S

    C'ASS D"AGRAM(S)

    "MP'&MTAT"O#

     Actiity D"AGRAMS

    SystemO!ect

    S&*%C&

    D"AGRAMS

    OP&RAT"O# CO#TRACTS

    StateC+art

    D"AGRAMs

    D,P7-6%,9T DIA8RA%S%,S$ST&M C'ASS

    OR COMPO#T

    D"AGRAMS

     ArchitecturalDesign"ncl-.eDesign O!ects

    Object Design

    SCAR"OS

    E!"IE#EN$S ELI%I$A$I&N 

    D&S"G# D"AGRAMS

    "MP'&MTAT"O#

    C/O"C&S

    D&S"G# S&*%C& or 

    CO''A,ORAT"O# D"AGRAMS"

    "e#uirements

    En(ineerin(

    D l i t$ S t

  • 8/18/2019 Intro to Ooad in UML

    76/83

    Deploying t$e System

    !$e deployment diagram s$o's t$e

    configuration of run5time processing

    elements and t$e soft'are processes li%ing

    on t$em

    !$e deployment diagram %isuali

  • 8/18/2019 Intro to Ooad in UML

    77/83

    Deployment Diagram

    Registration Dataase

    'irary

    Dorm

    Main,-il.ing

    Defines t$e HW

     #et'or8

    configuration

  • 8/18/2019 Intro to Ooad in UML

    78/83

    Deployment Diagram

     Digital Sound &ecorder Case Study 

    E t di t$ U*"

  • 8/18/2019 Intro to Ooad in UML

    79/83

    E6tending t$e U*" Stereotypes can (e used to e6tend t$e U*" notational

    elements Stereotypes may (e used to classify and e6tend associations,

    in$eritance relations$ips, classes, and components using t$e

    notation stereotype>>.

    E6amples: -. Class stereotypes: Interface, control, entity,utility, e6ception,

     +  . Use Case relation stereotypes: includes and e6tends,

     +  . Component stereotypes: su(system

     +  B. Design pattern instances

    Cl d C t t t

  • 8/18/2019 Intro to Ooad in UML

    80/83

    Class and Components stereotypese.g., e6ternal timer>>, coordinator>>, control>>

    U C l ti t t

  • 8/18/2019 Intro to Ooad in UML

    81/83

    Use Case relation stereotypese6tend>>

    Component stereotypes: su(system

  • 8/18/2019 Intro to Ooad in UML

    82/83

    p yp yclient su(system>>, ser%er su(system>>

    S mmar of U*"

  • 8/18/2019 Intro to Ooad in UML

    83/83

    Summary of U*"$ttp:??en.'i8ipedia.org?'i8i?"ist=of=Unified=*odeling="anguage=tools

    !$e U*" is t$e standard language for %isuali