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

các mô hình trong phân tích thiết kế theo hướng đối tượng và ứng dụng

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 (2.47 MB, 90 trang )








































Mu 3. Trang ph bỡa lun vn (title page)



Đại học Thái Nguyên
TRNG Đại học công nghệ thông tin và truyền thông







Nguyễn thi thanh








Các mô hình trong phân tích thiết kế

theo h-ớng đối t-ợng và ứng dụng







Luận văn thạc sĩ khoa học máy tính











Thái Nguyên - 2012
S húa bi Trung tõm Hc liu i hc Thỏi Nguyờn












































Đại học Thái Nguyên
TrNG Đại học công nghệ thông tin và truyền thông






Nguyễn thi thanh





Các mô hình trong phân tích thiết kế
theo h-ớng đối t-ợng và ứng dụng

Chuyên ngành: Khoa học máy tính
Mã số: 60 48 01





Luận văn thạc sĩ khoa học máy tính




Ng-ời h-ớng dẫn khoa học
TS. Lê văn phùng








Thái Nguyên - 2012





S húa bi Trung tõm Hc liu i hc Thỏi Nguyờn
LI CẢM ƠN
Em xin bày tỏ lòng biết ơn kính trọng tới TS Lê Văn Phùng, người thầy
đã tận tình hướng dẫn, hết lòng giúp đỡ em trong suốt quá trình học tập,
nghiên cứu để hoàn thành bản luận văn này.
Em xin trân trọng cảm ơn các thầy giáo ở Viện Công nghệ thông tin Hà
Nội và trong trường Đại học Công Nghệ thông tin và truyền thông – Đại học
Thái Nguyên, Ban chủ nhiệm khoa Sau đại học trường Đại học Công Nghệ
thông tin và truyền thông - Đại học Thái Nguyên đã tạo mọi điều kiện thuận
lợi cho em trong quá trình học tập và làm luận văn.
Tôi xin trân trọng cảm ơn các học viên Cao học Tin K9A đã tạo
điều kiện giúp đỡ, động viên tôi trong quá trình học tập và làm luận văn

tốt nghiệp.

Tác giả luận văn
Nguyễn Thị Thanh






Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên











































Đại học Thái Nguyên
TRNG Đại học công nghệ thông tin và truyền thông






Nguyễn thi thanh








Các mô hình trong phân tích thiết kế
theo h-ớng đối t-ợng và ứng dụng



Chuyên ngành: Khoa học máy tính
Mã số: 60 48 01




Tóm tắt Luận văn thạc sĩ khoa học máy tính


















Thái Nguyên - 2012


S húa bi Trung tõm Hc liu i hc Thỏi Nguyờn
























Công trình được hoàn thành tạ i t rường đại học Công Nghệ Thông Tin và Truyền
Thông – Đại học Thái Nguyên





Người hướng dẫn khoa học: TS. Lê Văn Phùng





Phản biện 1:


Phản biện 2:






Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn họp tại:
Vào hồi giờ ngày tháng năm 20







Có thể tìm hiểu luận văn tại trung tâm học liệu Đại học Thái Nguyên
Và thư viện Trường/Khoa:Đại học Công Nghệ Thông Tin và Truyền Thông - ĐHTN
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên
Mẫu 6. Trang bìa 3 tóm tắt luận văn khổ 140 x 200

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên
LỜI CAM ĐOAN

Tôi xin cam đoan kết quả đạt được trong luận văn là sản phẩm của riêng cá
nhân, không sao chép lại của người khác. Trong toàn bộ nội dung của luận văn,
những điều được trình bày hoặc là của cá nhân hoặc là được tổng hợp từ nhiều
nguồn tài liệu. Tất cả các tài liệu tham khảo đều có xuất xứ rõ ràng và được trích
dẫn hợp pháp.
Tôi xin hoàn toàn chịu trách nhiệm và chịu mọi hình thức kỷ luật theo quy
định cho lời cam đoan của mình
Thái Nguyên, ngày 20 tháng 6 năm 2012
Nguyễ n Thị Thanh















Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên
1

M U

1. 

Ngày nay trong thời kỳ hội nhập, đối với bất cứ một quốc gia nào, việc
nắm đƣợc các nguồn lực thông tin của một ngành, một lĩnh vực, một doanh
nghiệp giữ vai trò rất quan trọng và là một trong những nhân tố quyết định
cho sự phát triển kinh tế xã hội, góp phần gia tăng giá trị của các ngành, cơ
quan, đơn vị.
Trong công tác quản lý nói chung và quản lý kế toán nói riêng, vấn đề
xây dựng một hệ thống thông tin quản lý đã đƣợc quan tâm nhƣng còn khá
lúng túng vì còn thiếu phƣơng pháp có cơ sở khoa học và quy trình chuẩn.
Ngày nay, kỹ nghệ phân tích thiết kế một hệ thống thông tin đã và đang
phát triển mạnh cả về chiều rộng lẫn chiều sâu. Một số hƣớng phát triển tiên
tiến đang trên đà tăng trƣởng mạnh từ năm 1990 đến nay nhƣ hƣớng đối
tƣợng, hƣớng thành phần, hƣớng dịch vụ, trong đó việc phát triển phần mềm
theo hƣớng đối tƣợng với ngôn ngữ thống nhất UML đã đạt đƣợc mức chuẩn
nhờ cách tiếp cận theo từng sự vật (things) đã giúp cho việc nhận thức các
thành phần trong hệ thống một cách sáng sủa và khoa học hơn.
Việc mô hình hoá trong quá trình phân tích và thiết kế trong tiến trình

