Professional Documents
Culture Documents
DH Uml6
DH Uml6
Ni dung
1. Tin trnh pht trin phn mm theo hng i tng 2. Gii thiu Ngn ng m hnh ha thng nht UML 3. M hnh ha nghip v 4. M hnh ha trng hp s dng 5. M hnh ha tng tc i tng
Biu lp v gi
7. Biu chuyn trng thi v biu hot ng 8. Biu kin trc vt l v pht sinh m trnh 9. M hnh ha d liu 10. Bi hc thc nghim
dvduc-2004 Phn tch thit k hng i tng Bi 6 - 2/40
Bi 6
Biu lp v gi
Lp l g?
i tng l ci g tn ti trong th gii thc Lp l m t thuc tnh, hnh vi, ng ngha ca mt nhm i tng
Th d v lp: Lp Employee
i tng ca lp c cc attribute: Name, Address, Salary Cc operation: Thu mn, ui vic v bt nhn vin?
Tn lp Thuc tnh Thao tc
- Private + Public
dvduc-2004
Tm kim lp nh th no?
Ch rng danh t c th l tc nhn, lp, thuc tnh v biu thc khng phi loi trn Nhng ci chung ca i tng to thnh lp Cc bo co tm ra trong pha phn tch yu cu hnh thnh lp giao din Cc thit b phn cng c biu din bi lp khc nhau
Tm lp t biu tng tc
Tm lp cc ni khc
dvduc-2004
Bi 6 - 5/40
Tm kim lp nh th no?
dvduc-2004
Lp biu lp
Biu lp cho bit hnh nh tnh ca b phn h thng Biu lp bao gm cc lp v quan h gia chng Thng thng mi h thng c vi biu lp
Biu lp gip ngi pht trin quan st, lp k hoch cu trc h thng trc khi vit m trnh Rose
dvduc-2004
Stereotype ca lp
Trong biu lp, stereotype l c ch phn nhm lp UML c sn nhiu stereotype s dng Ba stereotype lp c s s dng trong pha phn tch l
Boundary
Dnh cho lp nm trn bin h thng vi th gii cn li Chng c th l form, report, giao din vi phn cng nh my in, scanner... Kho st biu UC tm kim lp bin
Form
Use Case
Entity Control
Phn tch thit k hng i tng
dvduc-2004
Bi 6 - 8/40
Stereotype ca lp
Boundary Entity
Lp thc th l lp lu tr thng tin s ghi vo b nh ngoi Tm chng trong lung s kin v biu tng tc Thng thng phi to ra bng CSDL cho lp loi ny
BoundaryClass
EntityClass
Control
C trch nhim iu phi hot ng ca cc lp khc Thng thng mi UC c mt lp iu khin N khng thc hin chc nng nghip v no Cc lp iu khin khc: iu khin s kin lin quan n an ninh v lin quan n giao dch CSDL
Phn tch thit k hng i tng
ControlClass
dvduc-2004
Phn loi lp theo cc khi nim ca ngn ng lp trnh c th: C++, Java, Web, Visual Basic, CORBA, Oracle... Rose h tr nhiu stereotype cho cc nhm lp, th d
Lp thng thng Lp tham s (Parameterized class) Lp hin thc (Instantiated class) Lp tin ch (Class utility) Lp tin ch tham s (Parameterized class utility) Lp tin ch hin thc (Instantiated class utility) Metaclass Giao din (Interfaces)
dvduc-2004
Bi 6 - 10/40
S dng to ra h cc lp khc C tn khc l template S dng cho C++, Ada Th d vi lp tham s List, c th to ra cc lp EmployeeList, OrderList... t i s cho lp tham s
Cc i c hin th trong hp nt t
L lp hin thc m i ca chng c gi tr Trong UML, k php lp hin thc l lp c tn i s trong angle brackets <>
dvduc-2004
Bi 6 - 11/40
L tp hp cc thao tc Th d chng c th l cc hm ton hc cc lp khc s dng K php ha: Hnh ch nht bng
Class Utility
Item
Operation()
dvduc-2004
Bi 6 - 12/40
Metaclass
Nhiu ngn ng hng i tng h tr khi nim giao din tch ci t lp khi giao din Giao din ch cha signatures ca phng php cho lp ch khng cha ci t Cch tip cn ny l c s ca ngn ng nh ngha giao din (Interface Definition Language IDL)
dvduc-2004
Bi 6 - 13/40
c t lp trong biu
Trong Rose:
S dng ca s c t lp gn cc thuc tnh cho lp nh stereotype, persistent, visibility... Ca s c t khc nhau vi cc ngn ng khc nhau khi chn ci t m hnh sau ny
dvduc-2004
Bi 6 - 14/40
c t lp trong biu
c t lp bao gm
Tn lp
Mi lp trong m hnh c tn duy nht Thng thng s dng danh t n, khng nn c du cch Th d: Flight, Airplane Xc nh kh nng nhn thy lp t ngoi gi Cc loi
Phm vi (Visibility)
Public: mi lp trong h thng c th nhn thy Private hay Protected: c th nhn thy t bn trong lp hay t lp friend Package hay Implementation: ch cc lp trong cng gi mi nhn thy
Tnh nhiu (Multiplicity) Yu cu lu tr Duy tr (Persistent) Tng tranh (Concurrency) Tru tng (Abstract)
Phn tch thit k hng i tng Bi 6 - 15/40
dvduc-2004
c t lp trong biu
c t lp bao gm
L s hin thc mong i ca lp Th d: tnh nhiu ca lp Employee l n, ca lp iu khin v lp Security Manager l 1... Multiplicity ngha
n (Mc nh)
0..0 0..1 0..n 1..1 1..n
Nhiu
Khng Khng hoc 1 Khng hoc nhiu Chnh xc 1 Mt hoc nhiu
Yu cu lu tr cho lp ...
Phn tch thit k hng i tng Bi 6 - 16/40
dvduc-2004
c t lp trong biu
c t lp bao gm
... Yu cu lu tr cho lp
t kch thc b nh mong i lu tr i tng ca lp Rose: c kh nng sinh ngn ng nh ngha d liu (Data Definition Language DDL) nh ngha cu trc ca CSDL Khi pht sinh DDL, Rose tm kim cc lp c nh du mt trong hai loi c tnh Persistence:
Duy tr (Persistent)
Persistent: Thng tin trong i tng ca lp s lu tr vo CSDL hay tp c khun mu khc Transient: Thng tin trong i tng ca lp s khng lu tr lu di
Khng s dng tnh cht persistence cho lp cng c, lp cng c tham s v lp cng c hin thc tham s.
dvduc-2004
c t lp trong biu
c t lp bao gm
Sequential: (trng thi mc nh) lp ng x nh hot ng ch trong mt lung iu khin Guarded: Lp ng x nh trong a lung iu khin, cc lp trong cc lung khc nhau cng tc vi nhau khng lm nh hng n cc lp khc Active: Lp c lung iu khin ring Synchronous: Lp ng x nh trong a lung iu khin. Cc lp khng cng tc vi nhau v chng hot ng loi tr tng h.
AbstractClass
dvduc-2004
Bi 6 - 18/40
Gi cc lp
Gi lp theo prototype
Boundaries
Control
C th t chc gi bn trong gi khc Quan h gia cc gi hnh thnh trn c s quan h gia cc lp trong cc gi.
dvduc-2004
Bi 6 - 19/40
Thuc tnh lp
Thuc tnh l nhm thng tin lin kt vi lp C th gn mt hay nhiu thuc tnh vo lp Tm kim thuc tnh?
Th d: Ngi s dng nhp tn, a ch ngy sinh ca Nhn vin -> Tn, a ch, ngy sinh l danh t v l thuc tnh ca lp Nhn vin Th d ti liu yu cu h thng m t cc thng tin cn thu thp
dvduc-2004
Bi 6 - 20/40
Thuc tnh lp
Khng nn hnh thnh lp c qu nhiu hay qu t thuc tnh (tt nht nn c lp t hn 10 thuc tnh)
dvduc-2004
Bi 6 - 21/40
c t thuc tnh lp
Trong Rose: s dng ca s c t thuc tnh gn c tnh cho thuc tnh Vi mi thuc tnh trong biu cn c
Tn thuc tnh Kiu d liu thuc tnh lu tr. Ph thuc vo ngn ng lp trnh
Gi tr khi u
dvduc-2004
c t thuc tnh lp
Mt tnh cht quan trng ca lp trnh hng i tng l tnh gi Bn la chn phm vi cho thuc tnh
Public: Mi lp u nhn thy thuc tnh (+) Private: Lp khc khng nhn thy thuc tnh (-) Protected: Cc lp k tha c th nhn thy (#) Package v Implementation: Thuc tnh l public i vi cc lp trong cng gi
Public Private Protected Package (Implementation) + # Public Private Protected
...
Phn tch thit k hng i tng Bi 6 - 23/40
dvduc-2004
c t thuc tnh lp
By value: Lp cha thuc tnh By reference: Thuc tnh t ngoi lp, lp c con tr n thuc tnh Unspecified: Khng xc nh L thuc tnh chia s cho mi hin thc lp K hiu trong lp l tn thuc tnh c gch chn (phin bn c: $) L thuc tnh c to bi 1 hay nhiu thuc tnh khc K hiu: du / trc tn thuc tnh
aClass staticAttribute / derivedAttribute
...
dvduc-2004
Bi 6 - 24/40
Thao tc lp
Khng nn lp ch c 1 hay 2 thao tc Nu lp khng c thao tc th m hnh ha n nh thuc tnh Nu lp c qu nhiu thao tc th kh qun l, nn chia s chng ra cc lp khc
Phn tch thit k hng i tng Bi 6 - 25/40
dvduc-2004
Cc loi thao tc
Thao tc ci t (Implementor)
Ci t mt vi chc nng nghip v Hu nh mi thng ip trong biu tng tc nh x vo thao tc ci t Qun l vic lp v hy b i tng
Th d: cc cu t, hy t ca lp
L cc thao tc private v protected ca lp Cc thng ip phn thn trong biu tng tc nh x n thao tc ny
Phn tch thit k hng i tng Bi 6 - 26/40
dvduc-2004
Quan h gia cc lp
Quan h cho mt lp bit thuc tnh, thao tc v quan h ca lp khc Kt hp (Associations) Ph thuc (Dependencies) T hp (Aggregations) Hin thc quan h (Realizes Relationships) Khi qut ha (Generalizations)
dvduc-2004
Bi 6 - 27/40
Tm kim quan h
Kho st cc lp tm ra cc quan h
Bt k lp no c hnh thnh t lp khc th chng c quan h tp hp Nu nhiu lp k tha t lp th ba th gia chng vi lp th ba c quan h khi qut ha
dvduc-2004
Bi 6 - 28/40
Quan h kt hp
Kt hp cho mt lp bit v thuc tnh v thao tc public ca lp khc Quan h kt hp hai chiu, mt chiu Quan h kt hp phn thn
Person
House
Person
House
Person
dvduc-2004
Bi 6 - 29/40
Quan h ph thuc
Khi thay i c t lp tham chiu th lp s dng n b nh hng Rose khng b sung thuc tnh cho hai lp c quan h ph thuc Cc lnh ngn ng c pht sinh h tr quan h ph thuc
Th d: #include
House Person
dvduc-2004
Bi 6 - 30/40
Quan h ph thuc gi
C th v quan h ph thuc gia cc gi nh gia cc lp Ph thuc gi t gi A n gi B c ngha rng vi gi trong lp A c quan h mt chiu vi cc lp trong gi B
Package A Package B
dvduc-2004
Bi 6 - 31/40
Ph thuc t hp
Door
2..4 Car 1 1 1
Trong quan h ny, mt lp biu din ci ln hn cn lp kia biu din ci nh hn Biu din quan h has-a
4
Tire
Engine
Tng th v b phn c th hy b vo thi im khc nhau Tn khc: quan h t hp bi tham chiu (by reference)
Phn tch thit k hng i tng
#include "car.h" class Door { ..... private: Car *the_car; }; #include "door.h" class Car { ... private: Door *the_Door; }; Bi 6 - 32/40
dvduc-2004
Quan h gp
Tng th v thnh phn c hnh thnh hay hy b vo cng thi im Tn khc: quan h t hp bi gi tr (by value)
Frame 1
#include "Window.h" class Frame { ... private: }
Window n
#include "Frame.h" class Window { ... private: Frame the_Frame; }
dvduc-2004
Bi 6 - 33/40
Generalization l quan h k tha ca hai phn t m hnh nh lp, tc nhn, Use case v gi
HourlyEmp Rate
SalariedEmp Salary
#include Employee.h class HourlyEmp: public Employee { private: float Rate; ...... };
dvduc-2004
Bi 6 - 34/40
c t quan h gia cc lp
Multiplicity Tn quan h Tn nhim v Export control Quan h tnh Quan h Friend Phm vi kt hp (Qualifier) Phn t lin kt
dvduc-2004
Bi 6 - 35/40
c t quan h gia cc lp
Multiplicity
Cho bit bao nhiu hin thc ca mt lp lin kt vi mt hin thc ca lp khc vo cng thi im
Course 0..4 10..20 Student
Tn quan h
Employs
Person
...
dvduc-2004
Bi 6 - 36/40
c t quan h gia cc lp
..... Tn nhim v
S dng tn nhim v thay th cho tn quan h trong quan h kt hp hay t hp ch ra ti sao quan h tn ti
Company +Employer +Employee Person
Export control
Trong quan h kt hp, thuc tnh c pht sinh trong m trnh Phm vi c gn cho thuc tnh bao gm: Public, Private, Protected, Package hay Implementation
...
dvduc-2004
Bi 6 - 37/40
c t quan h gia cc lp
Rose pht sinh thuc tnh cho quan h kt hp v quan h t hp C th gn tnh static cho thuc tnh chia s cho mi hin thc lp
Company +Employer +$Employee Person
Quan h Friend
Quan h ny ch ra rng lp Client c th xm nhp cc thuc tnh v thao tc khng phi public ca lp Supplier C th gn Friend cho kt hp, t hp, ph thuc hay khi qut ha M ngun ca lp Supplier s bao gm logc lp Client c phm vi Friend
...
Phn tch thit k hng i tng Bi 6 - 38/40
dvduc-2004
c t quan h gia cc lp
Phn t lin kt
dvduc-2004
Bi 6 - 39/40
Tm tt
Bi ny xem xt cc vn sau
Tm kim lp Tm kim thuc tnh, thao tc lp Tm kim cc loi quan h gia cc lp Biu din biu lp v gi Biu din ha cc thuc tnh ca thuc tnh, thao tc trong lp Biu din cc thuc tnh cho quan h gia cc lp
dvduc-2004
Bi 6 - 40/40