Tải bản đầy đủ (.pdf) (151 trang)

Tài liệu hướng dẫn giải dạy chương trình kỹ thuật viên ngành lập trình học phần 4 phân tích hệ thống

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (4.16 MB, 151 trang )

TRUNG TÂM TIN HỌC - ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP. HCM
227 Nguyễn Văn Cừ – Quận 5 – Tp. Hồ Chí Minh
Tel: 8351056 – Fax 8324466 – Email:
Mã tài liệu: DT_NCM_LT_HDGD_PTHT
Phiên bản 1.1 – Tháng 06/04



TÀI LIỆU HƯỚNG DẪN GIẢNG DẠY

CHƯƠNG TRÌNH KỸ THUẬT VIÊN
NGÀNH LẬP TRÌNH
Học phần 4
PHÂN TÍCH HỆ THỐNG

Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 1/150



Mục lục
Mục lục 1
GIỚI THIỆU 4
GIÁO TRÌNH LÝ THUYẾT 5
TÀI LIỆU THAM KHẢO 5
HƯỚNG DẪN PHẦN LÝ THUYẾT 6
Bài 1 TỔNG QUAN VỀ TRIỂN KHAI ỨNG DỤNG TIN HỌC (UDTH) 6
I. Phân loại các UDTH 7
I.1. Phân loại theo lãnh vực áp dụng 7


I.2. Phân loại theo qui mô về số người tham gia và thời gian triển khai 7
II. Phương pháp triển khai dựa theo mô hình thác nước 8
II.1. Giai đoạn khảo sát 9
II.2. Giai đoạn phân tích 9
II.3. Giai đoạn thiết kế 10
II.4. Giai đoạn lập trình – kiểm thử 11
Bài 2 KHẢO SÁT UDTH 13
I. Khảo sát thực tế 14
I.1. Nội dung thực hiện 14
I.2. Phương pháp thực hiện 16
II. Lập kế hoạch triển khai 17
II.1. Kiến trúc tổng thể của UDTH 17
II.2. Kế hoạch triển khai cho từng phân hệ 18
II.3. Kế hoạch tổ chức khai thác UDTH 19
III. Lập Hồ sơ khảo sát 19
Bài 3 MÔ HÌNH THỰC THỂ – KẾT HP 20
I. Khái niệm 20
I.1. Thực thể (Entity) 21
I.2. Thuộc tính (Attribute) 22
I.3. Loại thực thể (Entity Type) 23
I.4. Loại mối kết hợp (Relationship) 24
I.5. Một số trường hợp đặc biệt 25
II. Công cụ DB-Main 27
Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 2/150


Bài 4 PHÂN TÍCH THÀNH PHẦN DỮ LIỆU 37

I. Lập sơ đồ quan niệm dữ liệu 37
I.1. Xác đònh danh sách các loại thực thể (cùng các thuộc tính của chúng) 38
I.2. Xác đònh các loại mối kết hợp giữa các loại thực thể để phác thảo sơ đồ quan niệm dữ
liệu 39
I.3. Hoàn chỉnh sơ đồ quan niệm dữ liệu 39
II. Ràng buộc toàn vẹn mô tả bổ sung ngữ nghóa 41
Bài 5 PHÂN TÍCH THÀNH PHẦN XỬ LÝ 43
I. Xác đònh danh sách các xử lý 43
I.1. Tiếp cận theo kết xuất 43
I.2. Tiếp cận theo qui trình nghiệp vụ 44
II. Mô tả các xử lý 44
Bài 6 MÔ HÌNH DỮ LIỆU QUAN HỆ 46
I. Khái niệm 46
I.1. Thuộc tính (Attribute) 47
I.2. Quan hệ (Relation) 48
I.3. Bộ (tuple) 49
I.4. Khóa chỉ đònh (candidate key) – Khóa chính (primary key) 49
I.5. Khóa ngoại (foreign key) 51
II. Công cụ DB-Main 52
II.1. Chức năng chuyển đổi tự động sơ đồ quan niệm dữ liệu của bộ công cụ DB Main 52
II.2. Phát sinh script file tạo cơ sở dữ liệu bằng DB Main 52
Bài 7 THIẾT KẾ THÀNH PHẦN DỮ LIỆU 53
I. Lập sơ đồ logic dữ liệu 53
I.1. Chuyển đổi sơ đồ quan niệm dữ liệu sang sơ đồ logic dữ liệu 53
I.2. Một số trường hợp đặc biệt 57
I.3. Tối ưu hoá sơ đồ logic dữ liệu 58
II. Ràng buộc toàn vẹn mức thiết kế 60
II.1. Xác đònh danh sách các ràng buộc toàn vẹn 60
II.2. Bảng tầm ảnh hưởng 60
II.3. Phương pháp kiểm tra ràng buộc toàn vẹn 62

II.4. Thiết kế các nội dung khác có liên quan đến dữ liệu 63
Bài 8 THIẾT KẾ THÀNH PHẦN XỬ LÝ 64
I. Thiết kế các thủ tục, hàm 64
II. Mô tả các thủ tục, hàm 64
Bài 9 THIẾT KẾ THÀNH PHẦN GIAO DIỆN 66
I. Vai trò của giao diện 66
Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 3/150


II. Chất lượng của giao diện 67
III. Thiết kế giao diện 69
III.1. Thiết kế màn hình chính 69
III.2. Thiết kế thực đơn chính 70
III.3. Thiết kế màn hình đăng nhập 70
III.4. Thiết kế thanh công cụ 70
III.5. Thiết kế màn hình nhập liệu 71
III.6. Thiết kế màn hình tìm kiếm, tra cứu 73
III.7. Thiết kế màn hình hỏi đáp 73
III.8. Thiết kế màn hình thông báo 73
III.9. Thiết kế màn hình gọi thực hiện báo cáo 74
III.10. Thiết kế báo cáo 74
III.11. Thiết kế màn hình thông số cho UDTH 74
III.12. Thiết kế màn hình tiện ích 75
Bài 10 LẬP TRÌNH – KIỂM THỬ 78
I. Lập trình 78
I.1. Một số qui tắc 78
I.2. Các bước thực hiện 79

II. Kiểm thử 81
II.1. Kiểm thử chức năng 81
II.2. Kiểm thử hệ thống 82

Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 4/150


