Bài giảng Nhập môn công nghệ phần mềm - Chủ đề 4: Thiết kế phần mềm cung cấp cho người học các kiến thức: Thiết kế dữ liệu mức vật lý, sử dụng Power Designer để vẽ mô hình PDM, phát sinh và tạo CSDL trong SQL Server2008/2012.
Chủ đề 4: Thiết kế Phần mềm COMP1026 – Introduction to Software Engneering CH4 – Part - HIENLTH Giai đoạn thiết kế Khảo sát Nội dung: • Thiết kế liệu • Thiết kế xử lý Phân tích Kết quả: Hồ sơ thiết kế: • Thiết kế giao diện Thiết kế Cài đặt • Mơ hình PDM • Kiến trúc Module • Hệ thống chức Kiểm tra Triển khai • Hệ thống giao diện COMP1026 – Introduction to Software Engneering Bảo trì CH4 – Part - HIENLTH Thiết kế giao diện Thiết kế Phần mềm? Thiết kế xử lý COMP1026 – Introduction to Software Engneering Thiết kế liệu (lưu trữ) CH4 – Part - HIENLTH Module: Thiết kế Dữ liệu COMP1026 – Introduction to Software Engneering CH4 – Part - HIENLTH Nội dung • Thiết kế liệu mức vật lý (PDM) – Qui tắc chuyển đổi mơ hình từ mức quan niệm (CDM/ERD) sang mức vật lý (PDM) – Bổ sung yêu cầu phi chức • Sử dụng Power Designer để vẽ mơ hình PDM, phát sinh tạo CSDL SQL Server 2008/2012 COMP1026 – Introduction to Software Engneering CH4 – Part - HIENLTH Giới thiệu • Mục tiêu: mơ tả cách thức lưu trữ liệu phần mềm bên máy tính • Kết quả: – Danh sách bảng liệu (table) – Mối quan hệ bảng – Thông tin chi tiết bảng với danh sách thuộc tính: khóa chính, khóa ngoại, kiểu liệu, mơ tả thuộc tính, ràng buộc (nếu có) thuộc tính COMP1026 – Introduction to Software Engneering CH4 – Part - HIENLTH Physical Data Model - PDM • Mơ hình liệu mức vật lý (Physical Data Model) biểu diễn cấu trúc liệu cài đặt hệ quản trị sở liệu như: SQL server, Oracle, MS Access, DB2, MySQL,… • Mơ hình vật lý ánh xạ từ mơ hình quan niệm liệu (Conceptual Data Model) COMP1026 – Introduction to Software Engneering CH4 – Part - HIENLTH Ví dụ mơ hình vật lý COMP1026 – Introduction to Software Engneering CH4 – Part - HIENLTH Các thành phần PDM Cầu Thủ • Table vKetQua • View Mã Số Họ Tên Ngày Sinh Địa Chỉ Vị Trí Số Áo int nvarchar(50) datetime nvarchar(150) nvarchar(30) tinyint TEN_CLB SO_LUONG_CT CAU_LAC_BO CAU_THU • Mối quan hệ Table Câu Lạc Bộ Mã CLB Mã Tỉnh Mã Sân Tên CLB varchar(7) varchar(4) int nvarchar(50) Sân Bóng FK_CAULACBO_SANBONG COMP1026 – Introduction to Software Engneering Mã Sân int Tên Sân nvarchar(50) Địa Chỉ nvarchar(150) CH4 – Part - HIENLTH Các thành phần PDM • Table: SINHVIEN (MASV, TENSV, NAM, MAKHOA) MASV TENSV NAM MAKHOA K29.102.001 Trần Văn Thành VLY K30.103.022 Lý Chánh HOA K31.102.101 Hán Quốc Việt VLY K31.103.017 Phan Sào Nam TOAN K32.101.001 Nguyễn Công Khế TOAN COMP1026 – Introduction to Software Engneering CH4 – Part - 10 HIENLTH Bài tập • Xây dựng mơ hình PDM cho ứng dụng sau: – – – – – – – – – – Quản Quản Quản Quản Quản Quản Quản Quản Quản … lý lý lý lý lý lý lý lý lý giải bóng đá vơ địch quốc gia bình chọn hát hay Làn sóng xanh giáo vụ trường đại học giáo vụ trường phổ bán hàng học viên trung tâm tin học, ngoại ngữ nhân - tiền lương bán hàng trực tuyến nhà trẻ COMP1026 – Introduction to Software Engneering CH4 – Part - 58 HIENLTH Ví dụ • Xét phần mềm quản lý bán hàng với nghiệp vụ lập phiếu thu tiền khách hàng Hãy lập sơ đồ liệu COMP1026 – Introduction to Software Engneering CH4 – Part - 59 HIENLTH Ví dụ (tt) • Cách 0: dùng bảng • Cách 1: dùng bảng (PHIEU_THU, LYDO_THU) • Cách 2: dùng bảng (PHIEU_THU, KHACH_HANG) • Cách 3: dùng bảng COMP1026 – Introduction to Software Engneering CH4 – Part - 60 HIENLTH Ví dụ (tt) PHIEU_THU KHACH_HANG MA_PT MA_KH MA_LDT Ngay_Thu SoTien_Thu MA_KH Ho_Ten CMND Dia_Chi THAM_SO Ma_Tham_So Ten_Tham_So Gia_Tri LYDO_THU MA_LDT Ten_LDT Table THAM_SO dùng để lưu qui định COMP1026 – Introduction to Software Engneering CH4 – Part - 61 HIENLTH Ví dụ • Xét phần mềm quản lý nhân với nghiệp vụ tiếp nhận nhân viên COMP1026 – Introduction to Software Engneering CH4 – Part - 62 HIENLTH Ví dụ (tt) Hãy lập sơ đồ liệu cho yêu cầu nghiệp vụ trường hợp sau: a Không yêu cầu theo dõi trình chuyển nhân viên từ đơn vị sang đơn vị khác b Có yêu cầu theo dõi trình chuyển nhân viên c Bổ sung qui định: Đơn vị X nhận nhân viên có trình độ đại học sau đại học COMP1026 – Introduction to Software Engneering CH4 – Part - 63 HIENLTH Ví dụ (tt) a NHAN_VIEN DON_VI MA_NV MA_Don_Vi Ho_Ten Gioi_Tinh Ngay_Sinh Dien_Thoai Dia_Chi Ma_Trinh_Do MA_Don_Vi Ten_Don_Vi TRINH_DO MA_Trinh_Do Ten_Trinh_Do COMP1026 – Introduction to Software Engneering CH4 – Part - 64 HIENLTH Ví dụ (tt) • Table THAM_SO thiết kế theo nhiều cách – Cách Khóa ThamSố#1 ThamSố#2 … … … … … ThamSố#N … Mỗi tham số tương ứng với cột bảng tham số Bảng tham số thường gồm dòng (chứa giá trị tham số hành) ? Cần bổ sung tham số mới? Cần vơ hiệu hóa tác dụng tham số? COMP1026 – Introduction to Software Engneering CH4 – Part - 65 HIENLTH Ví dụ (tt) Được lưu dạng chuỗi – Cách MãThamSố TênThamSố Kiểu GiáTrị TìnhTrạng … … … … … Mỗi tham số tương ứng với dòng bảng tham số Giá trị tham số lưu dạng chuỗi Mỗi tham số cần lưu trữ kiểu giá trị để phần mềm “hiểu” nội dung giá trị tham số ? Cần bổ sung tham số mới? Cần vơ hiệu hóa tác dụng tham số? COMP1026 – Introduction to Software Engneering CH4 – Part - 66 HIENLTH Ví dụ (tt) b NHAN_VIEN MA_NV Ho_Ten Gioi_Tinh Ngay_Sinh Dien_Thoai Dia_Chi Ma_Trinh_Do PHAN_CONG MA_PC MA_NV MA_Don_Vi Ngay_PhanCong DON_VI MA_Don_Vi Ten_Don_Vi TRINH_DO MA_Trinh_Do Ten_Trinh_Do COMP1026 – Introduction to Software Engneering CH4 – Part - 67 HIENLTH Ví dụ (tt) c Bổ sung qui định: Đơn vị X nhận nhân viên có trình độ đại học sau đại học ??? COMP1026 – Introduction to Software Engneering CH4 – Part - 68 HIENLTH Bài tập Xét phần mềm quản lý học sinh với chức ghi nhận bảng điểm danh COMP1026 – Introduction to Software Engneering CH4 – Part - 69 HIENLTH Bài tập Xét phần mềm quản lý bán hàng với chức lập hóa đơn bán hàng Hãy lập sơ đồ liệu COMP1026 – Introduction to Software Engneering CH4 – Part - 70 HIENLTH Bài tập Xét phần mềm quản lý tiết kiệm với chức mở sổ tiết kiệm Hãy lập sơ đồ liệu COMP1026 – Introduction to Software Engneering CH4 – Part - 71 HIENLTH Câu hỏi thảo luận COMP1026 – Introduction to Software Engneering CH4 – Part - 72 HIENLTH ... Software Engneering CH4 – Part - 13 HIENLTH Convert CDM sang PDM • Ánh xạ thành phần từ CDM sang PDM (Physical Data Model) – Tập thực thể – Quan hệ 1-1 – Quan hệ 1-n – Quan hệ m-n – Quan hệ kế thừa... to Software Engneering CH4 – Part - 44 HIENLTH Mở rộng mơ hình PDM • Số sản phẩm hình Option = sản phẩm trang COMP1026 – Introduction to Software Engneering CH4 – Part - 45 HIENLTH Mở rộng mơ hình... Engneering CH4 – Part - 18 HIENLTH Quy tắc chuyển • Quan hệ 1-n A * B A MA … COMP1026 – Introduction to Software Engneering CH4 – Part - 19 B … MA … HIENLTH Convert CDM sang PDM • Ánh xạ quan hệ - n Hoa