phát triển hệ thống theo hƣớng đối tƣợng là những hoạt động trọng tâm tạo
nên những nền tảng khoa học chắc chắn trong việc trừu tƣợng hoá thế giới
thực rộng lớn. Cách tiếp cận này rất phù hợp để giải quyết vấn đề nan giải vừa
nêu trên. Vì vậy luận văn này hy vọng dựa vào kỹ nghệ hƣớng đối tƣợng sẽ
đáp ứng đƣợc những yêu cầu đặt ra một cách hiệu quả hơn.
2. 
- Đối tƣợng nghiên cứu: Đề tài tập trung nghiên cứu về kỹ nghệ hƣớng
đối tƣợng và các mô hình ứng dụng phát triển hệ thống quản lý tài sản cố định
trong hệ thống quản trị nguồn lực doanh nghiệp.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên
2

- Phạm vi nghiên cứu: kỹ nghệ hƣớng đối tƣợng và doanh nghiệp.

- Nghiên cứu phƣơng pháp luận về các mô hình phân tích và thiết kế hệ
thống theo cách tiếp cận hƣớng đối tƣợng.
- Ứng dụng kết quả nghiên cứu về các mô hình phân tích và thiết kế theo
hƣớng đối tƣợng vào việc xây dựng hệ thống thông tin quản lý tài sản cố định
trong hệ thống quản trị nguồn lực doanh nghiệp.
4. 

 M hóa theo h

 3: 
trong 















Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên
3




1.1
1.1.1
Mô hình (model) là một dạng trừu t-ợng hoá của một hệ thống thực.
Mô hình chính là một hình ảnh (một biểu diễn) của một hệ thống thực, đ-ợc
diễn tả ở một mức độ tr-ù t-ợng nào đó, theo một quan điểm nào đó, theo một
hình thức (hiểu đ-ợc) nào đó nh- ph-ơng trình, bảng, đồ thị. Mô hình có xu
h-ớng dạng sơ đồ (diagrams) tức là đồ thị gồm các nút và cung.
Mụ hỡnh mụ t bn cht ca mt vn hoc mt cu trỳc phc tp
bng cỏch loi b nhng chi tit khụng quan trng, lm cho bi toỏn tr nờn
d hiu v d nm bt hn. xõy dng mt h thng phc tp, nhng ngi
phỏt trin phi tru tng húa nhng khớa cnh khỏc nhau ca h thng, xõy
dng cỏc mụ hỡnh bng cỏch s dng cỏc ký hiu mt cỏch rừ rng, cn thn,
kim tra xem cỏc mụ hỡnh ó tho món cỏc yờu cu ca h thng cha v dn
dn thờm vo cỏc chi tit cú th chuyn i t mụ hỡnh sang mt ci t c
th.

Cỏc mụ hỡnh c to ra tru tng hoỏ cỏc c im quan trng
ca cỏc h thng th gii thc. Trong lnh vc phn mm, mụ hỡnh l k
hoch chi tit ca h thng, l bc tranh hay mụ t ca vn ang c c
gng gii quyt hay biu din. Mụ hỡnh cũn cú th l mụ t chớnh gii phỏp,
cú th dựng biu tng thay cho i tng thc. Tin trỡnh phỏt trin phn
mm l lm gim mt s c trng ca i tng hỡnh thnh mụ hỡnh, lm
gim phc tp bng mụ hỡnh tru tng.
Mọi mô hình đều phản ánh hệ thống theo một khung nhìn trừu t-ợng
hoá nào đó. Có 2 khung nhìn chính:
S húa bi Trung tõm Hc liu i hc Thỏi Nguyờn
4

