Giáo trình Lập trình hướng đối tượng - Bài 9: Tổng quan về UML và PTTK hướng đối tượng
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
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.
8 trang |
Chia sẻ: hachi492 | Ngày: 07/01/2022 | Lượt xem: 429 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Giáo trình Lập trình hướng đối tượng - Bài 9: Tổng quan về UML và PTTK hướng đối tượng, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
8/24/2011
1
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
LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG
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
Máy bay giấy
Máy bay phản lực
Mức độ quan trọng thấp Mức độ quan trọng cao hơn
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.
6
8/24/2011
2
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.
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 đủ.
8/24/2011
3
UML 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
rất nhiều ngôn ngữ lập trình.
Use Case
Diagram
Actor A
Use Case 1
Use Case 2
Use Case 3
Actor B
Class Diagram
G r pFile
r ead( )
open( )
cr eat e( )
f ilFile( )
r ep
Reposit or y
nam e : char * = 0
r eadDoc( )
r eadFile( )
( f r om Per sist ence)
FileM gr
f et chDoc( )
sor t ByNam e( )
Docum ent List
add( )
delet e( )
Docum ent
nam e : int
docid : int
num Field : int
get ( )
open( )
close( )
r ead( )
sor t FileList ( )
cr eat e( )
f ilDocum ent ( )
f List
1
FileList
add( )
delet e( )
File
r ead( )
r ead( ) f il t he
code. .
Sequence Diagram
user
mainWnd fileMgr :
FileMgr
repositorydocument :
Document
gFile
1: Doc view r equest ( )
2: f et chDoc( )
3: cr eat e ( )
4: cr eat e ( )
5: r eadDoc ( )
6: f ilDocum ent ( )
7: r eadFile ( )
8: f ilFile ( )
9: sor t ByNam e ( )
ƯÁ¤¹ ®¼ ¿¡ ´ ëÇ Ñ º ¸ ±â¸ ¦
»ç¿ë À Ú °¡ ¿äà »Ç Ñ ´ Ù.
È ÀÏ °ü¸ ®À Ú ´  Àо î ¿Â
¹ ®¼ À Ç Á ¤º ¸ ¸ ¦ ÇØ ´ ç ¹ ®¼
°´ ü ¿¡ ¼ ³ Á¤ À» ¿ä û Ç Ñ ´ Ù.
È ¸ é °´ ü ´  Àо î µ éÀÎ
°´ ü µé ¿¡ ´ ëÇØ ÀÌ ¸ §º °· Î
Á¤· ÄÀ» ½ ÃÄÑ È ¸ é¿¡
º ¸ ¿© ÁØ Ù´.
Deployment Diagram
Window95
¹ ®¼ °ü¸ ®
Ŭ¶óÀÌ ¾ ðÆ®. EXE
Windows
NT
¹ ®¼ °ü¸ ® ¿£ Áø. E XE
Windows
NT
Windows95
Solar is
ÀÀ¿ë¼ ¹ ö. EXE
Alpha
UNI X
I BM
M ainf r am e
µ¥ÀÌ Å¸ º£ÀÌ ½ º¼ ¹ ö
Windows95
¹ ®¼ °ü¸ ® ¾ Ö Ç Ã¸ ´
ºÐ»ê È ¯ °æÀ Ç ÇÏ µå¿ þ¾ î ¹ × ³× Æ® ¿ ÷À¸ · Î ÀÇ Á ¤º ¸ ½ ý ºÅ Û ¿ ¬ °á ¸ ðµ¨
- À©µµ¿ì 95 : Ŭ¶óÀÌ ¾ ðÆ®
- À©µµ¿ì NT: ÀÀ¿ë¼ ¹ ö
- À¯ ´ н º ¸ Ó ½ Å: ÀÀ ¿ë ¼ ¹ ö ¹ × µ¥ÀÌ Å¸ ¼ ¹ ö, Åë½ Å ¼ ¹ ö
- I BM ¸ ÞÀÎ ÇÁ· ¹ ÀÓ : µ¥ÀÌ Å¸ ¼ ¹ ö, Åë½ Å ¼ ¹ ö
UML là ngôn ngữ để tài liệu hóa
2.2. Lịch sử phát triển của UML
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
2.2. Lịch sử phát triển của UML (2)
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:
UML là một ngôn ngữ hợp nhất
Fusion
Operation descriptions,
message numbering
Before and after
conditions
Meyer
Harel
State charts
Wirfs-Brock
Responsibilities
Embley
Singleton classes,
High-level view
Odell
ClassificationObject lifecycles
Shlaer- Mellor
Gamma, et.al
Frameworks, patterns,
notes
BoochRumbaugh Jacobson
Selic, Gullekson, Ward
ROOM (Real-Time
Object-Oriented Modeling)
UML là một ngôn ngữ thống nhất
8/24/2011
4
2.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 - 1OOSE
Booch ’93 OMT - 2
Public
FeedbackUnified 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
Logical View Implementation 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
8/24/2011
5
b. 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)
29
g. Biểu đồ cộng tác (Collaboration
Diagram)
30
8/24/2011
6
h. 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
8/24/2011
7
3.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)
41
1. Use case modeling to define
requirements
2. Object extraction and message
sequence design between objects
4. E-R modeling for persistent data
5. Normalization of the data
structure using E-R diagram
3. Class design
6. External Specification Design
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
42
8/24/2011
8
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
Các file đính kèm theo tài liệu này:
- giao_trinh_lap_trinh_huong_doi_tuong_bai_9_tong_quan_ve_uml.pdf