GIỚI THIỆU
Sau khi hoàn thành khóa học, học viên sẽ có khả năng:
 Tự xây dựng một ứng dụng quản lý có qui mô nhỏ dựa trên một hồ sơ khảo sát chi tiết.
 Có thể tham gia (lập trình) trong một nhóm triển khai các ứng dụng với qui mô vừa phải.

Với thời lượng là 36 tiết LT và 30 tiết TH được phân bổ như sau:
STT Bài học Số tiết LT Số tiết TH
01
Tổng quan về triển khai UDTH
2
02
Khảo sát UDTH
2
03
Mô hình thực thể – kết hợp
4 1
04
Phân tích thành phần dữ liệu
8 10
05

Phân tích thành phần xử lý
2 4
06
Mô hình dữ liệu quan hệ
4 1
07
Thiết kế dữ liệu
8 10
08
Thiết kế xử lý
2 4
09
Thiết kế giao diện
2
10
Lập trình – Kiểm thử
2
Tổng số tiết : 36 30

Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 5/150


GIÁO TRÌNH LÝ THUYẾT
Sử dụng giáo trình “Phân tích Hệ thống” của tác giả Nguyễn Tiến Dũng – Nguyễn An Tế
TÀI LIỆU THAM KHẢO
Tài liệu giảng dạy



Học phần 4 – Phân tích Hệ thống Trang 6/150


HƯỚNG DẪN PHẦN LÝ THUYẾT
Bài 1
TỔNG QUAN VỀ TRIỂN KHAI ỨNG DỤNG TIN
HỌC (UDTH)
Tóm tắt
Lý thuyết 2 tiết - Thực hành 0 tiết
Mục tiêu Các mục chính Bài tập bắt
buộc
Bài tập làm
thêm
Nắm được khái niệm về
các bước triển khai một
UDTH (xây dựng UDTH)
dựa theo mô hình thác
nước
I. Phân loại các UDTH
II. Phương pháp triển khai dựa theo
mô hình thác nước với 4 giai
đoạn chính

Trước khi đi vào nội dung chính là trình bày một phương pháp triển khai ứng dụng tin học dựa
theo mô hình thác nước, chúng tôi xin lưu ý bạn đọc rằng triển khai một ứng dụng tin học không
chỉ đơn thuần là lập trình (coding) mà bao gồm rất nhiều công việc, và chúng được chia thành
nhiều giai đoạn khác nhau. Xây dựng một ứng dụng tin học cũng có thể được so sánh phần nào
với việc xây cất một công trình gồm nhiều giai đoạn : công việc được bắt đầu bằng lập luận
chứng kinh tế, dự toán công trình, kế tiếp là lập các bảng vẽ thiết kế, chuẩn bò vật tư, thiết bò,

nhân công, đổ nền móng, xây cất các hạng mục,… Độ phức tạp của công việc xây dựng công
trình sẽ phụ thuộc rất nhiều vào qui mô cũng như mục đích sử dụng của công trình. Tương tự như
vậy, độ phức tạp của việc xây dựng một ứng dụng tin học cũng phụ thuộc vào hai yếu tố: qui mô
và lãnh vực áp dụng của ứng dụng tin học.
Trong phần đầu tiên của bài này, chúng tôi sẽ đề cập sơ lược về việc phân loại các ứng dụng tin
học theo hai yếu tố nói trên, và sau phần phân loại, phần II kế tiếp sẽ giới thiệu tóm tắt các giai
đoạn của phương pháp triển khai ứng dụng tin học dựa theo mô hình thác nùc. Nội dung chi tiết
công việc trong mỗi giai đoạn sẽ được trình bày trong các bài sau.
Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 7/150


I. Phân loại các UDTH
Những ứng dụng tin học hiện nay có thể được chia làm nhiều loại khác nhau dựa trên lãnh vực
áp dụng của chúng.
I.1. Phân loại theo lãnh vực áp dụng
9 Thứ nhất, đó là những ứng dụng tin học được sử dụng trong lãnh vực quản lý tại các
doanh nghiệp, các đơn vò hành chánh sự nghiệp hay các tổ chức xã hội khác, ví dụ: những
ứng dụng về quản lý nhân sự - tiền lương, kế toán, quản lý vật tư, quản lý thành phẩm,
theo dõi công nợ khách hàng,… Ở nước ta hiện nay, loại ứng dụng tin học này rất phổ biến
và có mặt ở hầu hết các đơn vò có sử dụng máy tính.
9 Các ứng dụng tin học cũng có thể được áp dụng trong lãnh vực khoa học kỹ thuật ở nhiều
mức độ khác nhau: từ việc phân tích, thống kê số liệu, giải nhiều bài toán các loại,…cho
đến các chương trình điều khiển lò phản ứng hạt nhân, tên lửa, vệ tinh, tàu vũ trụ,…
9 Một lãnh vực áp dụng khác của các ứng dụng tin học là giáo dục, giải trí như các phần
mềm học ngoại ngữ, học tin học, từ điển bách khoa (kiến thức phổ thông), các trò chơi,…
9 Cuối cùng là các phần mềm phục vụ công việc truyền thông, trao đổi thông tin, đặc biệt là
trong môi trường Internet.

I.2. Phân loại theo qui mô về số người tham gia và thời gian triển
khai
Mặt khác, như chúng tôi đã đề cập ở phần đầu của bài này, bên cạnh lãnh vực áp dụng thì các
ứng dụng tin học còn được phân loại dựa trên qui mô (số người tham gia và thời gian triển khai)
như trong bảng bên dưới.
Qui mô Nhân sự Thời gian
Nhỏ < 5 người 6 tháng
Trung bình 5 ÷ 20 người
20 ÷ 50 người
1 ÷ 2 năm
Lớn 50 ÷ 100 người
100 ÷ 1000 người
2 ÷ 5 năm
Rất lớn > 1000 người > 5 năm
Phân loại ứng dụng theo qui mô
Lưu ý: sự phân loại trong bảng trên chỉ có tính chất tương đối.
Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 8/150


Trong phạm vi của các khóa đào tạo Lập trình viên chuyên nghiệp của Trung tâm Tin học, chúng
tôi chỉ chú trọng đến loại ứng dụng tin học được áp dụng trong lãnh vực quản lý với qui mô nhỏ,
được triển khai bởi một nhóm không quá 5 người và từ đây về sau, nếu không có chú thích gì
thêm thì thuật ngữ ứng dụng tin học dùng để chỉ các ứng dụng tin học được áp dụng trong lãnh
vực quản lý với qui mô nhỏ nói trên. Ngoài ra, thuật ngữ ứng dụng tin học cũng có thể được gọi
tắt là ứng dụng.