+ Khung nhìn logic: tập trung mô tả bản chất của hệ thống và mục đích
hoạt động của hệ thống, bỏ qua các yếu tố về tổ chức thực hiện, về biện pháp
cài đặt. Nói cách khác, mô hình logic trả lời các câu hỏi là gì? (What?)- nh-
là chức năng gì, thông tin gì, ứng xử gì, bỏ qua các câu hỏi nh thế nào?
(How?). ở tầng này, ng-ời ta tiến hành trên 3 ph-ơng diện xử lý, dữ liệu và
động thái hệ thống.
+ Khung nhìn vật lý: Trả lời câu hỏi nh thế nào, ai làm, làm ở
đâu, khi nào làm, quan tâm đến các mặt nh: phơng pháp, biện pháp,
công cụ, tác nhân, địa điểm, thời gian, hiệu năng, ở tầng này yêu cầu cần
làm rõ kiến trúc vật lý của hệ thống.
Vic xõy dng mụ hỡnh cú mt ý ngha rt ln trong quỏ trỡnh phỏt trin
phn mm:
- Mụ hỡnh giỳp ta hiu v thc hin c s tru tng, tng quỏt hoỏ
cỏc khỏi nim c s gim thiu phc tp ca h thng. Qua mụ hỡnh
chỳng ta bit c h thng gm nhng gỡ? v chỳng hot ng nh th no.
- Mụ hỡnh giỳp chỳng ta quan sỏt c h thng nh nú vn cú trong
thc t hoc nú phi cú nh ta mong mun. Mun hiu v phỏt trin c h
thng phn mm theo yờu cu thc t thỡ ta phi quan sỏt nú theo nhiu gúc

nhỡn khỏc nhau: theo chc nng s dng, theo cỏc thnh phn logic.
- Mụ hỡnh th hin rừ cỏc c t cu trỳc v hnh vi ca h thng.
- ng thi, mụ hỡnh l c s trao i, ghi li nhng quyt nh ó
thc hin trong nhúm tham gia d ỏn phỏt trin phn mm. Mi quan sỏt, mi
kt qu phõn tớch u c ghi li chi tit phc v cho c quỏ trỡnh phỏt
trin phn mm.
Mụ hỡnh húa l vic dựng mụ hỡnh nhn thc v din t mt h
thng.
S húa bi Trung tõm Hc liu i hc Thỏi Nguyờn
5

1.1.2
Ph-ơng pháp mô hình hoá là một trong những ph-ơng pháp quan trọng
nhất để nghiên cứu hệ thống. ý t-ởng của ph-ơng pháp mô hình hoá là không
nghiên cứu trực tiếp đối t-ợng mà thông qua việc nghiên cứu một đối t-ợng
khác tơng tự hay là hình ảnh của nó mà có thể sử dụng đợc các công cụ
khoa học. Kết quả nghiên cứu trên mô hình đ-ợc áp dụng vào cho đối t-ợng
thực tế.
Kiểm tra mức độ phù hợp








Hỡnh 1.1. S nguyờn tc hot ng ca phng phỏp mụ hỡnh húa

Mụ hỡnh c biu din theo mt ngụn ng mụ hỡnh hoỏ. Ngụn ng mụ

hỡnh hoỏ bao gm cỏc ký hiu (nhng biu tng c dựng trong mụ hỡnh)
v mt tp cỏc quy tc ch cỏch s dng chỳng. Cỏc quy tc ny bao gm:
- Cỳ phỏp (Syntactic): cho bit hỡnh dng cỏc biu tng v cỏch kt
hp chỳng trong ngụn ng.
- Ng ngha (Semantic): cho bit ý ngha ca mi biu tng, chỳng
c hiu th no khi nm trong hoc khụng nm trong ng cnh ca cỏc biu
tng khỏc.
Hệ thống thực

Mô hình
Kiểm nghiệm
đánh giá

Kết quả nghiên
cứu mô hình
áp dụng khi không cần
phải điều chỉnh
điều chỉnh
S húa bi Trung tõm Hc liu i hc Thỏi Nguyờn
6

- Mục đích (Pragmatic): định nghĩa ý nghĩa của biểu tƣợng để sao cho
mục đích của mô hình đƣợc thể hiện và mọi ngƣời có thể hiểu đƣợc.

Thông qua mô hình hoá, chúng ta sẽ giới hạn vấn đề nghiên cứu bằng
cách chỉ tập trung vào một khía cạnh của vấn đề vào một thời điểm. Mô hình
hoá sẽ là tăng độ dễ hiểu của con ngƣời. Việc chọn mô hình đúng cho khả
năng mô hình làm việc ở mức trừu tƣợng cao. Booch G., Rumbaugh J.,
Jacobson I., 1999, đã đƣa ra 4 nguyên tắc cơ bản về mô hình hoá:
- Việc chọn mô hình nào để tạo lập có ảnh hƣởng sâu sắc đến cách giải

quyết vấn đề và cách hình thành các giải pháp.
- Mỗi mô hình biểu diễn hệ thống với mức độ chính xác khác nhau.
- Mô hình tốt nhất phải là mô hình phù hợp với thế giới thực.
- Không mô hình nào là đầy đủ. Mỗi hệ thống thƣờng đƣợc tiếp cận
thông qua tập mô hình gần nhƣ độc lập nhau.
Phụ thuộc vào bản chất của hệ thống mà mỗi mô hình có tầm quan
trọng khác nhau. Mô hình quan sát thiết kế tĩnh sẽ quan trọng hơn trong hệ
thống quản lý nhiều dữ liệu; trong khi đó mô hình ca sử dụng rất quan trọng
đối với hệ thống có nhiều giao diện; còn mô hình quan sát tiến trình động rất
quan trọng đối với hệ thống thời gian thực; đặc biệt mô hình triển khai và cài
đặt rất quan trọng với hệ thống phân tán có ứng dụng web…
1.1.5. Các mô hình t
Một tiến trình phát triển phần mềm là một tập của các hoạt động cần
thiết để chuyển các yêu cầu ngƣời dùng thành một hệ thống phần mềm đáp
ứng đƣợc các yêu cầu đặt ra



Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên
7




