You are on page 1of 94

Chng Ch 3

Phn tch h thng


(system analysis)

Nhng vn trong phn tch h thng Thu th yu cu t ngi s d Th thp i dng Phn tch yu cu Xc nh tnh nng h thng

Mc tiu ca phn tch h thng p g


Khch hng v nh pht trin gp nhau tho lun v yu cu ca h thng phn mm cn xy dng Nh pht trin tm hiu phn tch v kim chng li hiu, (validate) yu cu v biu din n bng m hnh phn tch M hnh phn tch c t ton b ni dung : chc nng, nng d liu nhp/xut cc hot ng ca h thng nhp/xut, cn pht trin

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

Mc tiu ca phn tch h thng (tt) p g( )


Xy dng cc t in d liu nh ngha cc khi nim c th ca h thng, ngha, cu trc, Thng nht vi khch hng v m hnh v tnh nng ca h thng

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

Phn tch h thng g


Phn tch h thng l bc u tin rt quan trng cho d n pht trin phn mm Cng vic phn tch h thng bao gm
Thu thp yu cu v quy trnh nghip v hin ti Phn tch v xc lp cc quy trnh s c pht trin/thay th bng my tnh Xc thc cc yu cu/tnh nng ca h thng

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

Phn tch h thng (tt) g( )


Kt qu ca vic phn tch h thng l cc ti liu c t tnh nng h thng Cc ti li n thng th ng thng. liu ny thng dng cc s , biu ,.. Kt qu ny dng cho vic xc thc cc tnh nng ca h thng vi khch hng Kt qu ny l u vo ca qu trnh tip theo l thit k h thng. Ty thuc vo cng ngh pht trin m s dng cc p phng php phn tch ph hp : cu trc hay OOP gp pp p p y
Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

Nhng vn trong phn tch h thng th


Cch bit v chuyn mn ca lnh vc cn phn tch S hiu bit ca nhng ngi end user v quy trnh lm vic v kh nng ng dng phn mm cho cng vic ca h Nhng vn v iu kin h tng h tr hot ng ca h thng

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

Nhng vn trong phn tch h thng (tt)


Tnh sn sng thng tin ca cc h thng ang c s tng tc vi h thng cn xy dng nh hng ng dng lu di cha c/ cha r rng Cng c/ngn ng s dng c t h thng / kt qu phn tch

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

Q y Quy trnh phn tch h thng p g


Cc bc chnh
Thu thp thng tin h thng hin ti Thu thp yu cu Phn tch Ph t h yu cu Xc lp tnh nng h thng Xc thc tnh nng h thng Tm hiu v xy dng li hin trng ca h thng Cc quy trnh hot ng/nghip v Phng thc v ngha ca cc qu trnh x l D liu ca h thng D iu kin h tng: thit b, con ngi

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

Q y Quy trnh phn tch h thng p g


Cc bc chnh
Thu thp thng tin h thng hin ti Thu thp yu cu Phn tch Ph t h yu cu Xc lp tnh nng h thng Xc thc tnh nng h thng

Xc nh cc yu cu
Cc yu cu v chc nng Cc ca h thng Cc yu cu v mi trng vn hnh: thit b, con ngi g

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

Q y Quy trnh phn tch h thng p g


Cc bc chnh
Thu thp thng tin h thng hin ti Thu thp yu cu Phn tch Ph t h yu cu Xc lp tnh nng h thng Xc thc tnh nng h thng Phn tch cc yu cu Phn tch cc yu cu theo quy trnh s l B sung cc q y trnh cho g quy ph hp vi my tnh Yu cu b sung cc thng tin

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

10

Q y Quy trnh phn tch h thng p g


Cc bc chnh
Thu thp thng tin h thng hin ti Thu thp yu cu Phn tch Ph t h yu cu Xc lp tnh nng h thng Xc thc tnh nng h thng

Xc lp tnh X l t h nng ca h thng Xc lp cc chc nng m h thng s bao gm Xc lp cc iu kin v mi trng hot ng

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

11

Q y Quy trnh phn tch h thng p g


Cc bc chnh
Thu thp thng tin h thng hin ti Thu thp yu cu Phn tch Ph t h yu cu Xc lp tnh nng h thng Xc thc tnh nng h thng Xc thc tnh nng h thng th Xc thc vi ngi dng v tnh hp l v y ca cc tnh nng Xc thc cc quy trnh nghip v g p Xc thc cc rng buc

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

12

Q y Quy trnh phn tch h thng p g


Cc bc chnh
Thu thp thng tin h thng hin ti Thu thp yu cu Phn tch Ph t h yu cu Xc lp tnh nng h thng Xc thc tnh nng h thng

Phng php cu trc


Cc bc c thc hin ng thi v xen k nhau Thng s dng lc : g g DFD, ERD, STD
Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

Phng php OOP


S dng UML: lc Use case, Class

13

Phn tch h thng theo hng pht trin k thut lp trnh cu trc

Tip cn ca phng php pht trin c in cho bc h tch b phn t h h thng th Cc lc DFD, STD, ERD

