Bài giảng Nhập môn công nghệ phần mềm - Chương 3: Tổng quan về thiết kế phần mềm
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
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. – VD: Kiểm tra tính hợp lệ việc cho mượn sách, ghi vào sổ việc cho mượn sách… Trường CĐKT Lý Tự Trong 6 11 1.2 Kết quả thiết kế phần mềm (tt) • Bản TK thành phần dữ liệu bao gồm các thông tin liên quan đến cách thức lưu trữ các dữ liệu như: – Nội dung của công việc ghi chép vào sổ sách trong thế giới thực trên bộ nhớ phụ. – Dạng lưu trữ được sử dụng của PM (tập tin, cơ sở dữ liệu,…) – Hệ thống các thành phần lưu trữ cùng với quan hệ của chúng. Trường CĐKT Lý Tự Trong 12 1.2 Kết quả thiết kế phần mềm (tt) Thành phần Kết quả Kết quả chi tiết Giao diện Hệ thống các màn hình giao diện Sơ đồ các màn hình Danh sách các màn hình Nội dung từng màn hình Biến cố và xử lý trên từng màn hình. Xử lý Hệ thống các hàm cùng với cấu trúc dữ liệu tương ứng 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 Trường CĐKT Lý Tự Trong 7 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. Trường CĐKT Lý Tự Trong 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). • Cách tiếp cận này sẽ rất khó khăn cho người thực hiện với các PM có qui mô lớn (nhiều yêu cầu, yêu cầu phức tạp…). Trường CĐKT Lý Tự Trong 8 15 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ế giao diện Yêu cầu chức năng nghiệp vụ Lưu trữ Tra cứu Yêu cầu chất lượng Tiến hoá Tiện dụng Hiệu quả Xem xét chủ yếu cách thức, biểu mẫu của yêu cầu chức năng nghiệp vụ liên quan. Trường CĐKT Lý Tự Trong 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 Trường CĐKT Lý Tự Trong 9 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ả 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ế dữ liệu Yêu cầu chức năng nghiệp vụ Lưu trữ Tra cứu Kết xuất Yêu cầu chức năng hệ thống Phân quyền Cấu hình Yêu cầu chất lượng Tiến hoá Hiệu quả Xem xét chủ yếu nội dung của yêu cầu chức năng nghiệp vụ liên quan Trường CĐKT Lý Tự Trong 18 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. Trường CĐKT Lý Tự Trong 10 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ữ Tra cứu Kết xuất Xem xét chủ yếu nội dung của yêu cầu chức năng nghiệp vụ liên quan Lập mô hình xử lý Yêu cầu chức năng nghiệp vụ Lưu trữ Tính toán 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. Trường CĐKT Lý Tự Trong 20 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 3 giai đoạn TK PM, giai đoạn PT và giai đoạn XĐYC theo PP TK gián tiếp Bước TK trong giai đoạn TK Mô hình được chuyển giao trong giai đoạn PT Loại YC được chuyể giao trong giai đoạn XĐYC Thiết kế dữ liệu Mô hình dữ liệu Yêu cầu chức năng hệ thống Phân quyền… Yêu cầu chất lượng 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ả Trường CĐKT Lý Tự Trong 11 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ý. • Hệ thống các bảng dữ liệu. Trường CĐKT Lý Tự Trong 22 2. Thiết kế PM và YC chất lượng 1. Các yêu cầu chất lượng 1. Yêu cầu chất lượng với TKGD 2. Yêu cầu chất lượng với TKXL 3. Yêu cầu chất lượng với TKDL 2. Hướng giải quyết chung 1. Yêu cầu tính tiến hóa 2. Yêu cầu tính tiện dụng 3. Yêu cầu tính hiệu quả (tốc độ) 4. Yêu cầu tính hiệu quả (lưu trữ) Trường CĐKT Lý Tự Trong 12 23 YC chất lượng với TKGD Tiêu chuẩn chất lượng Yêu cầu trên thành phần giao diện của phần mềm Tính đúng đắn Phù hợp với mô hình xử lý (nếu có thực hiện 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 thành phần dữ liệu và xử lý Tính tiện dụng Tự nhiên, dễ học, dễ sử dụng, đầy đủ thông tin Tính hiệu quả Thao tác thực hiện nhanh, sử dụng tối ứu các không gian Tính tương thích Sự nhất quán giữa các màn hình Trường CĐKT Lý Tự Trong 24 YC chất lượng với TKXL Tiêu chuẩn chất lượng Yêu cầu trên thành phần xử lý của phần mềm Tính đúng đắn Phù hợp với mô hình xử lý (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 các qui định, qui tắc tính 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 Trường CĐKT Lý Tự Trong 13 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. Trường CĐKT Lý Tự Trong 26 2.2 Hướng giải quyết chung Công việc Hướng giải quyết Thiết kế giao diện Bổ sung màn hình giao diện cho phép người dùng thay đổi thông tin liên quan về qui định, biểu mẫu. Thiết kế xử lý Bổ sung xử lý cho phép người dùng thay đổi thông tin liên quan về qui định, biểu mẫu. Xử lý không được phép dùng trực tiếp các thông tin cố định trong các qui định, biểu mẫu liên quan mà phải đọc các thông tin này từ bộ nhớ phụ. Thiết kế dữ liệu Bổ sung vào sơ đồ logic các thuộc tính mới, bảng mới để lưu trữ các thông tin cho phép trong các qui định, biểu mẫu. Ghi chú: Với PM đóng gói (thương mại hóa) bán cho rất nhiều khách hàng khác nhau nhất thiết phải xem xét tối đa các thay đổi có thể có trong các qui định, biểu mẫu. Yêu cầu tính tiến hóa Trường CĐKT Lý Tự Trong 14 27 2.2 Hướng giải quyết chung Công việc Hướng giải quyết Thiết kế giao diện Bổ sung thêm các thông tin trên màn hình giúp cho người dùng có nhiều thông tin hơn khi thực hiện công việc của mình với PM. Hạn chế tối đa các lỗi của người dùng, cho họ có cơ hội sửa lỗi sau khi đã gây ra lỗi. Chọn hình thức giao diện trực quan, tự nhiên nhất đối với người dùng. Thiết kế xử lý Bổ sung các hàm cung cấp thông tin trên màn hình giao diện Bổ sung các hàm để lưu trữ các bước thực hiện của người dùng, nhắc nhở người dùng khi nghi ngờ họ đang nhầm lẫn. Thiết kế dữ liệu Không có thay đổi đáng chú ý. Yêu cầu tính tiện dụng Trường CĐKT Lý Tự Trong 28 2.2 Hướng giải quyết chung Công việc Hướng giải quyết Thiết kế giao diện Bổ sung thêm các thông tin trên màn hình giúp cho người dùng nhanh chóng thực hiện công việc của mình. Chọn hình thức nhập liệu nhanh nhất có thể có. Thiết kế xử lý Bổ sung các hàm tạo các giá trị định sẵn, thực hiện các thao tác được bổ sung. Sử dụng thích hợp các thuộc tính tính toán. Bổ sung các hàm tự động cập nhật các thuộc tính tính toán. Chọn thuật giải cho ra kết quả nhanh nhất có thể có. Thiết kế dữ liệu Bổ sung các thuộc tính tính toán. Yêu cầu tính hiệu quả (tốc độ) Trường CĐKT Lý Tự Trong 15 29 2.2 Hướng giải quyết chung Công việc Hướng giải quyết Thiết kế giao diện Sắp xếp tối ưu các thông tin trên màn hình. Thiết kế xử lý Bổ sung các hàm chuyển đổi giữa các dạng lưu trữ. Thiết kế dữ liệu Tổ chức lại cơ sở dữ liệu để lưu trữ tối ưu hơn. Yêu cầu tính hiệu quả (lưu trữ) Trường CĐKT Lý Tự Trong 30 Hỏi & Đáp Trường CĐKT Lý Tự Trong
File đính kèm:
- Bài giảng Nhập môn công nghệ phần mềm - Chương 3 Tổng quan về thiết kế phần mềm.pdf