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

phân tích thiết kế hệ thống hướng đối tượng sử dụng uml

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.66 MB, 304 trang )

PHÂN TÍCH THIẾT KẾ HỆ
THỐNG HƯỚNG ĐỐI TƯỢNG
SỬ DỤNG UML
GVGD: Lê Thị Bích Hằng
Bộ môn Kỹ thuậtphầnmềm
Khoa Công nghệ thông tin
Trường Đạihọc Nha Trang
PTTK UML - Le Thi Bi ch Hang
2
Mụctiêu
 Cung cấp cho sinh viên các khái niệmcơ bản
làm nềntảng cho việctiếpcậnhướng đối
tượng để mô hình hóa, phân tích, thiếtkế hệ
thống.
 Trang bị chosinhviênkỹ năng phân tích và
thiếthế hệ thống hướng đốitượng giúp người
họccóthể vậndụng vào thiếtkế các hệ thống
ứng dụng trong thựctế.
PTTK UML - Le Thi Bi ch Hang
3
Nội dung chương trình
 Chương 1: Tổng quan về phân tích thiếtkế hệ thống
 Chương 2: Khái quát về UML
 Chương 3: Mô hình hóa Use Case
 Chương 4: Biểu đồ lớp
 Chương 5: Mô hình động - Biểu đồ tương tác
 Chương 6: Mô hình động (tt)
PTTK UML - Le Thi Bi ch Hang
4
Tài liệuthamkhảo
 Slide bài giảng


 [1] Đặng Văn Đức, Phân tích thiếtkế hướng đốitượng
bằng UML, NXB Giáo Dục
 [2] Huỳnh Văn Đức, Đoàn Thiện Ngân, Giáo trình
nhậpmônUML, NXB Lao động Xã hội, 2003.
 [3] NguyễnVănVỵ, Phân tích thiếtkế: hướng cấutrúc
và hướng đốitượng, NXB Thống kê, 2002.
 [4] Dennis, A., Wixom, B.Haley, Tegarden, D.,
Systems Analysis and Design with UML Version 2.0:
An Object-Oriented Approach, second edition, Wiley,
2004.
PHÂN TÍCH THIẾT KẾ HỆ
THỐNG HƯỚNG ĐỐI TƯỢNG
Chương 1
Tổng quan về phân tích thiết
kế hệ thống
PTTK UML - Le Thi Bi ch Hang
6
Nội dung
 Khái quát vòng đời phát triểnhệ thống thông
tin
 Các cách tiếpcận phân tích và thiếtkế hệ
thống
 Các khái niệmcơ bảncủahướng đốitượng
PTTK UML - Le Thi Bi ch Hang
7
Những khó khăn khi phát triểnphầnmềm
 Chưathấuhiểuyêucầu, hoặchiểulầm
 Yêu cầuthường thay đổi trong thời gian phát
triển.
 Yêu cầuthường đượcmiêutả bằng vănbản,

dài dòng, khó hiểu.
 Đội quân phát triểnphầnmềmrất khó nhận
thứcthấu đáo các mối quan hệ tiềm ẩnvà
phứctạpcần đượcthể hiện chính xác trong
các ứng dụng lớn.
 Khả năng nắmbắtcácdữ liệuphứctạpcủa
con người(tại cùng mộtthời điểm) là có hạn.
PTTK UML - Le Thi Bi ch Hang
8
Tiến trình phầnmềm
 Tiến trình phầnmềmlàphương cách sảnxuất
ra phầnmềmvới các thành phầnchủ yếu bao
gồm:
 Mô hình vòng đờipháttriểnphầnmềm
 Các công cụ hỗ trợ cho phát triểnphầnmềm
 Những người trong nhóm phát triểnphầnmềm.
PTTK UML - Le Thi Bi ch Hang
9

Planning

Requirements Determination

Conceptual Design

Physical Design

Construction and/or Purchase (prototype)

Conversion - old to new


Implementation

Training