CC YU T CN BN CA M HNH
Objective:
Describe what the customer requires Establish a basis for the creation of a software design Define a set of requirements that can be validated once the software is built

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

15

CC YU T CN BN CA M HNH
Process Specification (PSPEC)

Lc DFD
Lc dng h d chy d liu T in d liu

Lc quan h thc th

Lc dch chuyn trng thi

M hnh chc nng v dng thng tin: DFD, PSPEC M t dng thng tin di chuyn M (flow) xuyn qua cc h thng thin v phn mm. Din t cc tng tc xut nhp d liu vi con ngi v cc h thng khc Lu dng chy d liu DFD (Data Flow Diagram) cung cp 4 k hiu c bn m hnh s di chuyn ca dng thng tin g ; M rng ca Ward & Mellor; Hatley & Pirbhai cho realtime
16

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

CC YU T CN BN CA M HNH
Process Specification (PSPEC)

Lc STD
Lc quan h thc th T in d liu Lc dng h d chy d liu

Lc dch chuyn trng thi

Control Specification (CSPEC)

M hnh hnh vi ca h thng Lc dch chuyn trng thi Lc (STD) th hin Cc trng thi khc nhau ca h thng S dch chuyn gia cc trng thi M t chi tit hn iu kin xy ra ca cc hnh vi Cung cp mt hnh nh ng v h thng

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

17

CC YU T CN BN CA M HNH
c t t in d liu Process Specification (PSPEC)

Lc ERD
Lc dng h d chy d liu T in d liu

Lc quan h thc th

c t cc thng tin v d liu ca h thng Cu trc d liu Cu Cc quan h v rng buc d liu

Lc dch chuyn trng thi

Control Specification (CSPEC)

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

18

CC YU T CN BN CA M HNH
c t t in d liu Process Specification (PSPEC)

T in d liu
Lc dng h d chy d liu T in d liu

Lc quan h thc th

Lm r cc khi nim v thut ng trong h thng Nu ln ngha v phm vi s Nu dng ca cc khi nim ny Xc nh cc cu trc thng tin cn thit

Lc dch chuyn trng thi

Control Specification (CSPEC)

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

19

LC DNG CHY D LIU (DFD) ( )


c xy dng t 4 phn t chnh
Thc th: to ra hoc tiu th thng tin, nm bn ngoi bin gii ca th phm vi thng tin h thng Chc nng x l thc hin chc nng no , tiu th v to ra thng l: tin, nm bn trong phm vi thng tin h thng Thng tin hay d liu Kho d liu lu tr d liu m c s dng bi nhiu chc nng x liu: g g l
Thc th Chc nng x l Kho D Liu D liu

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

20

LC DNG CHY D LIU (t.t) ( )


DFD c xy dng qua nhiu mc khc nhau: mc 0, 1, 2 DFD mc 0 cn c gi l Fundamental System Model hay Context Model , i din cho ton b h thng vi mt hnh trn duy nht vi cc ng input v output data DFD mc sau chi tit hn mc trc

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

21

LC DNG CHY D LIU (t.t) ( )


Bng iu khin
Lnh v d liu Thng tin hin th

Mn hnh

SafeHome System
Trng thi cm ng

Kiu bo ng

Chung

Tn s ca s in thoi

B cm ng ng in thoi

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

22

LC DNG CHY D LIU (t.t) ( )


Process Specification (PSPEC) b sung cho DFD Tnh lin tc ca dng d liu

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

23

LC DNG CHY D LIU (t.t) ( )

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

24

K thut p phn tch h thng g


Tip xc, phng vn cc ngi dng trong h thng thu thp cc thng tin v nghip v ca ngi dng Thit lp on vn miu t chc nng (processing narrative) cho h thng cn xy dng Xy dng DFD cc mc khc nhau
Thit lp s ng cnh (DFD mc 0) Phn hoch DFD vo cc mc cao hn S dng phng php duyt vn phm. Lun lun tun theo tnh lin tc dng L l t th t h li t ca d d li liu

Vit PSPEC cho cc chc nng ca DFD mc cao nht


Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

25

Xy dng DFD V d y g
SafeHome object control panel might be mounted on wall size approximately 9 5 inches contains standard 12-key pad and special keys 12 key contains LCD display of the form shown in sketch [not presented here] all customer interaction occurs through keys used to enable and disable the system software provides interaction guidance, echoes, and the like connected to all sensors

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

26

Xy dng DFD V d y g
When installed, SafeHome software enables the homeowner to configure the security system, monitors all sensors connected to the security system, and g yp interacts with the homeowner through a keypad and function keys contained in the SafeHome control panel During installation, the SafeHome control panel is used to "program" and configure the system. Each sensor is assigned a number and type, a master password is programmed for arming and disarming the system, and telephone number(s) are input for dialing when a sensor event occurs occurs.
Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

27

Xy dng DFD V d y g
When a sensor event is recognized, the software invokes an audible alarm attached to the system. After a delay time that is specified by the homeowner during system configuration activities the software activities, dials a telephone number of a monitoring service, provides information about the location, reporting the nature of th event th t h b t f the t that has been d t t d detected. (The telephone number will be redialed every 20 seconds until telephone connection is obtained.)

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

