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 cung cấp cho người học các kiến thức: Khái niệm về thiết kế phần mềm, kết quả thiết kế phần mềm, phương pháp thiết kế phần mềm, các yêu cầu chất lượng, hướng giải quyết chung.
NHẬP MÔN CÔNG NGHỆ PHẦN MỀM Chương 3: Tổng quan thiết kế phần mềm Trường CĐKT Lý Tự Trong Mục tiêu • Trả lời câu hỏi: Thiết kế phần mềm sao? Làm để thiết kế phần mềm chất lượng? Trường CĐKT Lý Tự Trong Nội dung Mở đầu Khái niệm thiết kế phần mềm Kết thiết kế phần mềm Phương pháp thiết kế phần mềm Ví dụ minh họa Yêu cầu chất lượng với thiết kế phần mềm Các yêu cầu chất lượng Hướng giải chung Trường CĐKT Lý Tự Trong 1 Khái niệm thiết kế phần mềm • TK PM cơng việc định cốt lõi trình sản xuất PM PM chất lượng PM có thiết kế chất lượng • Việc thực PM phải trung thành hoàn toàn với kết thiết kế mặt nguyên tắc Những trường hợp khơng tn theo kết thiết kế? • TK PM bao gồm cơng việc chính: – Xác định kiến trúc PM – Chọn lựa cách thức thực thành phần mô tả lại cách thực Trường CĐKT Lý Tự Trong Khái niệm thiết kế phần mềm (tt) • TK PM cụ thể, với chọn lựa khác cách thức thực đưa đến nhiều kết thiết kế khác – Ví dụ: ? • Mọi kết TK phải đảm bảo – Yêu cầu PM Trường CĐKT Lý Tự Trong 1.2 Kết thiết kế phần mềm • Kết việc TK PM TK: – Thành phần Giao diện (Chương 5) – Thành phần Xử lý (Chương 6) – Thành phần Dữ liệu (Chương 4) • Các TK cung cấp thông tin chi tiết cấu trúc thành phần PM Trường CĐKT Lý Tự Trong 1.2 Kết thiết kế phần mềm (tt) • Bản TK thành phần giao diện bao gồm: – Nội dung hình thức trình bày hình giao tiếp PM – Hệ thống giao tác mà người dùng thực hình giao tiếp xử lý tương ứng PM Trường CĐKT Lý Tự Trong Trường CĐKT Lý Tự Trong Trường CĐKT Lý Tự Trong 1.2 Kết thiết kế phần mềm (tt) • Bản TK thành phần xử lý bao gồm: – Hệ thống kiểu liệu sử dụng PM • Các kiểu liệu mơ tả cách tổ chức lưu trữ liệu nhớ PM – Hệ thống hàm sử dụng PM • Các hàm thể tương ứng việc thực cơng việc giới thực 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 10 1.2 Kết thiết kế phần mềm (tt) • Bản TK thành phần liệu bao gồm thông tin liên quan đến cách thức lưu trữ liệu như: – Nội dung công việc ghi chép vào sổ sách giới thực nhớ phụ – Dạng lưu trữ sử dụng PM (tập tin, sở liệu,…) – Hệ thống thành phần lưu trữ với quan hệ chúng Trường CĐKT Lý Tự Trong 11 1.2 Kết thiết kế phần mềm (tt) Bảng tóm tắt kết thiết kế PM Thành phần Kết Kết chi tiết Giao diện Hệ thống hình giao diện Sơ đồ hình Danh sách hình Nội dung hình Biến cố xử lý hình Xử lý Hệ thống hàm với cấu trúc liệu tương ứng Danh sách hàm Danh sách kiểu liệu Mô tả chi tiết hàm Mô tả chi tiết kiểu liệu Dữ liệu Tổ chức lưu trữ nhớ phụ Sơ đồ (cấu trúc lưu trữ) Danh sách thành phần liệu Mô tả chi tiết thành phần Danh sách ràng buộc Trường CĐKT Lý Tự Trong 12 1.3 Phương pháp thiết kế phần mềm (tt) • Có 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 13 Phương pháp thiết kế trực tiếp • Được áp dụng thực PM không thông qua giai đoạn phân tích • Việc thiết kế nhận kết chuyển giao trực tiếp từ giai đoạn xác định u cầu • Mơ hình PM xây dựng trực tiếp từ yêu cầu (Không thông qua mô hình giới thực) • Cách tiếp cận khó khăn cho người thực với PM có qui mơ lớn (nhiều u cầu, u cầu phức tạp…) Trường CĐKT Lý Tự Trong 14 Phương pháp thiết kế trực tiếp Bảng thể việc tiếp nhận chuyển giao kết giai đoạn thiết kế PM xác định yêu cầu Bước TK giai đoạn TK Loại yêu cầu chuyển giao giai đoạn xác định yêu cầu Thiết kế giao diện Yêu cầu chức 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 Trường CĐKT Lý Tự Trong Ghi Xem xét chủ yếu cách thức, biểu mẫu yêu cầu chức nghiệp vụ liên quan 15 Phương pháp thiết kế trực tiếp Bảng thể việc tiếp nhận chuyển giao kết giai đoạn thiết kế PM xác định yêu cầu Bước TK giai đoạn TK Thiết kế xử lý Loại yêu cầu chuyển giao giai đoạn xác định yêu cầu Yêu cầu chức nghiệp vụ – Lưu trữ – Tính tốn – Tra cứu u cầu chức hệ thống – Sao lưu, phục hồi – Nhắc nhở, báo động – Mô phỏng,… Ghi Xem xét chủ yếu qui định, công thức yêu cầu chức nghiệp vụ liên quan Yêu cầu chất lượng – Tiến hoá – Hiệu (tốc độ, lưu trữ) – Tương thích Trường CĐKT Lý Tự Trong 16 Phương pháp thiết kế trực tiếp Bảng thể việc tiếp nhận chuyển giao kết giai đoạn thiết kế PM xác định yêu cầu Bước TK giai đoạn TK Loại yêu cầu chuyển giao giai đoạn xác định yêu cầu Thiết kế liệu Yêu cầu chức nghiệp vụ Lưu trữ Tra cứu Kết xuất Yêu cầu chức hệ thống Ghi Xem xét chủ yếu nội dung yêu cầu chức nghiệp vụ liên quan Phân quyền Cấu hình Yêu cầu chất lượng Tiến hoá Hiệu Trường CĐKT Lý Tự Trong 17 Phương pháp thiết kế gián tiếp • Được áp dụng với 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ế nhận: – Một phần kết chuyển giao trực tiếp từ giai đoạn xác định yêu cầu – Phần yếu nhận gián tiếp qua giai đoạn phân tích • Mơ hình PM xây dựng tương ứng theo mơ hình giới thực giai đoạn phân tích • Cách tiếp cận thuận lợi đa số trường hợp với PM có qui mơ lớn Trường CĐKT Lý Tự Trong 18 Phương pháp thiết kế gián tiếp Bảng thể việc tiếp nhận chuyển giao kết giai đoạn phân tích xác định yêu cầu Bước phân tích giai đoạn phân tích Loại yêu cầu chuyển giao giai đoạn xác định u cầu Ghi Lập mơ hình liệu Yêu cầu chức nghiệp vụ Lưu trữ Tra cứu Kết xuất Xem xét chủ yếu nội dung yêu cầu chức nghiệp vụ liên quan Lập mơ hình xử lý u cầu chức nghiệp vụ Lưu trữ Tính tốn Xem xét chủ yếu qui định, công thức yêu cầu chức nghiệp vụ liên quan Trường CĐKT Lý Tự Trong 19 Phương pháp thiết kế gián tiếp Bảng thể việc tiếp nhận chuyển giao kết giai đoạn TK PM, giai đoạn PT giai đoạn XĐYC theo PP TK gián tiếp Bước TK giai đoạn TK Thiết kế liệu Mơ hình chuyển giao giai đoạn PT Mơ hình liệu Loại YC chuyể giao giai đoạn XĐYC Yêu cầu chức hệ thống Phân quyền… Yêu cầu chất lượng Thiết kế xử lý Mơ hình xử lý Tiến hoá, Hiệu Yêu cầu chức 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 – Thiết kế giao diện Mơ hình giao diện Tiến hố, Hiệu quả, Tương thích Yêu cầu chất lượng Tiến hoá, Tiện dụng, Hiệu Trường CĐKT Lý Tự Trong 20 Ví dụ: • MINH HỌA Q TRÌNH TK PM SAU KHI THỰC HIỆN MƠ HÌNH HĨA U CẦU – Mơ hình hóa u cầu – Thiết kế phần mềm: • Hệ thống hình giao diện • Hệ thống hàm xử lý • Hệ thống bảng liệu Trường CĐKT Lý Tự Trong 21 Thiết kế PM YC chất lượng Các yêu cầu chất lượng Yêu cầu chất lượng với TKGD Yêu cầu chất lượng với TKXL Yêu cầu chất lượng với TKDL Hướng giải chung u cầu tính tiến hóa u cầu tính tiện dụng Yêu cầu tính hiệu (tốc độ) Yêu cầu tính hiệu (lưu trữ) Trường CĐKT Lý Tự Trong 22 YC chất lượng với TKGD Tiêu chuẩn chất lượng Yêu cầu thành phần giao diện phần mềm Tính đắn Phù hợp với mơ hình xử lý (nếu có thực giai đoạn phân tích) theo yêu cầu (giai đoạn xác định yêu cầu) bỏ qua giai đoạn phân tích Tính tiến hố Có dự kiến thay đổi thành phần liệu 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 Thao tác thực nhanh, sử dụng tối ứu khơng gian Tính tương thích Sự quán hình Trường CĐKT Lý Tự Trong 23 YC chất lượng với TKXL Tiêu chuẩn chất lượng Yêu cầu thành phần xử lý phần mềm Tính đắn Phù hợp với mơ hình xử lý (giai đoạn phân tích) theo yêu cầu(giai đoạn xác định yêu cầu) bỏ qua giai đoạn phân tích Tính tiến hố Có dự kiến thay đổi qui định, qui tắc tính tốn Tính hiệu Tốc độ thực nhanh Tính tương thích Cho phép chuyển đổi liệu với PM khác Trường CĐKT Lý Tự Trong 24 YC chất lượng với TKDL Tiêu chuẩn chất lượng Yêu cầu thành phần liệu phần mềm Tính đắn Phù hợp với mơ hình liệu (giai đoạn phân tích) theo yêu cầu (giai đoạn xác định yêu cầu) bỏ qua giai đoạn phân tích Tính tiến hố Có dự kiến thay đổi nội dung liệu cần lưu trữ ràng buộc tương ứng Tính hiệu Lưu trữ tốn chỗ, truy xuất nhanh Trường CĐKT Lý Tự Trong 25 2.2 Hướng giải chung u cầu tính tiến hóa Công việc Hướng giải Thiết kế giao diện Bổ sung hình giao diện cho phép người dùng thay đổi thông tin liên quan 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 qui định, biểu mẫu Xử lý không phép dùng trực tiếp thông tin cố định qui định, biểu mẫu liên quan mà phải đọc thông tin từ nhớ phụ Thiết kế liệu Bổ sung vào sơ đồ logic thuộc tính mới, bảng để lưu trữ thông tin cho phép qui định, biểu mẫu Ghi chú: Với PM đóng gói (thương mại hóa) bán cho nhiều khách hàng khác thiết phải xem xét tối đa thay đổi có qui định, biểu mẫu Trường CĐKT Lý Tự Trong 26 2.2 Hướng giải chung u cầu tính tiện dụng Cơng việc Hướng giải Thiết kế giao diện Bổ sung thêm thơng tin hình giúp cho người dùng có nhiều thông tin thực công việc với PM Hạn chế tối đa lỗi người dùng, cho họ có hội sửa lỗi sau gây lỗi Chọn hình thức giao diện trực quan, tự nhiên người dùng Thiết kế xử lý Bổ sung hàm cung cấp thông tin hình giao diện Bổ sung hàm để lưu trữ bước thực người dùng, nhắc nhở người dùng nghi ngờ họ nhầm lẫn Thiết kế liệu Khơng có thay đổi đáng ý Trường CĐKT Lý Tự Trong 27 2.2 Hướng giải chung Yêu cầu tính hiệu (tốc độ) Công việc Hướng giải Thiết kế giao diện Bổ sung thêm thơng tin hình giúp cho người dùng nhanh chóng thực cơng việc Chọn hình thức nhập liệu nhanh có Thiết kế xử lý Bổ sung hàm tạo giá trị định sẵn, thực thao tác bổ sung Sử dụng thích hợp thuộc tính tính tốn Bổ sung hàm tự động cập nhật thuộc tính tính tốn Chọn thuật giải cho kết nhanh có Thiết kế liệu Bổ sung thuộc tính tính tốn Trường CĐKT Lý Tự Trong 28 2.2 Hướng giải chung Yêu cầu tính hiệu (lưu trữ) Cơng việc Hướng giải Thiết kế giao diện Sắp xếp tối ưu thơng tin hình Thiết kế xử lý Bổ sung hàm chuyển đổi dạng lưu trữ Thiết kế liệu Tổ chức lại sở liệu để lưu trữ tối ưu Trường CĐKT Lý Tự Trong 29 Hỏi & Đáp Trường CĐKT Lý Tự Trong 30 10 ... thiết kế phần mềm • Kết việc TK PM TK: – Thành phần Giao diện (Chương 5) – Thành phần Xử lý (Chương 6) – Thành phần Dữ liệu (Chương 4) • Các TK cung cấp thông tin chi tiết cấu trúc thành phần PM... nhớ phụ Sơ đồ (cấu trúc lưu trữ) Danh sách thành phần liệu Mô tả chi tiết thành phần Danh sách ràng buộc Trường CĐKT Lý Tự Trong 12 1.3 Phương pháp thiết kế phần mềm (tt) • Có phương pháp: – Phương... tin, sở liệu,…) – Hệ thống thành phần lưu trữ với quan hệ chúng Trường CĐKT Lý Tự Trong 11 1.2 Kết thiết kế phần mềm (tt) Bảng tóm tắt kết thiết kế PM Thành phần Kết Kết chi tiết Giao diện Hệ