Chú ý:


Trong môn học này chỉ xét đến loại UDTH thuộc lãnh vực quản lý với qui mô nhỏ
Hiện nay có một số phương pháp triển khai ứng dụng tin học như: phương pháp dựa theo mô hình
thác nùc (water fall), mô hình chữ V, phương pháp mẫu thử (prototype),… và chúng tôi sẽ chọn
giới thiệu phương pháp dựa theo mô hình thác nước để áp dụng cho việc triển khai các ứng dụng
tin học. Trước tiên, phương pháp này sẽ được giới thiệu tóm tắt trong phần II kế tiếp và nội dung
chi tiết công việc trong mỗi giai đoạn của phương pháp sẽ được trình bày trong các bài tiếp theo.
II. Phương pháp triển khai dựa theo mô hình thác
nước
Phương pháp triển khai dựa theo mô hình thác nước, gọi tắt là mô hình thác nước, do Barry
Boehn đề xuất trong thập niên 70 và gồm 4 giai đoạn như trong hình bên dưới
Công việc được bắt đầu ở trên “đỉnh của thác”, qua các giai đoạn và xuống đến chân thác nước.
Hình tượng thác nước diễn tả mức độ khó khăn khi chúng ta di chuyển ngược dòng (vượt thác).
Điều đó có nghóa là chúng ta phải hết sức thận trọng khi chuyển từ giai đoạn cao xuống giai đoạn
thấp để hạn chế tối đa những sai sót. Khi đang ở một giai đoạn giữa hoặc dưới chân thác nước,
nếu phát hiện một sai sót có nguồn gốc từ một giai đoạn ở phía trên, chúng ta phải “vượt thác”
ngược lên phía trên để sửa chữa sai sót một cách dây chuyền từ giai đoạn phát sinh sai sót cho
đến giai đoạn hiện thời. Việc này thường phải trả giá rất đắt !
0
Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 9/150


Phân tích
(
dữ liệu, xử lý)
Khảo sát
Thiết kế

(
dữ liệu, xử lý

giao diện
)
Lập trình -
Kiểm thử

Mô hình thác nước
II.1. Giai đoạn khảo sát
 Nội dung
Tìm hiểu thực tế thuộc phạm vi của UDTH để nắm bắt được các yêu cầu của người sử
dụng và lập kế hoạch triển khai.
 Đối tượng tham gia
Những nhân viên nghiệp vụ (người sử dụng) và những người thực hiện công việc khảo sát
(các chuyên viên tin học).
 Kết quả
Kết quả của giai đoạn khảo sát là bộ Hồ sơ khảo sát.
Chú ý:


Chuyên viên khảo sát phải có kiến thức về Tin học, đồng thời cũng phải có kiến thức nhất đònh về
lãnh vực mà mình khảo sát. Họ sẽ là “cầu nối” để giao tiếp giữa nhân viên nghiệp vụ (nắm rất
vững về nghiệp vụ nhưng có thể không biết nhiều về Tin học) và người lập trình (nắm rất vững về
Tin học nhưng có thể không biết nhiều về nghiệp vụ)
II.2. Giai đoạn phân tích
 Nội dung
Mô tả lại thực tế thuộc phạm vi của UDTH, trả lời cho câu hỏi WHAT (những gì sẽ cần
phải xây dựng). Nội dung mô tả bao gồm hai thành phần: dữ liệu và xử lý.
 Đối tượng tham gia

Những chuyên viên tin học và có thể là một vài người sử dụng có một trình độ nhất đònh
về Tin học.
 Yêu cầu
Yêu cầu của giai đoạn phân tích là tính chính xác
, đầy đủ, rõ ràng và độc lập với môi
trường cài đặt ứng dụng tin học.
0
Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 10/150


 Kết quả
Kết quả của giai đoạn phân tích là sơ đồ quan niệm dữ liệu, các ràng buộc toàn vẹn mức
phân tích, danh sách các xử lý và bảng mô tả xử lý.
Chú ý:


Kết quả của việc phân tích thành phần dữ liệu: sơ đồ quan niệm dữ liệu và các ràng buộc toàn
vẹn mức phân tích
Kết quả của việc phân tích thành phần xử lý: danh sách các xử lý và bảng mô tả xử lý
Các UDTH được xét trong môn học này sẽ có thành phần dữ liệu phức tạp hơn thành phần xử lý
Việc phân tích các thành phần trên được dựa vào hồ sơ khảo sát của giai đoạn khảo sát
Việc phân tích cần rõ ràng và phải độc lập với môi trường cài đặt

Kinh nghiệm giảng dạy:


Cần giải thích thêm về thành phần dữ liệu và xử lý:

Dữ liệu là các thông tin đầu vào và đầu ra, thường được lưu trữ và truy xuất bởi ứng dụng
Xử lý là các tính toán thực hiện trên dữ liệu, xử lý cũng có thể là thêm, sửa, huỷ trên dữ liệu
ù
Ý nghóa của sơ đồ quan niệm dữ liệu: dùng để mô tả lại nội dung của thế giới thực thuộc phạm vi
Tin học của ứng dụng
Sự cần thiết khi đưa ra các ràng buộc toàn vẹn: để bổ sung thêm các ngữ nghóa (kiểm tra dữ liệu)
mà sơ đồ quan niệm dữ liệu không thể biểu diễn đïc
Ý nghóa của việc lập danh sách các xử lý và bảng mô tả xử lý: nhằm để tập hợp đầy đủ các xử lý
(yêu cầu của người sử dụng) mà ứng dụng sẽ phải cung cấp khi triển khai
Việc phân tích yêu cầu tính rõ ràng. Ví dụ: nếu thực tế có phiếu nhập và phiếu xuất thì trong sơ đồ
quan niệm dữ liệu cũng phải co ùphiếu nhập và phiếu xuất (không nên gộp lại thành một phiếu)
II.3. Giai đoạn thiết kế
 Nội dung