28

Xy dng DFD V d y g
All interaction with SafeHome is managed by a userinteraction subsystem that reads input provided through the keypad and function keys, displays p prompting messages on the LCD display, displays p g g p y, p y system status information on the LCD display.

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

29

Xy dng DFD V d y g
Phn mm SafeHome: Thit lp on vn miu t x l DFD mc ng cnh: nhn din cc thc th v d liu input, output
Bng iu khin
Lnh v d liu Thng tin hin th

Mn hnh

SafeHome System
Trng thi cm ng

Kiu bo ng

Chung

Tn s ca s in thoi

B cm ng ng i th i in thoi
Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

30

Xy dng DFD V d y g
SafeHome software enables the homeowner to configure the security system when it is installed, monitors all sensors connected to the security system, g yp and interacts with the homeowner through a keypad and function keys contained in the SafeHome control panel

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

31

Xy dng DFD V d y g
Bng iu khin
Yu cu Lnh v d liu cu hnh

Cu hnh h thng

DFD mc 1: hnh thnh mt s chc nng chnh


Thng s cu hnh

Tng tc vi User
Start/Stop Mt m

Cm/ Cho php


Xc nhn mt m

Mn hnh
Thng bo Thng bo hin th

X l mt m

Hin th

Thng tin cm ng Trng thi cm ng

Theo di cm ng

Kiu bo ng chung Tn s ca in thoi

Chung

B cm ng
Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

ng in thoi
32

PSPEC
The process specification (PSPEC) is used to describe all flow model processes that appear at the final level of refinement. The content of the process specification can include narrative text, a program design language (PDL) description of the process algorithm, mathematical equations, tables, diagrams, or charts

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

33

PSPEC
By providing a PSPEC to accompany each bubble in the flow model, the software engineer creates a "minispec that can serve as a first step in the creation of the Software Requirements Specification and as a guide for design of the software component that will implement the process.

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

34

M hnh hnh vi STD


Process Specification (PSPEC)

Lc STD
Lc quan h thc th T in d liu Lc dng h d chy d liu

Lc dch chuyn trng thi

Control Specification (CSPEC)

M hnh hnh vi ca h thng Lc dch chuyn trng thi Lc (STD) th hin Cc trng thi khc nhau ca h thng S dch chuyn gia cc trng thi M t chi tit hn iu kin xy ra ca cc hnh vi Cung cp mt hnh nh ng v h thng

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

35

M hnh hnh vi STD V d


y giy v sn sng Yu cu copy

c lnh
Copy xong Yu cu c lnh

Rnh Yu cu c lnh

A state is any observable mode of behavior M h h hnh i M hnh h h vi h thng my photocopy

y giy yg y Yu cu c lnh

Thc hin copy py


Ht giy Yu cu np giy

Np giy

Kt giy Yu Y cu x l li

X l li

Ht kt giy Yu cu c lnh

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

36

T in d liu
Nhiu phn t c to ra trong m hnh phn tch: d liu, h iu khin li chc nng, i khi q p Phi c mt cch thc qun l cc phn t sao cho hiu qu T in d liu

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

37

T in d liu
nh ngha: T in d liu l mt danh sch c t chc ca tt c cc phn t d li cn thit cho h th h liu h thng. C Cc phn t c nh ngha chnh xc v cht ch sao cho c phn tch vin v khch hng cng chia s mt suy ngh v chng. h g T in d liu thng c hin thc nh l mt phn ca cng c CASE. Mi phn t bao gm nhng thng tin: t b d h tn, danh, c dng u/nh th no, c t ni dung v thng tin ph tr
Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

38

T in d liu
The notation used to develop a content description is noted in the following table

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

39

T in d liu
The notation enables a software engineer to represent composite data in one of the three fundamental ways that it can be constructed:
As a sequence of data items. q As a selection from among a set of data items As a repeated grouping of data items.

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

40

T in d liu V d
V d phn t d liu s in thoi
Tn: S in thoi B danh: Khng c dng u/nh th no:
output ca Thit lp iu kin bo ng

input ca Quay s c t ni dung: s in thoi = [ m rng a phng | s bn ngoi ] m rng a phng = [ 2001 | 2002 | 2009 ] s bn ngoi = 9 + [ s a phng | s ng di ] s a phng = tin t + <chui 4 k s> s ng di = (1) + m vng + s a phng tin t = [ 795 | 799 | 874 | 877 ]
Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

41

Review Phn tch h thng theo cu trc t


Phn tch yu cu theo pp c in bao gm: M hnh chc nng v dng thng tin (DFD), M hnh d liu (ERD) v M h h h h vi (S ) hnh hnh i (STD) Lc DFD c bn c 4 k hiu v n c m rng biu din c cc h thng thi gian thc Xy dng DFD mc 0 ri n cc mc cao hn; ch bo ton tnh lin tc ca dng d liu T in d liu gip qun l v tra cu cc phn t d liu

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

42

Phn tch h thng theo hng pht trin k thut lp trnh OOP (OO Paradigm)

Tip cn ca phng php pht trin OOP cho bc phn tch h thng

AI / V tr nh th no / Lm G / Khi no
Cc lc

