Transition (chuýín traơng thaâi)

Một phần của tài liệu Ứng dụng UML trong quy trình phát triển phần mền (Trang 73)

Transition ắnh nghôa quan hïơ chuýín ăöíi traơng thaâi giûôa möơt StateVertex nguöìn vađ möơt StateVertex ăñch. Möơt Transition coâ thïí gùưn vúâi caâc chùưn (Guard). Guard lađ biïíu thûâc logic gùưn vúâi möîi Transition. Khi möơt sûơ kiïơn taâc ăöơng lïn thađnh töị gùưn vúâi StateMachine, Transition seô ặúơc kñch hoaơt ăïí thađnh töị nađy chuíín bõ chuýín traơng thaâi. Ăöịi vúâi caâc Transition coâ Guard thò biïíu thûâc cuêa Guard seô ặúơc lûúơng giaâ. Sûơ chuýín traơng thaâi chó xaêy ra khi biïíu thûâc nađy coâ giaâ trõ lađ true, ngûúơc laơi seô bõ huêy boê.

Chûúng 2

NGÛÔ NGHÔA VAĐ CUÂ PHAÂP CAÂC THAĐNH TÖỊ TRONG UML (UML Semantic) 65

2.65. CompositeState (traơng thaâi phûâc)

Composite State ăaơi diïơn cho traơng thaâi phûâc bao göìm nhiïìu ăiïím traơng thaâi (StateVertex ). Do möîi ăiïím traơng thaâi biïíu diïîn möơt traơng thaâi ăún nïn CompositeState cuông bao göìm nhiïìu traơng thaâi ăún. CompositeState cuông coâ thïí bao göìm caâc CompositeState khaâc.

Khúêi taơo ăùng kyâ hoơc phíìn. Chíịm dûât ăùng kyâ hoơc phíìn Ăùng kyâ hoơc phíìn

Ăïịm < 10 ]

[ Ăïịm = 10 ] ^Thöng baâo.Taơo thöng baâo Thïm sinh viïn / Khúêi taơo Ăïịm = 0

Phođng ăađo taơo huêy hoơc phíìn traơng thaâi khúêi ăíìu traơng thaâi kïịt thuâc Möơt traơng thaâi phûâc bao göìm hai traơng thaâi ăún. Nïịu söị sinh viïn ăùng kyâ cho hoơc phíìn < 10 thò tiïịp tuơc cho ăùng kyâ. Nïịu söị sinh viïn = 10 thò thöng baâo hïịt chöî vađ chíịm dûât ăùng kyâ hoơc phíìn. Nïịu ăang ăùng kyâ mađ phođng ăađo taơo huêy hoơc phíìn thò cuông chíịm dûât viïơc ăùng kyâ.

Hònh 2-32 Vñ duơ vïì traơng thaâi phûâc //gheâp

2.65.1. StateMachine

StateMachine lađ thađnh töị mö taê traơng thaâi vađ sûơ biïịn ăöíi traơng thaâi qua caâc sûơ kiïơn cho thađnh töị gùưn vúâi StateMachine. StateMachine bao göìm hai thađnh töị cú baên lađ traơng thaâi (State) vađ chuýín traơng thaâi (Transition).

Chûúng 2

NGÛÔ NGHÔA VAĐ CUÂ PHAÂP CAÂC THAĐNH TÖỊ TRONG UML (UML Semantic) 66

2.66. Mö hònh Events (sûơ kiïơn)

Event lađ caâc sûơ kiïơn coâ thïí nhíơn biïịt, Event bao göìm möơt tíơp tham söị Parameter). caâc ăùơc biïơt hoâa cuêa Events

Hònh 2-33 Mö hònh Event ắnh nghôa sûơ kiïơn

Event lađ caâc sûơ kiïơn taâc ăöơng lïn möơt ModelElement bao göìm caâc ăùơc biïơt hoâa sau