Nhằm cụ thể hóa, tối ưu hóa các thành phần của ứng dụng tin học theo một môi trường
cài đặt được lựa chọn. Hay nói cách khác, giai đoạn này nhằm mục đích phác họa cách
thức ứng dụng sẽ được triển khai như thế nào (trả lời cho câu hỏi HOW). Nội dung thiết kế
bao gồm ba thành phần: dữ liệu, xử lý và giao diện.
 Đối tượng tham gia
Các chuyên viên thiết kế, chuyên viên phân tích và những người sử dụng (đối với thành
phần giao diện).
0

Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 11/150


 Yêu cầu
Yêu cầu của giai đoạn thiết kế là tính chính xác

, đầy đủ và hiệu quả (phụ thuộc vào môi
trường cài đặt).
 Kết quả
Kết quả của giai đoạn thiết kế là sơ đồ logic dữ liệu, các ràng buộc toàn vẹn mức thiết kế,
bảng tầm ảnh hưởng, danh sách các thủ tục/hàm và thuật giải của thủ tục/hàm, danh
sách thực đơn, thanh công cụ, các màn hình và báo cáo.
Chú ý:


Kết quả của việc thiết kế thành phần dữ liệu: sơ đồ logic dữ liệu, các ràng buộc toàn vẹn mức
thiết kế, bảng tầm ảnh hưởng
Kết quả của việc thiết kế thành phần xử lý: danh sách các thủ tục/hàm và thuật giải của thủ
tục/hàm
Kết quả của việc thiết kế thành phần giao diện: danh sách thực đơn, thanh công cụ, các màn
hình và báo cáo
Việc thiết kế các thành phần trên được dựa vào hồ sơ phân tích
Tính rõ ràng được thay thế bằng tính hiệu quả và phụ thuộc vào môi trường cài đặt. Ví dụ: trong
giai đoạn phân tích, trong sơ đồ quan niệm dữ liệu sẽ có phiếu nhập và phiếu xuất (có 2) nhưng
trong giai đoạn thiết kế thì nên gộp lại thành một bảng(có 1) nhằm tăng tính hiệu quả khi cài đặt

Kinh nghiệm giảng dạy:


Cần giải thích thêm về thành phần giao diện
ù
Ý nghóa của sơ đồ logic dữ liệu
II.4. Giai đoạn lập trình – kiểm thử
 Nội dung
Cài đặt (coding) các thành phần trong hồ sơ thiết kế. Nội dung cài đặt gồm ba thành
phần: dữ liệu, xử lý và giao diện. Sau giai đoạn cài đặt thì đến giai đoạn kiểm thử (testing)

chương trình.
 Đối tượng tham gia
Các lập trình viên và chuyên viên thiết kế.
 Yêu cầu
Yêu cầu của giai đoạn lập trình – kiểm thừ là tính chính xác
và đầy đủ theo hồ sơ thiết kế.
0

Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 12/150


 Kết quả
Kết quả của giai đoạn lập trình – kiểm thử là bộ chương trình mang đi cài đặt (setup) cho
người sử dụng.
Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 13/150



Bài 2
KHẢO SÁT UDTH
Tóm tắt
Lý thuyết 2 tiết - Thực hành 0 tiết
Mục tiêu Các mục chính Bài tập bắt
buộc

Bài tập làm
thêm
Nắm được các bước thực
hiện trong giai đoạn
khảo sát một UDTH dựa
theo mô hình thác nước
I. Khảo sát thực tế
II. Lập kế hoạch triển khai
III. Lập hồ sơ khảo sát
2.1 hoặc 2.2
Như chúng tôi đã đề cập trong bài 1, giai đoạn khảo sát trong phương pháp mô hình thác nước
nhằm tìm hiểu thực tế được giới hạn trong phạm vi của ứng dụng tin học, nắm bắt những yêu cầu
của người sử dụng và từ đó lập kế hoạch triển khai ứng dụng tin học trước khi chuyển sang giai
đoạn phân tích.
Dựa trên mục tiên đào tạo của các khóa Lập trình viên chuyên nghiệp của Trung Tâm Tin Học,
chúng tôi sẽ không chú trọng nhiều đến giai đoạn khảo sát vì giai đoạn này cần đến những
chuyên viên không những phải có trình độ cao về tin học mà còn phải có thật nhiều kinh nghiệm,
đã từng tham gia triển khai nhiều ứng dụng và có sự hiểu biết nhất đònh về các mặt của hoạt
động nghiệp vụ liên quan đến ứng dụng tin học sẽ được xây dựng. Vì vậy, trong bài này, chúng
tôi chỉ giới thiệu tóm tắt một số nội dung chính của giai đoạn khảo sát để giúp bạn đọc có được
một cái nhìn khái quát về giai đoạn này.
Giai đoạn khảo sát có hai công việc chính: khảo sát thực tế và lập kế hoạch triển khai. Những
công việc này sẽ được đề cập trong các phần tiếp theo.
Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 14/150


I. Khảo sát thực tế

Giai đoạn khảo sát là giai đoạn mở đầu và đóng một vai trò hết sức quan trọng đối với toàn bộ
quá trình triển khai ứng dụng tin học. Việc khảo sát không đầy đủ, không chính xác chắc chắn sẽ
gây ra những hậu quả rất nghiêm trọng về sau và có khi phải hủy bỏ toàn bộ những kết quả đã
thực hiện và tiến hành khảo sát trở lại ! Trong phần này, chúng tôi sẽ trình bày nội dung và
phương pháp thực hiện công việc khảo sát thực tế để xây dựng một ứng dụng tin học.
I.1. Nội dung thực hiện
I.1.1. Hiện trạng quản lý
Hiện trạng quản lý cần được khảo sát tại một đơn vò bao gồm sơ đồ tổ chức và các qui trình quản
lý nghiệp vụ.
9 Người tham gia thực hiện khảo sát cần phải biết rõ sơ đồ tổ chức của đơn vò để có thể hình
dung được hoạt động chung của toàn đơn vò cũng như hiểu rõ sự phối hợp giữa các phòng,
ban với nhau.
9 Sơ đồ tổ chức được thể hiện bằng hình vẽ gồm các phòng, ban (có hay không có tham gia
khai thác ứng dụng tin học sẽ được xây dựng) của đơn vò.

Người điều hành



Bộ phận
Đặt hàng – thu mua
Bộ phận
Bán hàng
Bộ phận
Kế toán
Sơ đồ tổ chức

Đặt hàng Thu mua




Bán hàng