Lc Use-case: thu thp yu cu m hnh nghip v Lc lp: phn tch h y cu m hnh phn tch p p yu p

M hnh nghip v - Thu thp yu cu g p p y


Quan im thu thp/phn tch yu cu ca m hnh nghip v: h thng gm c AI/Lm nhng g/Khi no Lc Use-case :
Actor & Use-case Cc mi quan h : Actor Actor ; Actor-Use-case, - Use-case-Usace

Actor xc nh mt b vai tr m ngi hoc vt s ng vai khi tng tc vi h thng phn mm


Actor nm ngoi phm vi ca h thng Ch quan tm cc thng ip m actor gi hay nhn Khng quan tm cu trc bn trong ca actor

Phn loi actor


Ch yu / Th yu Tch T h cc / Th Th ng
Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

44

M hnh nghip v - Thu thp yu cu g p p y


A primary actor uses the system's primary functions (e.g. a b k cashier); ( bank hi ) A secondary actor uses the system's secondary functions (e.g. a bank manager, system administrator); An active actor initiates a use-case; A passive actor only participates in one or more usecases.

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

45

Nhn din cc ACTOR


Tr li mt s cu hi nh Ai l ngi s dng chc nng chnh ca h thng ? Ai cn s h tr t h thng thc hin cng vic thng nht ca h ? Ai phi thc hin cng vic bo dng, qun tr v gi g g cho h thng hot ng ? H thng s kim sot thit b phn cng no ? H thng ang xy dng cn tng tc vi nhng h thng khc hay khng ? Ai hoc vt th no quan tm n hay chu nh hng bi kt qu m h thng phn mm to ra ?
Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

46

Biu din ACTOR trong UML g


Actor c biu din bng k hiu hnh ngi
Tn Actor

Actor c xem l mt l ( l A t t lp (class) c stereotype l ) t t <<actor>> Gia cc actor c th c quan h tng qu ho


V d: Sinh vin, ging vin v khch u l c gi ca h thng qun l th vin: c gi l actor tng qut ha ca 2 actor sinh vin v ging vin

V d: mt h thng ng k mn hc trong trng i hc g


Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

47

Cc Actor trong h thng ng k mn hc g g g

S Sinh vin

Phng o to

H thng ng k mn h hc

Ging vin

H thng qun l hc ph Phng ti v


48

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

Khi nim Use-case


Use-case biu din mt chc nng ca h thng phn mm Use-case c biu din bng mt chui cc thng ip trao i bn trong h thng v mt hoc mt s thng ip trao i vi actor Mt s quy c Use-case lun lun c bt u bng thng ip n t actor Use-case phi hon tt: chui thng ip phi kt thc bng b kt qu c th th. Li thng gp: chia nh use-case tr thnh nhng chc nng vn vt
Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

49

Khi nim Use-case


Use-case c biu din bng hnh ellipse:

Tn Use-case Useim m rng l mt v tr trong use-case m ti c th chn chui s kin ca mt use-case khc use case Use-case c th cha iu kin r nhnh, x l li, ngoi l... Minh d ca use-case l kch bn (scenario): miu t c th trnh t cc s kin xy ra khi Use-case c thc hin hin.
Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

50

Tm kim Use-case
Tr li mt s cu hi nh
Actor yu cu chc nng g ca h thng ? Actor cn phi c, to, xo, sa i hoc lu tr thng tin no ca h thng khng ? Actor A t cn thit phi hi c cnh b v nhng s ki t h bo h kin trong h thng, hay actor cn phi bo hiu cho h thng v vn no khng ? H thng c th h tr mt s cng vic thng nht ca actor no hay khng ?

Mt s cu hi khc cn ch
H thng cn d liu input/ouput no ? D liu n t u ? Nhng kh khn no lin quan n hin thc ca h thng hin ti (chng hn h thng qun l bng giy t nn c thay th bng h gq y ) thng qun l trn my tnh) ?
Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

51

Cc quan h ca Use-case q
Sau khi xc nh cc Actor v Use-case th cc quan h s c thit lp hon chnh lc Use-case Gia use-case v actor thng c quan h lin kt
Use-case Use case c Actor no kch hot

Gia cc use-case cng c quan h lin kt hoc tng qut ho


Quan h lin kt: extent , include Quan h tng qut ha

V d: mt h thng ng k mn hc theo tn ch trong trng i hc

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

52

V d mt Use-case n gin g
<<communicate>>

Sinh Vin ng K Hc

Qun Q l Mn Hc

Phng o To

ng k dy

<<extend>>

Qun l Sinh Vin Ging Vi Gi Vin


Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

Thm Sinh Vin Mi

53

Q Quan h lin kt
Quan h lin kt ch ra mt quan h c ngha gia hai bn
Trong thc t: hnh khch vi li xe sinh vin vi gio vin ging vin vi xe, vin, mn hc

Mt s tnh cht lin quan


Tn ca lin kt t Mt chiu hay 2 chiu Bc: s lng thc th tham gia vo lin kt ti mi bn

UML biu din lin kt nh l mt on thng (hai chiu) hoc g ( ) mi tn (mt chiu)
<<Stereotype>> <<Stereotype>>

