Tải bản đầy đủ (.pdf) (87 trang)

Quy trình phân tích thiết kế phần mềm hướng đối tượng sử dụng UML và ứng dụng ths công nghệ thông tin 1 01 10 pdf

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (29.08 MB, 87 trang )

DẠI HỤC QUỐC iỉlA IIÀ NỘI
KHOA CỔN(Ỉ N(ỈHÊ

P I I ANT I I Ị HOẢI P Ỉ I UƠNG

"QUI TRINH PHÂN TÍCH THIẾT KÊ PHẦN MỂM
HƯỚNG ĐỐI TƯỢNG s ử DỤNG UML VÀ ÚNG DỤNG”

LUẬN VAN TH ẠC s ĩ KHOA HỌC

IIÀ NỘI - 2002


ĐẠI IIỌC QUỐC GIA HÀ NỘI

KHOA CÔNG NGHỆ

PIIAN TIIỊ HOẢI PHUƠNG

"QUI T R ÌN H P H Â N TÍCH T H IẾ T K Ê P H Ầ N M Ể M
IIƯỚNG Đ ỐI TƯ ƠNG s ử D U N G U M L VÀ ÚNG DUNC

Chuyên ngành : Công nghệ thúng tin
Mă sò
:

LUẬN VÃN THẠC s ĩ K HO A HỌC

Người hướng dẫn khoa học:

1*(ỈS.TS. N guyễn Vãn Vỵ,


Klioa Công nghệ, Đại học Quốc gia Hà nội

IIÀ NỘI - 2002


MỤC LỤC
Mò chiu............................................................................................................................ 4
I . Đ ìíl vấn đ ề ................................................................................................................ 4
2 ' I I nil hình nghiên cứ u .............................................................................................6

3. Mục tlích nghiên cứu và nội dung thực hiện......................................... 7
a) Mục dích nghiên cứu...........................................................................7
b) Nội đung thực hiện.............................................................................7

4. Phương pháp nghiôn cứu..........................................................................7
5. Giới hạn nghicn cứu................................................................................. 7
6. Ý Iigliìa lliực liễ n .........................................................................................8

7. Cấu (rúc luận văn......................................................................................8
Chương 1

Pliuong pháp phát triển phán mềmliuứng dòi tuựng....................IU

I. I. Tiến trình phái (l ien phần mềm........................................................ 10
1. 1.1.

Các pha trong lie’ll (lình phái liièn pliần mém...................... 10

1.1.2.


Phát triển lặp và lăng d ầ n ........................................................ 13

1.2. Phương pháp phân Lích thiôl kêhướng dối tượng............................14
1.2.1.

Mỏ hình dối lượng.....................................................................14

1.2.2.

Lớ|> và dùi luựiig.........................;......................................... 14

1..V

M ô hình lioií và mõ hình lioá hướng dổi tượng....................................20

1.4. Kôì luận chương I .............................................................................. 21
Chương 2

Còng cụ UML và cách Ihc hiện......................................................... 22

2.1. Giới thiệu vổ U M L ............................................................................22

2.2. Báng lừ vựng cùa UML..................................................................... 23
2.2.1.

C á c s ự v ậ i ...................................................................................23

I



2.2.2.

Các mối quail hệ giữa các phần lử Irong U M L .....................30

2.2.3.

Các hiểu dỏ Hong UMI............................................................. 31

2.3. Các qui lắc và các cư chế chung cùa UML.................................. 34
2.3.1. Các qui tắc trong U M L ............................................................34
2.3.2.

Các cơ chế chung......................................................................35

2.4. Các cách nhìn hệ lliống (Views).....................................................37
2.4.1. Cách nhìn ca sử d ụ ng ............................................................... 37
2.4.2. Cách nhìn logic.........................................................................38
2.4.3. Cách nhìn thành phần............................................................... 38
2.4.4.

Cách nhìn Irion khai................................................................. 38

2.5. KỐI luận chương 2 .......................................................................... 38
Chuông 3 Qui trình pliãn (ích lliiêí

kèpỊiiin mềm hướng dối lưựiiỊ» sứ tiling

UML............................................................................................................ 39
3 .1. Các đục liưng liên trình họp lilial (Unified Process)................... 39


3.1.1. Tien trình dưực dieu khiên bởi usc-casc................................. 39
3 .1.2.

Tic'll trình dựa lien kiên Il lie trung là m ................................. 40

3.1.3.

Tic’ll trình lạp và láng dần.........................................................41

3.2. PliAn lích thiết kế hệ thống sứ dụng U M L ...................................... 42
3.2.1.

Tìm hiểu yêu cầu của hệ thống...............................................42

3.2.2.

Xúy dựng các ca sứ dụng của hệ thống..................................43

3.2.3. Phân lích (Analysis).................................................................. 45
3.2.4. Thiel kế (Design)....................................................................... 55
3.3. Kcl luận chương 3 ........................................................................... 64

)


Cliuưnị» 4

úiiị* dmij» qui (lìnli |>hán (ícli Iliỉôt kè hương dõi luợiiỊ» xây tlựiiịì

hệ ỉ hỏng xú lý cuộc gọi í rên (ỏiíị» dài SPC............................................. 65

4.1. Đặt vân đ ề ........................................!.............................................. 65
4.2. 'lìm hiểu hệ thống xứ íý cuộc g ọ i................................................66
4.2. í .

Tống quan vé hệ (hòng xứ lý cuộc g ọ i............................... 66

4.2.2.

Cúc chức nang chính cua hệ thông......................................67

4.2.3.

Các thuộc lính hệ lliống....................................................... 68

4.2.4.

Các Use-case hệ lliống xứ lý cuộc g ọ i ............................... 68

4.3. Mỏ hình quan niệm của hộ thống xử lý cuộc gọi........................ 15
4.3.1. Các lứị) (l'ong l)ộ Ihống.......................................................... 75
4.3.2. Mỏ hình quan niệm của hộ lliong......................................... 76
4.4. Hành vi của hệ thông.....................................................................77
4.4.1. Bicu tlồ tuấn tự hệ thông....................................................... 77
4.4.2. Các hợp dồng cho những ihao lác của hệIhống...................79
4.5.

Biếu dó cộng tác cho các thao lúccùa hệ thòng..........................81

4.5.1. Biểu đổ cộng lác cua thao lác phân lích s ố .......................... 81
4.5.2.


Biêu đồ cộng lác cùa thao lác hiên dịch...............................82

4.6.

Biổit dồ lứp của hệ thống xử lý cuộc gọi..................................... 83

4.7.

Kèi luận chương 4 .......................................................................... 84

Kc( h u m ..................................................................................................................... 85
lài liệu Ilium kliiio................................................................................................... 86

*


MỞ ĐẦU

1. Đạt vân dề
Phức lạp là thuộc lính vỏn cỏ cua một họ thong phần mềm. Nỏ có lliò xuất phái
từ nguyên nhân cùa phạm vi vân clé (Jạt ra. Sự phức lạp cũng có khi lại do những khó
khán trong quán ỉý tiến trình phát triển. Còn "nhiệm vụ của nhóm phát triển hệ
thống là lạo ra một ảo giác vẻ tính đơn giản, che di tính phức tạp nhiều mặt và tuỳ
tiện của hệ thống" [3].
Khi nghiên cứu vổ các hộ ihỏng phức tạp, ngưừi la dã rúl ra năm dạc uưng như
sau:

(i).


"Thông thường, tính phức tạp có dạng của mội hệ tổ chức phân cấp: Mội

hệ thống phức lạp bao gồm những hộ thống con tương lác lẫn nhau, đến lượt mình,
c á c h ộ l i n i n g COI1 n à y l ạ i b a o g ồ m

n h ữ n g h ệ t h ố n g c o n c ủ a l i ê n g I1Ó, v à c ứ t i ế p l ụ c

như vậy, cho liên khi dạt lới mộl hệ thòng COI1 cáp lliàp nhài chi gồm có những
thành phần sơ cấp" Ị3J
Viộc lổ chức mội họ thong với cấu núc phAn cAp giúp ta có một cách nhìn Irực
quan lum vỏ hệ thông, dó. Kiên trúc của một hệ phức lạp (lược bicu diễn hằng các
thành phần chức năng Hong hệ dó cùng với các mối quan hộ được tổ chức phiìn cấp
giữa các (hành phần này. v ề hán chái cũng như cách lựu chọn các thành phẩn sơ cấp
( p r i m i t i v e c o m p o n e n t ) c ủ a m ộ t h ệ p h ứ c t ạ p CÒI1 d u r a l l i ậ l l õ l à n g :

(ii). "Việc lựa chọn những lliàiih phán nào liong mội liệ lliỏìig làm các lliànli
phẩn SƯ cáp là lưưng dôi tuỳ tiện và phần lứn phụ thuộc vào sự suy xét của ngưừi
quan sát hệ Ihống ấy".[3]
(iii). "Sự liên ket ben Hong các thànlì phần lliưừng là mạnh hơn các mối liên
kẽt giữa các thành phần. Dieu này có lác đọng lới việc pliàn loại các llùmli phẩn cỏ
lần suât dọng cao (bao hàm câu Irúc bên Irong của các thành phần) với các thành
phần có tần suâl dộng thấp (hao hàm sự lương lác giũa các thành phần)".[3)
Sự khác biệt giũa các lương lác bên trong một thành phần vói các nrơng tác

4


giũii các llìành phiin cho la mộl sự phiìn biệl lõ làng vổ sự liCn quan giữa các hộ
phận liong hệ lliống và giúp la có the nghiên cứu lừng họ pliận tló mội cách lương


dổi dộc lập.
(iv). "Các hộ thống có lổ chức phân cấp ihường bao gồm chí một số ít

cácloại

hệ con khác nhau dưực tổ hợp và sắp xếp Ihco nhiều cách" [3J
Nói cách khác, các lìệ phức tạp có những kiểu mẫu chung. Các kiểu mẫu này
cho phép sứ dụng lại các thành phần nhỏ chung cho nhiều thành phán.

(V). “ Một hộ phức tạp mà hoại dộng dưực thì nhất định phái được phát triển từ
một hệ đơn giản đã từng hoạt dộng. Một hệ thống phức tạp dược thiếl kế từ con số
không thì không hao giờ hoại dộng được, cũng không thể vá víu dể làm cho nó hoại
dộng dưực, phải bắt đáu từ một hệ thống tỉưn gian dang hoạt dộng”!3 1
Đè dương dầu với các vấn nhau. Có thể phàn lã vấn đề theo hướng thuật loán (hướng cấu trúc) hay hướng dối
tượng. Cho tới nay, phương pháp phân lích và thiết kế hướng dối tượng là mộl
phương pháp phù hợp dể có thể áp dụng giai quyết những vấn tic phức lạp Irong các
liỌ thống lớn.
Phương pháp hướng dôi tượng nhìn
lượng. Các doi lượng lương tác với nhau,

nluỊn hệ lliỏĩig nlìirmột lạp hợp các

dõi

hợp lác vứi nhau díỉdưa ra các hành vi ớ

mức cao hon.
Plurơng pháp hướng (.lôi lượng dựa irên cơ sử mỏ hình dối tương. Các nguyên
lác CƯ ban Iron g m ỏ hình dòi tượng là sự trừu lượng, lính bao gói, sự m ỏ tlun hoá và


lính phân cấp. Chính vì vậy, pliưưng pháp phân tích llìiếl kế ỉiưứng dôi tượng tạo khá
lúing lái sú dụng phần mềm, dỏ báo trì hệ lliống và che dâu thúng Ún.
Với các ưu điếm như (lã nèu liên, rõ ràng tu Ihấy dưực lính hiệu quá khi áp
dụng phương pháp hướng dổi tượng để giải quyết các lớp bài loán. Tuy nhiên, với
phương pháp này, còn một sô vân dề cần dược quan lâm và làm rõ them. Đó là:
Làm the nào dê la nhận ra đúng các lớp và các đối tượng có liên quan lới
moi ứng (lụng cụ Ilie ?

5


-

Qui trình nào có thể dăn la lới một hệ thống hướng dối tượng dược câu trúc

lốt?

-

KÝ pháp Ihích hợp dò’ diõn đạt việc thiết kế inộl hộ ihông hướng dối lượng

là gì?

Sự ra dời của ngôn ngữ

111«

hình hoá lliòng nhất (UML-Uniĩicd Modelling


Language) dã cung cấp một còng cụ dể biểu tliỗn quá trình phAn lích thiốl kố hướng
dối lượng. Trên thực tế, hãng Rational đã phát triển phần mềm Rational Rose dựa
trên UML. Vấn dề còn lại là cách thức nhận biết các đôi tượng, các lóp trong hệ
thốtìịị và qui trình phàn tích thiết k ế một hệ thống hướng dối tượng.

Trong luận van này, lác giá trình bầy một qui trình Iron CƯ sứ phân tích lliiốl kê
hướng đòi lượng trưng dó dặc biệt lập trung vào việc xác dịnh các dôi lượng, các lứp
và việc gán trách nhiệm cho các dối tuựng. Qui trình đưực mô tả trên UML. Sau dó,
áp dụng phưưng pháp này cho hệ Ihống phần mềm xứ lý cuộc gọi trên tổng ựài SFClổng dài điều khiến bằng chưưng trình ghi sun (Stored Program Colioller). Ban phàn
lích Iliièi kế dược cài dật trên phần niềm Rational Rose.

2. Tình hình nghiên cứu
Phương pháp lập trình hướng dôi tượng ra đời từ những năm 1980 và sau dó là
phương pháp phàn lích thiết kè hướng dối tượng. Cùng với sụ phái Iriển của phương

pháp Ihiết kế hướng dối lượng là sự phát triển của một loại các cổng cụ thổ hiện nội
dung cùa quá Irìnli plỉál liĩến phẩn mém. Cuối cùng đốn nám 1994, ngôn ngữ mỏ
hình lioá thống nhíU-UML xuấl hiện là sự hội lỉhập kêl quá nghiên cứu chu yêu cùa
ba nhà khoa học Grady Booch, James Rumbaugh, lvar Jacobson. Đến tháng ! năm
1997 phiên bản UML 1.0 ra liêl.
Công nghệ phàn lích hướng dối lượng và UML dã dược liicn khai ứ nliicti nước
trôn lliè giới. Tuy nliiòn. ớ Việt nam (hì (.lây còn là vấn tie mới mé. Dã có nhiều
người C|IUII1 làm tìm hiểu UML. nhiều công Iv pluin mềm dang nghiên cứu UML de

r>


dưa vào ihực nghiệm xây dựng các hộ lliông phan mềm mới. Việc ứng dụng cóng
ngliỌ Iron mới ờ giai tloạn (Mu, cđn tìm hiổu SÍÌLI hơn tlổ mở rộng phạm vi ứng đụng


Hèn nhiều lình vực, dặc biệl là phục vụ cho công lác giáng dạy.

3. Mục dích nghiên cứu và nội dung thực hiện
a) Mục đích nghiên cứu
-

Tìm hiểu phương pháp phân tích thiết kế phần mềm hướng dối tượng.

-

Áp dụng phương pháp phân lích thiết kế hướng đối tượng trên UML vào

các sáu phẩm thực lố.

b) Nội dung thực liiện
-

Tim hiểu phương pháp luận của việc phát triển phần mềm hướng dối tượng.

-

Tìm liiổu liộ thống ký pháp UML, khai lliác công cụ UML.

-

Trình bầy mội qui trình phân lích tlìiẽi kê'phần mềm sứ dụng UML.
Ap dụng qui trình lien trong phân lích thiếte kế các sán phẩm phán mềm.

4. Phương pháp nghiên cứu

Phương pháp nghiên cứu chú yếu là nghiên cứu phương pháp luận, nghiên cứu
thư nghiệm còng nghệ.

5. Giới hạn nghiên cứu
Qui liìn h phàn lích thiết kế phần niềm được trình bầy trong luận vãn có thể áp
dụng liên một số lớp các bài toán. Trong thực lô, việc phái lriến phán mồm cỏ lliổ

llìcơ nhiều C|UÌ (rình khác lương illicit với những yêu cẩu dặc lliù của các hệ thống
cần xây dựng. Vứi qui trình IrCn, lác giá chủ you đề củị) đốn tiến trình công việc, hù
qua phần quán lý nhàn lực,
Trong phần ứng dụng, tác giá thiết kế hệ Ihống phần mềm xử lý cuộc gọi dựa
trên nguyôn lý chung của lổng dài SPC, chua cỏ bản lliiếl kế cho một tổng dài cụ

7


Ihé. Bán lllièi kê hệ thòng dứng ớ phán llúèi kê lô gic, chưa dưa IU day ilủ các thiêt
kẽ vật lý cùa hệ thống.

6. Ý nghĩa thực tiễn
Với kết qua nghiên cứu của dề lài, lác giá mong muốn góp plnln làm sâu sác
them các kiôn thức liên quan dốn cõng nghọ phùn tích thiết kế hướng dồi tượng,
bưức dầu ứng dụng vào lliực liỗiỉ với các công cụ hỗ trợ phùn lích thiếl kế. Điồu này
không chí có ý nghĩa trong quá trình phát triển phần mềm, mà nó còn phục vụ cho
công tác dào tạo những người làm phần mềm trên công nghệ mới.

7. Cấu trúc luận văn
Luận văn bao gổm pliần mữdíiii, bôn chương và phần kốt luận.
Hlìần mà dâu trình bày lính cấp lliiêì của dể lài, tình hình nghiên cứu, mục
dích nghiên cứu và nội dung Ihực hiện, phương pháp nghiên cứu, ý nghĩa thực liễn

và giới hạn nghiên cứu.
ChươiìịỊ I : Phương pháp phát li iển phần

1110111

hướng dôi lượng

Chương này dồ cập dốn cơ sớ lý ihuvếl của phương pháp phái Iriổn phán mém
nói chung và phương pháp hướng dối lượng nói riông. Phán thứ nhất trong clurưng
ti ình bày tiên trình pliál Hiển phấn mềm; pliíìn tluỉ hai là phương pháp phàn lícli thiêi
kê hướng dôi lượng; cuối chưưng dề cập tiến vân dề mô liìnli hoá hệ thống và mô
hình lioá hướng dôi iưựng.
ChươHỊỉ 2: Công cụ UML và cách llic hiện.
Chưưng 2 liình bầy những nét lổng quan về UML, ngôn ngữ biêu diễn quá
liinlì phái triển phần mềm hướng dơi lượng, với những nội dung chính: các kliía
cạnh hệ lliôìig (cách nhìn), biếu dỏ, các phần lử trong mô hình, mối quan hệ, cơ chế
chung và các kỹ Ihuậl mớ rộng. Mầu hốt cúc khái niệm

trình bầy

trong chương 1 SC

dược mò hình lioií trung chương 2.
ChiứMịỊ 3: Kê lliừa các cư sớ lý Iliuyốt trình bầy ứ

cliưưng I, kết hợp với còng

cụ da (lồ cập ớ chương 2. lác giá trinh bầv niộl qui Irìnhphân lícli Ihicì

ké hiiớiig dôi




lượng sử dụng UML.
Chiùftifi 4: Nội dung phùn lích Ihiếl kê hộ thông. Áp dụng qui ilÌ11Ì1 dã nêu ở
chưưng 3, tác giả thiết kế mội liệ thống phần mềm xử lý cuộc gọi cho lổng đài SPC.
Phần kết luận và (lịnh hướng nghiên cứu liếp Iheo.


Chuông 1

PII ƯƠN(i PIIÁP PH Á T TR IỂN

phần

MỂM

HƯỚNG ĐỐI TƯỢNG

1.1. Tiến trình phát triển phần mềm
Tiến trình pilât triển phần mém lù phương thức tổ chức các lioựl dộng dê sàn
xuất và phát triển các hệ thống phần mềm.
1.1.1. Các pha trong tiến trình phát triển phần mềm
Một tiến trình phái iriển phần mềm thường được mỏ tả llieo nghĩa là một tâp
các hành dộng cẩn thiêl để chuyển yôu cầu của người sử dụng thành một phán mém.
Như vậy, yêu cầu của khách hàng xác dịnli mục tiôu của pliál Iriển phán mồm. Tuy
nhiên, yêu cầu của kháclì hàng thường không đầy đủ, không có cấu trúc, hoặc không
chặt chẽ, cùng với sự lặp đi lặp lại dẫn lới dư llỉừa thông tin. Ngoài ra các yêu cầu
của khách hàng còn mang tính gần đúng, và dôi khi mâu thuẫn với nhau, nhiều khi

những yêu cầu mang lính không kha llìi. Dơ dỏ, bấl cứ mộl lie'll trinh phần mồm nào
cũng phải bắt dẩu vứi cúc hoạt dộng lỉiu thập và phân lích yêu cầu của khách hùng.
Những hoại dộng này và các kết qua có liên quan hình thành pha dầu tiên của liến
trình gụi là phân lích yêu cầu. Các pha liếp theo của lie'll trình phần mềm là llìiếl kế,
thực (hi và kiểm 111ừ lliànli phần, lích hợp và kiểm thử loàn hộ, vận hành và háo (rì.
1 .1 .Ỉ.Ỉ.

T h u thập và p h â n tích yêu cầu

Nhiệm vụ của người phát triển phần mềm trong giai đoạn này là xác dinh
chính xác cái mà khách hàng cần, để íừ đó tìm ra những ràng buộc giũa các đối
lượng trong hệ thông. Thu lliập và phân lích yêu cầu là giúp cho việc phái triển (li tới
mộl hệ thống hợp lý. Kết quả của nó là dưa ra một tài liệu gọi là dặc tả yêu cầu. Tài
liệu cùa dặc lá yêu cầu bao gồm:
- Mô hình nghiệp vụ
- Hợp dồng ilioả thuận giữa khách hàng và tổ chức phái triển hệ thống về
nhữngvấn dồ mà hệ ihống cần thực hiện (và những vân dề không cần Ihực hiện)

10


- Tài liệu chủ yếu được sử dụng cho dội phát (rien để phát triển hệ thống
- Mo hình khá dầy (lú cúa những nội dung mà hệ lliòng yêu cáu
Đô’ llioả mãn các mục đích này, liên trình phùn lích yôu cáu có lliổ bao gổm
các hoạt dộng sau:
- Tim hièti phạm vi vấn lỉề
-Thu tlìập yêu cầu: Nhà phân lích phải thu thập dáy đủ thông qua những cá
làm việc

trong dự án. Thu Ihûp ycu cầu của khách hàng bằng hai biện pháp:


-

nhận

Trao dổi tiếp xúc với khách hàng
Lựa chọn những yếu tố cơ bản loại bỏ đi những yếu tố không căn bản bàng

phương pháp trừu tượng hoá.
- Phàn loại: Các yêu cáu đã thu Ihập ứ phần lníức thường không có cấu trúc. Việc
phùn loại sẽ lổ chức chúng thành các cụm kết dính, phân cấp các yêu cầuìlico dọ
quan trụng cùa cluing dùi vứi khách hàng và những người sử dụng.
- Thấm (lịnh: Đây là việc kiếm tra xem các yêu cáu có chắc chắn vù dầy dú không,
dồng thời giãi quyêl các mâu Ihuần giữa các yêu cầu.
- Nyliièii cứu lính khả

tlii:

Để ước lượng XCI1 1 các yêu cầu dã xác tlịnli có thê được

ihoá mãn không khi sử (.lụng còng nghệ phần mềm và phần cứng, đổng thời quyết
định xem liộ lliống dưa ra có sinh lợi hay khổng.
Đặc tá yêu cầu là phái biểu chính thức vồ những yêu cầu cho nhà phát triển hệ
ihỏng. Yêu cầu Ihườug ctưực biểu diễn bang ngôn ngữ dặc tả hoặc cũng có thổ bàng
các ký pluip dỏ lioụ. Gìn luu ý them làng, có thổ lách l iêng plutn thu lliập yêu cầu và
phân lích hộ lliòng tlùmli hai pha của liên Irình.
1 .1.1.2.

T hiết kê hệ thống


Sau pha phân tích yêu cáu là pha Ihiếl kè. Thiêi kê phần mềm là một cóng việc
mang lính sáng lạo. Quá trình Ihiếl kế hệ lliòng hao gồm thiết kế kiến trúc và lliiết
kê chi tiết. Thiết kê kiến trúc (hay còn gọi là thiêì kê logic) phân chia vêu cầu thành

11


các thánh phấn. Kùl quá là bán lliiêl kê kiên (rúc, lioug dó mỏ lú cóng việc mà từng
(hành phần phải làm và cácl) chúng tưưng lác với nhau đổ cung cấp các dịch vụ
chính của hệ thống. Sau dó mỗi thành phần lại duực thiết kế, quá liìnli này gọi là
lliiôl kê chi tiêì (hay llìiêl kè vặt lý). Tài iiệu lliiêl kế chi tiết mô tả việc thực hiện các
you cầu của lừng thành phán.
Tài liệu thiết kế kiến trúc là một mô hình kiến trúc bao gồm dặc tả của các
thành pluln, trong đó mô la công việc mà mỗi Ihành phẩn phái làm thông qua giao
diện của các thành phẩn. Mô hình hệ thống lúc này vẫn còn ớ mức trừu lượng, dộc
lập với việc thực thi.
Tiến trình

COI1

thièì kế chi tiết gồm các hước làm mill dần mô hình kiến trúc.

Tài liệu lliiốt kế chi nối
-

111Ỏ tả

Thiết kế cúc chức năng cùa từng íliành phần Irong hệ Ihỏng và cách thực

hiện các chức nâng yổu cáu cùa mỗi thành phán.

-

Thiết kế giao diện của từng thành phán và mô tá việc cung cấp các dịch

vụ của Ihành phần này cho các thành phẩn khác.
Nêu mỏ hình ở mức phùn lích mô lá công việc mà hệ ihống cần làm, thì mỏ
hình (Vmức thiêì kế xác định cụ íhể hệ Ihống pliai thực hiện các chức năng đó như
th ê IÙIO.

1.1.1.3.

T hục th i và kiể m th ử th à n h p h ấ n

ơ giai doạn này, mỏi thành phần liong bán thiếl kế dược thực thi như mội tlưn
lliê chương trình. Mỗi dơn Ihể sẽ phai dược xác minh hoặc kiểm định líii dựa trên
dặc lá dã có dưực trong giai đoạn lliiết kế.
1.1.1.4.

Tích hợp và kiế m th ủ toàn bộ

Các dơn thể chương trình riêng biểu diễn những thành phần của hộ thống dược
kết hợp lại và kiếm ill ử toàn bộ dế đám bảo l ằng yêu cầu dối với hệ thống đã thoã
mãn. Sau khi sán phẩm dược kiêm (lịnh bói người pliál triển hệ lliông lliì chúng dưực
kiếm dịnli hời Iigưừi sử ilụiiịỉ. Pha nãy kêì tluíc khi s;in pliẩin ilưựe người sir dụng
limp nhạn.

12


L I . 1.5.


Vận h à n h và bảo trì

Pha này hat dấu với việc dưa hệ thống dã cài dại vào sử dụng trong 111ực lê, và
I1Ó kết Ihúc khi hệ lliống bị thải hồi.
Báo irì là liú ca nliữitg (hay dổi cúa sail phdin chơ lứi khi khách hàng chû'p

nhận rằng san phẩm dã llioií mân yêu Ciiu của tài liệu dặc lá. Nó bao gồm việc sửa
chữa lỏi và nùng cấp phần mềm. Bao trì sứa lỏi gồm việc hiệu chỉnh các lỏi chưa
đưực phát hiện ứ các giai đoạn trước của liến trình phái triển. Việc bảo trì này không
làm lliay dổi bán đặc lá yêu cầu. Có hai kiổu nùng cấp: bao trì hoàn thiôn là các lliay
dổi nâng cao tính hiệu quà của sán phẩm Iheo yêu cầu khách hàng và bảo trì thích
ứng lù các lliay dổi nhằm dáp ứng sự Ihay dổi mỏi irưừng hoại dộng của sail phẩm.
1.1.2. Phát triển lặp và lăng dần
Các hoạt dộng phát triển phầm mềm mô lả như liên tạo nên mỡ hình thác
nước. Trong thực tế, các giai đoạn Iron g mô hình thác nước thường đirực gối lcn
nhau và cung cấp lliông liu cho các giai (.loạn khúc. Tiến (lình phái Iricn không phải
là một I1K) liìn li luyến lính dơn mà bao góm m ội dãy lặp các hoạt dộng phái triển.

Một vòng dời lặp dựa trên sự mở rộng và làm mịn liôn liếp của mội họ líiòng
lliõiig qua nhiều chu kỳ phát triển gồm có phân tích, ihiếl kế, thực thi và kiểm thử.
I lẹ lliôiig lang h ưứng bới việc ihêui vào các chức năng mới dong từng chu kỳ phái
n iên. Mỏi chu kỳ giúi quyết một tập nhỏ các yêu cẩu có liên quan, tiến hành thông
qua pliân lích, ihiốt kế, xúy dựng, kiểm llur. I lệ iliống hoàn Ihiện dần khi mỗi chu kỳ
dưực hoàn thành. Điều này trái ngược với mội vòng dời thác nước cổ (liến Hong dó
mỗi hoại dộng (phùn tích, thiết kế, ...) dược í hực hiện một lần cho loàn bộ các yêu
cầu của hệ thống.
Mội liên trình phái Iriển bao gồm các lạp Ihường [’Ay khó khăn trong việc quán
Irị dự án và háo cáo. Do dó, trong quá liinli phái uĩên, sau một số ít lần lạp. I11ÔI số
phần thường dược dòng cứng như đặc lá và tiếp lục các giai đoạn phát Iricn sau

Lợi ích ciia pliál tiiến lặp bao gồm:
Cìiúp giái Cịuyêt được lính phúc tạp ciia hệ lliổng.

lỉó.


Các ý kiên phán hỏi sớm dược phái sinh, vì việc llụrc Ihi xuất hiện
nhanh với m ỗ i lûp COI1 c ủ a hộ th ố n g .

1.2. Phưưng pháp phân tích thiết kế hướng đối tượng
1.2.1. Mó I1Ì11I1 dối tuụìig
Cổng nghệ hướng dối lượng clược xây dựng dựa irên cơ sở mô hình dối lượng
(object model). Những nguyôn lắc của mô hình dối lượng bao gồm Irừu tượng hoá
(abstraction), bao gói (encapsulation), môdun lioá (modularity), lổ chức phàn cấp
(hierarchy).
Phương pháp trừu iưựng hóa dưa ra những đặc diem Ihiết yếu cùa một đôi
tượng giúp phàn biệt tlirực dôi lượng này vứi dối lượng khác. Trừu lượng hoá tập
trung vào hành vi quan sát dược của đối tượng, CÒI1 sự hao gói lại tập trung vào việc

thực thi là nguồn gốc íiảy sinh hành vi. Sự bao gói dạt dược nhờ thông qua việc che
giấu iliông tin. Sự môdun hoá là một đặc tính của một hệ Ihổng dã dược phân rã
thành một tập hựp các ìnôđun kêĩ dính và ghép nối lỏng léo. Và lổ chức phân cấp ỉà
sự sáp xếp các trừu tượng lioá thành tầng lớp hoặc thành các nhóm có thứ bậc.
1.2.2. Lứp và dối lượng
Một hệ thống luôn dược xây dựng từ những khôi xây dựng cơ bàn. Với phương
pliáị) phát triển phần mềm Inrứng dôi iưựng, khối xây dựng cơ bán ờ dây là các lứp
và các đòi lượng. Một đói tượng có thể có thực hoặc trừu tượng, chúng cộng lác với
n h a u tạ o ra n h ữ n g CƯ c h ế d ể c u n g c ấ p n h ữ n g h à n h v i ở m ứ c c a o h ư n . 0

pha phân


tích yêu cầu, đối tượng là một thực thế Irong thực lế, nhung đến giai doạn thiết kế nó

lại hiểu diõn một 111ực lliổ của liệ thống. Các dối lượng có lĩ ách nhiệm CỊUÚ11 lý các
trạng thái riciig cúa chúng, và dưa ra các dịch vụ cho các đôi lượng khác khi chúng
dược yêu cầu. Do đó, dữ liệu và các chức năng dưực bao gói trong một dôi tượng.
Chức nang của hệ thống dược Iheo dõi Ihông qua cách thức mà các dịch vụ dưực yêu
Ciiu và cung cấp các (lịch vụ giữa các dối lượng mà không cfìn di sâu vào sự lluty dổi

bên Irong của các dối lượng. Các đối lượng tluực phân (hành các lớp, và các dối
lương lliuọc cùng một lớp tlcu có cluing các dạc tính, nlur các tlniộc tính VÌI các tliao

14


lác.
1.2.2.1.

K hái niệm dôi lượng

Một đối tượng có các dặc irưng (allribulc), hành vi (behaviour) và định danh
(ideality); cấu trúc và hành vi của các dối tuựng giống nhau được sứ dụng định
nghĩa lớp chung của các dối tượng dó.
Trạng thái của đôi tượng
Trạng thái của dối tưựng đưực xác định bằng mọi thuộc tính (thường là tĩnh)
của dối tưựng cộng vứi các giá Irị hiện hành (thường là động) của mỏi thuộc tính
này. Ta có ihể nói ràng mọi đối tượng bên Irong một hộ tliống đều có mội trạng thái
nào dó. Tuy nhiên, chỉ với một các trạng thái thì đối tượng chưa thổ Ihực thi công
việc Hong quá trình phát triển hệ thống. Vì lý do này, ta phải xem xét các dối tượng
thố hiện hành vi như lliế nào.

Hành ri cùa dời tượng
Không có dối lượng nào tổn tại cô lập, chúng bị lác dộng và chính cluíng lại
lác dộng lên các dối tưựng khác. Do dó la cú lliổ nói ráiig: liành vi là cách thức mà
một dối lượng hành dộng và phản ứng lại dưới dạng các lliay dổi Irạng thái của nó
và truyền thông báo. Nlur vậy, Irạng thái của một dối lượng biểu hiện các kếl qua
lích luỹ các hành vi của I1Ó.
Thao íóc
Thao lác là mội vài hành dộng mà một dôi tượng thực hiện lác dộng lên một
dòi iưựng kluíc nhằm phái sinh một phán ứng.
Vai trò và trách nhiệm của đòi tượng (role ami responsibility)
Các phương thức và chương írình

COI1

lự do liên kết vứi một đối lượng cụ Ihể

hình (liành ỊỊÌưo thức (protocol) cĩia I1Ó. Trong llụrc lố, người la chia giao Ihức 1ÓI1
thành các nhỏm hànli vi xél vé mill lôgic. Các nhóm này biêu thị các vai trò mà một
dõi tượng có the đám nhiệm.
Trách nhiệm của một dối lượng ỉỉổin có hai pliẩn chính: tri thức mà đỏi tượng

15


lưu li Li', và các hành dọng mà dòi tưựng có Uic iliực liiỌn. Có lliê nói rằng, trạng lliúi
va hành vi của một đối lượng hợp lực cùng nhau xác dịiìh các vai trò mà một đối
iượng. Đôn lưựl mình, dối lượng này lại hoàn thành các trách nhiệm của một Uừu
tượng hoá.
Dịnh (hiiih (identity) của dôi iưựHỊỊ
“Định danh ià tính cliấl của một đối lượng giúp phân biội dối lưựng dó với mọi

dối tưựng khác”. [3J
1.2.2.2. M ò i quan hệ giữa cấc đôi tượng
Có hai loại quan hệ giữa các đối lirựng tlưực đặc biệt quan lâm Hong phân tích
v à th iế t k ế

hướng

đ ố i tư ợ n g , d ó là :

Kèi nối (link)
Kết hợp (aggregation)
Kết nôi
Kốl nổi là “sự liên kết giữa các dối iưựng về mặl vật lý hay vé mặt quan
niệiìì”!3 1. Một dối lượng cộng lác với các dối iưựng khác thông qua các mối liên kết
cúa nó với các dõi lượng này. Nói cách khúc, liên kêl biểu lliị mội sự tưưng lác cụ
thể mà Ihông qua I1Ó một dối tượng (khách thể) sử dụng dược các dịch vụ của một
dôi tượng khác (nhà cung cüp). Trcn lliực tế, sự liên kết giữa các dôi lượng trong hô
lliống tlưực thực hiện thông qua việc (ruyền lliồng báo giữa chúng. Từ đó phát sinh
mội lính chát của môi quan hẹ giữa hai dối tượng đó là lính nhìn lliấy dược
(visibility).
Tinh ihiiy ilnực (vi si hi li ly)
Xcl hai dối tưựng A và B có liên kêì với nhau. Để A có thể gửi thông báo lới B
thì A phải thây dược B theo mộl cách nào dó. Có bốn cách khác nhau đò mội dối
iưựng có Ihể thấy dưực một dôi lượng khác:
-

Đỏi tượng cung cấp là loàn cục (global) dối với khách thể.

16



Đ ô i tượng cun g c ấ p là m ột thông sỏ ch o m ột thao tác nào đó củ a k h á ch

thể
Đòi lưựng cung cấp là mộl bộ phận của đđi tượng khách thể.
-

Đối Lirựng cung cấp là dối tưựng duực khai báo cục hộ trong mội số lliao
tác của khách thể.

Bủng cácii ìiào một dối tuựiig có thổ trứ nôn thấy dược dối với mộl dối lượng
khác là một vấn dề thiết kế chiến Ihuậl.
Kết liọp
Các liên kết biếu hiện các mối quan hệ ngang bằng (peer lo peer) hoặc khách
thể/nhà cung cấp, còn sự kết hợp biểu hiện một quan hệ lổ chức phân cấp toàn bộ/bộ
phận với khá năng liên lliông lừ cái toàn bộ (aggregate) tới các bộ phận của nó (được
xem như các thuộc tính (allribule) của nó). Như vậy, sự kết hựp là một loại liên kết
(association) đặc biệl.
1.2.2.3. K h á i niệm lớp (class)

Lớp và dổi tượng là liai khái niỌm luôn di với nhau. Tuy Iiliiôn, có nlũmg khác
nltau quan Irọng giữa liai thuûl ngữ này. Trong khi mội đối lượng là mội thực tliổ cụ
thê’ lổn lại Irong không gian và lliời gian thì một lớp chỉ dại diện cho một khái niệm
irừu lượng hoá.
Lớp là một khái niệm ổê chỉ mội tập cúc dôi tượng có cùtìịị một cừu trúc chung
vủ hành vi chtttiịỊ.
Một đòi lượng dưn lé là một thể hiện cụ lliè (instance) của một lớp.
Giao diện (interface) và thực thi (implementation)
Giao diện của lứp cung Cií|) tliộn mạo bôn ngoài và nhún mạnh sự trừu lượng
hoá của một lứp trong khi che giấu cấu trúc và hành vi bôn trong cùa nó. Giao diện

chú \ếu gồm các khai báo về mọi thao tác áp dụng cho các lliò hiện cụ Ilíể cùa lớp
này. Nó cũng có thể bao gồm việc khai báo các lứp khác, các hàng, các biến,...
y

L.

íi
17


Ngược lại, việc ill ực ilii mội lóp là nội tlung hên liong của I1Ó, bao gồm các bí mậl
về hành vi của I1Ó. Sự thực llii mội lớp chú yếu là việc thực hiện các lác vụ dã tlưực
định nghĩa (rong giao diện cúa lớp.

1.2.2.4.

C ác m ôi quan hệ giữ a các lớp

Loại thứ nhất là loại lổng quát hoá / chuyên biệt lioá (generalization /
specialization), chí ra môi quan hệ “là một”.
Loại thứ hai !à quan hệ toàn thể/ bộ phận (whole/part), chỉ mối quan hệ “bộ
phận của”.
Loại thứ ba là loại quan hệ liên kết (association), chỉ ra một sự phụ thuộc ngữ
nghĩa nào dó giữa các lớp không có liên quan nào khác.
Cách tiếp cận Irôn đã dược phát triển irong các ngôn ngữ lập trình hướng đối
lượng, nó đã cụ thổ hoá [hành các quan hệ:

- Liên kết (Association)
- Thừa kế (Inheritance)
- Kết hợp (Aggregation)

- Siêu lớp (Mclaclass)
Liên kết
M ối quan hô liên kết giữa hai lớp biểu thị sự phụ thuộc ngữ nghĩa giữa chúng
mà không cho biêl hướng của sự phụ Ihuộc đó và cách lliức tlico dó mội lứp này liên

quan lới một lớp kia. Thông qua việc lạo ra các mối quan hệ liên kêl, til sẽ nhận ra
các thành phần lliam gia Hong một mối quan hệ ngữ nghĩa, cung như các vai trò của
chúng, và lực lượng của chúng. X cl VC mụl lực lưựng lliain gia vào mõi quan họ, có
llic chia làm ba 07311233
'
,

' ’ sau:

- Quan hệ mộl-một

18


- Quan liệ mộl-nhiều
- Q u a i l hớ n h i ồ u - n l i i é u

Thừa kè

'I'llira kố là mối quan hệ giữa các lớp dổi lượng trong dó một lớp chia sỏ cíiii
tiúc và/lioặc hành vi đã dược xác định cho một lớp khác (thừa kê lUĩiì) hoặc nhiều
lứp khác ụhừư k ể bội).
Kếỉ hợp
Các mỏi quan hệ kết hợp giữa các lớp lương dương liực tiếp với các mối quan
hộ kèi hợp giữa các dôi lượng lifting ứng vứi các lớị) này. Mội quail hệ loàn Lhổ/bộ

phận giữa hai dõi lượng lổn lại khi và chí khi có mội quan hộ kêl |]ự|) giữa các lóp
lương ứng cúa cluing . Sự kêl hợp xác nhộn một sự dịnli liưứng cho mỏi quan hệ loàn

Ihc/bộ phận.
Sien lớp (Meiticlass)
Đối Itrựng là một (lié hiện cụ thè’ của một lớp. Vậy có llic coi chính lớ|> là một

dối lượng. Đôi lượng này có thê bị lliao lác hay không và Ihố nào là lớp của mội lứ|>?
Đó chính là siêu lớp. Nói cácli khác, mội siêu lớp là một lớị) mà những lliè hiện cụ
(hổ của nó chính là các lớp.
1.2.2.5.

M ột sò d iêm lưu ỷ đ ể xả y dự ng các lớp và đỏi tượng có chất lượng

D o ( lu iì I ic o iiiị ( lia m ột irữ it iư ự iiỊỊ hoứ

Uế đánh giá chài lượng viộc thiết kế lớp, dối lượng, người ta dã đưa ra liai tlộ

do chú yêu: độ ghép nối

( c o u p lin g ) ,

độ kct dính (cohesion). KOI dính là mức ilộ

tương lác hên liong một mò tlun (Irong phương pháp hướng dôi lượng, dối tưựng là
một mô dun). Ghép nối là mức độ tuưng tác giữa hai mô đun. Các mô đun dược lỉiiíl
kế tòi phái dám báo có dộ kết dính cao và ghép nối lỏng léo. Một lớp với kèl tlính
cao giúp ilỏ sú dụng lại và lie háo hi.

Chọn lựa các lluio lác


l‘)


Trong pliât Ilicii hướng đòi lượng, khi
cần CỊIUII) Lìm clôn các

yốu tỏ sau:

Xiìy

dựng hành vi của mộl dổi lượng, la

khá nâng lái sứ tlụng, olộ phức tạp và khá năng ứng

dụng cùa hành vi.
Klii một dôi lượng chuyển một thông báo tới mội đối lượng khác qua một liên
kết thì hai đối tượng này phải được dồng bộ hoá theo một cách nào đó. Với hệ thống
có nhiều luyến diều khiển cần quan lâm lới các vấn dề nảy sinh khi có hai tuyến
dieu khiổii lác tiộng lỏn cùng mội dối iưựng. Việc liuyền lliông bát) cú the llieo mội
trong các dụng sau:
Đổng bộ
(synchronous)

Một lliao tác chi dược bắt (líỉu thực hiện khi phía gửi và phía
\
.A
• A .I
nhận đã sẩn sàng gứi và nhận Ihông báo. Phía gứi và phía
nhận sẽ chờ cho den khi cà hai phía đã sẩn sàng dô xử lý.


- Bỏ qua
(balking)

Thao lác dược thực hiện khi phía gửi và phía nhận liều sẩn
sàng. Phía gùi sẽ lừ bỏ lliao lác nếu phía nhạn không sán
sàng.

-

Chờ 11)01 lliời
gian (tiincoul)

Thao lác dược thực hiện khi phía gửi và phía nliậit (.lều sắn
sàng. Phía gứi sẽ chi tlợi Iron g khoảng thời gian Iilutt (lịnh ilổ
phía nhận chuẩn bị.

-

Không đỏng hộcó thổ khới dộng liàiili động hất cliâp phía nhận có
(asynchronous) mong muốn nhân ihông háo hay không.
Chí sau khi dã quyết dịnli ngữ nghĩa cliức nang cúa (ác vụ mới có ihê lựa chọn

dạng truyền thòng báo liên cư sứ lừng tác vụ một.

1.3. Mô hình lìoá và 111Ỏ hình liuá ỉiuớiiịĩ tlỏi lượng
Tầm

C|uan


trọng cua việc mô hìnli hoá là lõ ràng. Từ mội llìế giới thực cláy

phức lạp, để nắm bál dược nội dung của mội hệ thống không phải là đơn gian. Mò
hình lioá thực chất lủ tập trung vào các (lặc (liếm cơ bản cùa vấn dề, liíực bỏ (li
những chi tiết phụ. Do dó, việc mô hình hoá giúp ta hiểu rõ hơn về hệ thông. Đạc
biệl Hong phái li iên phần mém, 1Ĩ1Ô hình lioá cho pliép mô tả và kiêm soái cấu n úc,
hành vi cùa hệ lliõng mong đợi. lạo khá niing lái sứ dụng những thành phần của hệ
thòng và giám bứt rủi ro.
Mò hình llurừng dược mô tá trong một ngôn ngữ trực quan. Tuy nhiên không

<1

I *


pliai tấl

cá tiều phù hợp với mò lá bằng hình ảnh, niộl số ihông till trong mô hình

dược điỗn tả lốt nhất bằng văn bản Iruyổn thống. Như vậv mô hình có thổsử dụng
đổ:
M ỏ l a c h í n h x ú c h ệ l l i ó n g c á n xAy d ự n g

-

Tránh xung độl giữa, dảm bảo lính nhất quán giữa các thành phần trong

một hệ thống.

Dễ truyền dạt thông tin

-

Có thể thay dổi một cách (lễ dàng

Một mô hình dược biểu diễn bới Iìiột ngôn ngữ mỏ hình hoá. Một ngôn ngữ
m ô h ìn h lio á b a o g ồ m :

-

Ký pháp: các ký hiệu sử dụng trong mô hình
Một tập các qui tấc: các qui lắc cú pháp, qui lắc ngữ nghĩa và qui lắc únt?,
đụng.

Mỏ hình hoá chỉ cho phép nắm bắl và hiếu tliỗn vân dồ, còn việc giai quyết vấn
tie Ih ì p h ả i đ ò i h ó i m ộ l p h ư ơ n g p h á p cụ thể. Sụ k ế l h ự p g iữ a m ỏ h ìn h ho á và p h ư ơ n g

pháp hướng dối tượng tạo nên một sản phẩm đó là ngôn ngũ' mỏ hình hoá hưứng đôi
tưựng. UML là một ngôn ngũ' như thế.
UML là ìnộl công cụ mỏ hình hoá lurứng dối lượng. Tuy nhiên, việc mô hình
lioá các hệ tlìống Ihực tihư thố nào lại thuộc vồ phưưng pháp luận phân tích và Ihiết
kế hướngdối tượng.

1.4. Kết luận cliưưng 1
Việc xây dựng phần mềm Iheo mội tiến trình phù hợp là rất cần Ihiốl. Tiến
trình phát triển phần mềm dựa trên phương pháp hướng đối tượng cho phép giải
quyết các vấn đề phúc tạp của một hệ Ihống. Để mô lả tiến trình, ngôn ngữ mô hình
hoá là thích hợp giúp diễn tá đầy dủ nội dung của hộ thống dược xay dựng.

21



Chuông 2

CÔNG c ụ UML VÀ CÁCH T H Ể HIỆN

2.1. (ỉiới lliiệu về UML
UML là một ngôn ngũ mô hình lioá cliuẩn dể thiết kế phần mềm hướng dối
lượng. Nó dược hợp nhất từ nhiều thành lựu của các nhà khoa học, trong dó nổi bật
nhài là Grady Booch, James Rumbaugh và Ivar Jacobson.
Mục liêu cúa UML là dế:
Mỏ hình hoá các hệ llióng Irèn quan tliổm liuứng dôi luựng
-

Thiêl lập mòi liên kêl giữa mò hình khái niệm và các sán phám phần

-

G ia i

1110111

cụ llie
lịuvêí nhũng vấn dề VỐ11 có của các hệ thống phức tạp

Tạo một ngôn ngữ mô hình hoá cao có thể sử dụng cho cả người lần máy
UML có llic (lược sú ciụng dê dặc ui, làm trực quan hoá, xúy dựng cáu trúc và
lập lài liệu cho các sán phẩm của lìiộl hệ thống pluln mềm. I lệ ihống ký pháp đỏ hoạ
và văn bail của UML cho phép (a biểu diễn dược dấy đủ thông tin của hệ thống. Các
mỏ hình xây dựng trôn UML dược hình thức lioá nên có ihê chuyển I1Ó sang mã
nguồn cùa các ugỏn ngữ lập hình. quá trình này dược gọi là kỹ tliuậl I’orvvaiil.

N g ư ợ c lạ i, (ló k iể m Ira XCIII m ã n g iio n c ó p liii h ợ p v ớ i m ó h ìn h hộ llio iig h a y k lio n g ,

và dê hổ sung hoàn chính chương trình (hóng qua llũết kế, la có ihê dịch ngược lừ
mã nguổn thành các phán lứ Hong

111«

hình, quá [rình này gọi là kỹ lliuậl Reverse.

Như vậy, sự ra đưi của UML dã cung cap cho ta một công cụ chuán dê sán
xuãl phần niềm lừ kliâu phân lích ihiốl kê đốn lliực thi, kiểm (hú. Nó cũng lạo ra một
cơ hội Khi tìm hiòLi về UML, như là mội ngôn ngữ mò hình hoá, la cun xác dịnli hộ lừ
vựng và cúc qui tác ngữ nghía (le xây dựng mó hình. Các khối xây dụng cơ bán hay
bọ tù vụng cua UML hao gổni các sự vậl, các mối quan hộ và các bien dồ. XÓI vỏ
mặl còng cụ. UML gồm lập hợp các thành phần: các cách nhìn (cách nhìn) hay các

? *)


kliía cạnh cua hệ lliong. các biêu dỏ (diagrams), các phấn lử trong mó hình (model
elemenl), và các kỹ lliuậl cliung (general mechanisms).

2.2. Bãng tù vụng cua UML
Các khối xây dựng cơ ban hay háng lừ vựng của UML bao gồm:
Các sụ vật (things)
Các quan hệ (relationships)
Các biếu dó (diagrams)
C á c sự vật là những trừu lượng hoá và cũng là các thành viên dầu tiên trong


một mỏ hình; các quan hệ của chúng liên kết các sự vút với nhau, các biểu đổ nhóm
lập hợp các sự vật có lien quan (llieo một ngữ nghĩa xác định) lại với nhau.
2.2.1. Các sụ vật
Các sự vật trong UML bao gồm:
Các sụ vật cấu ítúc

(Structural tilings)

Các sự vật hành vi (behavioral tilings)
Các sự rật nhóm (grouping things)
Các sự vật giải thích (annolalional things)
a. Các sự vật Cấu trúc
Các sự vật cấu trúc ihường là các phần tĩnh của mội mò hình, biểu diễn các
thành phán quan niệm hoặc ihành phẩn vậi lý (xem hình 2.1)


×