Báo cáo
Qui trình hoạt động kinh doanh
9 Các qui trình quản lý (xử lý) có thể được chia làm 2 loại: qui trình chỉ do một phòng, ban duy
nhất thực hiện và qui trình có sự phối hợp tham gia của nhiều phòng, ban
Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 15/150


giải trừ
tạm ứng
tạm ứng
Nhân viên tạm ứng Kế toán tiền mặt
Hóa đơn
mua hàng
1.
Kiểm tra
phiếu đề nghò
TU
số dư
TU
Kế toán tạm ứng
Phiếu đề
nghò TU

Phiếu đề nghò
TU được duyệt
2. Duyệt chi
tiền TU
Kế toán trưởng
3.
Lập và trình
kỳ phiếu
chi
tiền TU
Phiếu đề nghò
TU hợp lệ
Phiếu
chi
TU
(4 liên)
4.
Lưu hồ sơ
(1) (2)
4.
Giải trừ
TU
5.
Lập và trình
kỳ phiếu
thu
tiền TU
Phiếu
thu
TU

(4 liên)
số dư
TU
(1)
Phiếu
thu
TU
(3), (4)
(2), (3), (4)
Chứng từ
ghi sổ

Sơ đồ luân chuyển chứng từ – nghiệp vụ theo dõi tạm ứng
I.1.2. Hiện trạng tin học hoá quản lý tại các phòng, ban
Hiện trạng tin học hoá quản lý cần được khảo sát tại các phòng, ban bao gồm:
 Máy móc thiết bò.
+ máy chủ (server): số lượng, cấu hình, chức năng khai thác
+ máy trạm (workstation): số lượng, cấu hình, chức năng khai thác
+ thiết bò mạng, truyền thông: hub, dây cable, modem, …
+ thiết bò khác: máy in, …
Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 16/150


 Phần mềm.
+ hệ điều hành mạng (trên máy chủ)
+ hệ điều hành trên các máy trạm
+ các phần mềm triển khai: hệ quản trò cơ sở dữ liệu, ngôn ngữ lập trình,…

+ các phần mềm khác: phục vụ công tác văn phòng,…
 Trình độ tin học của người sử dụng.
+ người quản trò mạng (administrator): số lượng, trình độ, kinh nghiệm
+ người dùng cuối (end-user): số lượng, trình độ, kinh nghiệm
+ người lãnh đạo: sự hiểu biết về Tin học và tin học hóa quản lý
I.1.3. Yêu cầu người dùng đối với UDTH
Cần phân biệt rõ 2 loại: yêu cầu chức năng (nghiệp vụ) và yêu cầu phi chức năng (hệ thống):
9 Yêu cầu chức năng là những yêu cầu có liên quan chặt chẽ đến hoạt động nghiệp vụ của
người sử dụng, ví dụ những yêu cầu về nhập số liệu, xử lý dữ liệu, tạo báo biểu,…
9 Yêu cầu phi chức năng là những yêu cầu liên quan đến chính quá trình triển khai cũng như
nhằm hỗ trợ thêm cho người sử dụng trong khai thác ứng dụng tin học; ví dụ: những yêu cầu
về thời gian triển khai, môi trường triển khai, giao diện, bảo mật chương trình, sao lưu và phục
hổi số liệu,…
I.2. Phương pháp thực hiện
Khi tiến hành công việc khảo sát tại một đơn vò nào đó, chúng ta cần tiếp xúc với những người
phụ trách các phòng, ban cũng như với các nhân viên nghiệp vụ đảm trách những công việc có
liên quan đến ứng dụng tin học sẽ được xây dựng về sau.
Việc khảo sát thực tế nên được thực hiện theo 2 chiều: nhân viên nghiệp vụ trình bày phần công
việc được phân công phụ trách và ngược lại, người khảo sát cũng nên thường xuyên đặt những
câu hỏi (thắc mắc hoặc gợi ý) để có thể bảo đảm rằng mình đã thật sự hiểu được những qui trình
quản lý tại đơn vò này. Những câu hỏi có thể được chuẩn bò trước cũng như phát sinh trong quá
trình trao đổi.
Việc khảo sát, tìm hiểu thực tế phải liên quan đến nhiều khía cạnh như: nội dung của các công
đoạn trong qui trình quản lý, các chứng từ, các báo biểu, kết xuất, qui trình luân chuyển thông tin
giữa các bộ phận. Với mỗi công đoạn trong qui trình quản lý, chúng ta cần biết rõ những nhân
viên nào phụ trách công việc ? Họ xử lý những thông tin gì (chứng từ, tài liệu,…) ? xử lý như thế
nào ? thời gian xử lý bao lâu ? kết quả xử lý ra sao ? (báo biểu,…) ? trong quá trình thực hiện
công việc họ có sử dụng sổ ghi chép, sổ theo dõi, bảng tính,… hay không ?
Tài liệu giảng dạy



Học phần 4 – Phân tích Hệ thống Trang 17/150


Khi tiến hành khảo sát, chúng ta nên tổ chức thực hiện mỗi lần với một nhóm nhân viên nghiệp
vụ có quan hệ công tác với nhau thay vì làm việc riêng lẻ với từng người. Điều này sẽ tránh làm
mất thì giờ, có thể giúp chúng ta phối kiểm thông tin khảo sát và dễ dàng có được một cái nhìn
tổng thể đối với công việc vì trong quá trình làm việc với từng nhóm nhân viên nghiệp vụ như vậy,
họ sẽ bổ sung cho nhau và chúng ta sẽ tránh được những thiếu sót cũng như tránh được những
thông tin không rõ ràng, không chính xác.
Những thông tin thu thập được trong quá trình khảo sát cần được ghi chép đầy đủ và cẩn thận với
các biểu mẫu cụ thể để làm cơ sở cho những công việc trong các giai đoạn về sau.
Chúng ta dễ dàng nhận thấy rằng đối tượng tham gia vào giai đoạn khảo sát gồm 2 nhóm: các
nhân viên nghiệp vụ và các chuyên viên tin học tiến hành việc khảo sát. Trong hai nhóm này,
nhóm các nhân viên nghiệp vụ sẽ đóng vai trò chính trong giai đoạn khảo sát và như vậy, ngôn
ngữ sử dụng trong giai đoạn này phải là ngôn ngữ nghiệp vụ chứ không phải là ngôn ngữ tin học
với những thuật ngữ, khái niệm rất xa lạ đối với họ. Điều đó cũng có nghóa rằng kiến thức về
nghiệp vụ (ở một mức độ nhất đònh) sẽ giúp ích rất nhiều cho các chuyên viên tin học trong quá
trình khảo sát ứng dụng tin học.
Chú ý:


