Ngôn ngữ mô hình hóa thống nhất UML Unified Modeling Language 4 mục tiêu của UML với cấu phần artifact của một hệ thống phần mềm 10 UML là ngôn ngữ trực quan UML là ngôn ngữ thống nhất t
Trang 1Bộ môn Công nghệ Phần mềm
Viện CNTT & TT Trường Đại học Bách Khoa Hà Nội
k o?sqìmg?g ︰mf?I。h?s ︸mf
Bài 09 Tổng quan về UML và PTTK
HĐT
Nội dung
1 Mô hình hóa
2 Tổng quan về UML
3 Phân tích thiết kế hướng đối tượng
4 Công cụ phát triển OOAD
2
Nội dung
1 Mô hình hóa
2 Tổng quan về UML
3 Phân tích thiết kế hướng đối tượng
4 Công cụ phát triển OOAD
3
1.1 Mô hình hóa là gì?
4
1.2 Sự quan trọng của mô hình hóa
1.2 Sự quan trọng của mô hình hóa (2)
Mô hình hóa là mộ t con đư ờ ng dẫ n đế n thành công củ a dự án.
Trang 21.3 Vai trò của mô hình hóa hệ thống
…
7
1.4 Yêu cầu khi biểu diễn mô hình
accurate consistent understandable changeable
8
Nội dung
1 Mô hình hóa
2 Tổ ng quan về UML
3 Phân tích thiết kế hướng đối tượng
4 Công cụ phát triển OOAD
9
2.1 UML là gì?
Ngôn ngữ mô hình hóa thống nhất UML (Unified Modeling Language)
4 mục tiêu của UML với cấu phần (artifact) của một hệ thống phần mềm
10
UML là ngôn ngữ trực quan
UML là ngôn ngữ thống nhất trực
quan giúp công việc được xử lý nhất
quán, giảm thiểu lỗi xảy ra
UML là ngôn ngữ để đặc tả
UML xây dựng các mô hình chính xác, rõ ràng và đầy đủ.
Trang 3UML lă ngôn ngữ để xđy dựng HT
Câc mô hình UML có thể kết nối trực tiếp với
Actor A Use Case 1 Use Case 2 Use Case 3 Actor B
Class Diagram
G r pFile
cr eat e( )
f illFile( )
r ep Reposit or y nam e : char * = 0
r eadDoc( ) ( f r om Per sist ence)
FileM gr
f et chDoc( )sor t ByNam e( ) Docum ent List add( ) Docum ent get ( ) sor t FileList ( )
f List
FileList
r ead( )
r ead( ) f ill t he code
Sequence Diagram
us er mainWndfileMgr : doc ument : repos itory Doc ument gFile 1: Doc view r equest ( ) 2: f et chDoc( ) 4: cr eat e ( ) 6: f illDocum ent ( ) 7: r eadFile ( ) 9: sor t ByNam e ( )
Ư¯ ¤¹ ®¼ ¿¡ ´ ịÌ Ñ º ¸ ±đ¸ ¦
»ì¿ị Ă Ú °¡ ¿ôÊ »Ì Ñ ´ Ù
ỈĂÏ ° ü¸ ®Ă Ú ´ Đ Ăо î ¿Đ
¹ ®¼ Ă Ì Â ¤º ¸ ¸ ¦ ÌØ ´ ì ¹ ®¼ Ỉ¸ ĩ ° ´ ʼ ´ Đ Ăо î µ ĩĂÎ
° ´ ʼ µĩ ¿¡ ´ ịÌØ ĂÌ ¸ §º ° · Π¤· ÔĂ» ½ ÊÔÑ Ỉ¸ ĩ¿¡
º ¸ ¿© Ẩ ´Ù
Deployment Diagram
Window95
¹ ®¼ ° ü¸ ®Ơ¬¶óĂÌ ¾ ðƯ® EXE
¹ ®¼ ° ü¸ ® ¿£ Âø E XE
Windows95 Solar is ĂĂ¿ị¼ ¹ ö EXE Alpha
I BMM ainf r am e µ¥ĂÌ Ơ¸ º £ĂÌ ½ º ¼ ¹ ö
Windows95
¹ ®¼ ° ü¸ ® ¾ Ö Ì Ê¸ ´
º лí Ỉ ¯ °ư Ă Ì ÌÏ µơ¿ þ¾ î ¹ × ³× Ư® ¿ ÷ø · Î ĂÌ Â ¤º ¸ ½ ʽ º Ơ Û ¿ ¬ ° â ¸ ðµ¨
- Ă©µµ¿ì 95 : Ơ¬¶óĂÌ ¾ ðƯ®
- Ă©µµ¿ì NT: ĂĂ¿ị¼ ¹ ö- Ă¯ ´ н º ¸ Ó ½ Ơ: ĂĂ ¿ị ¼ ¹ ö ¹ × µ¥ĂÌ Ơ¸ ¼ ¹ ö, Ơị½ Ơ ¼ ¹ ö
- I BM ¸ ÞĂÎ Ì· ¹ Ẳ : µ¥ĂÌ Ơ¸ ¼ ¹ ö, Ơị½ Ơ ¼ ¹ ö
UML lă ngôn ngữ để tăi liệu hóa
Văo 1994, có hơn 50 phương phâp mô hình hóa hướng đối
tượng:
Fusion, Shlaer-Mellor, ROOM, Class-Relation,Wirfs-Brock,
Coad-Yourdon, MOSES, Syntropy, BOOM, OOSD, OSA, BON, Catalysis,
COMMA, HOOD, Ooram, DOORS …
Cần chuẩn hóa vă thống nhất câc phương phâp
UML được 3 chuyín gia hướng đối
văo năm 1994:
UML lă một ngôn ngữ hợp nhất
Fusion
Operation descriptions, message numbering
Before and after
conditions
Meyer
Booch
UML lă một ngôn ngữ thống nhất
Trang 42.2 Lị ch sử phát triển của UML (3)
UML
Partners’
Expertise UML 1.0 (Jan ‘97)
UML 1.1
( Sept ‘97)
UML 1.5
(March, ‘03)
UML 2.0
(2004)
Other
Methods Booch ‘91 OMT - 1
OOSE
Booch ’93 OMT - 2
Public Feedback
Unified Method 0.8
(OOPSLA ’95)
UML 0.9
(June ‘96) UML 0.91
(Oct ‘96)
and
2.3 Các khung nhìn của UML
Không đơn giản để mô hình hóa hệ thống phức tạp
20
2.3 Các khung nhìn của UML (2)
4 + 1 Architectural View
Process View
Programmers
Software management
Performance, scalability, throughput
System integrators
Analysts/Designers
Structure
Deployment View
System topology, delivery, installation, communication
System engineering
Use-Case View
End-user
Functionality
2.4 Các biểu đồ UML
Một mô hình hệ thống thường có nhiều loại biểu
đồ, mỗi loại có nhiều biểu đồ khác nhau.
22
2.4 Các biểu đồ UML
Biểu đồ use case (Use Case Diagram)
Biểu đồ cấu trúc tĩnh (Static Structure Diagrams)
Biểu đồlớp (Class Diagram)
Biểu đồđối tượng (Object Diagram)
Biểu đồ trạng thái (Statechart Diagram)
Biểu đồ hoạt động (Activity Diagram)
Biểu đồ tương tác (Interaction Diagrams)
Biểu đồ trình tự (Sequence Diagram)
Biểu đồ giao tiếp/cộng tác (Communication/Collaboration Diagram)
Biểu đồ thực thi (Implementation Diagrams)
Biểu đồ thành phần (Component Diagram)
Biểu đồ triển khai (Deployment Diagram)
a Biểu đồuse case
24
Trang 5b Biểu đồ lớp (Class Diagram)
25
c Biểu đồ đối tượng
26
d Biểu đồ trạng thái (State Diagram)
27
e Biểu đồ hoạt động (Activity Diagram)
28
f Biểu đồ trình tự (Sequence Diagram)
g Biểu đồ cộng tác (Collaboration Diagram)
Trang 6h Biểu đồ thành phần
(Component Diagram)
31
i Biểu đồ triển khai (Deployment Diagram)
32
2.5 Quy trình và UML
"Rational Unified
Process" - quy
trình phát triển
cho UML
2.5 Quy trình và UML (2)
RUP là quy trình công nghệ phần mềm phát triển bởi hãng Rational Phát triển song song với UML
2.6 Ứng dụng của UML trong phân tích
thiết kế hệ thống
UML được sử dụng để phân tích nhiều loại hệ
thống
(Information System)
(Technical System)
(Embeded System)
( Distributed System)
(Business System)
(System Software)
35
Nội dung
1 Mô hình hóa
2 Tổng quan về UML
3 Phân tích thiế t kế hư ớ ng đố i
tư ợ ng
4 Công cụ phát triển OOAD
36
Trang 73.1 Tầm quan trọng của OOAD
“Phân tích” và “Thiết kế” cần được coi trọng
37
3.1 Tầm quan trọng của OOAD (2)
Cần thiết lập một cơ chế hiệu quả để nắm bắt yêu cầu, phân tích thiết kế
OOAD
38
3.2 Mục đích của OOAD
Cung cấp cho người dùng, khách hàng, kỹ sư phân
tích, thiết kế nhiều cái nhìn khác nhau về cùng một
hệ thống
39
3.3 Phương pháp OOAD
OOAD được chia thành 2 giai đoạn
(OOA) (OOD)
40
3.3 Phương pháp OOAD (2)
1 Use case modeling to define
requirements
5 Normalization of the data
6 External Specification Design
Nội dung
1 Mô hình hóa Tổng quan về UML
Trang 84 Công cụUML – OOAD
Công cụ mã nguồn mở:
EclipseUML
UmlDesigner
ArgoUML
Công cụthương mại:
Enterprise Architect
IBM Rational Software Architect
Microsoft Visio
Visual Paradigm for UML