Evolution - maintenance & enhancements
A
n
a
l
y
s
i
s
D
e
s
i
g
n
Implementation
Deployment
Software Development Life Cycle –SDLC
PTTK UML - Le Thi Bi ch Hang
10
Nghiên cứusơ bộ (Planning)
 Lậpkế hoạch cho dự án
 Khởi động dự án
 Thiếtlập độingũ nhân viên cho việckhởi động dự án
 Thiếtlậpquanhệ với khách hàng

 Lậpkế hoạch cho dự án
 Mô tả phạmvi củadự án
 Chia dự án thành các tác vụ có thể thựchiện được
 Ướclượng tài nguyên, lậpkế hoạch tài nguyên
 Đánh giá rủiro
 Lậpkế hoạch hộihọp
 Ướclượng sơ bộ chi phí
 Thựcthidự án: giám sát tiến trình trong kế hoạch
PTTK UML - Le Thi Bi ch Hang
11
Nghiên cứusơ bộ
 Nhậnbiếtcácchứcnăng chính củahệ thống
 Đánh giá sơ bộ rủiro
 Xem xét các yêu cầu, các nguồn tài nguyên có thể sử
dụng
 Thảoluận, xem xét các khía cạnh thương mại, phân
tích khả năng lờilỗ, đánh giá mức độ rủiro
 Phảitrả lời đượccâuhỏi: “Có nên phát triểnhệ thống
này hay không?”
PTTK UML - Le Thi Bi ch Hang
12
Phân tích (Analysis)
 Xác định yêu cầu (Determining Requirement)
 Phỏng vấnvàlắng nghe
 Đưaracáccâuhỏiphỏng vấn
 Câu hỏi Open-ended
 Câu hỏi closed-ended
 Xác định tổng thể hệ thống cần làm những gì
 Hệ thống lạicácyêucầu: bằng cách xây dựng
mô hình xử lý

 Xây dựng mô hình dữ liệu quan niệm
PTTK UML - Le Thi Bi ch Hang
13
Thiếtkế (Design)
 Phảitrả lờicâuhỏi: “Hệ thống làm cách nào
để thõa mãn các yêu cầu”
 Thiếtkế menu, form nhập, báo cáo (report)
 Thiếtkế logic và vật lý các thành phầndữ liệu
củahệ thống để tạo database
 Thiếtkế các chứcnăng xử lý củahệ thống
PTTK UML - Le Thi Bi ch Hang
14
Thựchiện (Implementation)
 Xây dựng phầnmềm
 Viết code theo yêu cầu quy định sẵn
 Viếttàiliệugiải thích rõ các chương trình, thủ tục,
hàm
 Kiểm nghiệmchương trình chạy đúng
 Thử nghiệmhệ thống
 Thử nghiệm đơnvị
 Thử nghiệm tích hợp (tích hợp nhiều thành phần)
 Thử nghiệm toàn bộ hệ thống
 Khách hàng thử nghiệm(về mức độ chấpnhận)
PTTK UML - Le Thi Bi ch Hang
15
Triển khai (Deployment)
 Thựchiệntriển khai
 Huấnluyệnngườisử dụng
 Tạo các file dữ liệucầnthiết
 Bảotrìnângcấp

 Hoạt động bảotrìtùythuộcvàosự thay đổicủa
môi trường sử dụng
 Các hệ thống khác nhau có những mức độ bảotrì
khác nhau
PTTK UML - Le Thi Bi ch Hang
16
Mô hình thác nước (Waterfall)
Nghiên cứu Sơ bộ
Xác định yêu cầu
Thiếtkế quan niệm
Thiếtkế logic
Thiếtkế vậtlý
Xây dựng phầnmềm
Đào tạo
Analysis
Design
Thử nghiệmhệ thống
Implementation
Deployment
Bảo trì-Nâng cấp
Nghiên cứu Sơ bộ
Xác định yêu cầu
Xây dựng phầnmềm
Thử nghiệmhệ thống
Đào tạo
Bảo trì-Nâng cấp
PTTK UML - Le Thi Bi ch Hang
17
Mô hình thác nước
 Ưu điểm

 Có vòng lặp, cho phép trở về pha trướctrongvòngđời
phầnmềm để sửachữa khi phát hiệnlỗihoặckhicó
thay đổi.
 Hướng tài liệu: tấtcả các pha trong vòng đờiphầnmềm
