Ứng dụng UML trong thiết kế phần mềm

MỤC LỤC

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 151

Xaâc ắnh ýu cíìu (requirements)

Muơc ăủch cuờa giai ăoaơn xaõc ắnh ýu cớỡu lađ coõ ặỳơc mửơt sỷơ thửịng nhớịt giỷọa khaỏch haõng vỳỏi caỏc nhaõ phaỏt triùớn vùỡ nhỷọng gũ maõ hùồ thửởng seọ thỷồc hiùồn. Mửơt sỷu liùơu trỷơc quan seụ ặỳơc xớy dỷơng qua mử hũnh hoõa caõc chỷõc nựng mađ hùơ thửởng hửợ trỳồ cho tỷõng loaồi ngỷỳõi sỷó duồng.

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 153

Phờn tủch (analysis)

Trong workflow nađy, RUP ắnh nghụa mử hũnh Analysis sỷó duồng lỷỳồc àửỡ lỳỏp (Class diagram) vỳỏi mửồt sửở mỳó rửồng vaõ caỏc lỷỳồc àửỡ mử hũnh hoáa tûúng taác nhû Sequence hay Collaboration cuãa UML. _ Boundary : lỳỏp trong hùồ thửởng àaóm nhờồn vai troõ giao tiùởp giỷọa hùồ thửởng vỳỏi caỏc taỏc nhờn bùn ngoaõi vủ duồ nhỷ giao diùồn ngỷỳõi sỷó duồng.

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 154

RUP mỳờ rửơng lỷỳơc ăửỡ Class cho workflow analysis bựỡng caõch ắnh nghụa thùm boundary, control vaõ entity tỷõ cỳ chùở mỳó rửồng cuóa UML.

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 156

Thiùởt kùở (design)

Caõc kiùớu dỷụ liùơu hay caỏc lỳỏp àùỡu mang tủnh chờởt àựồc trỷng cuóa mửi trỷỳõng caõi àựồt vaõ ngửn ngỷọ lờồp trònh. Lỷỳồc àửỡ lỳỏp cho use case mỳó taõi khoaón vỳỏi caỏc bửớ sung so vỳỏi mỷỏc phờn tủch. Lỷỳồc àửỡ Sequence mử taó tỷỳng taỏc giỷọa caỏc lỳỏp àùớ thỷồc hiùồn chỷỏc ựng trong àoỏ quan tờm àùởn trũnh tỷồ thỳõi gian laõ àiùớm khaỏc biùồt chuó yùởu so vỏi lỷỳồc àửỡ Collaboration.

Implementation sỷó duồng cấc kùởt quẫ tỷõ analysis võ design àùớ tiùởn hõnh mậ hốa võ cõi àựồt cấc thõnh phờỡn (component) dỷỳỏi dẩng mậ nguưỡn, cấc script, cấc file nhừ phờn hay caỏc file thi haõnh. _ Tửớ chỷỏc caõi àựồt caỏc lỳỏp vaõo caỏc thaõnh phờỡn (component) vaõ phờn bửở caỏc thaõnh phờỡn vaõo caỏc node trùn mử hũnh Deployment. _ Tủch hỳồp caỏc phờỡn caõi àựồt cuóa nhỷọng ngỷỳõi hay nhỷọng nhoỏm phaỏt triùớn vaõo hùồ thửởng.

Mửợi component coỏ thùớ bao gửỡm nhiùỡu lỳỏp vaõ cung cờởp dừch vuồ cuóa noỏ qua caỏc giao diùồn (interface). Component laõ caỏc thaõnh phờỡn àửồc lờồp vaõ caỏc component cuóa hùồ thửịng coõ thùớ ặỳơc cađi ăựơt trùn caõc mửi trỷỳđng khaõc nhau. +Motaikhoan() Ăỷa lỳõp tađi khoaờn vađo component tađi khoaờn ăùớ thùm dừch vuơ mỳờ taõi khoaón cho component.

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 159

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 160

Phaỏt triùớn mửồt ỷỏng duồng quaón lyỏ giaỏo vuồ theo RUP 1. Giỳỏi thiùồu ỷỏng duồng