Nên chuẩn bò trước các câu hỏi cần nêu khi đi khảo sát
Ngôn ngữ trình bày trong khi khảo sát phải là ngôn ngữ nghiệp vụ
Thực hiện 2 chiều: nghe nhân viên nghiệp vụ trình bày yêu cầu và nên đặt ra các thắc mắc để làm
rõ thêm yêu cầu
Thu thập các dữ liệu đầu vào, dữ liệu đầu ra và hiểu được qui trình quản lý

Kinh nghiệm giảng dạy:



Cần cho ví dụ một số vấn đề cần quan tâm khi đi khảo sát như khối lượng thông tin của một nghiệp
vụ, cách tổ chức bộ mã, cách tổ chức phân nhóm, . . .

II. Lập kế hoạch triển khai
Sau khi hoàn tất công việc tìm hiểu thực tế và nắm bắt yêu cầu của người sử dụng, công việc kế
tiếp trong giai đoạn khảo sát là lập kế hoạch triển khai. Nội dung của kế hoạch triển khai gồm
các phần sau:
II.1. Kiến trúc tổng thể của UDTH
Trong trường hợp phải triển khai một UDTH phức tạp, gồm nhiều phân hệ, trước tiên chúng ta
cần xây dựng kiến trúc tổng thể của UDTH, trong đó giới thiệu chức năng chính của mỗi phân
hệ và đồng thời mô tả mối quan hệ giữa các phân hệ với nhau.
0

Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 18/150


Kiến trúc tổng thể này có thể được mô tả qua một sơ đồ cùng với những chú thích và diễn giải
cần thiết.
Theo dõi
đơn đặt hàng
Công nợ
khách hàng
Nhập - xuất - tồn
hàng hóa
Phiếu giao hàng
Phiếu nhập hàng,

phiếu giao hàng

Kiến trúc tổng thể của ứng dụng quản lý đơn đặt hàng
9 Phân hệ Theo dõi đơn đặt hàng
: theo dõi tình hình đặt hàng và giao hàng cho khách. Phân
hệ này sẽ chuyển các đơn đặt hàng cho phân hệ Nhập – xuất – tồn hàng hóa và nhận lại
các phiếu giao hàng.
9 Phân hệ Nhập – xuất – tồn hàng hóa
: theo dõi công tác nhập, xuất, tồn hàng hóa. Phân hệ
này sẽ chuyển giao các chứng từ giao nhận hàng hóa cho phân hệ Công nợ khách hàng.
9 Phân hệ Công nợ khách hàng
: tính toán và lập báo cáo công nợ khách hàng dựa trên các
chứng từ giao nhận hàng và thanh toán.
II.2. Kế hoạch triển khai cho từng phân hệ
Với mỗi phân hệ trong kiến trúc tổng thể của ứng dụng tin học, chúng ta cần lập kế hoạch triển
khai chi tiết liên quan đến một số khía cạnh chính như:
 Máy móc thiết bò
+ Máy móc thiết bò: dự trù tất cả máy móc thiết bò cần thiết để triển khai (cài đặt , khai
thác) phân hệ, ví dụ các máy chủ (server), máy trạm (workstation), máy in, đường
truyền mạng và một số thiết bò hỗ trợ khác.
 Phần mềm triển khai
+ Phần mềm triển khai: hệ điều hành, hệ quản trò cơ sở dữ liệu,…
 Nhân sự
+ Nhân sự: dự trù kế hoạch nhân sự (số lượng, yêu cầu về trình độ tin học) liên quan
đến những công việc như: phân tích, thiết kế, lập trình, khai thác thử nghiệm,…
 Thời gian
+ Thời gian: quỹ thời gian dành cho phân hệ kể từ khi bắt đầu triển khai cho đến khi kết
thúc và nghiệm thu công việc.
Tài liệu giảng dạy



Học phần 4 – Phân tích Hệ thống Trang 19/150


 Chi phí
+ Chi phí: tổng hợp tất cả các chi phí cần cho ứng dụng tin học. Kinh phí này cần được
lên kế hoạch cụ thể cho từng thời điểm.
 Kế hoạch huấn luyện sử dụng
+ Đào tạo, huấn luyện sử dụng: kế hoạch tập huấn cho người sử dụng trước khi tiến
hành cài đặt và khai thác thử nghiệm phân hệ.
II.3. Kế hoạch tổ chức khai thác UDTH
Sau khi đã có kế hoạch riêng lẽ cho từng phân hệ riêng lẽ, chúng ta cần phải lập kế hoạch tổ
chức khai thác đồng bộ cho tất cả các phân hệ của UDTH. Kế hoạch khai thác này nhằm bảo
đảm cho sự phối hợp hoạt động một cách nhòp nhàng giữa các phân hệ của UDTH.
III. Lập Hồ sơ khảo sát
Hồ sơ khảo sát ghi nhận tất cả những thông tin và kết quả thực hiện được trong giai đoạn khảo
sát. Hồ sơ khảo sát gồm hai nội dung chính: khảo sát thực tế và lập kế hoạch triển khai.
Kết quả cụ thể của giai đoạn khảo sát là hồ sơ khảo sát của ứng dụng tin học (xem phụ lục A).
Khi lập hồ sơ khảo sát, chúng ta nên chú ý một số điểm sau:
9 mô tả, diễn giải rõ ràng các nội dung.
9 sử dụng nhiều sơ đồ, hình vẽ với những chú thích và diễn giải cần thiết.
9 sử dụng ngôn ngữ nghiệp vụ (tránh sử dụng ngôn ngữ tin học)
Việc trao đổi, bàn bạc và thống nhất về hồ sơ khảo sát giữa hai bên: đơn vò đặt yêu cầu và
những người triển khai ứng dụng tin học, là hết sức cần thiết vì hồ sơ khảo sát sẽ làm cơ sở cho
hợp đồng ký kết giữa hai bên cũng như làm cơ sở cho toàn bộ các giai đoạn triển khai ứng dụng
tin học về sau này.
Chú ý:


Kết quả của giai đoạn khảo sát là bộ Hồ sơ khảo sát, có ý nghóa rất quan trọng cho giai đoạn