caâc thađnh töị vađ cuâ phaâp cho mö hònh hoâa hađnh ăöơng vađ sûơ chuýín ăöíi hađnh ăöơng giûôa caâc thađnh töị vúâi nhau ăïí thûơc hiïơn möơt taâc vuơ. Activity Graphs tíơp trung vađo trònh tûơ vađ ăiïìu kiïơn xaêy ra cuêa caâc hađnh ăöơng, sûơ phín chia hađnh ăöơng cho möîi thađnh töị liïn quan. caâc loaơi traơng thaâi ăùơc biïơt hoâa cuêa State sûê duơng riïng cho ActivityGraph. ActivityGraph phín loaơi caâc traơng thaâi (ActionState) vađo caâc phíìn (Parttion). Möîi Parttion ăaêm nhíơn möơt vai trođ riïng trong ActivityGraph. Hònh 2-34 Mö hònh Actiiviity Graphs ắnh nghôa thađnh töịâ ActiiviityGraph

Chûúng 2

NGÛÔ NGHÔA VAĐ CUÂ PHAÂP CAÂC THAĐNH TÖỊ TRONG UML (UML Semantic) 67

2.67. ActionState (traơng thaâi hoaơt ăöơng)

ActionState kïị thûđa SimpleState tûđ StateMachine ăaơi diïơn cho viïơc thi hađnh möơt hađnh ăöơng.

2.67.1. ActivityGraph (ăöì thõ hoaơt ăöơng)

ActivityGraph mö taê caâc xûê lyâ cuêa caâc thađnh töị liïn quan, thađnh töị nađo ăaêm nhíơn caâc xûê lyâ nađo vađ sûơ chuýín giao xûê lyâ giûôa caâc thađnh töị vúâi nhau. ActivityGraph ặúơc gùưn vúâi möơt classifier (bao göìm UseCase) vađ coâ thïí ặúơc sûê duơng ăïí mö hònh hoâa quy trònh nghiïơp vuơ trong möơt töí chûâc.

Yïu cíìu mua hađng Thanh toaân

Nhíơn hađng Nhíơn ăùơt hađng Giao hađng

ActionState Cung cíịp hađng Partition Kho hađng

Kho hađng : Böơ phíơn baân hang : Khaâch hađng : Hònh 2-35 Actiiviiviity Graph

Chûúng 2

NGÛÔ NGHÔA VAĐ CUÂ PHAÂP CAÂC THAĐNH TÖỊ TRONG UML (UML Semantic) 68

2.68. ObjectFlowState (traơng thaâi ăöịi tûúơng luín chuýín)

ObjectFlowState mö taê sûơ trao ăöíi dûô liïơu vïì caâc ăöịi tûúơng giûôa caâc traơng thaâi hoaơt ăöơng trong ActivityGraph. ObjectFlowState chûâa thöng tin vïì möơt classifier ăang úê möơt traơng thaâi xaâc ắnh vađ ăoâng vai trođ trao ăöíi thöng tin giûôa caâc ActionState.

2.68.1. Partition (vuđng)

Parttion phín chia caâc State trong ActivityGraph thađnh caâc nhoâm vađ thûúđng tûúng ûâng vúâi caâc ăún võ cíịu truâc trong möơt töí chûâc. Partition coâ thïí ặúơc sûê duơng ăïí phín loaơi traơng thaâi hay caâc tađi nguýn hïơ thöịng coâ liïn quan ăïịn möơt nhoâm caâc traơng thaâi

Chûúng 2

NGÛÔ NGHÔA VAĐ CUÂ PHAÂP CAÂC THAĐNH TÖỊ TRONG UML (UML Semantic) 69

2.69. Package Model Management (goâi quaên trõ mö hònh)

Model Management bao göìm caâc thađnh töị coâ chûâc nùng tíơp húơp caâc thađnh töị khaâc thađnh nhoâm. Caâc thađnh töị ặúơc ắnh nghôa trong Model Management coâ

cho caâc thađnh töị ngoađi package tham chiïịu.

Hòònh 2-36 Mö hònh cuêa caâc thađnh töịâ quaên trõ mö hònh..

2.69.1. Elementimport

ElementImport ắnh nghôa chó danh vađ tíìm vûơc cuêa möơt ModelElement khi ặúơc ặa vađo möơt Package. Möơt ModelElement trong package seô coâ chó danh coâ thïí khaâc vúâi ắnh danh cuêa ModelElement ăoâ.

