Bài giảng Nhập môn công nghệ phần mềm - Đỗ Thị Thanh Tuyền - Chương 3: Thiết kế dữ liệu
Thiết kế dữ liệu -> sơ đồ logic
Thiết kế giao diện -> danh sách các màn hình của phần
mềm (màn hình thực đơn, màn hình nhập liệu, màn
hình tra cứu ).
Thiết kế xử lý -> danh sách các xử lý của phần mềm.
NHẬP MÔN CÔNG NGHỆ PHẦN MỀM Giảng viên: Đỗ Thị Thanh Tuyền Email: dothithanhtuyen@gmail.com 2Nhập môn Công nghệ Phần mềm January 14 Nội dung môn học Tổng quan về Công nghệ phần mềm Xác định và mô hình hóa yêu cầu phần mềm Thiết kế phần mềm: - Thiết kế DỮ LIỆU Cài đặt phần mềm Kiểm thử và bảo trì Đồ án môn học 3Nhập môn Công nghệ Phần mềm January 14 Kiến trúc phần mềm Người dùng Phần mềm Phần cứng Người dùng Hệ thống dữ liệu Phần cứng Mô hình 3 lớp: Hệ thống giao diện Hệ thống xử lý 4Nhập môn Công nghệ Phần mềm January 14 Thiết kế phần mềm Thiết kế dữ liệu -> sơ đồ logic Thiết kế giao diện -> danh sách các màn hình của phần mềm (màn hình thực đơn, màn hình nhập liệu, màn hình tra cứu…). Thiết kế xử lý -> danh sách các xử lý của phần mềm. 5Nhập môn Công nghệ Phần mềm January 14 Thiết kế dữ liệu Mục tiêu của việc thiết kế dữ liệu là nhằm mô tả cách thức tổ chứ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 quá trình thiết kế dữ liệu là xây dựng được sơ đồ Logic. Khi thiết kế dữ liệu, ta quan tâm đến ba vấn đề sau: Thiết kế dữ liệu với tính đúng đắn Thiết kế dữ liệu với tính tiến hóa Thiết kế dữ liệu với yêu cầu hiệu quả về mặt truy suất và lưu trữ 6Tên Table Nhập môn Công nghệ Phần mềm January 14 Sơ đồ Logic Bao gồm các bảng dữ liệu và mối quan hệ giữa chúng. Các ký hiệu: Bảng dữ liệu Liên kết 7A Nhập môn Công nghệ Phần mềm January 14 Sơ đồ Logic (tt) Các ký hiệu (tt): Một phần tử của bảng A xác định duy nhất một phần tử của bảng B Ngược lại, một phần tử của bảng B có thể tương ứng với một hoặc nhiều phần tử của bảng A Bảng A chứa thuộc tính khóa của bảng B (là khóa ngoại của bảng A và là khóa chính của bảng B). B 8Nhập môn Công nghệ Phần mềm January 14 Sơ đồ Logic (tt) Nếu quan hệ giữa A và B là quan hệ 1-1 thì có thể gộp hai table A và B lại thành 1 table duy nhất chứa tất cả thuộc tính của A và B. Quan hệ 1-n không làm được việc này. Nếu quan hệ giữa A và B là quan hệ n-n: Tách quan hệ này thành 2 quan hệ 1-n bằng cách thêm vào 1 table trung gian chứa khóa chính của cả A và B. 9Nhập môn Công nghệ Phần mềm January 14 Ví dụ quan hệ n-n SINH VIÊN MONHOC DANGKY SINHVIEN MONHOC Chuyển thành: 10Nhập môn Công nghệ Phần mềm January 14 DANGKY MaSV MaMonHoc HocKy NamHoc DiemTB SINHVIEN MaSV TenSV NgaySinh GioiTinh QueQuan Email MONHOC MaMonHoc TenMonHoc 11Nhập môn Công nghệ Phần mềm January 14 Các lưu ý Tên Table: viết bằng chữ IN HOA, không dấu, không có khoảng cách giữa các từ. Ví dụ: NHANVIEN, KHACHHANG… Tên thuộc tính: viết hoa các ký tự đầu của mỗi từ, không dấu, không có khoảng cách giữa các từ. Ví dụ: HoTen, NgaySinh, DiaChi… Đặt tên table, tên thuộc tính của table súc tích, cô đọng: Ví dụ: HOSODAILY -> DAILY 12Nhập môn Công nghệ Phần mềm January 14 Các lưu ý (tt) Thuộc tính khóa là thuộc tính có giá trị: Không trùng lắp; Không thay đổi theo thời gian. Xác định thuộc tính khóa: từ danh sách các thuộc tính đã có của table, nếu không chọn được thuộc tính làm khóa thì sử dụng thêm thuộc tính trừu tượng để làm thuộc tính khóa cho table. Thuộc tính trừu tượng là thuộc tính không có trong thế giới thực, chỉ có trong phần mềm. Ví dụ: MaDaiLy, MaLoaiDaiLy… 13Nhập môn Công nghệ Phần mềm January 14 Các lưu ý (tt) DAILY MaDaiLy MaLoaiDaiLy TenDaiLy DiaChi DienThoai Email LOAIDAILY MaLoaiDaiLy TenLoaiDaiLy Gạch dưới thuộc tính khóa 14Nhập môn Công nghệ Phần mềm January 14 Các lưu ý (tt) Xác định kiểu dữ liệu cho thuộc tính khóa: Cân nhắc chọn lựa giữa kiểu số và kiểu chuỗi; Sử dụng tối ưu chiều dài của mã đồng thời phải xem xét khả năng mở rộng. Đặt mã có tính gợi ý: Ví dụ: Hà Nội -> HAN, Hồ Chí Minh -> HCM Không nên dùng lại một mã đã dùng cho dù mã đó đã bị xóa. 15Nhập môn Công nghệ Phần mềm January 14 Các kiểu mã hóa Mã hóa liên tiếp: 1,2,3… Mã hóa theo lát: dùng từng lát cho từng nhóm đối tượng, trong mỗi lát thường dùng kiểu mã hóa liên tiếp. Mã hóa phân đoạn: mã được phân thành nhiều đoạn, mỗi đoạn mang một ý nghĩa riêng. Mã hóa phân cấp: là mã hóa phân đoạn, mỗi đoạn trỏ đến một tập hợp các đối tượng và các đối tượng này được phân cấp theo thứ tự từ trái qua phải. Mã hóa diễn nghĩa: gán một tên ngắn gọn nhưng hiểu được cho từng đối tượng. 16Nhập môn Công nghệ Phần mềm January 14 Bảng THAMSO Là một table đặc biệt, không có thuộc tính khóa. Chỉ có các thao tác select và update, không có insert và delete sau khi đã hoàn tất việc thiết kế. Chức năng: dùng để lưu các giá trị trong các qui định mà các giá trị này không liên quan đến các đối tượng dữ liệu khác. Các giá trị này dùng trong các biểu thức tính toán hoặc kiểm tra. Kiểu dữ liệu của các giá trị này được qui về kiểu số: true 1 và false 0 17Nhập môn Công nghệ Phần mềm January 14 Bảng THAMSO (tt) Đặt tên tham số theo qui định về cách đặt tên của thuộc tính. Cấu trúc của bảng THAMSO: C1: Khi chỉ muốn lưu giá trị hiện hành của tham số THAMSO(TenThamSo,GiaTri) C2: Khi muốn lưu tất cả các giá trị trước đó của tham số THAMSO(ThamSo1,ThamSo2,…,ThamSox) Với C2: - Không phải qui đổi giá trị của các tham số về kiểu số; - Giá trị của record cuối cùng là giá trị hiện hành của các tham số. 18Nhập môn Công nghệ Phần mềm January 14 Thuật toán thiết kế dữ liệu Thiết kế dữ liệu dựa vào sơ đồ luồng dữ liệu của yêu cầu phần mềm đang xét. Các bước thực hiện: Bước 1: Xét yêu cầu phần mềm thứ I Thiết kế dữ liệu với tính đúng đắn Thiết kế dữ liệu với tính tiến hóa Bước 2: Xét yêu cầu phần mềm thứ II … Bước n: Xét yêu cầu phần mềm cuối cùng 19Nhập môn Công nghệ Phần mềm January 14 Thuật toán thiết kế dữ liệu (tt) Thiết kế dữ liệu với tính đúng đắn: - Biểu mẫu liên quan: BMx - Sơ đồ luồng dữ liệu: SĐx - Các thuộc tính mới: - Thiết kế dữ liệu: bố trí các thuộc tính mới vào các bảng đã có, trong trường hợp không bố trí được thì phải tạo ra bảng mới để chứa các thuộc tính mới này. - Các thuộc tính trừu tượng: - Sơ đồ Logic 20Nhập môn Công nghệ Phần mềm January 14 Thuật toán thiết kế dữ liệu (tt) Thiết kế dữ liệu với tính tiến hóa: - Qui định liên quan: QĐx - Sơ đồ luồng dữ liệu về việc thay đổi qui định: SĐy - Các thuộc tính mới: - Các tham số mới: - Thiết kế dữ liệu: bố trí các thuộc tính mới vào các bảng đã có, trong trường hợp không bố trí được thì phải tạo ra bảng mới để chứa các thuộc tính mới này. - Các thuộc tính trừu tượng: - Sơ đồ Logic 21Nhập môn Công nghệ Phần mềm January 14 Thiết kế dữ liệu với yêu cầu hiệu quả về mặt truy suất và lưu trữ - Hiệu quả về mặt truy suất: + Thêm vào các thuộc tính tính toán. + Lưu ý: giá trị này phải được tự động cập nhật khi có những thay đổi liên quan. - Hiệu quả về mặt lưu trữ: + Tách bảng có các giá trị cố định được lặp lại nhiều lần thành 2 bảng: một bảng chứa thông tin tổng quát và một bảng chứa thông tin chi tiết. + Thêm đối tượng mới và sử dụng mã của đối tượng thay cho việc lưu trữ thông tin chi tiết về đối tượng. 22Nhập môn Công nghệ Phần mềm January 14 Q & A
File đính kèm:
- Bài giảng Nhập môn công nghệ phần mềm - Đỗ Thị Thanh Tuyền - Chương 3 Thiết kế dữ liệu.pdf