C th p dng stereotype:
<<include>> <<extend>> <<communicate>> ...
Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

54

Quan h lin kt gia Actor v Usecase


Lin kt l quan h duy ht gia actor & Use-case Lin k c th l 2 chiu hay 1 chiu
actor kch hot use-case v nhn kt qu v: lin kt 2 chiu actor kch hot use case khng quan tm kt qu v: lin kt 1 chiu use-case,

Quan h lin kt ph bin gia Actor & Use-case l giao tip: stereotype l <<communicate>> dng lin kt gia
actor v use case m n kch hot 1
Ngi bn hng

*
t hng

<<communicate>>

ng k dy

Ging vin
Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

55

Q Quan h gp gia 2 Use-case g


Dng lin kt 2 Use-case: c stereotype l <<include>> Trong Use-case ngun c im m rng m ti bt buc phi chn Use-case ch vo.
Ti im m rng din tin ca use case ngun tm thi ngng li rng, use-case chuyn sang din tin ca use-case ch Khi kt thc use-case ch, din tin ca use-case ngun li tip tc

<<include>>

Tm kim

ng nhp

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

56

Q Quan h m rng gia 2 Use-case gg


Dng lin kt 2 Use-case: c stereotype l <<extend>> Trong use-case ngun c mt im m rng m ti c th (hoc khng) chn use-case ch vo ty thuc vo iu kin r nhnh hoc tng tc t actor
Ti im m rng, nu c m rng th din tin ca use-case ngun tm thi ngng li chuyn sang din tin ca use-case ch Khi kt th use-case h di ti ca use-case ngun l i ti t thc ch, din tin li tip tc
<<Extend>>

Tm kim

ng k t ch
(nu tm thy)

Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin


Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

57

Q Quan h tng qut ha gq


L mi quan h gia cc i tng cng nhm to nn mt i tng mang nhng tnh cht chung ca cc i tng kia Quan h thng qut ha gia cc Actor: nhiu actor c chung mt s vai tr -> hnh thnh actor tng qut ha > mang vai tr chung .
V d: sinh vin, gio vin u c chung use-case login v u l user ca h thng -> to nn actor user l tng qut ha ca actor sinh vin v actor gio vin i h i i i

Quan h thng qut ha gia cc Use-case: khi c nhiu use-case l trng hp c th mt use-case tru tng
V d: Use-case login ca sinh vin , gio vin c th c thc hin theo c ch khc nhau nhng cng mang chung ngha l ng p g p g nhp l cc trng hp c th ca Use-case tru trng LOGIN
Trng i Hc Bch Khoa - Khoa Cng Ngh Thng Tin
Copyright 2004 Th.S Nguyn Cao Tr caotri@hcmut.edu.vn

58

Xy dng m hnh Use-case y g


Cc yu cu ca phn mm c m t trong m hnh use-case M hnh use-case bao gm lc use-case v (c th) mt s package (gom mt s use-case thnh mt b chc nng con ca h
thng)

Phng php thc hin:


Xc nh X h cc actor v use-case ca h th t thng Xc lp cc quan h gia cc i tng ny
Quan h lin kt gia actor v use-case: mt chiu hoc hai chiu, thng c stereotype l <<communicate>> Quan h m rng h gp gia 2 use-case: quan h li kt vi stereotype Q hay i lin i t t <<extend>> hay <<include>> Quan h tng qut ho (generalization) gia cc actor: nhiu actor c vai tr ca mt actor tru tng Quan h tng qut ho gia cc use-case: nhiu use-case l trng hp c th use case: use case ca mt use-case tru tng

Trnh by thnh lc use-case theo chuNn UML C th xc nh cc package

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

59

Xy dng m hnh Use-case V D y g


Prints timetable Student print request <<communicate>> <<communicate>> timetable command Registers courses People Removes students Finance Makes timetable fee summary

<<include>>

Manages course

Administration <<extend>> t d

<<include>> Lecturer Reads courses <<include>> Manages lecturers g <<include>> Adds students <<extend>> <<include>> Login Undertakes course Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin
Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

<<include>>

Manages students

60

Xy dng m hnh Use-case V D y g


<<communicate>>

Forwards
Subcriber <<extend>> <<extend>>

Removes mailbox <<communicate>>

Replies
<<communicate>> <<extend>>

Views mail <<include>>


<<include>>

Administrator

<<include>>

Login

Adds mailbox

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

61

Xy dng m hnh Use-case V D y g


<<extend>> imports <<communicate>> import command models <<communicate>> model command run command sets appearance <<communicate>> save command d Viewer initializes

i t <<communicate>> export command exports

toggles light

saves model <<communicate>> <<extend>> close command toggles mode

exits

sets eye 62

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

M hnh phn tch Phn tch yu cu p y


i tng/lp - quan h