Hình 1.2. Quá trình phát triển phần mềm
Vòng đời phát triển phần mềm đƣợc chia thành 4 pha: sơ bộ, soạn thảo,
xây dựng và chuyển giao. Trong mỗi pha lại chia thành nhiều bƣớc lặp nhỏ.
Mỗi bƣớc lặp đều gồm một số công việc thực hiện trọn vẹn một sản phẩm
phần mềm: lập các mô hình đặc tả nghiệp vụ, xác định yêu cầu, lập các mô
hình phân tích dữ liệu, xử lý và hành vi, lập các mô hình thiết kế, triển khai và

kiểm thử.
Mô hình tiến trình phần mềm là sự mô tả tiến trình một cách đơn giản
hóa khi xem xét nó từ một cách nhìn cụ thể. Về bản chất, mô hình tiến trình là
một sự trừu tƣợng hóa một lớp các tiến trình thực. Một vài mô hình tiến trình
phần mềm, đã đƣợc trình bày, đƣợc nhiều ngƣời biết đến nhƣ: mô hình thác
nƣớc, mô hình xoắn ốc, mô hình làm bản mẫu.
Năm 1996, Huff lần đầu tiên hệ thống hóa một số mô hình tiến trình
phần mềm. Sommerville, 2001, nhắc tới một số loại mô hình tiêu biểu:
- Mô hình thác nƣớc (waterfall model).
- Mô hình phát triển tiến hóa (evolutionary model).
- Phát triển hệ thống hình thức (formal system development.
- Phát triển phần mềm theo hƣớng sử dụng lại (reuse oriented software
development).
1.1.6. 
Để phát triển HTTT, ngƣời ta có nhiều hƣớng phát triển. Các hƣớng
chính đang thịnh hành có thể kể ra là:
1. Các mô hình phát triển phần mềm theo kỹ nghệ hƣớng cấu trúc
2. Các mô hình phát triển phần mềm theo kỹ nghệ hƣớng đối tƣợng
Yêu cầu
ngƣời dùng
Tiến trình phát triển
phần mềm
Hệ thống
phần mềm
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên
8

3. Cỏc mụ hỡnh phỏt trin phn mm theo k ngh hng thnh phn
4. Cỏc mụ hỡnh phỏt trin phn mm theo k ngh hng dch v
5. Cỏc mụ hỡnh phỏt trin phn mm theo k ngh hng in toỏn

ỏm mõy.
Mi k ngh theo mt hng no ú u cú nhng th tri nht nh v
nhng hn ch no ú. Trong lun vn ny, chỳng ta s i sõu vo nghiờn cu
k ngh hng i tng. Trong chng ny chỳng ta bt u t nhng kin
thc tng quan nht v hng i tng. Sang chng 2, chỳng ta s gii
thiu tng mụ hỡnh c th trong ú tin hnh mụ hỡnh húa tng khõu kho
sỏt, phõn tớch, thit k v ci t. Sang chng 3, chỳng ta s vn dng nú
din t yờu cu ca bi toỏn c th.
1.2.

1.2.1.
khc phc nhng vn tn ti trong cỏch tip cn hng cu trỳc
ngi ta ó nghiờn cu mt mụ hỡnh mi, thớch hp cho vic phỏt trin phn
mm ln v phc tp, ú l mụ hỡnh hng i tng. Quan im hng i
tng da trờn cỏch tip cn h thng, cỏc chc nng h thng c biu din
thụng qua cng tỏc ca cỏc thnh phn.
Theo cách tiếp cận h-ớng đối t-ợng, hệ thống đ-ợc nhìn nhận nh- một
bộ các đối t-ợng (chứ không phải là một bộ chức năng). Hệ thống đ-ợc phân
tán, mỗi đối t-ợng có những thông tin trạng thái riêng của nó. Theo từ điển
tiếng Việt của Viện Ngôn ngữ học Hà Nội, 1996, thì đối t-ợng (object) theo
nghĩa thông th-ờng là ng-ời, vật hay hiện t-ợng mà con ng-ời nhằm vào trong
suy nghĩ, trong hành động, là bất kỳ cái gì nhìn thấy và sờ mó đ-ợc. Nh-ng ở
đây, theo Cood P. và Yourdon E. ,1991, đối t-ợng là trừu t-ợng cái gì đó trong
lĩnh vực vấn đề hay trong cài đặt của nó, phản ánh khả năng hệ thống l-u giữ
S húa bi Trung tõm Hc liu i hc Thỏi Nguyờn
9

thuộc tính về nó và t-ơng tác với nó, gói các giá trị thuộc tính và các dịch vụ
(ph-ơng thức hay ph-ơng pháp).
Nói rõ hơn, đối t-ợng là bộ các thuộc tính xác định trạng thái của đối

t-ợng đó và các phép toán thực hiện trên các thuộc tính đó. Mỗi đối t-ợng là
một thể hiện cụ thể của một lớp mà lớp đ-ợc xác định bởi các thuộc tính và
các phép toán của nó. Lớp đối t-ợng đ-ợc thừa kế từ một vài lớp đối t-ợng có
mức trừu t-ợng cao hơn, sao cho định nghĩa nó chỉ cần nêu đủ sự khác biệt
giữa nó và các lớp cao hơn nó. Các đối t-ợng liên lạc với nhau chỉ bằng cách
trao đổi các thông báo: thực tế hầu hết các liên lạc giữa các đối t-ợng thực
hiện bằng cách một đối t-ợng này gọi một thủ tục, mà thủ tục này kết hợp với
một đối t-ợng khác.
Cách tiếp cận h-ớng đối t-ợng dựa trên ý t-ởng che dấu thông tin. Thiết
kế h-ớng đối t-ợng gần đây đ-ợc phát triển nhiều đã tạo ra các hệ thống cấu
tạo bởi nhiều thành phần độc lập và có t-ơng tác với nhau. Che dấu thông tin
là chiến l-ợc thiết kế dấu càng nhiều thông tin trong các thành phần càng hay.
Cái đó ngầm hiểu rằng việc kết hợp điều khiển logic và cấu trúc dữ liệu đ-ợc
thực hiện trong thiết kế càng chậm càng tốt. Liên lạc thông qua các thông tin
trạng thái dùng chung (các biến tổng thể) là ít nhất, nhờ vậy khả năng hiểu
đ-ợc nâng lên. Thiết kế là t-ơng đối dễ thay đổi vì sự thay đổi một thành phần
không thể không dự kiến các hiệu ứng phụ trên các thành phần khác.
Cách tiếp cận h-ớng đối t-ợng có 3 đặc tr-ng sau:
- Không có vùng dữ liệu dùng chung. Các đối t-ợng liên lạc với nhau
bằng cách trao đổi thông báo chứ không phải bằng các biến dùng chung.
- Các đối t-ợng là các thực thể độc lập, dễ thay đổi vì rằng tất cả các
trạng thái và các thông tin biểu diễn chỉ ảnh h-ởng trong phạm vi chính đối
t-ợng đó thôi. Các thay đổi về biểu diễn thông tin có thể đ-ợc thực hiện không
cần sự tham khảo tới các đối t-ợng hệ thống khác
- Các đối t-ợng có thể phân tán và có thể hành động tuần tự hoặc song song.
S húa bi Trung tõm Hc liu i hc Thỏi Nguyờn
10

1.2.2. Ngôn 
UML là ngôn ngữ mô hình hoá chuẩn, ngôn ngữ mô hình đồ hoạ, trực

quan, vừa đặc tả vừa có cấu trúc, đồng thời lại là ngôn ngữ làm tài liệu nên
đối với việc phát triển phần mềm hƣớng đối tƣợng, UML đặc biệt có khả
năng sau:
- Cho phép mô tả toàn bộ các sản phẩm phân tích và thiết kế;
- Trợ giúp việc tự động hoá quá trình thiết kế trên máy tính;
- Trợ giúp việc dịch xuôi và dịch ngƣợc các thiết kế sang mã nguồn của
ngôn ngữ lập trình và CSDL.
Mục đích chính của UML nhằm vào các hoạt động sau:
- Mô hình hóa đƣợc các hệ thống và sử dụng đƣợc tất cả các khái niệm
hƣớng đối tƣợng một cách thống nhất.
- Cho phép đặc tả, hỗ trợ để đặc tả tƣờng minh mối quan hệ giữa các
khái niệm cơ bản trong hệ thống, đồng thời mô tả đƣợc mọi trạng thái hoạt
động của hệ thống đối tƣợng. Nghĩa là cho phép mô tả đƣợc cả mô hình tĩnh
lẫn mô hình động một cách đầy đủ và trực quan.
- Tận dụng đƣợc những khả năng sử dụng lại và kế thừa ở phạm vi diện
rộng để xây dựng đƣợc những hệ thống phức tạp và nhạy cảm nhƣ: các hệ
thống động, hệ thống thời gian thực, hệ thống nhúng thời gian thực
- Tạo ra những ngôn ngữ mô hình hoá sử dụng đƣợc cho cả ngƣời
lẫn máy tính.

Khi mô hình hóa hệ thống, chúng ta cần quan tâm tới một loạt các khía
cạnh khác nhau nhƣ về mặt chức năng (cấu trúc tĩnh của nó cũng nhƣ các
tƣơng tác động), về mặt phi chức năng (yêu cầu về thời gian, về độ đáng tin
cậy, về quá trình thực thi) cũng nhƣ về khía cạnh tổ chức (tổ chức làm việc,
ánh xạ nó vào các module ). Vì vậy một hệ thống khi mô hình hóa thƣờng
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên
11

đƣợc xem xét trên một loạt các phƣơng diện khác nhau, mỗi phƣơng diện sẽ
thể hiện một bức ảnh ánh xạ của toàn bộ hệ thống và chỉ ra một khía cạnh

riêng của hệ thống.
Trong UML, kiến trúc của hệ thống phần mềm chuyên sâu (cho ta một
cách nhìn khái quát nhất về hệ thống phần mềm ở các góc độ khác nhau) đƣợc
mô tả theo 5 loại khung nhìn (views) khác nhau. Mỗi khung nhìn phản ánh về
một khía cạnh của tổ chức và cấu trúc của hệ thống, tập trung vào từng mặt cụ
thể giúp cho ta hiểu và sử dụng hệ thống tốt nhất. Mỗi khung nhìn thƣờng
đƣợc thể hiện trong một số sơ đồ nhất định.










Hình 1.3. Mô hình hoá kiến trúc hệ thống
- Khung nhìn ca sử dụng (Use case view): chứa các tác nhân, ca sử dụng, sơ
đồ ca sử dụng (khía cạnh tĩnh của khung nhìn) trong hệ thống. Chúng cũng có thể
bao gồm vài sơ đồ trình tự, sơ đồ cộng tác (khía cạnh động của khung nhìn) và gói.
Khung nhìn ca sử dụng tập trung vào mức cao của cái hệ thống sẽ làm, không quan
tâm đến hệ thống làm nhƣ thế nào.
- Khung nhìn thiết kế (design view) tập trung vào hệ thống cài đặt hành vi
trong ca sử dụng nhƣ thế nào. Nó bao gồm các lớp, sơ đồ lớp, sơ đồ đối tƣợng (khía
cạnh tĩnh của khung nhìn), sơ đồ tƣơng tác, sơ đồ hoạt động, sơ đồ biến đổi trạng
thái (khía cạnh động của khung nhìn) và các gói. Trong khung nhìn, ngƣời ta quan
tâm đến hai lớp quan trọng là lớp phân tích (lớp biên, lớp điều khiển, lớp dữ liệu) và
lớp thiết kế (lớp phụ thuộc vào ngôn ngữ). Khung nhìn này tập trung vào cấu trúc
logic của hệ thống nên còn đƣợc gọi là khung nhìn logic (logical view). Khung nhìn

Khung nhìn thiết
kế/logic
Khung nhìn tiến
trình/tƣơng tranh
Khung nhìn cài
đặt/thành phần
Khung nhìn triển
khai/bố trí
Khung nhìn
ca sử dụng
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên
12

này tập trung vào cấu trúc của hệ thống. Nhờ nó, ngƣời ta nhận ra các bộ phận cơ
bản cấu thành hệ thống thể hiện mọi quá trình trao đổi, xử lý thông tin cơ bản trong
hệ thống.
- Khung nhìn tiến trình/tương tranh (process view) biểu diễn sự phân chia
các luồng thực hiện công việc, các lớp đối tƣợng cho các tiến trình và sự đồng bộ
giữa các luồng (thread) trong hệ thống. Khung nhìn này tập trung vào các nhiệm vụ
tƣơng tranh, tƣơng tác với nhau trong hệ thống đa nhiệm. Nó chủ yếu diễn đạt hiệu
năng, quy mô và năng lực thông qua của hệ thống.
- Khung nhìn thành phần/cài đặt (component/implementation view) bao gồm
các thành phần (là mô-đun vật lý hay các file) để lắp ráp thành hệ thống vật lý.
Khung nhìn này hƣớng đến việc quản lý cấu hình của hệ thống. Khung nhìn này bao
gồm thành phần, sơ đồ thành phần và gói.
- Khung nhìn bố trí/triển khai (Deployment view) bao gồm các nút tạo nên
kết cấu phần cứng mà trên đó hệ thống vận hành. Khung nhìn này chủ yếu hƣớng
đến sự phân tán và cài đặt cụ thể của hệ thống, tức là liên quan đến triển khai vật lý
của hệ thống. Khung nhìn triển khai chỉ ra các tiến trình và thiết bị trên mạng và các
kết nối vật lý giữa chúng. Sơ đồ triển khai cũng hiển thị tiến trình và chỉ ra tiến trình

nào chạy trên máy nào. Khung nhìn này đƣợc thể hiện trong các sơ đồ triển khai/bố
trí các nút của hệ thống.
1.2.4. Quy trình phát trin phn mm hp nht (Unified Software
Development Procces)
UML đƣợc phát triển để đặc tả trong quá trình phát triển phần mềm, nhằm
mô hình hoá hệ thống. Quy trình phát triển phần mềm có sử dụng UML đƣợc gọi là
quy trình phát triển phần mềm hợp nhất.
* Các đặc trưng của quy trình hợp nhất
Các đặc trƣng của quy trình hợp nhất bao gồm:
- Quy trình hợp nhất bao gồm con ngƣời, dự án, sản phẩm, quy trình và công
cụ. Con ngƣời là những ngƣời tham gia dự án để tạo ra sản phẩm phần mềm theo
một quy trình với sự hỗ trợ của công cụ đƣợc cung cấp.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên
13

- Quy trình hợp nhất là quy trình phát triển phần mềm đƣợc hƣớng dẫn bởi
các ca sử dụng. Nghĩa là các yêu cầu của ngƣời sử dụng đƣợc mô tả trong các ca sử
dụng, là chuỗi các hành động đƣợc thực hiện bởi hệ thống nhằm cung cấp các dịch
vụ, các thông tin cho khách hàng. Các ca sử dụng bao gồm chuỗi các công việc
đƣợc xem là nền tảng để tạo ra mô hình thiết kế và cài đặt hệ thống.
- Quy trình hợp nhất cũng là quy trình tập trung vào kiến trúc, đƣợc lặp và
phát triển tăng trƣởng liên tục, dùng ca sử dụng điều khiển quá trình phát triển.
Hình 1.4. Ca sử dụng điều khiển quá trình phát triển phần mềm
- Quy trình hợp nhất không chỉ tạo ra một hệ thống phần mềm hoàn chỉnh mà
còn tạo ra một số sản phẩm trung gian nhƣ các mô hình ca sử dụng, mô hình khái
niệm, mô hình phân tích, mô hình thiết kế, mô hình triển khai, mô hình cài đặt và
mô hình kiểm thử.
Quy trình phát triển phần mềm hợp nhất và ngôn ngữ mô hình hoá hợp nhất
là phương pháp luận và công cụ điển hình cho công nghệ phát triển phần mềm
hướng đối tượng.

* Các pha chính trong quy trình phát triển phần mềm
Có năm pha chính cần thực hiện trong quy trình phát triển phần mềm:
a. Xác định các yêu cầu
b. Phân tích hệ thống
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên
14

c. Thiết kế hệ thống
d. Lập trình và kiểm tra hệ thống
e. Vận hành và bảo trì hệ thống
Trong quy trình phát triển phần mềm kể trên, hai pha cốt lõi là phân tích
và thiết kế hƣớng đối tƣợng bằng UML, nhằm xây dựng các mô hình đặc tả
các yêu cầu, các mô hình khái niệm, logic và kiến trúc của hệ thống.















Hình 1.5. Hệ thống các mô hình cơ bản trong kỹ nghệ hướng đối tượng
Sơ đồ ca sử dụng

(MH PT & TK)

Sơ đồ trạng thái
(MH phân tích )
Sơ đồ hoạt động
(MH PT & TK)

Sơ đồ cộng tác
(MH thiết kế)





Sơ đồ trình tự
(MH phân tích )
Sơ đồ lớp
(MH PT & TK)
Sơ đồ thành phần
(MH thiết kế)
Sơ đồ triển khai
(MH thiết kế)


Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên
15






Trong kỹ nghệ hƣớng đối tƣợng, quá trình mô hình hóa đƣợc tiến hành
qua một tập hợp các mô hình cơ bản sau:
- Mô hình nghiệp vụ,
- Mô hình phân tích một ca sử dụng,
- Mô hình phân tích đối tƣợng,
- Mô hình phân tích động thái,
- Mô hình thiết kế tƣơng tác,
- Mô hình thiết kế vật lý.

2.1
2.1
Để hiểu đúng và đầy đủ hệ thống mà ta cần tin học hóa, sau khi xác
định phạm vi và chức năng hệ thống cần nghiên cứu bằng cách liệt kê các
chức năng mà hệ thống thực hiện, chỉ ra mối quan hệ của nó với môi trƣờng
thông qua việc sử dụng các chức năng của hệ thống, chúng ta cần tìm các ca
sử dụng nghiệp vụ từ các chức năng của hệ thống mà qua đó con ngƣời và hệ
thống khác sử dụng chúng. Mô tả nội dung của các ca sử dụng này để hiểu
đƣợc nội dung các dịch vụ mà hệ thống cần cung cấp. Các công việc này đƣợc
trợ giúp bằng việc xây dựng mô hình lĩnh vực và mô hình nghiệp vụ. Sản
phẩm của pha này gồm:
- Mô hình lĩnh vực, mô hình nghiệp vụ của hệ thống,
- Bảng các thuật ngữ sử dụng (từ điển giải thích),
- Xác định các yêu cầu bổ sung.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên
16

2.1
Mô hình ca sử dụng nghiệp vụ đƣợc mô tả bằng các sơ đồ ca sử dụng.
Chúng ta xây dựng mô hình nghiệp vụ theo 2 bƣớc:

- Xây dựng một mô hình ca sử dụng nghiệp vụ bao gồm việc xác định
các tác nhân nghiệp vụ và các ca sử dụng nghiệp vụ mà các tác nhân sử dụng.
- Phát triển một mô hình đối tƣợng nghiệp vụ gồm những ngƣời tham gia
nghiệp vụ, các thực thể nghiệp vụ và các đơn vị công việc cùng nhau thực
hiện các ca sử dụng nghiệp vụ. Các quy tắc nghiệp vụ và các điều chỉnh khác
trong nghiệp vụ đƣợc đặt ra và có liên kết với các đối tƣợng khác là một bộ
phận của mô hình.
Ví dụ:








Hình 2.1. Mô hình nghiệp vụ chuyển tiền từ người gửi sang người nhận

2.2. 
2.2.1. 
Trong pha xác định yêu cầu, chúng ta cần tìm:
- Các tác nhân và các ca sử dụng để chuẩn bị cho phiên bản đầu tiên
của ca sử dụng.
- Xác định các ca sử dụng có ý nghĩa về mặt kiến trúc và sắp thứ tự ƣu
tiên các ca sử dụng.
HT giao dịch tÝn dông
Kh¸ch hµng
göi tiÒn
Kh¸ch hµng
nhËn tiÒn

Kh¸ch
göi
Kh¸ch
nhËn
Tµi khoản
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên
17

- Mô tả mọi ca sử dụng.
- Đƣa ra các yếu tố giao diện ngƣời dùng thích hợp cho mỗi tác nhân
tƣơng tác với các ca sử dụng.
- Tái cấu trúc mô hình ca sử dụng bằng cách xác định và đƣa ra các
tổng quát hóa, các mở rộng hay bao gồm của các ca sử dụng để làm cho mô
hình càng rõ ràng và dễ hiểu hơn.
Sản phẩm của pha này gồm có:
- Một phiên bản đầu tiên của mô hình ca sử dụng (sơ bộ và tổng thể)
- Mô tả về ca sử dụng
- Các bản mẫu giao diện ngƣời dùng
Các phiên bản của các chế tác trên đƣợc mịn dần qua quá trình lặp.
2.2
a và vai 
Ca sử dụng dùng để:
- Mô tả các yêu cầu chức năng của hệ thống, là kết quả của quá trình
khảo sát, nghiên cứu các yêu cầu của bài toán và những thỏa thuận giữa khách
hàng, ngƣời sử dụng hệ thống với ngƣời phát triển phần mềm.
- Làm cơ sở để ngƣời phân tích viên hiểu, ngƣời thiết kế xây dựng các
kiến trúc, ngƣời lập trình cài đặt các chức năng của hệ thống.
- Cung cấp các cơ sở để kiểm duyệt, thử nghiệm hệ thống.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên
18


Ví dụ:







Hình 2.2. Vai trò của ca sử dụng trong quá trình phát triển phần mềm
Hình trên chỉ cho chúng ta thấy ai sẽ cần đến ca sử dụng và cần để làm
gì? Ngƣời sử dụng phải nêu đƣợc các yêu cầu của hệ thống, phân tích viên
phải hiểu đƣợc các công việc của hệ thống, ngƣời thiết kế (kiến trúc sƣ) phải
đƣa ra đƣợc các thành phần để thực hiện các ca sử dụng, ngƣời lập trình thực
hiện cài đặt chúng và cuối cùng nhân viên kiểm tra hệ thống dựa vào những
ca sử dụng đó.
b. Tìm các tác nhân
Tác nhân là một bộ phận bên ngoài hệ thống nhƣng cộng tác chặt chẽ với
hệ thống. Nó chính là đối tƣợng mà hệ thống phục vụ hoặc cần có để cung cấp
dữ liệu. Do đó, nhiệm vụ trƣớc tiên của ngƣời phát triển là xác định các tác
nhân.
Một trong các kỹ thuật hỗ trợ để xác định các tác nhân là dựa trên các
câu trả lởi những câu hỏi sau:
- Ai sẽ sử dụng các chức năng chính của hệ thống?
- Ai cần sự hỗ trợ của hệ thống để thực hiện các công việc hàng ngày?
- Ai quản trị, bảo dƣỡng để đảm bảo cho hệ thống hoạt động thƣờng xuyên?
- Hệ thống quản lý, sử dụng những thiết bị nào?
- Hệ thống cần tƣơng tác với những bộ phận, hệ thống nào khác?
Ca sử dụng
Diễn đạt yêu cầu

Ngƣời sử dụng
Phân tích viên
Ngƣời thiết kế
Ngƣời kiểm tra
Lập trình viên
Kiểm tra
Hiểu
Thiết kế
Cài đặt
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên

×