Giáo trình Nhập môn Công nghệ phần mềm - Chương 3: Phân tích Phần mềm (Tiếp theo) - Lương Trần Hy Hiến
Tạo mới mô hình CDM ?
• Tạo thực thể
• Mô tả thuộc tính cho thực thể
• Tạo mối kết hợp
• Mô tả thuộc tính cho mối kết hợp
• Tạo mối quan hệ giữa các thực thể, mối
kết hợp
• Phát sinh report
40 trang |
Chia sẻ: huongthu9 | Lượt xem: 505 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Giáo trình Nhập môn Công nghệ phần mềm - Chương 3: Phân tích Phần mềm (Tiếp theo) - Lương Trần Hy Hiến, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
COMP1026 – Introduction to Software Engneering Chapter 3 - 1 HIENLTH
Chủ đề 3: Phân tích Phần mềm
COMP1026 – Introduction to Software Engneering Chapter 3 - 2 HIENLTH
Software Life cycle
COMP1026 – Introduction to Software Engneering Chapter 3 - 3 HIENLTH
Giai đoạn khảo sát
Khảo sát
Kết quả:
Nội dung:
• Xác định quy trình xử lý
nghiệp vụ
• Thu thập biểu mẫu thống kê
Tài liệu đặc tả kiến trúc hệ thống:
• Yêu cầu chức năng
• Yêu cầu phi chức năng
• Kiến trúc hệ thống
COMP1026 – Introduction to Software Engneering Chapter 3 - 4 HIENLTH
Giai đoạn phân tích
Phân tích
Kết quả:
Nội dung: • Phân tích khả thi
• Xây dựng mô hình dữ liệu
mức quan niệm
• Xây dựng mô hình xử lý
Hồ sơ phân tích:
• Phương án triển khai hệ thống
• Mô hình ERD (CDM)
• Mô hình DFD
COMP1026 – Introduction to Software Engneering Chapter 3 - 5 HIENLTH
Phương án triển khai
• Một hệ thống có thể được triển khai theo
nhiều lược đồ khác nhau:
– Hệ thống được triển khai trên máy đơn?
– Hệ thống được triển khai theo mô hình
Client/Server?
– Hệ thống được triển khai tại văn phòng công
ty? Các phòng ban?
– Yêu cầu phần cứng máy tính?
– .
COMP1026 – Introduction to Software Engneering Chapter 3 - 6 HIENLTH
Phân tích tính khả thi
Database Server
Module Sinh viên
Module Giảng viên
Printer Server
Xét hệ thống quản lý giáo vụ trường đại học:
• Phương án triển khai - PA1
COMP1026 – Introduction to Software Engneering Chapter 3 - 7 HIENLTH
Phân tích tính khả thi (tt)
Database ServerModule Sinh viên
Module Giảng viên Printer Server
Xét hệ thống quản lý giáo vụ trường đại học:
• Phương án triển khai – PA2
COMP1026 – Introduction to Software Engneering Chapter 3 - 8 HIENLTH
Phân tích tính khả thi (tt)
Database ServerModule Sinh viên
(NV B phụ trách) Printer Server
Module Giảng viên
(NV A phụ trách)
Xét hệ thống quản lý giáo vụ trường đại học:
• Phương án triển khai – PA3
COMP1026 – Introduction to Software Engneering Chapter 3 - 9 HIENLTH
Phương án triển khai
• Mỗi phương án có:
– Thời gian thực hiện?
– Chi phí?
– Hiệu quả?
COMP1026 – Introduction to Software Engneering Chapter 3 - 10 HIENLTH
Phương án triển khai
• Đối với người dùng, phương án có:
– Ai thực hiện?
– Thực hiện đâu?
– Thực hiện những công việc gì?
– Kế hoạch thực hiện
• Về góc độ kỹ thuật:
– Hệ thống mạng?
– Phần cứng?
– Phần mềm ?
– Nhân sự
• Huấn luyện & đào tạo
• Nội dung huấn luyện là gì?
• Thực hiện bao lâu?
COMP1026 – Introduction to Software Engneering Chapter 3 - 11 HIENLTH
Phân tích dữ liệu
• Mô hình dữ liệu ?
• Các thành phần trong mô hình CDM
• Các bước xây dựng mô hình CDM
• Tài liệu/sưu liệu phân tích
• Sử dụng Power Designer để tạo mô hình
CDM
• Trao đổi thảo luận
COMP1026 – Introduction to Software Engneering Chapter 3 - 12 HIENLTH
Conceptual Data Model or ERD
• Mô hình thực thể kết hợp (Entity
Relationship Diagram) mô tả mối liên hệ
giữa các thực thể.
• Mỗi thực thể là một đối tượng tồn tại bên
ngoài thế giới thực
• Mô hình thực thể kết hợp (Entity
Relationship Diagram) được dùng để thiết
kế CSDL ở mức quan niệm nên còn gọi là
mô hình quan niệm dữ liệu (Conceptual
Data Model)
COMP1026 – Introduction to Software Engneering Chapter 3 - 13 HIENLTH
Xét ứng dụng quản lý TKB
• Hệ thống cho phép bộ phận giáo vụ Khoa
nhập thời khóa biểu, cập nhật thời khóa
biểu của tất cả các lớp.
• Hệ thống cho phép sinh viên tra cứu thời
khóa biểu theo từng học kỳ của lớp.
• Hệ thống cho phép giảng viên tra cứu thời
khóa biểu giảng dạy trong học kỳ
COMP1026 – Introduction to Software Engneering Chapter 3 - 14 HIENLTH
Xét ứng dụng quản lý TKB
• Ví dụ:
TKB lớp Tin 3
COMP1026 – Introduction to Software Engneering Chapter 3 - 15 HIENLTH
Xét ứng dụng quản lý TKB
• Ví dụ: TKB của giảng viên
COMP1026 – Introduction to Software Engneering Chapter 3 - 16 HIENLTH
Ví dụ: Xét ứng dụng quản lý TKB
• Hệ thống quản lý thời khóa biểu bao gồm các
thông tin sau:
– Thứ
– Tiết
– Môn
– Giảng viên
– Phòng
– Lớp (theo môn)
– Học kỳ
– Năm học
– Khoa
Có bao nhiêu thực thể ?
Thuộc tính của mỗi thực thể ?
Mối liên hệ giữa các thực thể ?
COMP1026 – Introduction to Software Engneering Chapter 3 - 17 HIENLTH
Ví dụ minh họa
CBoMon
BoMonID
MaBM
TenBM
CKhoa
KhoaID
MaKhoa
TenKhoa
CNganh
NganhID
MaLop
TenLop
TenVietTat
CMonHoc
MonID
MaMon
TenMon
SoTC
SoTietLT
SoTietTH
CGiangVien
GVID
MaGV
TenV
NgaySinh
DiaChi
CLop
LopID
MaLop
TenLop
TenVietTat
CThoiKhoaBieu
MaTKB
TenTKB
Phong
TuTiet
DenTiet
CoSo
LopTheoMon
LopMonID
COMP1026 – Introduction to Software Engneering Chapter 3 - 18 HIENLTH
Ví dụ minh họa
0,n
0,n
0,n
0,n
SinhVien
MaSV
HoTenSV
NgaySinh
NoiSInh
MonHoc
MaMon
TenMon
Nganh
MaNganh
TenNganh
Khoa
MaKhoa
TenKhoa
Mon hoc nganh
SoTinChi
Dang Ky Hoc Mon
Lan
HocKy
NienKhoa
Diem
...
COMP1026 – Introduction to Software Engneering Chapter 3 - 19 HIENLTH
Ví dụ minh họa
1,n
1,n
1,n
1,n
Hoa Don
SoHD
NgayHD
ThanhTien
VAT
TongCong
Hang Hoa
MaHang
TenHang
QuiCach
DonViTinh
GiaMua
GiaBan
Khach hang
MaKH
TenKH
DiaChi
DienThoai
Nha Cung cap
MaNCC
TenNCC
DiaChi
DienThoai
Don dat hang
SoDDH
NgayDH
ThanhTien
VAT
TongCong
Nhan vien
MaNV
Ho
Ten
NgaySinh
DiaChi
DienThoai
Ly lich nhan vien
HoTenCha
HoTenMe
QueQuan
NgheNghiep
HeSoLuong
TrinhDoHV
TrinhDoNN
DanToc
TonGiao
Chi tiet hoa don
SoLuong
DonGia
ThanhTien
...
Chi tiet DDH
SoLuong
DonGia
ThanhTien
...
ThanNhan
MaTN
TenTN
NgaySinh
DiaChi
DienThoai
COMP1026 – Introduction to Software Engneering Chapter 3 - 20 HIENLTH
Các thành phần trong CDM
• Thực thể
• Mối kết hợp
• Mối liên hệ giữa các thực thể
• Mối liên hệ giữa thực thể với mối kết hợp
CKhoa
KhoaID
MaKhoa
TenKhoa
Mon hoc nganh
SoTinChi
0,1
0,n
CKhoa
KhoaID
MaKhoa
TenKhoa
CNganh
NganhID
MaLop
TenLop
TenVietTat
0,n
0,n
MonHoc
MaMon
TenMon
Nganh
MaNganh
TenNganh
Mon hoc nganh
SoTinChi
COMP1026 – Introduction to Software Engneering Chapter 3 - 21 HIENLTH
Các thành phần trong CDM
• Mỗi thực thể/mối kết hợp có 3 thành
phần:
– Tên (Name)
– Mã (Code)
– Thuộc tính (Attribute)
COMP1026 – Introduction to Software Engneering Chapter 3 - 22 HIENLTH
Các thành phần trong CDM
• Thuộc tính:
– Đặc trưng mô tả về đối tượng
• Thực thể và tập thực thể:
– Thực thể là một đối tượng tồn tại bên ngoài
thế giới thực, có giá trị cụ thể
– Tập hợp các thực thể giống nhau tạo thành
một tập thực thể
Khoa
MaKhoa
TenKhoa
Thực thể
Toan:Khoa
MaKhoa: KTOAN
TenKhoa: TOAN
Hoa:Khoa
MaKhoa: KHOA
TenKhoa: HOA
COMP1026 – Introduction to Software Engneering Chapter 3 - 23 HIENLTH
Các thành phần trong CDM
• Phân loại thuộc tính:
– Thuộc tính khóa (Primary Identifier)
– Thuộc tính có giá trị rời rạc
– Thuộc tính đa trị
– Thuộc tính là đối tượng phụ (+)
– Thuộc tính tính toán (*)
COMP1026 – Introduction to Software Engneering Chapter 3 - 24 HIENLTH
Các thành phần trong CDM
• Thuộc tính khóa:
– Giá trị của thuộc tính khóa hai thực thuộc
cùng một tập thực thể không được phép
trùng nhau
COMP1026 – Introduction to Software Engneering Chapter 3 - 25 HIENLTH
Các thành phần trong CDM
• Thuộc tính có giá trị rời rạc:
– Thuộc tính phái của Sinh viên chỉ có 2 giá trị:
Nam hoặc Nữ
– Thuộc tính điểm học phần chỉ có các giá trị 0,
1, 2, 3, 4, 5, 6, 7, 8, 9, 10.
– Thuộc tính loại nhân viên chỉ có các giá trị:
Nhân viên văn phòng, nhân viên bán hàng,
nhân viên sản xuất.
– .
COMP1026 – Introduction to Software Engneering Chapter 3 - 26 HIENLTH
Các thành phần trong CDM
• Thuộc tính loại nhân
viên chỉ có các giá trị:
Nhân viên văn phòng,
nhân viên bán hàng,
nhân viên sản xuất.
COMP1026 – Introduction to Software Engneering Chapter 3 - 27 HIENLTH
Các thành phần trong CDM
• Thuộc tính đa trị
– Thuộc tính điện thoại của nhân viên là thuộc
tính đa trị: 081234567, 01234567890,
– Thuộc tính email của sinh viên cũng là một
thuộc tính đa trị:
• hienlth@hcmup.edu.vn
• hienlth@math.hcmup.edu.vn
• hpt7777@gmail.com
COMP1026 – Introduction to Software Engneering Chapter 3 - 28 HIENLTH
Các thành phần trong CDM
• Thuộc tính là đối tượng phụ:
– Thuộc tính địa chỉ của sinh viên, nhân viên là
một đối tượng phụ, bao gồm các thông tin:
• Số nhà
• Đường
• Phường/xã
• Quận/huyện
• Tỉnh thành
– Thuộc tính ngày sinh của sinh viên, nhân viên
cũng là một đối tượng phụ gồm các thông tin:
ngày, tháng, năm
COMP1026 – Introduction to Software Engneering Chapter 3 - 29 HIENLTH
Các thành phần trong CDM
• Thuộc tính tính toán:
– Thuộc tính thành tiền trong hóa đơn là một
thuộc tính tính toán, được tính bằng tổng số
lượng * đơn giá của các mặt hàng
– Thuộc tính điểm trung bình của học sinh, sinh
viên cũng là một thuộc tính tính toán
COMP1026 – Introduction to Software Engneering Chapter 3 - 30 HIENLTH
Quan hệ giữa các thực thể
• Phân loại:
– Relationship
– Inheritance
1,1
0,nQuan Huyen
MaQuan
TenQuan
Tinh Thanh
MaTinh
TenTinh
1,1
1,1
Nhan vien
MaNV
Ho
Ten
NgaySinh
DiaChi
DienThoai
Ly lich nhan vien
HoTenCha
HoTenMe
QueQuan
NgheNghiep
HeSoLuong
TrinhDoHV
TrinhDoNN
DanToc
TonGiao
COMP1026 – Introduction to Software Engneering Chapter 3 - 31 HIENLTH
Quan hệ giữa các thực thể
• Phân loại dựa trên bản số:
– Quan hệ “1-1”
– Quan hệ “1-nhiều”
– Quan hệ “nhiều-nhiều”
1,1
1,1
Nhan vien
MaNV
Ho
Ten
NgaySinh
DiaChi
DienThoai
Ly lich nhan vien
HoTenCha
HoTenMe
QueQuan
NgheNghiep
HeSoLuong
TrinhDoHV
TrinhDoNN
DanToc
TonGiao
1,1
0,nQuan Huyen
MaQuan
TenQuan
Tinh Thanh
MaTinh
TenTinh
0,n
0,n
Hang Hoa : 2
MaHang
TenHang
QuiCach
DonViTinh
GiaMua
GiaBan
Hoa Don : 2
SoHD
NgayHD
ThanhTien
VAT
TongCong
COMP1026 – Introduction to Software Engneering Chapter 3 - 32 HIENLTH
Quan hệ giữa các thực thể
• Quan hệ nhiều – nhiều:
0,n
0,n
Hang Hoa : 2
MaHang
TenHang
QuiCach
DonViTinh
GiaMua
GiaBan
Hoa Don : 2
SoHD
NgayHD
ThanhTien
VAT
TongCong
1,n
1,n
Hoa Don
SoHD
NgayHD
ThanhTien
VAT
TongCong
Hang Hoa
MaHang
TenHang
QuiCach
DonViTinh
GiaMua
GiaBan
Chi tiet hoa don
SoLuong
DonGia
ThanhTien
...
COMP1026 – Introduction to Software Engneering Chapter 3 - 33 HIENLTH
Quan hệ giữa thực thể và mối kết hợp
• Association link:
– Loại mối kết hợp
• 1 – 1
• 1 – nhiều
– Bản số
• 0,1; 1,1; 0,n; 1,n;
– Vai trò
1,n
1,n
Hoa Don
SoHD
NgayHD
ThanhTien
VAT
TongCong
Hang Hoa
MaHang
TenHang
QuiCach
DonViTinh
GiaMua
GiaBan
Chi tiet hoa don
SoLuong
DonGia
ThanhTien
...
COMP1026 – Introduction to Software Engneering Chapter 3 - 34 HIENLTH
Quan hệ giữa thực thể và mối kết hợp
• Quan hệ phản thân
– Reflexive association
– Recursive association
0..1
0..*
Quản lý
Được quản lý bởi
Quản lý Được quản lý bởi
COMP1026 – Introduction to Software Engneering Chapter 3 - 35 HIENLTH
Quan hệ giữa thực thể và mối kết hợp
• Quan hệ phản thân
Quản lý Được quản lý bởi
Nguyen C:CNhanVien
MaNV = NV05
TenNV = Nguyen C
Tran B:CNhanVien
MaNV = NV02
TenNV = Tran B
Nguyen A:CNhanVien
MaNV = NV03
TenNV = Nguyen A
Tran A:CNhanVien
MaNV = NV01
TenNV = Tran A
Nguyen B:CNhanVien
MaNV = NV04
TenNV = Nguyen B
COMP1026 – Introduction to Software Engneering Chapter 3 - 36 HIENLTH
Xây dựng mô hình CDM
• Từ yêu cầu chức năng
– Từ danh sách mẫu biểu, thống kê
– Từ qui trình xử lý nghiệp vụ (DFD, BPM)
• Từ yêu cầu phi chức năng
COMP1026 – Introduction to Software Engneering Chapter 3 - 37 HIENLTH
Các bước xây dựng mô hình CDM
• Xác định tập thực thể
• Xác định mối kết hợp
• Xác định thuộc tính cho tập thực thể và
mối kết hợp
• Xác định miền giá trị cho từng thuộc tính
• Xác định thuộc tính khóa, thuộc tính bắt
buộc, thuộc tính Unique.
• Xác định bản số (Min, max) cho quan hệ,
mối kết hợp
COMP1026 – Introduction to Software Engneering Chapter 3 - 38 HIENLTH
Tạo mô hình CDM trong Power
Designer
• Tạo mới mô hình CDM ?
• Tạo thực thể
• Mô tả thuộc tính cho thực thể
• Tạo mối kết hợp
• Mô tả thuộc tính cho mối kết hợp
• Tạo mối quan hệ giữa các thực thể, mối
kết hợp
• Phát sinh report
COMP1026 – Introduction to Software Engneering Chapter 3 - 39 HIENLTH
Bài tập
• Đặc tả yêu cầu và xây dựng CDM cho các ứng
dụng sau:
– Quản lý giải bóng đá vô địch quốc gia
– Quản lý bình chọn bài hát hay Làn sóng xanh
– Quản lý giáo vụ trường đại học
– Quản lý giáo vụ trường phổ thông
– Quản lý bán hàng
– Quản lý học viên trung tâm tin học, ngoại ngữ
– Quản lý nhân sự -tiền lương
– Quản lý bán hàng trực tuyến
– Quản lý nhà trẻ
–
COMP1026 – Introduction to Software Engneering Chapter 3 - 40 HIENLTH
Câu hỏi ôn tập
• Phương án triển khai hệ thống?
• Conceptual Data Model - CDM?
• Các thành phần trong CDM?
• Data Flow Diagram – DFD?
• Các thành phần trong DFD?
Các file đính kèm theo tài liệu này:
- giao_trinh_nhap_mon_cong_nghe_phan_mem_chuong_3_phan_tich_ph.pdf