Đặc điểm của quá trình thiết kế phần mềm, chiến lược thiết kế, thiết kế kiến trúc ứng dụng, thiết kế cơ sở dữ liệu là những nội dung chính trong chương 5 Thiết kế phần mềm thuộc bài thuyết trình Công nghệ phần mềm. Mời các bạn cùng tham khảo.
Chương 5: Thiết Kế Phần Mềm Th.S NGUYỄN VĂN THẨM GIÁO VIÊN HƯỚNG DẪN THÀNH VIÊN NHĨM: TRẦN THỊ BÍCH NGUYỄN ĐỨC HỊA NGUYỄN VĂN HÙNG NGUYỄN ĐỨC DŨNG ĐẶC ĐIỂM CỦA Q TRÌNH THIẾT KẾ PHẦN MỀM N I Ộ DUNG CHIẾN LƯỢC THIẾT KẾ THIẾT KẾ KIẾN TRÚC ỨNG DỤNG THIẾT KẾ CƠ SỞ DỮ LIỆU 1. ĐẶC ĐIỂM CỦA QUÁ TRÌNH THIẾT KẾ PHẦN MỀM Xây dựng ứng dụng phần mềm là một dây chuyền các chuyển đổi Phân tích Mà ở đó: Thiết kế What What How How 1. ĐẶC ĐIỂM CỦA Q TRÌNH THIẾT KẾ PHẦN MỀM 1. ĐẶC ĐIỂM CỦA Q TRÌNH THIẾT KẾ PHẦN MỀM Thiết kế kiến trúc Thiết kế dữ liệu Thiết kế phần mềm là q trình thiết kế cấu trúc phần mềm dựa trên những tài liệu đặc tả Thiết kế giao diện Thiết kế thuật tốn 1. ĐẶC ĐIỂM CỦA Q TRÌNH THIẾT KẾ PHẦN MỀM Tầm quan trọng của thiết kế: Thiết kế là giai đoạn quan trọng nhất Q trình thiết kế tốt là cơ sở để quản lý và giảm chi phí cho cơng việc bảo trì phần mềm sau này 1. ĐẶC ĐIỂM CỦA Q TRÌNH THIẾT KẾ PHẦN MỀM Mối liên quan của thiết kế phần mềm với cơng nghệ phần mềm được thể hiện qua sơ đồ: 1. ĐẶC ĐIỂM CỦA Q TRÌNH THIẾT KẾ PHẦN MỀM Thiết kế phần mềm là hoạt động được xác lập dựa trên 2 mặt: Quản lý và Kỹ thuật Mối quan hệ giữa 2 khía cạnh kỹ thuật và quản lý được thể hiện như sau: 1. ĐẶC ĐIỂM CỦA Q TRÌNH THIẾT KẾ PHẦN MỀM Trong tiến trình thiết kế: Mơ hình để biểu diễn cơng việc thiết kế Đồ thị Các đỉnh của đồ thị để biểu diễn các thực thể Các cạnh là các mối liên hệ giữa chúng 10 THIẾT KẾ KIẾN TRÚC ỨNG DỤNG Mơ hình Mơ hình điều khiển Điều khiển tập trung Đặc điểm Gọi – Trả Mơ hình này phù hợp với các mơ hình thủ tục lời TopDown Quản lý Thích hợp với các hệ thống đồng thời Hệ thống được thiết kế như là 1 bộ quản trị và điều khiển việc khởi động, kết thúc Mơ hình Mơ hình Về ngun tắc, 1 sự kiện được thơng báo cho hệ phát tin các phân hệ. Và phân hệ này sẽ tự quyết việc thống trả lời điều Mơ hình Có 1 hệ thống bên ngồi được sử dụng riêng khiển điều khiển cho việc theo doi các ngắt bên ngồi và được bởi sự ngắt chuyển tới các phân hệ tương ứng kiện Mơ Hệ thống được phân hóa thành các module chức năng hình Chúng nhận dữ liệu, chuyển hóa dữ liệu này rồi đưa ra kết quả luồng Mỗi bước của quy trình giống như 1 phép biến đổi, xử lý dữ liệu đầu dữ vào và tạo dữ liệu đầu ra 18 THIẾT KẾ KIẾN TRÚC ỨNG DỤNG Bài 4.3 / SGK / 194 : Hãy đề xuất 1 mơ hình điều khiển thích hợp cho hệ thống: Bộ điều khiển của tivi có thể nhận tín hiệu từ 1 đơn vị điều khiển từ xa > Mơ hình điều khiển ngắt Hệ thống thanh tốn lương, xử ký theo lơ. Lấy thơng tin về thời gian làm việc, hệ số lương, in ra bảng lương và chuyển thong tin vào tài khoản > Mơ hình điều khiển quản lý Bài 4.4 / SGK / 194 : Hãy đề xuất 1 mơ hình điều khiển thích hợp cho hệ thống: Hệ thống bán vé tàu hỏa tự động > Mơ hình luồng dữ liệu Hệ thống hội nghị trực tuyến, cho phép các dạng dữ liệu như âm thanh, hình ảnh, văn bản,…có thể được truyền tới người sử dụng 1 cách đồng thời > Mơ hình phát tin 19 THIẾT KẾ CƠ SỞ DỮ LIỆU Mục tiêu: mơ tả cách thức lưu trữ dữ liệu của phần mềm bên trong máy tính Kết quả của q trình thiết kế dữ liệu là: Danh sách các bảng (Table) Mối quan hệ giữa các bảng Danh sách các thuộc tính, khóa chính Danh sách các miền giá trị tồn vẹn Có hai dạng lưu trữ chính mà người thiết kế cần phải cân nhắc và lựa chọn. Lưu trữ dưới dạng tập tin Lưu trữ dưới dạng cơ sở dữ liệu 20 THIẾT KẾ CƠ SỞ DỮ LIỆU Sơ đồ logic hay mơ hình vật lý là sơ đồ cho phép thể hiện hệ thống các bảng dữ liệu cùng với quan hệ mối nối liên kết giữa chúng Tên Các qui ước : : đối tượng, quan hệ, lớp : xác định duy nhất : xác định duy nhất theo cả 2 chiều Mơ hình vật lý được xây dựng dựa trên mơ hình ERD đã có ở giai đoạn phân tích 21 THIẾT KẾ CƠ SỞ DỮ LIỆU Các bước chuyển đổi từ mơ hình ERD sang mơ hình vật lý: Bước Mơ hình ERD Mơ hình vật lý Bước 1: Chuyển các tập thực thể thành lược đồ quan hệ Chuyển các mối liên hệ Bước 2 : 1 1 N 1 N N Khóa của tập thực thể nào cũng thành khóa cuả LĐQH Khóa bên nhiều thành khóa của LĐQH Thuộc tính khóa của tất cả các tập thực thể trở thành khố của LĐQH Bước 3 : Gộp các LĐQH có chung khóa thành 1 lược đồ Bước 4 : Chuẩn hóa các LDQH về dạng chuẩn 3NF 22 THIẾT KẾ CƠ SỞ DỮ LIỆU Ph Phươ ương pháp thi ng pháp thiếết k t kếế CSDL CSDL Trực tiếp www.themegallery.com Gián tiếp 23 THIẾT KẾ CƠ SỞ DỮ LIỆU PP Trực tiếp PP Gián tiếp Áp dụng khi thực hiện phần mềm khơng thơng qua giai đoạn phân tích. Thiết kế phần mềm là q trình chuyển đổi từ các u cầu (kết quả giai đoạn xác định u cầu) đến mơ hình phần mềm tương ứng. Mục tiêu chính của việc thiết kế là mơ tả các thành phần của phần mềm (thành phần giao diện, thành phần xử lý, thành phần dữ liệu) tương ứng với các u cầu của phần mềm (u cầu chức năng nghiệp vụ, u cầu chức năng hệ thống, u cầu phi chức năng) Cách tiếp cận này sẽ rất khó khăn với các phần mềm có qui mơ lớn,phức www.themegallery.com tạp Áp dụng với các qui trình có giai đoạn phân tích. Thiết kế phần mềm là q trình chuyển từ mơ hình thế giới thực (kết quả giai đoạn phân tích) đến mơ hình phần mềm tương ứng. Mục tiêu chính của việc thiết kế là mơ tả các thành phần của phần mềm (thành phần giao diện, thành phần xử lý, thành phần dữ liệu) tương ứng với các mơ hình của thế giới thực (mơ hình xử lý, mơ hình dữ liệu). 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 phần mềm qui mơ lớn. 24 THIẾT KẾ CƠ SỞ DỮ LIỆU Các bước thiết kế CSDL PP trực tiếp PP gián tiếp Bước 1: Vẽ sơ đồ logic dữ liệu Bước 2: Lập danh sách các bảng thuộc tính Bước 3: Lập danh sách bảng miền giá trị tồn vẹn Bước 1: Xây dựng mơ hình ERD Bước 2: Chuyển mơ hình ERD sang mơ hình logic dữ liệu Bước 3: Vẽ sơ đồ logic dữ liệu Bước 4: Lập danh sách các bảng dữ liệu Bước 5: Lập danh sách bảng thuộc tính Bước 6: Lập danh sách bảng miền giá trị tồn vẹn www.themegallery.com 25 THIẾT KẾ CƠ SỞ DỮ LIỆU Ví dụ: Xét phần mềm quản lý thư viện với u cầu nghiệp vụ cho mượn sách có mẫu phiếu mượn: PHIẾU MƯỢN SÁCH Số phiếu:… Ngày mượn:…… Mã độc giả:…… Họ tên:……… Ngày sinh:……… Địa chỉ:……… Danh sách sách mượn: Mã sách Tên sách Tác giả Nhà xuất ầu nghiệp vụ trên với yêu Hãy lập sơ đồ logic dữ liệu cho yêu c cầu: Số lượng sách trong kho và số phiếu phải lớn hơn 0 26 www.themegallery.com Ngày mượn phải nhỏ hơn hoặc bằng ngày trả THIẾT KẾ CƠ SỞ DỮ LIỆU Bước 1: Xây dựng mơ hình ERD NgayM hoten NgayTr TenSach Madg Diachi www.themegallery.com Sach Phieumuon Docgia Ns Soph Masach Nhaxb Tacgia Soluong 27 THIẾT KẾ CƠ SỞ DỮ LIỆU Bước 2: Chuyển mơ hình ERD sang mơ hình logic dữ liệu Docgia ( Madg, hoten, Ns, Diachi ) Sach ( MaSach, TenSach, Tacgia, Nhaxb, Soluong ) Phieumuon ( Sop, MaSach, Madg, NgayM, NgayTr ) Bước 3: Vẽ sơ đồ logic dữ liệu Docgia Phieumuon Sach Bước 4: Lập bảng danh sách dữ liệu STT Tên bảng Ý nghĩa Docgia Lưu trữ thông tin về độc giả Sach Lưu trữ thông tin về sách Phieumuon Lưu trữ thơng tin về q trình mượn sách của độc giả www.themegallery.com Ghi chú 28 THIẾT KẾ CƠ SỞ DỮ U ập bảng danh sách các thuộc tính BLI ướỆ c 5: L Danh sách các thuộc tính của bảng Docgia STT Tên bảng Madg Ràng buộc Ý nghĩa Loại thuộc tính Mã độc giả Khóa Hoten Họ tên độc giả Đối tượng phụ Ns Ngày sinh Đối tượng phụ Diachi Địa chỉ Đối tượng phụ Danh sách các thuộc tính của bảng Sach STT Tên bảng MaS TenS Tên sách Rời rạc Nhaxb Nhà xuất bản Rời rạc Soluong Số lượng Rời rạc www.themegallery.com Ràng buộc RB1 Ý nghĩa Loại thuộc tính Mã sách Khóa 29 THIẾT KẾ CƠ SỞ DỮ LIỆU Danh sách các thuộc tính của bảng Phieumuon STT Tên bảng Sop Ràng buộc RB1 Ý nghĩa Loại thuộc tính Số phiếu Khóa chính MaS Mã sách Khóa ngoại Madg Mã độc giả Khóa ngoại NgayM RB2 Ngày mượn Đối tượng phụ NgayTr RB3 Ngày trả Đối tượng phụ Bước 6: Lập bảng danh sách bảng miền giá trị Mã số RB1 Mô tả miền giá trị Phải lớn hơn 0 Thành phần liên quan Phiếu mượn, Sách RB2 Phải nhỏ hơn hoặc bằng ngày trả Phiếu mượn RB3 Phải lớn hơn hoặc bằng ngày mượn Phiếu mượn www.themegallery.com 30 THIẾT KẾ CƠ SỞ DỮ LIỆU Yêu cầu về chất lượng thiết kế CSDL STT Tiêu chuẩn u cầu Tính đúng đắn Lưu trữ đầy đủ và đúng nghĩa các thơng tin có trong nghiệp vụ liên quan Tính tiến hóa Lưu trữ thơng tin về tổ chức và qui định có trong nghiệp vụ liên quan Tính hiệu quả Lưu trữ tiết kiệm nhất khơng gian bộ nhớ, truy xuất nhanh nhất thơng tin cần thiết Tính bảo mật Lưu trữ thơng tin về người sử dụng phần mềm cùng với quyền hạn tương ứng www.themegallery.com 31 L/O/G/O Xin chân thành cám ơn thầy và các bạn đã chú ý lắng nghe! k c u d L o o G !!! 32 ... Mà ở đó: Thiết kế What What How How 1. ĐẶC ĐIỂM CỦA QUÁ TRÌNH THIẾT KẾ PHẦN MỀM 1. ĐẶC ĐIỂM CỦA QUÁ TRÌNH THIẾT KẾ PHẦN MỀM Thiết kế kiến trúc Thiết kế dữ liệu Thiết kế phần mềm là quá trình ... ĐẶC ĐIỂM CỦA QUÁ TRÌNH THIẾT KẾ PHẦN MỀM N I Ộ DUNG CHIẾN LƯỢC THIẾT KẾ THIẾT KẾ KIẾN TRÚC ỨNG DỤNG THIẾT KẾ CƠ SỞ DỮ LIỆU 1. ĐẶC ĐIỂM CỦA Q TRÌNH THIẾT KẾ PHẦN MỀM Xây dựng ứng dụng phần mềm là một dây chuyền các chuyển ... mềm là quá trình thiết kế cấu trúc phần mềm dựa trên những tài liệu đặc tả Thiết kế giao diện Thiết kế thuật tốn 1. ĐẶC ĐIỂM CỦA Q TRÌNH THIẾT KẾ PHẦN MỀM Tầm quan trọng của thiết kế: Thiết kế là giai đoạn quan trọng nhất