Chûúng 2

NGÛÔ NGHÔA VAĐ CUÂ PHAÂP CAÂC THAĐNH TÖỊ TRONG UML (UML Semantic) 70

2.70. Model (mö hònh)

Mö hònh lađ trûđu tûúơng hoâa cuêa möơt hïơ thöịng cho möơt muơc ăñch cuơ thïí. Muơc ăñch nađy giuâp xaâc ắnh nhûông thađnh phíìn nađo cuêa hïơ thöịng seô ặúơc phaên aânh úê mö hònh, khöng phaêi tíịt caê caâc thađnh phíìn hïơ thöịng ăïìu töìn taơi trong möơt mö hònh. Do ăoâ mö hònh seô thïí hiïơn hïơ thöịng trïn goâc ăöơ phuđ húơp vúâi muơc ăñch nađy.

2.70.1. Package (goâi)

Package lađ tíơp húơp logic caâc thađnh töị do ăoâ Package khöng ăoâng vai trođ gò trong quaâ trònh maô hoâa phíìn mïìm. Tuy nhiïn Package giuâp quaên lyâ mö hònh vúâi chûâc nùng chûâa caâc thađnh töị vađ caâc Package con. Caâc thađnh phíìn trong möơt Package coâ tíìm vûơc ặúơc xaâc ắnh qua thuöơc tñnh visibility cho caâc thađnh phíìn ngoađi Package tham chiïịu ăïịn. Quan hïơ “access” (lađ möơt stereotype cuêa quan hïơ Permission)giûôa hai Package mang yâ nghôa caâc thađnh töị coâ visibility lađ “public” trong Package cho coâ thïí tham chiïịu búêi caâc thađnh töị trong Package nhíơn.

Quan hïơ “import” (lađ möơt stereotype cuêa quan hïơ Permission)giûôa hai Package mang yâ nghôa caâc thađnh töị coâ visibility lađ “public” trong Package cho ặúơc thïm vađo trong Package nhíơn vúâi caâc chó danh khaâc (ăïí traânh truđng tïn vúâi chó danh cuêa caâc thađnh töị coâ sùĩn) vađ coâ thïí ặúơc tham chiïịu búêi caâc thađnh töị coâ sùĩn qua chó danh nađy.

thađnh phíìn mö taê hađnh ăöơng vađ caâc thađnh phíìn thûơc thi hađnh ăöơng.

Chûúng 2

NGÛÔ NGHÔA VAĐ CUÂ PHAÂP CAÂC THAĐNH TÖỊ TRONG UML (UML Semantic) 71

2.71. Toâm tùưt

Chûúng hai trònh bađy nhûông thađnh töị cú baên vađ cíịu truâc UML, cuđng vúâi viïơc phín tñch caâc goâi thađnh töị cuêa ngön ngûô nhû: package nïìn taêng, package hađnh vi, package quaên trõ mö hònh. Möơt söị khaâi niïơm vađ cuâ phaâp ngûô phaâp khaâ trûđu tûúơng, trong chûúng túâi seô trònh bađy nhûông kyâ hiïơu trûơc quan cuêa caâc thađnh töị trïn trong viïơc mö hònh hoaâ caâc hïơ thöịng thöng qua caâc loaơi lûúơc ăöì.

Chûúng 3

HÏƠ THÖỊNG KYÂ HIÏƠU (UML Notation) 72

3.1. Giúâi thiïơu

möîi loaơi lûúơc ăöì coâ thïí ặúơc sûê duơng trong nhiïìu loaơi mö hònh khaâc nhau.

Trong chûúng nađy seô trònh bađy hïơ thöịng caâc kyâ hiïơu cuêa UML, caâc kyâ hiïơu nađy ặúơc phín loaơi theo caâc lûúơc ăöì. Möîi lûúơc ăöì seô coâ hïơ thöịng caâc kyâ hiïơu riïng vađ cuông coâ möơt söị kyâ hiïơu chung sûê duơng trong nhiïìu loaơi lûúơc ăöì khaâc nhau. Trong UML ắnh nghôa chñn loaơi lûúơc ăöì:

