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

Lập trình thiết kế hướng ₫ối tượng bai09

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 (1.48 MB, 8 trang )

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.
2.

LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG
Bài 09. Tổng quan về UML và PTTK
HĐT

3.
4.

Mơ hình hóa
Tổng quan về UML
Phân tích thiết kế hướng đối tượng
Cơng cụ phát triển OOAD

2

Nội dung

1.
2.
3.
4.


1.1 Mơ hình hóa là gì?

Mơ hình hóa
Tổng quan về UML
Phân tích thiết kế hướng đối tượng
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ức độ quan trọng thấp

Mức độ quan trọng cao hơn

Mơ hình hóa là một con đường dẫn đến
thành công của dự án.

Máy bay giấy
Máy bay phản lực
6

1



8/24/2011

1.4. 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ì?



1.
2.
3.
4.

Mơ hình hóa
Tổng quan về UML
Phân tích thiết kế hướng đối tượng
Cơng cụ phát triển OOAD



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

9

10

UML là ngôn ngữ để đặc tả

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 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
éằờ ẩ ổ ầ ầẽ àồ ỵắ ợ ạ ì ì ặđ ữá Ã ẻ ầ Ô á ẵ ẵ ơ ỏ á àă
- âààỡ 95 : ơảúè ắ ặđ
- âààỡ NT:

ởẳ ư ạ ử
- éẵ á ể ẵ : ở ẳ ư ạ ử ạ ì àƠè á ẳ ư ạ ử, ởẵ ẳ ư ạ ử

- I BM á ịẻ ầÃ ạ ể : àƠè á ẳ ư ạ ử, ởẵ ẳ ư ạ ử


Windows95

Window95

Windows95

Use Case 1
ạ đẳ ư ỹá đ
ơảúè ắ ặđ. EXE

ạ đẳ ư ỹá đ ắ ệ ầ á

Windows
NT

Actor A

Actor B

Use Case 2

Solar is

ạ đẳ ư ỹá đ Ê ứ. E XE

Alpha
UNI X
ởẳ ư ạ ử. EXE


Windows
NT

I BM

Use Case 3

M ainf r am e

àƠè á Êè ẵ ẳ ư ạ ử

Docum ent List

mainWnd

fileMgr :

doc ument :

gFile

repos itory
Docum ent
FileM gr

FileMgr

us er

Doc ument

add( )
nam e : int
delet e( )

f et chDoc( )

docid : int
sor t ByNam e(

)
num Field : int

ặÔạ đẳ ư Ă ởầ ẹ á õá Ư

1: Doc view

get ( )

r equest ( )

ằỗở Ă ọ ằầ ẹ .

r ead( ) f il t he

open( )

code. .

close( )
2: f et chDoc( )


r ead( )

FileList

sor t FileList (
f List

)

cr eat e( )

3: cr eat e ( )
f ilDocum ent (

)

add( )
delet e( )
1

4: cr eat e ( )

5: r eadDoc ( )

ẩư ẽ ỹá đ éắ ợ

6: f ilDocum ent

( )


ạ đẳ ư ầ Ô á á Ư ầỉ ỗ ạ đẳ ư
ẳ Ă ẳ Ô ằ ọ ằ Ç Ñ ´ Ù.
r ep

7: r eadFile ( )
File
Reposit or y

8: f ilFile ( )
( f r om Per sist ence)
r ead( )

ẩư á ộ ẳ éắ ợ à ộẻ

9: sor t ByNam e ( )

G r pFile

nam e : char * = 0

° ´ ü àộ Ă ởầỉ è á Đ Ã ẻ
ÔÃ ằ ẵ ẹ ẩư á ộĂ
r ead( )

á â ÁØ ´Ù.

r eadDoc( )
open( )
r eadFile(


)
cr eat e( )
f ilFile(

Sequence Diagram

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, CoadYourdon, MOSES, Syntropy, BOOM, OOSD, OSA, BON, Catalysis,
COMMA, HOOD, Ooram, DOORS …

)

Class Diagram

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:

 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
Rumbaugh

Booch

UML là một ngôn ngữ thống nhất

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

Responsibilities

Frameworks, patterns,
notes

Shlaer- Mellor

Selic, Gullekson, Ward

Odell

Object lifecycles

ROOM (Real-Time
Object-Oriented Modeling)

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)




UML 1.5
(March, ‘03)

Không đơn giản để mô hình hóa hệ thống
phức tạp

UML 1.1

UML
Partners’
Expertise

(Sept. ‘97)

UML 1.0
(Jan. ‘97)

UML 0.9 and UML 0.91
(June ‘96)

(Oct. ‘96)

Unified Method 0.8
(OOPSLA ’95)

Booch ’93

OOSE


Other
Methods

Public
Feedback

OMT - 2

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

Logical 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.

Implementation View


Analysts/Designers

Programmers

Structure

Software management

Use-Case View
End-user
Functionality

Process View

Deployment View
System engineering

System integrators
Performance, scalability, throughput

System topology, delivery,
installation, communication

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)





a. Biểu đồ use case

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

d. Biểu đồ trạng thái (State Diagram)

26

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)

"Rational Unified
Process" - quy
trình phát triển
cho UML






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


Nội dung

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)


1.
2.
3.

4.

35

Mơ hình hóa
Tổng quan về UML
Phân tích thiết kế hướng đối
tượng
Cơng cụ phát triển OOAD
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. Use case modeling to define
requirements

6. External Specification Design

2. Object extraction and message
sequence design between objects

5. Normalization of the data
structure using E-R diagram

1.
2.
3.
3. Class design

4. E-R modeling for persistent data

41

4.

Mơ hình hóa
Tổng quan về UML
Phân tích thiết kế hướng đối tượng

Công cụ phát triển OOAD

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



×