Bài giảng Lập trình hướng đối tượng - Bài 09: Tổng quan về UML và PTTK HĐT
8/24/2011
Nội dung
Bộ môn Công nghệ Phần mềm
Viện CNTT & TT
Trường Đại học Bách Khoa Hà Nội
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
LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG
Bài 09. Tổng quan về UML và PTTK
HĐT
2
Nội dung
1.1 Mô hình hóa là gì?
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
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.
Mức độ quan trọng cao hơn
Mức độ quan trọng thấp
Máy bay giấy
Máy bay phản lực
6
1
8/24/2011
1.4. Yêu cầu khi biểu diễn mô hình
1.3. Vai trò của mô hình hóa hệ thống
Chỉ rõ cấu trúc hoặc ứng xử của hệ thống.
accurate
…
consistent
understandable
changeable
7
8
Nội dung
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
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
10
UML là ngôn ngữ trực quan
UML là ngôn ngữ để đặc tả
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 xây dựng các mô hình chính xác, rõ
ràng và đầy đủ.
2
8/24/2011
UML là ngôn ngữ để xây dựng HT
UML là ngôn ngữ để tài liệu hóa
Các mô hình UML có thể kết nối trực tiếp với
rất nhiều ngôn ngữ lập trình.
Use Case
Diagram
Deployment Diagram
º
Ð
»
ê
È
¯
°æ
À
Ç
Ç
Ï
µ
å
¿
þ
¾
î
¹
×
³
Æ
®
¿
÷
À
¸
·
Î
À
Ç
Á
¤
º
¸
½
Ã
½
º
Å
Û
¿
¬
°
á
¸
ð
µ
¨
-
À
©
µ
µ
¿
ì
9
5
:
Å
¬
¶
ó
À
Ì
¾
ð
Æ®
-
À
©
µ
µ
¿
ì
N
T
:
À
À
¿
ë
¼
-
¹
ö
-
À
¯
´
Ð
½
º
¸
Ó
½
Å
:
À
À
¿
ë
¼
-
¹
ö
¹
×
µ
¥
À
Ì
Å
¸
¼
-
¹
ö
,
Å
ë
½
Å
¼
-
¹
ö
-
I
B
M
¸
Þ
À
Î
Ç
Á
·
¹
À
Ó
:
µ
¥
À
Ì
Å
¸
¼
-
¹
ö
,
Å
ë
½
Å
¼
-
¹
ö
W
i
d
o
w
s
9
5
w
W
i
d
o
w
s
9
5
Use Case
Use Case
1
2
¹
®
¼
-
°
ü
¸
®
Å
¬
¶
ó
À
Ì
¾
ð
Æ
®
.
E
X
E
¹
®
¼
-
°
ü
¸
®
¾
Ö
Ç
Ã
¸
´
W
i
d
o
w
s
N
T
Actor
A
Actor B
S
o
l
r
i
¹
®
¼
-
°
ü
¸
®
¿
£
Á
ø
.
E
X
E
A
l
h
a
U
N
I
X
À
À
¿
ë
¼
-
¹
ö
.
E
X
E
W
i
d
o
w
s
N
T
I
B
M
M
a
in
f
r
a
m
e
Use Case
3
µ
¥
À
Ì
Å
¸
º
£
À
Ì
½
º
¼
-
¹
ö
D
o
c
u
m
e
n
t
L
i
t
mainWnd
f
ileMgr
:
document
ocument
:
gFile
repository
D
o
c
u
m
e
n
t
F
i
M
g
r
FileMgr
D
user
a
d
d
)
:
t
ch
D
o
c(
)
l
d
o
cid
i
t
s
o
r
t
B
yN
a
m
e
(
)
n
u
m
F
i
l
:
i
t
1
:
v
i
w
t
Ư
Á
¤
¹
®
¼
-
¿
¡
´
ë
Ç
Ñ
º
¸
±
â
¸
¦
D
o
c
r
e
q
u
e
st
(
)
»
ç¿
ë
À
Ú
°¡
¿
ä
Ã
»
Ç
Ñ
´
Ù
.
e
n
(
)
r
.
e
a
d
(
)
f
i
t
h
e
c
o
d
e
.
c
l
s
e
(
)
2
:
f
e
t
c
h
D
o
c
(
)
e
a
d
(
)
F
ile
L
ist
s
o
r
t
F
ile
L
ist
(
)
f
L
i
t
c
r
e
a
t
e
(
)
3
:
c
r
e
a
t
e
(
)
f
ilD
o
cu
m
e
n
t
(
)
d
d
(
)
d
e
l
t
e
(
)
4
:
cr
e
a
t
e
(
)
1
5
:
r
e
a
d
D
o
c
(
)
È
-
À
Ï
°
ü
¸
®
À
Ú
´
Â
¸
À
Ð
¾
î
¿
Â
6
:
f
ilD
o
cu
m
e
n
t
(
)
¹
®
¼
-
À
Ç
Á
¤
º
¸
¦
Ç
Ø
´
ç
¹
®
¼
-
°
´
Ã
¼
¿
¡
¼
³
Á
¤
À
»
¿
ä
Ã
»
Ç
Ñ
´
Ù
.
r
e
p
7
:
r
e
a
d
F
i
(
)
F
i
R
e
p
o
s
i
o
r
y
8
:
f
i
i
(
)
(
f
r
o
m
P
e
r
sist
e
n
ce
)
(
i
È
-
¸
é
°
´
Ã
¼
´
Â
À
Ð
¾
î
µ
¸
é
À
Î
9
:
s
o
r
t
B
yN
a
m
e
(
)
n
a
m
e
:
c
h
a
r
*
=
0
°
´
Ã
¼
µ
é
¿
¡
´
ë
Ç
Ø
À
Ì
§
º
°
·
Î
Á
¤
·
Ä
À
»
½
Ã
Ä
Ñ
È
-
¸
é
¿
¡
e
a
d
)
º
¸
¿
©
Á
Ø
´Ù
.
r
e
a
d
D
o
c
(
)
o
p
(
r
e
a
d
F
ile
(
)
c
e
e
i
i
Sequence Diagram
Class Diagram
2.2. Lịch sử phát triển của UML
2.2. Lịch sử phát triển của UML (2)
Vào 1994, có hơn 50 phương pháp mô hình hóa hướng đối
tượng:
UML được 3 chuyên gia hướng đối
tượng hợp nhất các kỹ thuật của họ
vào năm 1994:
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 là một ngôn ngữ hợp nhất
UML là một ngôn ngữ thống nhất
Rumbaugh
Booch
Jacobson
Meyer
Fusion
Before and after
conditions
Operation descriptions,
message numbering
Harel
Embley
Singleton classes,
High-level view
State charts
Gamma, et.al
Wirfs-Brock
Frameworks, patterns,
notes
Responsibilities
Shlaer- Mellor
Object lifecycles
Selic, Gullekson, Ward
ROOM (Real-Time
Object-Oriented Modeling)
Odell
Classification
3
8/24/2011
2.3. Các khung nhìn của UML
2.2. Lịch sử phát triển của UML (3)
UML 2.0
(2004)
Không đơn giản để mô hình hóa hệ thống
phức tạp
UML 1.5
(March, ‘03)
UML 1.1
UML
(Sept. ‘97)
Partners’
Expertise
UML 1.0
(Jan. ‘97)
UML 0.9 and UML 0.91
(June ‘96)
(Oct. ‘96)
Public
Feedback
Unified Method 0.8
(OOPSLA ’95)
Booch ’93 OMT - 2
Other
Methods
OOSE
Booch ‘91
OMT - 1
20
2.4. Các biểu đồ UML
2.3. Các khung nhìn của UML (2)
4 + 1 Architectural View
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.
Logical View
Implementation View
Analysts/Designers
Structure
Programmers
Software management
Use-Case View
End-user
Functionality
Process View
Deployment View
System engineering
System topology, delivery,
installation, communication
System integrators
Performance, scalability, throughput
22
2.4. Các biểu đồ UML
a. Biểu đồ use case
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)
24
4
8/24/2011
b. Biểu đồ lớp (Class Diagram)
c. Biểu đồ đối tượng
25
26
d. Biểu đồ trạng thái (State Diagram)
e. Biểu đồ hoạt động (Activity Diagram)
27
28
g. Biểu đồ cộng tác (Collaboration
Diagram)
f. Biểu đồ trình tự (Sequence Diagram)
29
30
5
8/24/2011
h. Biểu đồ thành phần
(Component Diagram)
i. Biểu đồ triển khai (Deployment
Diagram)
31
32
2.5. Quy trình và UML
2.5. Quy trình và UML (2)
RUP là quy trình
"Rational Unified
công nghệ phần
mềm phát triển bởi
hãng Rational
Process" - quy
trình phát triển
cho UML
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
Nội dung
UML được sử dụng để phân tích nhiều loại hệ
thống
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
(Information System)
(Technical System)
(Embeded System)
( Distributed System)
(Business System)
(System Software)
35
36
6
8/24/2011
3.1. Tầm quan trọng của OOAD
3.1. Tầm quan trọng của OOAD (2)
“Phân tích” và “Thiết kế” cần được coi trọng
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
37
38
3.2. Mục đích của OOAD
3.3. Phương pháp 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
OOAD được chia thành 2 giai đoạn
(OOA)
(OOD)
39
40
3.3. Phương pháp 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
41
42
7
8/24/2011
4. 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
SmartDraw...
43
8
Bạn đang xem tài liệu "Bài giảng Lập trình hướng đối tượng - Bài 09: Tổng quan về UML và PTTK HĐT", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
bai_giang_lap_trinh_huong_doi_tuong_bai_09_tong_quan_ve_uml.pdf