Ăớy lađ ỷõng duơng mađ hiùơn traơng ăaụ ặỳơc nựưm bựưt bỳời nhiùỡu ngỷỳđi vađ lađ lụnh vỷồc khaỏ quen thuửồc trong mử hũnh hoỏa vaõ phaỏt triùớn phờỡn mùỡm. Giaỏo vuồ àaồi hoồc laõ baõi toaỏn tỷỳng àửởi àựồc thuõ trong cửng nghùồ phờỡn mùỡm vaõ coỏ ỷỏng duồng thỷồc tùở. Viùồc phờn tủch vaõ thiùởt kùở khửng quaỏ phỷỏc taồp nhỷng liùn quan àùởn mửồt tờồp khaỏi niùồm mử hũnh hoỏa tỷỳng àửởi àờỡy àuó cuóa UML vaõ àiùỡu naõy giuỏp ngỷỳõi phaỏt triùớn nựổm bựổt khaó nựng cuọng nhỷ caỏch ỷỏng duồng UML trong quy trũnh phaỏt triùớn phờỡn mùỡm RUP.

Muồc àủch cuóa ỷỏng duồng laõ minh hoồa chi tiùởt caỏc luửỡng cửng viùồc trong RUP sỷó duồng UML trong bỷỳỏc lựồp (iteration) thỷỏ nhờởt. Viùồc quaón lyỏ giaóng viùn chú àỳn giaón laõ lỷu trỷọ thửng tin giaóng viùn nhựỗm da daồng hoỏa quy trũnh nghiùồp vuồ phuồc vuồ cho quaỏ trũnh minh hoồa. _ Quaón lyỏ thửng tin sinh viùn : bao gửỡm viùồc lỷu trỷọ, tra cỷỏu, tũm kiùởm dỷọ liùồu mửồt sinh viùn nhỷ hoồ tùn, ngaõy sinh.

_ Quaón lyỏ viùồc àựng kyỏ hoồc phờỡn cuóa sinh viùn : lỷu trỷọ vaõ tra cỷỏu cuọng nhỷ thay àửới nhỷọng hoồc phờỡn maõ sinh viùn àựng kyỏ trong hoồc kyõ. _ Quaón lyỏ quaỏ trũnh hoồc tờồp vaõ kùởt quaó cuóa sinh viùn : lỷu trỷọ kùởt quaó thi caỏc hoồc phờỡn cuóa hoồc kyõ, tra cỷỏu àiùớm sửở vaõ in baóng àiùớm. ÛÁng duồng cuọng sỷó duồng caỏc khaỏi niùồm phaỏt triùớn phờỡn mùỡm theo component, kiùởn truỏc phờỡn mùỡm ba lỳỏp (three-tiered application) vaõ kiùởn truỏc client-server nhựỗm muồc àủch minh hoồa trùn mửồt tờồp khaỏi niùồm àa daồng UML vaõ RUP.

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 161

ÛÁng duồng quaón lyỏ giaỏo vuồ bao gửỡm quaón lyỏ giaóng viùn vaõ quaón lyỏ sinh viùn. Dỷồa trùn khaó nựng cuóa trỷỳõng vaõ yùu cờỡu cuóa sinh viùn, phoõng àaõo taồo tiùởn haõnh mỳó caỏc hoồc phờỡn vaõo àờỡu mửợi hoồc kyõ. Phoõng àaõo taồo àaóm nhờồn caỏc cửng viùồc mỳó hoồc phờỡn, tửớ chỷỏc thi vaõ ghi nhờồn kùởt quaó.

Tũm caõc business entity ặỳơc sỷờ duơng trong mửợi nghiùơp vuơ ăùớ mử taờ roụ hỳn vùỡ nghiùồp vuồ naõy qua liùn hùồ giỷọa caỏc busisness entity. Hoồc phờỡn (from Business Object Model) Phoõng àaõo taồo (from Business Actors) Mỳó hoồc phờỡn. Nghiùồp vuồ mỳó hoồc phờỡn cuóa phoõng àaõo taồo àoõi hoói thao taỏc trùn mửồt danh saỏch caỏc hoồc phờỡn.

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 162