theo mô hình thác nước đều đượcviếttàiliệucẩnthận
và đượckiểmtratrước khi chuyển sang pha tiếp theo.
Do vậy, hệ thống sẽ dễ dàng bảotrìkhicónhững thay
đổi

Khuyết điểm
 Khách hàng chỉđượctraođổimộtlần duy nhấtvàchưa
được hình dung sảnphẩmnênrấtcóthể các pha tiếp
theo sẽ không thựchiện đúng những gì khách hàng cần
-> sảnphẩmphầnmềmcuốicùngcóthể không thỏa
mãn nhu cầuthựcsự của khách hàng
PTTK UML - Le Thi Bi ch Hang
18
Những thành viên trong nhóm phát
triểnPM
 Nhà phân tích (Analyst)
 Nghiên cứuyêucầucủa khách hàng để định nghĩa1 phạmvi
bài toán
 Nhậndạng nhu cầutổ chức
 Xác định nhu cầucủa nhân lực
 Xác định phương pháp và công nghệ
 Thiếtkế cấu trúc Database
 Nhà thiếtkế (Designer)
 Giao diệnchương trình (menu, form, report)
 Quyết định các yêu cầuvề phầncứng và phầnmềm
 Chuyên gia lĩnh vực (Domain Expert)

 Lập trình viên (Programmer)
 Người dùng (User)
PTTK UML - Le Thi Bi ch Hang
19
Giớihạncủahệ thống
PTTK UML - Le Thi Bi ch Hang
20
Các cách tiếpcậnphântíchhệ thống
 Phương pháp hướng chứcnăng
 Phương pháp hướng đốitượng
PTTK UML - Le Thi Bi ch Hang
21
Phương pháp hướng chứcnăng
 Phân rã các chứcnăng củangười dùng thành các
chứcnăng nhỏ hơn
 Đơnvị nhỏ nhấtgọilàthủ tục hay hàm
 Hệ thống hoàn chỉnh khi các chứcnăng cũng hoàn
chỉnh và không đượcthayđổi theo thờigian
Chứcnăng chính
Chứcnăng con 1 Chứcnăng con 2
Chứcnăng
con 1.1
Chứcnăng
con 1.1
Chứcnăng
con 1.1
Chứcnăng
con 1.1
PTTK UML - Le Thi Bi ch Hang
22

Phương pháp hướng chứcnăng
 Ưu điểm
 Đơngiản
 Là phương pháp tốtchoviệcthiếtkế ngân hàng dữ liệu
và nắmbắt thông tin
 Nhược điểm
 Chỉ quan tâm đếnviệc quảnlýdữ liệu mà hệ thống cần
lưutrữ (nhậpxuất thông tin)
 Tập trung vào thông tin mà không quan tâm đếnnhững
gì xảyravới thông tin và cách hoạt động củahệ thống
 Không phù hợpvớihệ thống thường xuyên thay đổi
PTTK UML - Le Thi Bi ch Hang
23
Phương pháp hướng đốitượng
 Xem các thành phần trong hệ thống như các đốitượng ngoài đời
thực
 Ứng dụng có thể chia thành các thành phầnnhỏ gọilàđốitượng,
sau đó chúng được tích hợplại thành ứng dụng
 Chứcnăng củahệ thống đượcbiểudiễn thông qua cộng tác của
đốitượng, việc thay đổichứcnăng, tiến hóa chứcnăng không
làm thay đổi đếncấutrúctĩnh củaphầnmềm.
 Ưu điểm
 Hỗ trợ sử dụng lại mã nguồn
 Phù hợpvớicáchệ thống lớn: Các đốitượng hoạt động
độclậpvàchỉ thựchiệnhànhđộng khi nhận đượcyêu
cầutừ các đốitượng khác
 Giảmlỗi, tăng tốc độ thiếtkế và phát triểnphầnmềm
PTTK UML - Le Thi Bi ch Hang
24
Các nguyên tắccơ bảncủahướng đốitượng

Abstraction Encapsulation
Object Orientation
HierarchyPolymorphism
PTTK UML - Le Thi Bi ch Hang
25
Tính trừutượng (Abstraction)
 Chỉ quan tâm các đặctrưng quan trọng cần
thiếtcủacácđốitượng
 Không quan tâm các khía cạnh chi tiếtphức
tạp

×