[r]
(1)Thiết kế (6)
Nguyễn Thanh Bình
Khoa Công nghệ Thông tin
Trường ðại học Bách khoa
ðại học ðà Nẵng
2
Thiết kế ?
phân tích tốn/vấn đề
xuất phát từyêu cầu
mô tảmột nhiều giải pháp
ñánh giá giải pháp, chọn giải pháp tốt nhất
ởmột mức trừu tượng định
sửdụng mơ hình
tính chất
trảlời câu hỏi “như thếnào” mô tảchủyếu cấu trúc bỏqua chi tiết cài ñặt
(2)3
Các giai ñoạn thiết kế
Hoạt ñộng thiết kế xuất hiện mơ
hình phát triển khác nhau
Hai giai đoạn thiết kế chính
Thiết kếkiến trúc
• phân tích giải pháp thành thành phần
• định nghĩa giao diện thành phần
• định nghĩa phần vấn ñề ñược giải thành phần
• thực nhiều mức trừu tượng
Thiết kếchi tiết
• thiết kếthuật tốn, cấu trúc dữliệu
Các giai đoạn thiết kế
Architectural design Abstract specificatio n Interface design Component design Data structure design Algorithm design System architecture Software
specification specificationInterface
(3)5
Các giai ñoạn thiết kế
Architectural design
xác ñịnh hệthống con
Abstract specification
ñặc tảcác hệthống con
Interface design
mô tảgiao diện hệthống con
Component design
phân tích hệthống thành thành phần
Data structure design
cấu trúc dữliệu lưu trữdữliệu toán
Algorithm design
thiết kếthuật tốn cho hàm/mơ-đun
6
Tại phải thiết kế ? có một kiến trúc tốt
làm chủ ñược cấu trúc hệthống “chia ñểtrị”
ñạt ñược tiêu chuẩn chất lượng
tái sử dụng / dễkeỉem thử/ dễbảo trì
thiết kế hướng đến sự thay ñổi (design for
(4)7
Thiết kế và sự thay ñổi
Thay ñổi = tích chất đặc trưng của phần
mềm
Dựbáo thay ñổi cần thiết
giảm chi phí bảo trì
Dựbáo thay đổi khó khăn
sự thay đổi thường khơng ñược xác ñịnh
trước
nhiều yếu tố thay ñổi lúc
thời ñiểm thay đổi khó có thể biết trước
Thiết kế và sự thay đổi
Các yếu tố có thế thay đổi
thuật tốn
cấu trúc dữ liệu
biểu diễn dữ liệu bên ngoài
thiết bịngoại vi
môi trường xã hội
(5)9
Thiết kế hướng mơ-đun Phần mềm tập hợp gồm mơ-đun
tương tác với nhau
Mơ-đun hóa đóng vai trị quan trọng đểcó được phần mềm chất lượng với chi phí thấp
Mục đích thiết kế hệthống
xác định mơ-đun có thể
xác định tương tác giữa mơ-đun
10
Các tiêu chuẩn của một phương pháp thiết kế
Các tiêu chuẩn ñể ñánh giá một phương
pháp thiết kế hướng mơ-đun
tính phân rã (modular decomposability)
tính tổng hợp (modular composability) tính dễhiểu (modular understandability) tính liên tục (modular continuity)
(6)23
Mơ hình “Client-Server”
Ví dụ
Mơ hình “Client-Server” Ưu điểm
sửdụng hiệu quảmạng
dễdàng thêm server nâng cấp server
tại
phân tán dữliệu dễdàng
Hạn chế
mỗi hệthống quan lý dữliệu riêng của nó
• có thểdẫn đến dư thừa
khơng có kiến trúc tập trung ghi nhận dich vụ
(7)25
Mơ hình lớp Ngun tắc
tổchức hệthống thành tập hợp lớp mỗi lớp cung cấp tập hợp dịch vụ
được sử dụng đểmơ tảquan hệgiữa
hệthống con
khi giao diện của một lớp thay ñổi, chỉ lớp
kế cận bị ảnh hưởng
hỗtrợmơ hình phát triển tăng trưởng
26
Mơ hình lớp