M hnh nghip v biu din cc chc nng phn mm cn xy dng di dng cc use usecase M hnh phn tch s tm kim cc i tng sng trong ng cnh ca phn mm sng Cc i tng s tng tc vi nhau to nn cc chc nng m t bi use-case Lc Cl L Class phn t h di t cu t mi h tch din trc, i quan h gia cc i tng/lp trong h thng Cha quan t h h vi c th v nhim Ch tm n hnh i hi v chi tit ca chng trong ng cnh ca h thng Nguyn t m h h phn t h phi l N tc: hnh h tch hi c lp vi o/s, ngn ng lp trnh, cng c pht trin
63

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

Xy dng m hnh phn tch y g p


M hnh phn tch c din t trong UML bng lc lp phn tch (Class diagram) Cc cng vic xy dng lc phn tch bao gm
Tm kim cc i tng / lp trong h thng i tng / lp thc th i tng / lp bin i tng / lp control Xc nh cc thuc tnh ca i tng / lp g p Xc nh cc tc v ca i tng / lp N hn din cc lp tru tng qua mi quan h tng qut ha Xc lp cc mi quan h gia cc lp: Tng qut ho (generalization) Lin kt (association) Bao gp (aggregation)

Biu din thnh lc l phn t h Bi di th h l lp h tch


Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin
Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

64

Nhp din i tng / lp p g p


Da vo c t ca tng use-case tm kim cc i tng Cc i tng thng xut hin trong cc danh t hay nhm danh t Mt s lu
Khng nn dng i tng biu din mt d liu n (nn xem l thuc tnh ca i tng khc) i tng/lp phi thc s cn thit cho s hot ng ca h thng i tng/lp >< bng c s d liu g p g i tng/lp >< actor

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

65

Nhn din v biu din i tng / lp l


Phn loi i tng/lp
i tng thc th (entity): biu din cc thng tin thit yu ca h thng, c th c lu trong c s d liu i tng bin (boundary): thc hin chc nng giao tip vi actor i t tng i khi ( t l) i khi cc i t iu khin (control): iu khin tng kh khc

Trong UML, lp c biu din bng mt hnh ch nht gm 3 phn: tn, cc thuc tnh v cc tc v C th p dng stereotype cho lp: <<entity>>, <<boundary>>, <<control>>... i tng cng c biu din bng hnh ch nht nht, thng thng gm 2 phn: tn i tng + tn lp (c gch chn), gi tr cc thuc tnh (trng thi ca i tng)
Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin
Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

66

Biu din lp / i tng p g


HTMLObject j # alignment: int + GetAlignment( ): int + toHTML( ): String doc : HTMLDocument alignment = MIDDLE title = A document

HTMLDocument - title: String + GetTitle( ): String + toHTML( ): String

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

67

i tng / lp thc th g p
Biu din cho cc thc th xut hin mt cch t nhin trong h thng Thng tin v cc i tng thc th c th phi c lu tr lu di (database, file...) Trong UML T UML, c gn stereotype <<entity>> i D nhn din cc thuc tnh ca chng
V d: d: i vi h thng ng k mn hc h tn ch qua WEB, nhn din cc i tng thc th nh: thng tin SV, thng tin GV, nhm lp hc ng k nhm s tay sinh vin hc, nhm, i vi h thng mail, nhn din cc i tng thc th nh: hp th, thng ip mail
Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin
Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

Message g <<entity>>
# subject: String # sent: Date # content: String + GetSubject( ): String g( ): g + toString( ) String

68

i tng / lp bin g p
Thc hin chc nng giao tip vi actor Thng cha cc phn t hoc iu khin giao din ngi dng (nt nhn, hp danh sch, tu chn, menu...) Trong UML, c gn stereotype <<boundary>> Kh nhn bit cc th t h v t v t h thuc tnh tc trong m h h phn t h hnh h tch
V d: d: i vi h thng ng k mn hc h i tn ch qua WEB, nhn din cc i tng bin nh: RegisterForm, StudentForm i vi h thng mail, nhn din cc i tng bin nh: MailView, MailCompose... MailCompose
Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin
Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

MailView <<boundary>>

69

i tng / lp iu khin g p
C nhim v iu khin cc lp khc hoc Nhng lp khng phi l lp thc th v lp bin Trong UML, UML c gn stereotype <<control>> Lp bin thng c quan h lin kt hoc ph thuc vi cc lp khc
V d: i tng biu din mt s lnh thng thng nh ct, dn, thay i thng s nhn trong hin th ho
Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin
Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

Command <<control>> + Execute( ) + Reexecute( ) + Unexecute( ) # Do( )

