Bài 5 Khái niệm thiết kế phần mềm - Pdf 13

Bé m«n C«ng nghÖ phÇn mÒm- Khoa CNTT- §HCN
Email: [email protected]
K ngh phn mm
Software Engeneering
B môn Công ngh phn mm – HCN
2
NguynVnV
Ni dung
Bài 5: Khái nim thit k phn mm
̈ Kh¸i niÖm, nguyªn lý, chÊt l−îng
̈ Néi dung thiÕt kÕ vμ chÊt l−îng
B môn Công ngh phn mm – HCN
3
NguynVnV
TÀI LiU THAM KHO
1. Nguyn Vn V, Nguyn Vit Hà. Giáo trình k ngh phn
mm. Nhà xut bn i hc Quc gia Hà ni, 2008
2. Grady Booch, James Rumbaugh, Ivar Jacobson. The Unified
Modeling language User Guid. Addison-Wesley, 1998.
3. M. Ould. Managing Software Quality and Business Risk, John
Wiley and Sons, 1999.
4. Roger S.Pressman, Software Engineering, a Practitioner’s
Approach. Fifth Edition, McGraw Hill, 2001.
5. Ian Sommerville, Software Engineering. Sixth Edition, Addison-
Wasley, 2001.
6. Nguyn Vn V. Phân tích thit k h thng thông tin hin đi.
Hng cu trúc và hng đi tng, NXB Thng kê, 2002, Hà
Ni.
B mụn Cụng ngh phn mm HCN
4
NguynVnV

Mô đun hóa l chìa khóa cho phần mềm tốt
Mục tiêu thiết kế l xác định:
các mô đun chức năng
cách thức ci đặt mô đun
tơng tác giữa các mô đun
B mụn Cụng ngh phn mm HCN
7
NguynVnV
1. không bị bó buộc vo một cách nhin hạn chế no
nó cần đợc lựa chọn từ các giải pháp có thể
2. cho phép lần ngợc lại mô hinh phân tích
các mô đun & các yêu cầu không nhất thiết
phải tơng ứng 1-1
nhng phải kiểm tra đợc sự thỏa mãn các
yêu cầu
Nguyên lý thiết kế
B môn Công ngh phn mm – HCN
8
NguynVnV
3.
Kh«ng nªn t¹o l¹i c¸c thiÕt kÕ (gi¶i ph¸p) ®· cã, mμ
cÇn t¸i sö dông tèi ®a chóng
4. M« h×nh thiÕt kÕ (gi¶i ph¸p) nªn tiÕn gÇn ®Õn m« hinh
thÕ giíi thùc
(bμi to¸n)
5. BiÓu diÔn thiÕt kÕ ph¶i
nhÊt qu¸n vμ cã tÝnh tÝch hîp:
º thiÕt kÕ do nhiÒu ng−êi tiÕn hμnh song song
º ph¶i thèng nhÊt c¸ch biÓu diÔn, thèng nhÊt giao diÖn
6. ThiÕt kÕ cÇn cã cÊu tróc ®Ó dÔ hiÓu, dÔ thay ®æi

11
NguynVnV
Mô hình tổng quát tiến trình thiết kế
Tiến trình thiết kế l quá trình tăng cờng hình thức
hóa v luôn quay lại các thiết kế đúng đắn v ít hình
thức hóa hơn trớc đó để kiểm tra v hon chỉnh
phỏc tho
thit k phi
hỡnh thc
thit k
phi hỡnh
thc
thit k
hỡnh thc
hn(bỏn)
thit k chi
tit cui
cựng
B môn Công ngh phn mm – HCN
12
NguynVnV
TiÕn tr×nh hot đng thiÕt kÕ vμ sn phm
c t các yêu cu kin trúc h thng
thit k kin trúc
c t tru tng
thit k giao din
thit k thành phn
thit k d liu
thit k thut toán
đc t phn mm

Thiết kế cấu trúc vật lý
- Các file
-Các kiểu
-Kích cỡ
B môn Công ngh phn mm – HCN
15
NguynVnV
ThiÕt kÕ thñ tôc
 M« t¶ c¸c b−íc ho¹t ®éng cña m« ®un
 Ph−¬ng ph¸p m« t¶
-
gi¶ m· (pseudo code)
- s¬ ®å luång (flow chart)
- biÓu ®å (diagram) Nassi-Shneiderman
- biÓu ®å ho¹t ®éng (activity diagram)
-JSP
B mụn Cụng ngh phn mm HCN
16
NguynVnV
Các khái niệm thiết kế cơ sở
Trừu tợng hóa: trừu tợng hóa dữ liệu, thủ tục,
điều khiển
Làm mịn: chi tiết hóa các trừu tợng theo ý đồ
Tính môdun: phân chia dữ liệu v chức năng
Kiến trúc: cấu trúc tổng thể của phần mềm
Thủ tục: thuật toán để thực hiện chức năng
Che dấu: điều khiển bằng giao diện
B mụn Cụng ngh phn mm HCN
17
NguynVnV

NguynVnV
Lμm mÞn tõng b−íc
M ca
Bc đn gn ca
a chìa khóa vào  xoay
M ca
Bc qua vào phòng
óng ca li
Lp li cho đn khi cht khóa bt ra
Nu cht không m thì
Rút khóa ra, tìm chìa khác phù
hp, cm váo  khóa, tip tc
xoay cho đn khi m đc
Bc qua cua vào phòng
óng ca li
B mụn Cụng ngh phn mm HCN
21
NguynVnV
Thiết kế mô đun
Dựa trên quan điểm "chia để trị"
C(p1 + p2) > C(p1) + C(p2)
E(p1 + p2) > E(p1) + E(p2)
C: độ phức tạp
E: cụng sc thực hiện
giảm độ phức tạp
cục bộ, dễ sửa đổi
có khả năng phát triển song song
dễ sửa đổi, dễ hiểu nên dễ tái sử dụng
B môn Công ngh phn mm – HCN
22

cấu trúc d liệu
giao diện ngoại lai (mô đun thứ cấp, thiết bị vo/ra)
ti nguyên hệ thống
B mụn Cụng ngh phn mm HCN
25
NguynVnV
Lý do che giấu thông tin
Giảm hiệu ứng phụ khi sửa đổi môđun
Giảm tác động của thiết kế tổng thể lên thiết kế
cục bộ
Nhấn mạnh trao đổi thông tin thông qua giao diện
Loại bỏ việc sử dụng dữ liệu dùng chung
Hớng tới sự đóng gói chức năng, 1 thuộc tính
của thiết kế tốt
Tạo ra các sản phẩm phần mềm tốt hơn


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status