_ Lûúơc ăöì Use Case (Use case diagram)

_ Lûúơc ăöì lúâp (Class Diagram)

_ Lûúơc ăöì ăöịi tûúơng (Object Diagram) _ Lûúơc ăöì tuíìn tûơ (Sepuence Diagram) _ Lûúơc ăöì cöơng taâc (Collaboration Diagram) _ Lûúơc ăöì traơng thaâi (State Diagram)

_ Lûúơc ăöì hoaơt ăöơng (Activity Diagram) _ Lûúơc ăöì thađnh phíìn (Component Diagram) _ Lûúơc ăöì triïín khai (Deployment Diagram)

Chûúng 3

HÏƠ THÖỊNG KYÂ HIÏƠU (UML Notation) 73

3.2. Caâc thađnh phíìn cú baên cuêa lûúơc ăöì

3.2.1. Ăöì thõ vađ nöơi dung (Graphs and their Contents)

Híìu hïịt caâc lûúơc ăöì trong UML ăïìu úê daơng ăöì thõ, caâc thöng tin ặúơc töí chûâc dûúâi daơng hònh hoơc topö, khöng bõ aênh hûúêng búêi sûơ thay ăöíi vïì hònh daâng vađ kñch thûúâc. Caâc kyâ hiïơu trong UML thûúđng úê daơng hai chiïìu, möơt söị lađ hònh chiïịu cuêa caâc kyâ hiïơu ba chiïìu (caâc khöịi líơp phûúng), nhûng thûúđng ặúơc biïíu diïîn dûúâi daơng caâc biïíu tûúơng trïn bïì mùơt hai chiïìu. Coâ böịn loaơi kyâ hiïơu ăöì hoơa cú baên trong hïơ thöịng kyâ hiïơu cuêa UML :

_ Caâc biïíu tûúơng (Icons)– lađ möơt hònh khöng thïí thay ăöíi vïì hònh daơng cuông nhû kñch thûúâc, Icon khöng thïí múê röơng ăïí chûâa nöơi dung bïn trong.

_ Caâc kyâ hiïơu hai chiïìu (2-d sumbols)– coâ kñch cúô khaâc nhau, coâ thïí múê röơng ăïí chûâa caâc thûâ khaâc nhû danh saâch caâc chuöîi hoùơc ngay caê caâc kyâ hiïơu khaâc bïn trong, chuâng cuông coâ thïí ặúơc chia lađm nhiïìu phíìn. Loaơi kyâ hiïơu nađy khi keâo

luön ặúơc gùưn vúâi caâc kyâ hiïơu ăöì hoơa khaâc úê hai ăíìu. Ăûúđng díîn coâ thïí coâ caâc terminator, ăoâ lađ caâc biïíu tûúơng úê cuöịi ặúđng díîn lađm roô nghôa cho caâc ặúđng díîn nađy.

_ Caâc chuöîi (Strings)- coâ thïí töìn taơi nhû lađ möơt thađnh töị ăöơc líơp trong caâc lûúơc ăöì hoùơc lađ möơt phíìn cuêa caâc thađnh töị khaâc trong lûúơc ăöì, hoùơc lađ möơt nhaôn gùưn vađo caâc kyâ hiïơu hay caâc ặúđng díîn.

Chûúng 3

HÏƠ THÖỊNG KYÂ HIÏƠU (UML Notation) 74

3.3. Caâc ặúđng díîn (Drawing Paths)

Ăûúđng díîn lađ möơt tíơp caâc ăoaơn thùỉng coâ caâc ăiïím cuöịi khúâp vúâi nhau, ăíy lađ möơt ăún võ hònh hoơc topö ăún. Caâc ăoaơn thùỉng coâ thïí lađ caâc ặúđng trûơc giao, ặúđng xiïn hoùơc ặúđng cong. Trong möơt söị quan hïơ (vñ duơ nhû kïịt húơp hoùơc töíng quaât hoâa), vađi ặúđng díîn cuđng loaơi coâ thïí liïn kïịt ăïịn cuđng möơt kyâ hiïơu ăún. Trong möơt söị trûúđng húơp caâc ặúđng díîn coâ thïí kïịt húơp laơi hoùơc phín nhaânh thađnh nhiïìu ặúđng nhû töí chûâc cuêa möơt cíy.