Xaâc ắnh ýu cíìu (requirements)

Muồc àủch cuóa mử hũnh naõy laõ taồo caỏc use case sao cho thuờồn lỳồi trong sỷóa ăửới, kiùớm tra vađ quaờn lyõ vũ vớơy mửơt sửị use case khửng ặõng riùng leờ mađ tham gia vaõo caỏc quan hùồ vỳỏi use case khaỏc. Caỏc quan hùồ giỷọa caỏc use case bao gửỡm nhiùỡu loaồi nhỷ Association (vỳỏi caỏc stereotype nhỷ “include”,. ”extend”..) hay tửớng quaỏt hoỏa (Generalization). Quaón lyỏ hoồc phờỡn (from Hoc phan) Xùởp thỳõi khoaỏ biùớu (from Giang day) Phoõng àaõo taồo (from Actors).

Àựng nhờồp hùồ thửởng (from He thong) Phờn cửng giaóng viùn(from Giang day) Mỳó hoồc phờỡn (from Hoc phan).

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 163

Phờn loaồi caỏc use case theo àửồ ỷu tiùn

Phoõng àaõo taồo kủch hoaồt chỷỏc nựng cho viùồc duyùồt mửồt danh saỏch caỏc hoồc phờỡn cuóa hoồc kyõ cho mửồt khoaỏ. Tuyõ theo khaó nựng cuóa nhaõ trỷỳõng vaõ yùu cờỡu cuóa sinh viùn, phoõng àaõo taồo quýịt ắnh mỳờ mửơt hoơc phớỡn hay khửng. Khi quýịt ắnh mỳờ hoơc phớỡn mửơt transaction seụ ặỳơc thỷơc hiùơn vađ chuýớn phờỡn àoỏ sang danh saỏch caỏc hoồc phờỡn mỳó.

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 164

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 165

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 166

Phờn tủch mửồt use case

Lỷỳồc àửỡ Collaboration mử taó tỷỳng taỏc giỷọa caỏc àửởi tỷỳồng àùớ thi haõnh use case mỳó hoồc phờỡn.

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 167

Phờn tủch mửồt analysis class

Tinh chùị caõc quan hùơ vađ xaõc ắnh thuửơc tủnh hiùớn nhiùn cuờa caõc analysis class.

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 168

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 170

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 171

Thiùởt kùở mửồt use case

Xaõc ắnh caõc hùơ thửịng con vađ interface tham gia trong quaõ trũnh thi hađnh use case. Mử taó tỷỳng taỏc trong Use case qua lỷỳồc àửỡ Sequence vỳỏi sỷồ tham gia cuóa caỏc hùồ thửởng con naõy. Xaâc ắnh caâc ýu cíìu cho quaâ trònh cađi ăùơt thûúđng lađ caâc ýu cíìu phi chûâc nựng.Hoồc phờỡn Fields (from DS).

Xaõc ắnh caõc lỳõp thiùịt kùị tỷđ caõc lỳõp phớn tủch cho mửơt use case.

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 172

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 173

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 174

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 175

Caõi àựồt (implementation)

Lờồp kùở hoaồch cho viùồc caõi àựồt vaõ tủch hỳồp tỷõng bỷỳỏc caỏc thaõnh phờỡn cuóa hùồ thửởng khỳói àờỡu tỷõ caỏc use case trong iteration. Àiùỡu naõy khiùởn viùồc kiùớm chỷỏng mửồt use case hoaõn chúnh dùợ daõng hỳn.Quaỏ trũnh caõi àựồt caỏc thaõnh phờỡn cờỡn phaói dỷồa vaõo caỏc phuồ thuửồc giỷọa caỏc thaõnh phờỡn. Caỏc thaõnh phờỡn naõo àoỏng vai troõ cung cớịp dừch vuơ cớỡn phaời ặỳơc cađi ăựơt vađ tủch hỳơp trỷỳõc ăửỡng thỳđi ặỳơc kiùớm chỷỏng chỷỏc nựng.