p
hân tích tiếp theo
Khảo sát có thể chia làm nhiều đợt và tiến hành đồng thời với nhiều nhóm

Kinh nghiệm giảng dạy:


Giải thích rõ ý nghóa mẫu hồ sơ khảo sát của ứng dụng Quản lý Đặt hàng (xem trong phụ lục A)
Đặt thêm các tình huống thực tế có thể có đối với ứng dụng Quản lý Đặt hàng như trùng lại bộ mã
khi sang năm khác, theo dõi tình hình đặt và giao hàng, một hàng hoá có thể có nhiều đơn vò tính, . .

0

Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 20/150



Bài 3
MÔ HÌNH THỰC THỂ – KẾT HP
Tóm tắt
Lý thuyết 4 tiết - Thực hành 1 tiết
Mục tiêu Các mục chính Bài tập bắt
buộc
Bài tập làm
thêm
Nắm được các khái niệm
của mô hình E-R (thực

thể – kết hợp) trong giai
đoạn phân tích thành
phần dữ liệu của một
UDTH dựa theo mô hình
thác nước
I. Các khái niệm
II. Công cụ DB - Main
3.1, 3.2
I. Khái niệm
Nội dung công việc của giai đoạn phân tích là mô tả lại thế giới thực trong phạm vi của ứng dụng
tin học. Có thể nói rằng mục đích của công việc phân tích là nhằm giúp các chuyên viên tin học
có được một câu trả lời hết sức cụ thể, tường tận và chính xác về câu hỏi: “ứng dụng tin học sắp
phải xây dựng là gì ?” (câu hỏi WHAT).
Thật ra, ứng dụng tin học mà chúng ta cần triển khai cũng đã được mô tả trong hồ sơ khảo sát
(xem bài 2) nhưng sự mô tả đã được thực hiện một cách không có hệ thống và đặc biệt là không
rõ ràng vì ngôn ngữ “thống soái” trong giai đoạn khảo sát là ngôn ngữ nghiệp vụ, một ngôn ngữ
cũng rất gần gũi với ngôn ngữ tự nhiên, bao gồm nhiều sự hàm ý và hiểu ngầm.
Thông thường, để có thể dễ dàng thấu hiểu một vấn đề hay một đối tượng, người ta cần phải “mổ
xẻ”, quan sát, nhìn nhận và mô tả vấn đề hay đối tượng một cách thật chi tiết và dưới nhiều góc
độ khác nhau. Quá trình phân tích một ứng dụng tin học cũng được thực hiện theo phương pháp
này, nghóa là, chúng ta sẽ quan sát phân tích và mô tả một ứng dụng tin học thông qua hai thành
phần riêng biệt là: dữ liệu và xử lý.
Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 21/150


Xuất phát từ mục tiêu đào tạo của các khóa Lập trình viên chuyên nghiệp của Trung tâm Tin học,
chúng tôi chỉ chú trọng đến những ứng dụng thuộc lãnh vực quản lý với quy mô nhỏ, và trong

những ứng dụng như vậy, thành phần xử lý thường rất đơn giản so với thành phần dữ liệu. Do đó,
trong phân tích chúng tôi sẽ tập trung chủ yếu vào việc phân tích thành phần dữ liệu của ứng
dụng tin học.
Như chúng tôi đã đề cập trong bài 1, những yêu cầu hay tiêu chuẩn được dùng để đánh giá sự
phân tích chính là tính chính xác
, đầy đủ, rõ ràng và độc lập với môi trường cài đặt ứng dụng
tin học.
Ngoài ra, trong quá trình phân tích, để tránh cho ứng dụng trở nên quá cồng kềnh và khai thác
kém hiệu quả, các chuyên viên tin học cần bám sát thực tế được mô tả trong hồ sơ khảo sát,
phân tích vấn đề trong phạm vi của ứng dụng và chỉ nên suy nghó, cân nhắc đối với những trường
hợp biến động (tiến hóa) nào của thực tế được biết là chắc chắn sẽ diễn ra hoặc được đánh giá
là có khả năng xảy ra rất lớn trong tương lai. Các chuyên viên tin học không nên cố gắng một
cách vô ích nhằm phân tích tất cả mọi tình huống có thể xảy ra trong tương lai “theo lý thuyết”; vì
rằng, điều đó thật sự là vượt quá khả năng của con người.
Trong giai đoạn phân tích, ta cần phải phân tích hai thành phần: dữ liệu và xử lý. Kết quả của
việc phân tích thành phần dữ liệu là một sơ đồ quan niệm dữ liệu. Sơ đồ quan niệm dữ liệu dùng
để mô tả lại nội dung của thế giới thực thuộc phạm vi của UDTH (trả lời cho câu hỏi WHAT), sơ
đồ này được xây dựng dựa trên mô hình E-R. Do đó cần phải trình bày một số các khái niệm của
mô hình E-R.
Chú ý:


Trong môn học này chỉ xét đến loại UDTH thuộc lãnh vực quản lý và với qui mô nhỏ, có thành
p
hần xử lý đơn giản hơn thành phần dữ liệu nên việc phân tích sẽ tập trung vào thành phần dữ
liệu là chính
I.1. Thực thể (Entity)
Thực thể là khái niệm được dùng để biểu diễn các đối tượng quản lý trong một UDTH. Thực thể
không chỉ bao gồm những sự vật thực sự tồn tại một cách khách quan trong thực tế, mà thật ra,
thực thể còn được dùng cho cả những trường hợp trừu tượng hóa (như thời khoá biểu, tồn kho,

công nợ).
Chú ý:


Tính từ “thực” trong cách dòch của thuật ngữ entity rất dễ dẫn đến sự ngộ nhận rằng thực thể chỉ
bao gồm những sự vật thực sự tồn tại một cách khách quan trong thực tế, nhưng thật ra, thực thể
còn được dùng cho cả những trường hợp trừu tượng hoá
Cho ví dụ về các thực thể có thực và do trừu tượng hóa. Ví dụ:
Học sinh Nguyễn Văn Thanh là một thực thể
0
0
Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 22/150