3.3.1. Caâc liïn kïịt íín vađ vai trođ cuêa cöng cuơ

Möơt kyâ hiïơu viïịt trïn giíịy thò khöng thïí chûâa caâc thöng tin íín, kyâ hiïơu trïn mađn hònh coâ thïí chûâa caâc liïn kïịt ăïịn caâc thöng tin íín khöng thïí hiïín thõ trong view tônh, muöịn thïí hiïơn caâc thöng tin íín nađy phaêi nhúđ ăïịn caâc cöng cuơ höî trúơ. Caâc kyâ hiïơu trònh bađy dûúâi ăíy ặúơc ắnh nghôa nhû lađ nhûông kyâ hiïơu tônh.

3.3.2. Thöng tin nïìn (Background Information)

(Keywords) Chuöîi lađ möơt daôy caâc kyâ tûơ duđng ăïí hiïín thõ möơt thöng tin nađo ăoâ trong mö hònh. Font vađ kñch cúô cuêa chuöîi coâ thïí phuơ thuöơc vađo thuöơc tñnh cuêa mö hònh, möơt chuöîi coâ thïí úê daơng dođng ăún hay möơt phín ăoaơn.

Chûúng 3

HÏƠ THÖỊNG KYÂ HIÏƠU (UML Notation) 75

Tïn lađ möơt chuöîi duđng ăïí ắnh nghôa cho möơt thađnh töị mö hònh duy nhíịt. Möơt pathname (tïn ặúđng díîn), göìm möơt tíơp caâc tïn ặúơc nöịi vúâi nhau búêi möơt kyâ hiïơu ăùơc biïơt (vñ duơ nhû díịu “::”), ặúơc duđng ăïí tòm möơt thađnh töị mö hònh bùưt ăíìu tûđ göịc cuêa hïơ thöịng. Tïn ặúơc thïí hiïơn nhû lađ möơt chuöîi vùn baên, thöng thûúđng nùìm trïn möơt dođng vađ thûúđng khöng chûâa caâc kyâ tûơ ăùơc biïơt.Thöng thûúđng ăöơ dađi cuêa tïn vađ tíơp caâc kyâ tûơ duđng ăïí ăùơt tïn ặúơc ắnh nghôa búêi cöng cuơ vađ ngön ngûô hiïín thõ.

Vñ duơ : Tïn - Nguýîn Vùn A, abstract, interger Pathname - ngín hađngA::ChinhaânhB::PhođngC Nhaôn (label) cuông lađ möơt chuöîi kyâ tûơ ặúơc gùưn vađo kyâ hiïơu ăöì hoơa.

Tûđ then chöịt (hay tûđ khoâa - keyword) thûúđng duđng ăïí phín biïơt giûôa nhûông nhoâm, nhûông chuê ăïì chung. Kyâ hiïơu cuêa möơt keyword thûúđng lađ möơt chuöíi ặúơc ăùơt trong hai díịu“‹‹ ›› “.Vñ du ơ : ‹‹ extend ››, ‹‹ include›› ...

3.4. Biïíu thûâc (Expression)

Biïíu thûâc ặúơc sûê duơng trong möơt söị cíịu truâc cuêa UML, ăùơc biïơt lađ trong ngön ngûô mö taê rađng buöơc duđng ăïí ắnh nghôa UML. Hađm ặúơc thïí hiïơn nhû lađ möơt chuöîi kyâ tûơ vađ cuâ phaâp cuêa chuöîi ặúơc ắnh nghôa tuđy thuöơc vađo cöng cuơ höî trúơ vađ cöng cuơ phín tñch cho ngön ngûô.

Vñ duơ : Cöngty.Giaâmăöịc.Lûúng > Cöngty.Nhínviïn.Lûúng

3.4.1. Ghi Chuâ (Note)

Lađ möơt kyâ hiïơu ăöì hoaơ coâ chûâa thöng tin dûúâi daơng vùn baên hoùơc chûâa caê hònh aênh. Note coâ thïí thïí hiïơn nhiïìu loaơi thöng tin khaâc nhau nhû: rađng buöơc,