PasteCommand <<control>> + Execute( ) ( + Reexecute( ) + Unexecute( ) # Do( )

BgCommand <<control>> + Execute( ) ( + Reexecute( ) + Unexecute( ) # Do( )

70

Nhn din cc thuc tnh


Da vo c t ca tng use-case, tm kim cc danh t hoc h danh h nhm d h t li quan i t lin n tng ang xt t Tr li cu hi: nhng thnh phn no cu thnh i tng ang xt ?
Lu : cng mt i tng trong cc ng cnh khc nhau chng ta c th tm c cc thuc tnh khc nhau

Nn xc nh (tuy nhin khng bt buc) trong m hnh phn tch


Kiu ca thuc tnh: mt s kiu c bn Bc ca thuc tnh: s t hoc s nhiu Visibility ca thuc tnh: mc cho php truy xut thuc tnh t bn ngoi

UML: thuc tnh c miu t tng minh hoc thng qua quan h vi cc lp khc
Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin
Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

71

Xc nh mc truy cp ca thuc tnh t h


Mc truy cp v phm vi m thuc tnh c th c tham kh t th kho n trc ti tip UML nh ngha 3 mc truy xut thuc tnh (visibility)
p public (+): c th truy xut thuc tnh t tt c cc v tr khc nhau ( ) y protected (#): bn thn lp ang xt v cc lp con ca n c th truy xut thuc tnh private (-): ch c lp ang xt c th truy xut thuc tnh ( ):

Thng thng nn t mc truy xut thuc tnh l private hoc protected (cho cc lp c s), khng nn l public. public Thuc tnh nn c truy xut thng qua tc v get/set

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

72

V d v nhn din cc thuc tnh


H thng ng k mn hc h tn ch qua WEB Nhn din cc thuc tnh cho cc i tng: StudentInfo, StudentInfo LecturerInfo Ch cc mc truy cp ca cc thuc tnh Cc tc v pht sinh trong khi nhn din cc thuc tnh nh Get/Set
StudentInfo <<entity>> - name: String - code: Long - dateOfBirth: Date - addr: String - acaYear: D Y Date - department - home: String - socialAid + GetN ame( ): String + GetCode( ): Long LecturerInfo <<entity>> - name: String - code: String - dateOfBirth: String - addr: String - degree - title: String - division - health - experience: Date + GetN ame( ): String + GetCode( ): String

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

73

V d v nhn din cc thuc tnh


H thng ng k mn hc h tn ch qua WEB Nhn din cc thuc tnh cho cc i tng:

CourseOfferring <<entity>> - courseN ame: String - courseCode: String - offering: int - session i - credit: int - prerequisite

Catalog <<entity>> - acaYear: Date - semester

CourseOffering, Catalog

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

74

Nhn din cc tc v
Da vo c t ca tng use-case, tm kim cc ng t hoc nhm ng t lin q an n i t ng ang quan tng xt Ch xem i tng c to ra v b hu b i nh th no ? Trong thi gian n gi/nhn thng ip ra sao ? g Cc i tng bin c cc tc v nhn lnh t actor. Xem xt mc truy xut ca tc v tng t nh i vi cc thuc tnh; cc tc v thng c visibility l + hoc # Mt s tc v khng xut hin mt cch t nhin trong m hnh phn tch m hnh thit k s nghin cu k trch nhim v hnh vi ca tng i tng
Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin
Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

75

Nhn din lp c s p
Lp c s (base class) c nhn din sau khi nhn din cc lp c th S xut hin ca lp c s lm cho m hnh phn tch c tnh dng li cao (reusability) v d m rng (scalability) UML h tr quan h tng qut ho (generalization) Lp c s tru tng (khng th c th ho to ra i tng) c tn in nghing Lp c s c hnh thnh bng cch xc lp cc quan h tng qut ha ca cc lp c th c chung mt s thuc tnh v/hay mt s tc v
Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin
Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

76

Nhn din lp c s (tt) p ( )


i vi cc i tng/lp thc th, tm cc thuc tnh chung hnh thnh lp c s V d
Trong h thng qun l th vin qua WEB: cc i tng Book Book, Magazine c mt s thuc tnh chung hnh thnh lp LibraryItem i vi h thng ng k mn hc tn ch qua WEB: lp PeopleInfo l lp c s ca StudentInfo v LecturerInfo Chng trnh v b mt a hnh: lp MapCurve l lp c s ca ng ng mc Isoquant v t gy Fracture

Gia lp Gi l c s v cc l c th c mi quan h t lp i tng qut ha c th biu din c trong UML

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

77

Biu din lp c s v quan h tng qut ha


MapCurve UML nh ngha quan h tng qut ho gia mt lp tng qu hn vi mt lp c th hn: lp c th hn c , q tt c thuc tnh, tc v v quan h ca lp kia + nhng thuc tnh/tc v ring ca n K hi mi t c l mt t hiu: i tn u t tam gic nh Lp tng qut hn nm v pha mi tn

Isoquant

Fracture

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

78

V d v nhn din lp c s p
V d: Trong h th T thng ng k mn hc tn ch qua WEB, lp PeopleInfo l tng qut ho ca StudentInfo v LecturerInfo
# name: String # code: String # dateOfBirth: Date # addr: String

StudentInfo <<entity>> - acaYear: Date - department - home: String - socialAid

LecturerInfo <<entity>> - degree - title: String - division - health - experience: Date

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

79

Nhn din cc mi quan h q


Sau khi xc nh cc lp/i tng k c cc i tng t ng c s cc q an h gia cc lp cn c xc s, quan c c lp Trong m hnh phn tch cc i tng/lp c quan h vi nhau Mt s quan h m UML h tr
Tng qut ho (generalization) Lin kt (association) Bao gp (aggregation)

Cc quan h khc c p dng cho m hnh thit k


Ph thuc (dependency) C th ho (realization)

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

80

Q Quan h lin kt
Quan h lin kt l mi quan h gia 2 i tng/lp V ngha v k hiu ging nh quan h lin kt trong m hnh nghip v p dng cho 2 lp c mi tng quan mang ngha nht nh Ch ghi r (nu c th c) g ( )
Bc v tn vai tr ca mi lp trong quan h Tn ca chnh quan h lin kt

Da vo m hnh nhgip v xc nh cc mi quan h lin kt

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

81

V d - mi quan h lin kt q
StudentInfo St d tI f <<entity>> students d 40..80 has h Registration <<entity>> - acaYear: Date - semester 0..1 lecturer LecturerInfo <<entity>> 0..1 offering CourseOffering <<entity>> reg

V d:
Lp Registration lin kt vi lp StudentInfo LecturerInfo v CourseOffering

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

82

Q Quan h bao gp
UML nh ngha quan h bao gp l trng hp c bit ca quan h lin kt, khi m mt u ni lin kt tr thnh u ni bao gp (aggregation) Lp u ni bao gp s bao hm lp kia K hiu ca u ni bao gp l mt hnh thoi t hoc khng t en C hai dng bao gp
Chia x (shared): chia x gia cc bao gp khc nhau Hon ton (composite): s hu y

Xc lp cc mi quan h bao gm v biu din chng ln lc lp


Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin
Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

83

Q Quan h bao gp
Composite aggregation
Specifies that the existence of the part is dependent on the whole. Is specified with a filled diamond.

Shared aggregation
The part may be simultaneously in many composite instances Shared aggregation is specified with a hollow diamond.

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

84

Q Quan h bao gp v d
i vi h thng ng k mn hc tn ch qua WEB, lp Catalog bao lp CourseOffering C t l b gp l C Off i
CourseOffering <<entity>> Catalog <<entity>> << tit >> - acaYear: Date - semester

Ca s giao din bao gp hon ton thanh cun v menu Menu


1

Window

ScrollBar

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

85

Q Quan h ph thuc p
A dependency relationship indicates that a change to one class may cause a change in the other class.

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

86

Q Quan h c th ha
A realization relationship exists between two classes when one of them must realize, or implement, the behavior specified by the other. For example a realization relationship connects an example, interface to a subsystem. The interface specifies the behaviors, and the subsystem implements the behaviors. b h i
<<realize>> realize

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

87

Xy dng lc lp y g p
Lc lp (class diagram) biu din cu trc ca mt s lp v q an h gia chng quan m t kha cnh tnh (static) ca h thng H thng phc tp c nhiu lp cn xy dng nhiu lc lp, mi lc m t mt phn ca h thng Lc lp c b sung v hon thin trong m ( p, , hnh thit k (thm mt s lp, chi tit cc thuc tnh v tc v,
lm r cc quan h)

Lc lp c xy dng qua cc bc
Xc nh cc lp Xc nh thuc tnh v tc v ca cc lp Xc nh cc lp c s v quan h tng qut ho Xc nh cc quan h lin kt v bao gp
Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin
Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

88

V d mt lc lp phn tch pp
mt lc lp ca chng trnh hin th b mt a hnh
Isoquant entity <<entity>> - altitude: double isoquants * FieldMap <<entity>> - name: String + wrap( ): Region

Point2D P i 2D - x: double - y: double

p points * MapCurve - ID: int - open: boolean

fractures Fracture F <<entity>>

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

89

Thit lp PACKAGE p
Package l mt c ch t chc cc phn t vo cc nhm c lin h v ng ngha vi nhau g g Package c th import cc phn t t mt package khc C th ch ra quan h gia cc package
Ph thuc Tng qut ho

Mc truy xut ca package


Private: ch n v cc package import n c th truy xut ni dung Protected: ging nh private nhng cho php thm cc package dn xut Public: cc package khc c th truy xut ni dung Implementation: khng cho php import, c th p dng cho cc phn t bn p g p p p p g p trong package

UML cho php biu din cc PACKAGE v cc mi quan h PACKAGE


Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin
Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

90

V d v mt PACKAGE
package UniPeople cha cc lp lin quan n thng tin con ngi UniPeople
PeopleInfo # name: String S i # code: String # dateOfBirth: Date # addr: String add : St g StudentInfo - acaYear: D Y Date - department - home: String - socialAid
Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin
Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

LecturerInfo - degree - title: String - di i i division - health - experience: Date

91

V d v PACKAGE

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

92

Tng kt g
Phn tch h thng cho OOP theo UML chia lm 2 bc:
Thu thp yu cu bng m hnh nghip v Phn tch v xc nh tnh nng h thng bng m g g g hnh phn tch

M hnh phn tch nhn din cc i tng/lp: thc th bin iu khin th, bin, Nhn din cc thuc tnh v mt s tc y v, tuy nhin cha lm r hnh vi ca chng ( m hnh thit k) UML h tr mt s phn t: lp, i tng, tng lc lp package lp,
Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin
Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

93

Ti liu tham kho


Chapter 10, 11, 12, 20, 21: Software Engineering A Practioners Approach

Trng i Hc Bch Khoa - Khoa Cng N gh Thng Tin


Copyright 2004 Th.S N guyn Cao Tr caotri@hcmut.edu.vn

94

You might also like