1
Chương 3:
NHẬP MÔN CÔNG NGHỆ PHẦN MỀM
Tổng quan về thiết kế phần mềm
2
Mục tiêu
•
Trả lời 2 câu hỏi:
1. Thiết kế phần mềm là sao?
2. Làm sao để thiết kế phần mềm chất lượng?
3
Nội dung
1. Mở đầu
1. Khái niệm về thiết kế phần mềm
2. Kết quả thiết kế phần mềm
3. Phương pháp thiết kế phần mềm
4. Ví dụ minh họa
2. Yêu cầu chất lượng với thiết kế phần mềm
1. Các yêu cầu chất lượng
2. Hướng giải quyết chung
4
1. Khái niệm về thiết kế phần mềm
•
TK PM là công việc chính và quyết định cốt lõi
trong quá trình sản xuất PM.
PM chất lượng là PM có bản thiết kế chất lượng.
•
Việc thực hiện PM phải trung thành hoàn toàn
với kết quả thiết kế về mặt nguyên tắc.
Những trường hợp nào không tuân theo kết quả
thiết kế?
Các bản TK cung cấp các thông tin chi
tiết về cấu trúc các thành phần của PM.
7
1.2 Kết quả thiết kế phần mềm (tt)
•
Bản TK thành phần giao diện bao gồm:
–
Nội dung và hình thức trình bày các màn hình
giao tiếp của PM.
–
Hệ thống các giao tác mà người dùng có thể
thực hiện trên màn hình giao tiếp và xử lý
tương ứng của PM.
8
9
10
1.2 Kết quả thiết kế phần mềm (tt)
•
Bản TK thành phần xử lý bao gồm:
–
Hệ thống các kiểu dữ liệu được sử dụng trong
PM.
•
Các kiểu dữ liệu này mô tả cách tổ chức lưu trữ dữ
liệu trong bộ nhớ chính của PM.
–
Hệ thống các hàm được sử dụng trong PM.
•
Các hàm này sẽ thể hiện tương ứng việc thực hiện 1
công việc nào đó của thế giới thực trên máy tính.
Danh sách các hàm
Danh sách các kiểu dữ liệu
Mô tả chi tiết từng hàm
Mô tả chi tiết các kiểu dữ liệu
Dữ liệu Tổ chức lưu trữ trên bộ
nhớ phụ
Sơ đồ (cấu trúc lưu trữ)
Danh sách các thành phần dữ liệu
Mô tả chi tiết các thành phần
Danh sách các ràng buộc
Bảng tóm tắt các kết quả thiết kế PM
13
1.3 Phương pháp thiết kế phần mềm (tt)
•
Có 2 phương pháp:
–
Phương pháp trực tiếp.
–
Phương pháp gián tiếp.
14
Phương pháp thiết kế trực tiếp
•
Được áp dụng khi thực hiện PM không thông qua
giai đoạn phân tích.
•
Việc thiết kế sẽ nhận kết quả chuyển giao trực tiếp
từ giai đoạn xác định yêu cầu.
•
Mô hình PM sẽ được xây dựng trực tiếp từ các yêu
cầu. (Không thông qua mô hình thế giới thực).
quan.
16
Phương pháp thiết kế trực tiếp
Bảng thể hiện việc tiếp nhận và chuyển giao các kết quả
trong giai đoạn thiết kế PM và xác định yêu cầu.
Bước TK trong
giai đoạn TK
Loại yêu cầu được chuyển giao trong
giai đoạn xác định yêu cầu
Ghi chú
Thiết kế xử lý Yêu cầu chức năng nghiệp vụ
– Lưu trữ
– Tính toán
– Tra cứu
Yêu cầu chức năng hệ thống
– Sao lưu, phục hồi
– Nhắc nhở, báo động
– Mô phỏng,…
Yêu cầu chất lượng
– Tiến hoá
– Hiệu quả (tốc độ, lưu trữ)
– Tương thích
Xem xét chủ yếu qui
định, công thức
của yêu cầu chức
năng nghiệp vụ
liên quan
17
Phương pháp thiết kế trực tiếp
Bảng thể hiện việc tiếp nhận và chuyển giao các kết quả
Phương pháp thiết kế gián tiếp
•
Được áp dụng với các qui trình có giai đoạn phân tích (Mô
hình hóa).
•
Với PP TK gián tiếp việc thiết kế sẽ chỉ nhận:
–
Một phần các kết quả chuyển giao trực tiếp từ giai đoạn xác định yêu cầu
–
Phần chính yếu sẽ được nhận gián tiếp qua giai đoạn phân tích.
•
Mô hình PM sẽ được xây dựng tương ứng theo các mô hình
thế giới thực trong giai đoạn phân tích.
•
Cách tiếp cận này sẽ rất thuận lợi trong đa số trường hợp
với các PM có qui mô lớn.
19
Phương pháp thiết kế gián tiếp
Bảng thể hiện việc tiếp nhận và chuyển giao các kết quả
trong 2 giai đoạn phân tích và xác định yêu cầu
Bước phân tích trong
giai đoạn phân tích
Loại yêu cầu được chuyển
giao trong giai đoạn xác
định yêu cầu
Ghi chú
Lập mô hình dữ liệu Yêu cầu chức năng nghiệp vụ
−
Lưu trữ
−
−
Tiến hoá, Hiệu quả
Thiết kế xử lý Mô hình xử lý Yêu cầu chức năng hệ thống
–
Sao lưu, phục hồi
–
Nhắc nhở, báo động
–
Mô phỏng…
Yêu cầu chất lượng
– Tiến hoá, Hiệu quả, Tương thích
Thiết kế giao
diện
Mô hình giao diện Yêu cầu chất lượng
−
Tiến hoá, Tiện dụng, Hiệu quả
21
Ví dụ:
•
MINH HỌA QUÁ TRÌNH TK PM SAU KHI
THỰC HIỆN MÔ HÌNH HÓA YÊU CẦU
–
Mô hình hóa các yêu cầu
–
Thiết kế phần mềm:
•
Hệ thống các màn hình giao diện.
•
Hệ thống các hàm xử lý.
•
toán.
Tính hiệu quả Tốc độ thực hiện nhanh
Tính tương thích Cho phép chuyển đổi dữ liệu với các PM khác
25
YC chất lượng với TKDL
Tiêu chuẩn chất lượng Yêu cầu trên thành phần dữ liệu của phần mềm
Tính đúng đắn Phù hợp với mô hình dữ liệu (giai đoạn phân tích) hoặc
theo đúng yêu cầu (giai đoạn xác định yêu cầu) nếu bỏ
qua giai đoạn phân tích.
Tính tiến hoá Có dự kiến về các thay đổi trên nội dung dữ liệu cần lưu
trữ và các ràng buộc tương ứng.
Tính hiệu quả Lưu trữ ít tốn chỗ, truy xuất nhanh.