Chûúng 3

HÏƠ THÖỊNG KYÂ HIÏƠU (UML Notation) 76

3.5. Sûơ tûúng quan giûôa caâc loaơi thađnh töị vađ thïí hiïơn cuêa noâ

Nhiïìu khaâi niïơm mö hònh hoâa trong UML coâ hai thïí hiïơn tûúng tûơ nhau ăi thađnh möơt cùơp thađnh töị vađ thïí hiïơn, vñ duơ nhû : Lúâp vađ ăöịi tûúơng, quan hïơ kïịt húơp vađ liïn kïịt, tham söị vađ giaâ trõ...

Hònh 3-2 Lúâp Poiint vađ hai ăöịâi tûúơng Poiint

Role (vai trođ) trong möơt cöơng taâc (collaboration) cuông lađ möơt cùơp giûôa thađnh töị vađ thïí hiïơn. Möơt role trong möơt collaboration ặúơc thïí hiïơn bùìng möơt tïn, díịu hai chíịm vađ kiïíu, möơt thïí hiïơn ặúơc biïíu diïîn bùìng tïn, díịu “/”, danh saâch vai trođ, díịu hai chíịm vađ danh saâch kiïíu. Vñ duơ : Caâc vai trođ Caâc ăöịi tûúơng möơt collaboration

Hònh 3-3 Caâc vai trođ vađ caâc ăöịi tûúơng ăiïím

Chûúng 3

HÏƠ THÖỊNG KYÂ HIÏƠU (UML Notation) 77

3.6. Caâc thađnh phíìn quaên trõ mö hònh (model management)

thađnh phíìn cú baên ăïí ăiïìu khiïín cíịu hònh, ăïí lûu trûô, ăïí ăiïìu khiïín caâc truy cíơp. Möîi thađnh töị coâ thïí ặúơc súê hûôu trûơc tiïịp búêi möơt package ăún, vò víơy cíy kïị thûđa cuêa package lađ möơt cíơy kïị thûđa nghiïm ngùơt. Möơt package coâ thïí tham chiïịu ăïịn möơt package khaâc bùìng caâch duđng caâc khuön míîu cuêa quan hïơ phuơ thuöơc nhû ‹‹import››, ‹‹access›› hoùơc caâc quan hïơ khaâc nhû tinh chïị hay töíng quaât hoâa.

Kyâ hiïơu

Möơt package ặúơc biïíu diïîn bùìng möơt hònh chûô nhíơt lúân vúâi möơt hònh chûô nhíơt nhoê gùưn úê goâc trïn traâi, giöịng nhû biïíu tûúơng cuêa möơt thû muơc.

_ Nïịu nöơi dung cuêa package khöng thïí hiïơn trong hònh chûô nhíơt lúân thò tïn cuêa package ặúơc ăùơt bïn trong hònh chûô nhíơt lúân. (Caâch thïí hiïơn A).

_ Nïịu bïn trong hònh chûô nhíơt lúân coâ chûâa nöơi dung thò tïn cuêa package ặúơc ăùơt bïn trong hònh chûô nhíơt nhoê. (Caâch thïí hiïơn B).

Caâch thïí hiïơn A Caâch thïí hiïơn B

Name Tïn package

Hònh 3-4 Caâch thïí hiïơn tïn cuêa Packages

Packages Editor chûâa caâc Package phuơ thuöơc caâc quan hïơ Hònh 3-5 Package vađ caâc quan hïơ

Chûúng 3

HÏƠ THÖỊNG KYÂ HIÏƠU (UML Notation) 78

3.7. Caâc thađnh phíìn quaên trõ mö hònh (model management)

Chûúng 3

HÏƠ THÖỊNG KYÂ HIÏƠU (UML Notation) 79

3.8. Subsystem

3.8.1. Ngûô nghôa

Möơt subsystem (hïơ thöịng con) miïu taê möơt ăún võ hađnh vi cuêa möơt víịn ăïì trong hïơ thöịng hay noâi caâc khaâc lađ trong möơt mö hònh. Ăùơc taê cuêa subsystem bao göìm caâc thao taâch hay caâc hađm cuêa subsystem, caâc thađnh töị ăùơc taê liïn quan ăïịn subsystem nhû use case, state machines...