Công nợ tháng 7/2004 của khách hàng Công ty Hoàng Mỹ là một thực thể
I.2. Thuộc tính (Attribute)
Mỗi thực thể sẽ có các thuộc tính đặc trưng cho thực thể đó. Thuộc tính của một thực thể gồm có
tên (name), kiểu dữ liệu (data type) và bản số (cardinality).
9 Tên của thuộc tính nên được chọn sao cho có ý nghóa và gợi nhớ.
9 Khái niệm kiểu dữ liệu của thuộc tính cũng tương tự như khái niệm kiểu dữ liệu của biến lập
trình. Các kiểu dữ liệu thông thường là:
Kiểu Mô tả
Char Các ký tự
Date Ngày tháng
Numeric Kiểu số
Boolean Kiểu luận lý
9 Bản số của thuộc tính cho biết số lượng các gíá trò mà thuộc tính có thể lấy (chứa) vào một

thời điểm. Bản số của một thuộc tính có dạng [min-max], trong đó, min là số giá trò tối thiểu
và max là số giá trò tối đa mà thuộc tính có thể có tại một thời điểm. Một số trường hợp
thường gặp của bản số:
Bản số Mô tả
[1-1] Tại một thời điểm, thuộc tính luôn luôn chứa
1 và chỉ 1 giá trò (không cho phép chứa giá
trò rỗng – null)
[1-n] Tại một thời điểm, thuộc tính có thể chứa 1
hoặc nhiều giá trò (đa trò) nhưng không thể
chứa giá trò null
[0-1] Tại một thời điểm, thuộc tính có thể chứa giá
trò null hoặc chỉ chứa 1 giá trò
[0-n] Tại một thời điểm, thuộc tính có thể chứa giá
trò null hoặc chứa 1 giá trò hoặc một tập hợp
nhiều giá trò
Ví dụ về thuộc tính của một con người:
Tên Kiểu dữ
liệu
Bản số Mô tả
Ngày sinh Date [1-1] mỗi người có một và chỉ
một ngày sinh
Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 23/150


Đòa chỉ Char [1-n] lúc nào cũng phải có và có
thể có nhiều đòa chỉ liên lạc
Tên vợ - chồng Char [0-1] có thể không có vợ/chồng

(còn độc thân) nhưng nếu
có thì chỉ được phép có
một
Số con Numeric [1-1] số con cái ( ≥ 0)
Ngoại ngữ Char [0-n] (tên) các ngoại ngữ có thể
sử dụng

Chú ý:


Khi giá trò tối thiểu của bản số thuộc tính bằng 1 thì thuộc tính mang đặc tính not null
Cho ví dụ về các trường hợp bản số của thuộc tính: [0-1], [0-n], [1-1], [1-n]. Cần nhấn mạnh
tính chất Null hoặc Not Null, tính đơn trò hoặc đa trò

Kinh nghiệm giảng dạy:


Cho ví dụ tìm bản số của thuộc tính “số con” và thuộc tính “danh sách tên các con”
I.3. Loại thực thể (Entity Type)
Những thực thể có cùng các thuộc tính có thể được nhóm lại để tạo thành loại thực thể (mang
tính chất trừu tượng). Như vậy loại thực thể sẽ có các thuộc tính “đại diện” và khoá (khoá dùng
để phân biệt các thực thể với nhau).
Ví dụ: trong ứng dụng quản lý đặt và giao hàng thì các khách hàng Công ty TNHH Hoàng Sơn,
Công ty TNHH Hồng Hà, cửa hàng Tiến Phát, có thể được nhóm lại để tạo nên loại thực thể
KHACH HANG.
Loại thực thể KHACH HANG
Mã số Tên Đòa chỉ
A001 Công ty TNHH Hoàng Sơn 125 Lý Tự Trọng
A002 Công ty Điện tử Tấn Đạt 345 Điện Biên Phủ


Chú ý:
0
0

Tài liệu giảng dạy


Học phần 4 – Phân tích Hệ thống Trang 24/150


Phải biết cách biểu diễn loại thực thể, các qui ước (chữ HOA và thường) và luôn luôn khai báo
khoá
Có thể kèm theo thuộc tính là bản số của thuộc tính đó
Những người mới bắt đầu làm quen với mô hình E-R thường cảm thấy đôi chút khó khăn trong
việc xác đònh các loại thực thể của một ứng dụng; đặc biệt là thường hay lầm lẫn với khái niệm
bảng (table) trong mô hình dữ liệu quan hệ. Trong phần sau, chúng tôi sẽ đề cập đến một số
cách tiếp cận có thể dùng để xác đònh các loại thực thể trong một ứng dụng tin học.
I.4. Loại mối kết hợp (Relationship)
Loại mối kết hợp được dùng để thể hiện mối liên hệ ngữ nghóa giữa các loại thực thể với nhau.
Loại mối kết hợp gồm có tên và hai nhánh. Mỗi nhánh của loại mối kết hợp được đặc trưng bởi
hai yếu tố: vai trò (không bắt buộc phải có) và bản số của nhánh.
Trong mô hình E-R, loại mối kết hợp được biểu diễn bằng bằng một hình bầu dục và hai bên là
hai nhánh gắn với hai loại thực thể tham gia vào loại mối kết hợp

Loại mối kết hợp giữa hai loại thực thể KHACH HANG và PHIEU NHAP
Trong hình trên, tên của loại mối kết hợp là Cung cap, diễn tả mối liên hệ ngữ nghóa giữa hai loại
thực thể KHACH HANG và PHIEU NHAP: doanh nghiệp nhập hàng hóa từ các nhà cung cấp.
Mỗi nhánh của loại mối kết hợp được đặc trưng bởi hai yếu tố: vai trò (không bắt buộc phải có)
và bản số của nhánh.
Vai trò (role) của một nhánh trong loại mối kết hợp được dùng để giải thích rõ hơn ý nghóa của

nhánh. Ví dụ vai trò của nhánh bên phía loại thực thể KHACH HANG là cung cap hang và vai trò
của nhánh bên phía loại thực thể PHIEU NHAP là nhap hang cua. Người ta thường dùng các
động từ để đặt tên cho vai trò của các loại mối kết hợp.
Bản số của một nhánh R trong loại mối kết hợp biểu diễn số lượng tối thiểu và tối đa các thực thể
thuộc loại thực thể ở nhánh “bên kia” có liên hệ với một thực thể của loại thực thể gắn với nhánh
R. Tương tự như bản số của thuộc tính, bản số của các nhánh cũng có dạng [min-max], trong đó,
min là số lượng tối thiểu và max là số lượng tối đa.

×