Mửợi lờỡn tủch hỳồp mửồt thaõnh phờỡn nùn dỷồa vaõo kùởt quaó lờỡn tủch hỳồp trỷỳỏc. Viùồc xờy dỷồng mửồt use case àửi khi àoõi hoói phaói xờy dỷồng mửồt loaồt caỏc component mỳỏi. Chú xờy dỷồng nhiùỡu component mỳỏi khi use case àoỏng vai troõ quan troồng, nùởu khửng thũ taồm thỳõi hoận lẩi àùởn lờỡn cõi àựồt võ tđch hỳồp kùở tiùởp.

Khi àậ cố kùở hoẩch cố thùớ tiùởn hõnh choồn phiùn baón caõi àựồt thủch hỳồp cuóa mửồt hùồ thửởng con vaõ caỏc component àùớ tiùởn haõnh biùn dừch, liùn kùởt vaõ thi haõnh.

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 176

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 177

ÛÁNG DUÅNG UML TRONG QUY TRềNH PHAÁT TRIẽÍN PHấèN MẽèM 178

TệÍNG KẽậT 179

    Hiùồn nay, hờỡu hùởt caỏc cửng cuồ hửợ trỳồ phờn tủch thiùởt kùở àùỡu coỏ hửợ trỳồ ngửn ngỷọ UML, viùồc nghiùn cỷỏu UML giuỏp chuỏng ta coỏ thùớ tũm hiùớu vaõ sỷó duồng caỏc CASE tool hửợ trỳồ cho viùồc phaỏt triùớn phờỡn mùỡm, àửỡng thỳõi coỏ thùớ tiùởp cờồn vỳỏi nhỷọng qui trũnh saón xuờởt phờỡn mùỡm tiùn tiùởn trùn thùở giỳỏi. Trong àiùỡu kiùồn nùỡn cửng nghùồ phờỡn mùỡm nỷỳỏc ta coõn khaỏ non treó, viùồc ặa vađo sỷờ duơng mửơt qui trũnh cửng nghùơ vađ mửơt ngửn ngỷụ mử hũnh hoõa mỳõi seụ gựồp khửng ủt khoỏ khựn, nhỷng trong giai àoaồn buõng nửớ cuóa ngaõnh cửng nghùồ phờỡn mùỡm hiùồn nay viùồc tũm hiùớu vaõ sỷó duồng mửồt ngửn ngỷọ mử hũnh hoỏa hiùồu quaó nhỷ UML laõ rờởt cờỡn thiùởt.

    TệÍNG KẽậT 180

    Mửơt lớỡn nỷụa chuõng em xin chớn thađnh caờm ỳn Thớỡy Dỷỳng Anh Ăỷõc, Thớỡy Lù Ăũnh Duy cuđng toađn thùớ quyõ Thớỡy Cử trong khoa ăaụ tớơn tũnh giaờng daơy chuõng em trong suưởt nhỷọng nựm hổc vỷõa qua. Mựồc duõ chuỏng em àậ hùởt sỷỏc cưở gựỉng àùớ hoađn thiùơn ăùỡ tađi nhỷng chựưc khửng traõnh khoời nhỷụng thiùịt soõt nhớịt ắnh, kủnh mong quyõ thớỡy cử tớơn tũnh chú baờo ăùớ ăùỡ tađi cuờa chuõng em ặỳơc hoađn thiùơn hỳn.

    Phuồ luồc A CAÁC KHAÁI NIẽÅM

    Concurrent substate Lađ mửơt traơng thaõi con ặỳơc tiùịn hađnh ăửỡng thỳđi vỳõi mửơt traồng thaỏi con khaỏc bùn trong mửồt traồng thaỏi gheỏp. Khuửn mớợu phaời dỷơa trùn caõc thađnh tửị ăaụ ặỳơc ắnh nghụa trong UML.Stereo chú mỳó rửồng vùỡ ngỷọ nghụa khửng mỳó rửồng vùỡ cờởu truỏc.