3.8.2. Kyâ hiïơu

Kyâ hiïơu cuêa möơt subsystem tûúng tûơ nhû cuêa package, göìm möơt hònh chûô nhíơt lúân vađ möơt hònh chûô nhíơt nhoê gùưn vađo goâc trïn traâi cuêa hònh chûô nhíơt lúân, ăöìng thúđi coâ thïm möơt kyâ hiïơu hònh caâi nôa gùưn vađo goâc trïn phaêi cuêa hònh chûô nhíơt chûâa tïn subsystem.

Hònh 3-7 Möơt thïí hiïơn ăún giaên cuêa subsystem

Möơt subsytem cuông coâ hai caâch thïí hiïơn tïn giöịng nhû package. Bïn caơnh ăoâ ta cuông coâ thïí duđng kyâ hiïơu cuêa package ăïí thay thïị cho subsystem bùìng caâch thïm vađo tûđ khoâa ‹‹ subsystem›› vađo phña trïn tïn cuêa

subsystem. Hònh chûô nhíơt lúân cuêa subsystem co thïí ặúơc chia lađm ba phíìn : _ Operation (thao taâc)

_ Specification Element (thađnh töị ăùơc taê/mö taê)

_ Realization element (thađnh töị thûơc thi/ duđng ăïí ắnh roô caâc ăùơc taê tûúng ûâng) Tuyđ trûúđng húơp sûê duơng mađ nhûông phíìn nađy coâ thïí hiïín thõ hay khöng, coâ thïí hiïín thõ caê ba phíìn hay tûđng phíìn riïng, giûôa caâc phíìn coâ thïí coâ caâc aânh xaơ vúâi nhau hoùơc vúâi caâc thađnh töị bïn ngoađi thöng quan caâc quan hïơ.

Chûúng 3

HÏƠ THÖỊNG KYÂ HIÏƠU (UML Notation) 80

3.9 Caâc thađnh phíìn quaên trõ mö hònh (model management)

Hònh 3-9 Subsystem vađ aânh xaơ (mappiing) giûôa caâc thađnh phíìn

Chûúng 3

HÏƠ THÖỊNG KYÂ HIÏƠU (UML Notation) 81

3.10. Model

3.10.1. Ngûô nghôa

Möơt model (mö hònh) lađ sûơ trûđu tûúơng hoâa cuêa möơt víịn ăïì trong hïơ thöịng, noâ miïu taê hïơ thöịng dûúâi möơt goâc ăöơ quan saât ăùơc biïơt vúâi möơt mûâc ăöơ trûđu tûúơng nađo ăoâ, model coâ thïí chûâa tíịt caê caâc thađnh töị mö hònh cíìn thiïịt cho viïơc miïu taê víịn ăïì cuêa hïơ thöịng. Caâc thađnh töị trong mö hònh ặúơc töí chûâc dûúâi daơng cíy kïị thûđa cuêa caâc package hoùơc subsystem.

3.10.2. Kyâ hiïơu

Möơt model sûê duơng kyâ hiïơu cuêa package vúâi möơt hònh tam giaâc nhoê ặúơc gùưn vađo trïn phaêi cuêa hònh chûô nhíơt lúân. Trong trûúđng húơp, model coâ chûâa nöơi dung thò hònh tam giaâc ặúơc veô trong hònh chûô nhíơt nhoê cuđng vúâi tïn cuêa model. Möơt model cuông coâ thïí sûê duơng kyâ hiïơu nhû lađ package vúâi möơt tûđ khoâa ‹‹ model ›› ặúơc ăùơt phña trïn tïn cuêa model.

Hòònh 3-11 Töí chûâc kïịâ thûđa trong Modell

Chûúng 3

HÏƠ THÖỊNG KYÂ HIÏƠU (UML Notation) 82

3.11. Caâc cú chïị múê röơng töíng quaât

Một phần của tài liệu Ứng dụng UML trong quy trình phát triển phần mền (Trang 73)