P. 1
Bai Giang Phan Tich & Thiet Ke He Thong

Bai Giang Phan Tich & Thiet Ke He Thong

|Views: 211|Likes:
Được xuất bản bởiKeep Moving Forward

More info:

Published by: Keep Moving Forward on Nov 17, 2012
Bản quyền:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

09/07/2013

pdf

text

original

1

TRƢỜNG ĐẠI HỌC HÀNG HẢI VIỆT NAM
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN HỆ THỐNG THÔNG TIN
-----***-----






BÀI GIẢNG
PHÂN TÍCH & THIẾT KẾ HỆ THỐNG


TÊN HỌC PHẦN : PHÂN TÍCH & THIẾT KẾ HỆ THỐNG
MÃ HỌC PHẦN : 17410
TRÌNH ĐỘ ĐÀO TẠO : ĐẠI HỌC CHÍNH QUY
DÙNG CHO SV NGÀNH: CÔNG NGHỆ THÔNG TIN





HẢI PHÒNG - 2011
2
MỤC LỤC
LỜI NÓI ĐẦU ......................................................................................................................... 7
Chƣơng I. Tổng quan về hệ thống ....................................................................................... 12
1. Tổng quan về hệ thống thông tin ..................................................................................... 12
2. Các yếu tố tác động đến hệ thống .................................................................................... 14
2.1. Các tác nhân đối với hệ thống (Stakeholder) ................................................................ 14
2.2. Các yếu tố thương mại đối với hệ thống (Business Drivers) ........................................ 15
2.3. Các yếu tố công nghệ đối với hệ thống (Technology Drivers) ..................................... 15
3. Chu kỳ sống của một hệ thống ......................................................................................... 15
4. Các bộ phận hợp thành của Hệ thống thông tin ............................................................ 18
5. Các hệ thống thông tin tự động hoá (tin học hoá) .......................................................... 18
5.1. Mức độ tự động hoá ...................................................................................................... 18
5.2. Các phương thức xử lý bằng máy tính ......................................................................... 19
Chƣơng II. Tổng quan về phân tích thiết kế hệ thống ....................................................... 20
1. Giới thiệu ............................................................................................................................ 20
2. Các cách tiếp cận phân tích hệ thống .............................................................................. 20
2.1. Hướng tiến trình (process driven approach) ................................................................. 20
2.2. Hướng dữ liệu (data driven approach) .......................................................................... 20
2.3. Hướng cấu trúc (structure driven approach) ................................................................. 21
2.4. Hướng đối tượng (object oriented approach) ............................................................... 22
3. Các mô hình phân tích thiết kế hệ thống ........................................................................ 23
3.1. Phương pháp thiết kế hệ thống cổ điển (thiết kế phi cấu trúc) ..................................... 23
3.2. Phương pháp phân tích thiết kế hệ thống bán cấu trúc ................................................. 24
3.3. Phương pháp phân tích thiết kế hệ thống có cấu trúc ................................................... 24
4. Các giai đoạn phân tích và thiết kế Hệ thống thông tin ................................................. 26
Chƣơng III. Khảo sát hệ thống và xác lập dự án ............................................................... 29
1. Giới thiệu ............................................................................................................................ 29
2. Mục đích, yêu cầu của việc khảo sát ................................................................................ 29
3. Khảo sát và đánh giá hiện trạng ...................................................................................... 30
3.1. Nội dung khảo sát và đánh giá hiện trạng .................................................................... 30
3.2. Các mức khảo sát .......................................................................................................... 30
3.3. Các hình thức tiến hành khảo sát .................................................................................. 31
3.3.1. Phỏng vấn ............................................................................................................... 31
3.3.2. Điều tra bằng bảng hỏi ........................................................................................... 34
3.3.3. Phương pháp lấy mẫu............................................................................................. 36
3.3.4. Phân tích tài liệu ..................................................................................................... 37
3
3.5. Phát hiện những yếu kém của hiện trạng và những yêu cầu trong tương lai ................ 38
4. Xác định phạm vi, khả năng và mục tiêu của dự án ...................................................... 38
4.1. Xác định phạm vi (khoanh vùng dự án) ....................................................................... 38
4.2. Khả năng và hạn chế thực hiện dự án ........................................................................... 39
4.3. Mục tiêu của việc tin học hoá ....................................................................................... 39
4.4. Xác định yếu tố thành công của bài toán ...................................................................... 39
5. Phác hoạ giải pháp, cân nhắc tính khả thi ...................................................................... 39
5.1. Các mức tự động hoá .................................................................................................... 39
5.2. Hình thức sử dụng máy tính ........................................................................................ 39
5.3. Phân tích hiệu quả và đánh giá tính khả thi .................................................................. 40
6. Lập dự trù và kế hoạch triển khai dự án ........................................................................ 40
6.1. Hình thành hợp đồng .................................................................................................... 40
6.2. Lập dự trù thiết bị ......................................................................................................... 40
6.3. Lập kế hoạch triển khai dự án ...................................................................................... 40
Chƣơng IV. Mô hình hóa hệ thống ...................................................................................... 41
1. Mục đích ............................................................................................................................. 41
2. Quá trình mô hình hóa hệ thống ...................................................................................... 41
3. Biểu đồ phân rã chức năng (Functional Diagrams) ....................................................... 42
3.1. Khái niệm ..................................................................................................................... 42
3.2. Các thành phần của BFD .............................................................................................. 42
3.3. Đặc điểm của biểu đồ phân cấp chức năng .................................................................. 42
3.4. Cách xây dựng BFD ..................................................................................................... 43
4. Biểu đồ luồng dữ liệu (Data Flow Diagrams) ................................................................. 45
4.1. Các ký hiệu ................................................................................................................... 45
4.1.1. Tác nhân ngoài ....................................................................................................... 45
4.1.2. Kho dữ liệu............................................................................................................. 46
4.1.3. Luồng dữ liệu ......................................................................................................... 46
4.1.4. Tiến trình ................................................................................................................ 46
4.2. Quy tắc thiết kế biểu đồ luồng dữ liệu .......................................................................... 47
4.3. Biểu đồ luồng dữ liệu mức ngữ cảnh ............................................................................ 47
4.4. Phát triển biểu đồ dữ liệu các mức ............................................................................... 48
4.4.1. Quá trình xây dựng ................................................................................................ 48
4.4.2. Các qui tắc xây dựng DFD ..................................................................................... 49
4.4.3. Phân tích hướng cấu trúc cổ điển (top-down) ........................................................ 49
4.4.4. Phân tích hướng cấu trúc hiện đại (hướng sự kiện) ............................................... 50
Chƣơng V. Mô hình hóa cơ sở dữ liệu ................................................................................. 58
4
1. Mô hình hóa dữ liệu .......................................................................................................... 58
1.1. Khái niệm ..................................................................................................................... 58
1.2. Từ mô hình dữ liệu tới cài đặt cơ sở dữ liệu ................................................................. 58
1.3. Vai trò của biểu đồ quan hệ thực thể ............................................................................ 58
2. Các phần tử của biểu đồ quan hệ thực thể (ERD) ......................................................... 58
2.1. Thực thể ........................................................................................................................ 58
2.2. Thuộc tính ..................................................................................................................... 59
2.3. Mối quan hệ .................................................................................................................. 60
3. Xây dựng biểu đồ quan hệ thực thể ................................................................................. 60
3.1. Các bước mô hình hóa dữ liệu lôgíc ............................................................................. 60
3.2. Trình tự xây dựng ERD ................................................................................................ 61
3.3. Qui tắc xây dựng ERD .................................................................................................. 61
4. Xây dựng biểu đồ dữ liệu quan hệ (RDM) ...................................................................... 61
4.1. Xác định thuộc tính....................................................................................................... 61
4.2. Phân tích và chuẩn hóa dữ liệu ..................................................................................... 61
4.3. Xác định các mối quan hệ............................................................................................. 65
4.4. Xây dựng mô hình RDM .............................................................................................. 65
5. Từ điển dữ liệu ................................................................................................................... 65
Chƣơng VI. Tổng quan về thiết kế hệ thống ....................................................................... 67
1. Các hƣớng tiếp cận thiết kế hệ thống .............................................................................. 67
1.1. Các tiếp cận hướng mô hình ......................................................................................... 67
1.2. Phát triển ứng dụng nhanh ............................................................................................ 68
2. Các công việc cụ thể trong giai đoạn thiết kế ................................................................. 68
Chƣơng VII. Thiết kế cơ sở dữ liệu ..................................................................................... 69
1. Các phƣơng thức lƣu trữ dữ liệu ..................................................................................... 69
1.1. File ................................................................................................................................ 69
1.2. Cơ sở dữ liệu ................................................................................................................. 69
2. Kiến trúc dữ liệu ................................................................................................................ 69
3. Triển khai mô hình dữ liệu logic dựa trên một cơ sở dữ liệu quan hệ ......................... 70
3.1. Cơ sở dữ liệu quan hệ ................................................................................................... 70
3.2. Mô hình hoá dữ liệu ...................................................................................................... 70
Chƣơng VIII. Thiết kế vào/ra hệ thống ............................................................................... 72
1. Thiết kế đầu vào ................................................................................................................ 72
1.1. Tổng quan ..................................................................................................................... 72
1.1.1. Các khái niệm ........................................................................................................ 72
1.1.2. Các phương thức nhập liệu .................................................................................... 72
5
1.1.3. Các nguyên tắc thiết kế đầu vào ............................................................................ 72
1.1.4. Kiểm soát nhập liệu ............................................................................................... 72
1.2. Các điều khiển giao diện cho thiết kế đầu vào ............................................................. 73
1.2.1. Một số điều khiển phổ biến .................................................................................... 73
1.2.2. Một số điều khiển cao cấp ..................................................................................... 73
1.3. Quy trình thiết kế đầu vào ............................................................................................ 74
2. Thiết kế đầu ra hệ thống ................................................................................................... 74
2.1. Tổng quan ..................................................................................................................... 74
2.1.1. Phân loại ................................................................................................................. 74
2.1.2. Phương thức cài đặt đầu ra ..................................................................................... 74
2.2. Cách thức thiết kế đầu ra .............................................................................................. 74
2.2.1. Các nguyên tắc ....................................................................................................... 74
2.2.2. Quy trình thiết kế đầu ra ........................................................................................ 75
Chƣơng IX. Thiết kế giao diện ngƣời dùng ........................................................................ 76
1. Tổng quan .......................................................................................................................... 76
2. Kỹ thuật giao diện ngƣời dùng ......................................................................................... 76
2.1. Hệ điều hành và trình duyệt WEB ................................................................................ 76
2.2. Màn hình hiển thị .......................................................................................................... 77
2.3. Bàn phím và các thiết bị trỏ .......................................................................................... 77
3. Phong cách thiết kế giao diện ngƣời dùng ...................................................................... 77
3.1. Giao diện dựa trên cửa sổ và frame .............................................................................. 77
3.2. Giao diện dựa trên menu............................................................................................... 78
3.3. Giao diện dựa trên dòng lệnh ....................................................................................... 78
3.4. Một số tính năng đặc biệt ............................................................................................. 78
3.5. Cách thức thiết kế giao diện người dùng ...................................................................... 79
Chƣơng X. Xây dựng và triển khai hệ thống ...................................................................... 80
1. Giai đoạn xây dựng ........................................................................................................... 80
1.1. Xây dựng và kiểm thử mạng ........................................................................................ 80
1.2. Xây dựng và kiểm thử cơ sở dữ liệu ............................................................................. 80
1.3. Cài đặt và kiểm thử gói phần mềm mới ....................................................................... 81
1.4. Viết và kiểm thử các chương trình mới ........................................................................ 81
2. Giai đoạn triển khai .......................................................................................................... 81
2.1. Kiểm thử hệ thống lần cuối .......................................................................................... 81
2.2. Lập kế hoạch chuyển đổi .............................................................................................. 82
2.3. Cài đặt cơ sở dữ liệu ..................................................................................................... 82
2.4. Huấn luyện người dùng ................................................................................................ 82
6
2.5. Chuyển đổi sang hệ thống mới ..................................................................................... 83
Chƣơng XI. Vận hành và hỗ trợ hệ thống .......................................................................... 84
1. Tổng quan .......................................................................................................................... 84
2. Bảo trì hệ thống ................................................................................................................. 84
2.1. Xác định vấn đề ............................................................................................................ 84
2.2. Đánh dấu chương trình ................................................................................................. 84
2.3. Nghiên cứu và bắt lỗi chương trình .............................................................................. 85
2.4. Kiểm thử chương trình ................................................................................................. 85
3. Phục hồi hệ thống .............................................................................................................. 85
4. Hỗ trợ kỹ thuật .................................................................................................................. 86
5. Nâng cấp hệ thống ............................................................................................................. 86
5.1. Phân tích yêu cầu nâng cấp........................................................................................... 86
5.2. Thực hiện sửa chữa nhanh ............................................................................................ 87
5.3. Phục hồi hệ thống vật lý hiện có ................................................................................... 87
TÀI LIỆU THAM KHẢO .................................................................................................... 88

7
Tên học phần: Phân tích và thiết kế hệ thống Loại học phần: 3
Bộ môn phụ trách giảng dạy: Hệ thống Thông tin Khoa phụ trách: CNTT.
Mã học phần: 17403 Tổng số TC: 3
Tổng số tiết Lý thuyết Thực hành/ Xemina Tự học Bài tập lớn Đồ án môn học
75 45 15 0 có không
Học phần học trƣớc: Không yêu cầu.
Học phần tiên quyết: Không yêu cầu.
Học phần song song: Không yêu cầu.
Mục tiêu của học phần:
Cung cấp các kiến thức cơ bản về phân tích và thiết kế hệ thống thông tin theo phương pháp hướng
cấu trúc.
Nội dung chủ yếu:
Tổng quan về phân tích và thiết kế hệ thống; Quá trình phân tích thiết kế hệ thống hướng cấu trúc;
Các kỹ thuật khảo sát thực tế; Mô hình hóa dữ liệu; Mô hình hóa hệ thống; Phân tích tính khả thi và
đề xuất hệ thống; Thiết kế cơ sở dữ liệu; Thiết kế vào/ra hệ thống; Thiết kế giao diện người dùng;
Ứng dụng vào thực tế.
Nội dung chi tiết:

TÊN CHƢƠNG MỤC
PHÂN PHỐI SỐ TIẾT
TS LT TH BT KT
Chƣơng I: Giới thiệu 4 3 1
1.1. Tổng quan về phân tích và thiết kế hệ thống
1.2. Các tác nhân đối với hệ thống (Stakeholder)
1.3. Các yếu tố ảnh hưởng đến hệ thống (Business &
Technology Drivers)

1.4. Các mô hình phát triển hệ thống
Chƣơng II: Phân tích hệ thống 4 3 1
2.1. Giới thiệu
2.2. Các cách tiếp cận phân tích hệ thống
2.3. Giai đoạn xác định phạm vi (Scope Definition)
2.4. Giai đoạn phân tích vấn đề (Problem Analysis)
2.5. Giai đoạn phân tích yêu cầu (Requirements Analysis)
2.6. Giai đoạn phân tích quyết định (Decision Analysis)
Chƣơng III: Các kỹ thuật khảo sát thực tế 12 9 3
3.1. Quá trình tìm hiểu yêu cầu
3.2. Kỹ thuật thu thập thông tin từ các các tài liệu, biểu mẫu
8

TÊN CHƢƠNG MỤC
PHÂN PHỐI SỐ TIẾT
TS LT TH BT KT
3.3. Kỹ thuật quan sát môi trường làm việc (Observation)
3.4. Kỹ thuật đặt câu hỏi (Questionnaires)
3.5. Kỹ thuật phỏng vấn (Interviews)
Chƣơng IV: Mô hình hóa dữ liệu 4 3 1
4.1. Các khái niệm cơ bản đối với mô hình hóa dữ liệu
4.2. Quá trình mô hình hóa dữ liệu logic
4.3. Xây dựng mô hình dữ liệu
Chƣơng V: Mô hình hóa hệ thống 16 12
5.1. Các khái niệm cơ bản đối với mô hình hóa hệ thống
5.2. Quá trình mô hình hóa hệ thống logic
5.3. Biểu đồ luồng dữ liệu (Data Flow Diagrams)
5.4. Biểu đồ phân rã chức năng (Functional Diagrams)
5.5. Tài liệu đặc tả yêu cầu hệ thống (System Requirements
Specification)

Chƣơng VI: Phân tích tính khả thi và đề xuất hệ thống 4 3 1
6.1. Phân tích khả thi (Feasibility Analysis)
6.2. Đánh giá hiệu quả hệ thống
6.3. Đề xuất hệ thống (System Proposal)
Chƣơng VII: Thiết kế hệ thống 4 3 1
7.1. Các cách tiếp cận thiết kế hệ thống
7.2. Các bước thiết kế hệ thống theo phương pháp truyền thống
Chƣơng VIII: Thiết kế vào/ra hệ thống 4 3 1
8.1. Các khái niệm cơ bản
8.2. Các nguyên tắc thiết kế vào/ra (Input/Output Design)
8.3. Quá trình thiết kế vào/ra hệ thống
Chƣơng IX: Thiết kế giao diện ngƣời dùng 8 6 2
9.1. Các khái niệm cơ bản
9.2. Các nguyên tắc thiết kế giao diện (User Interface Design)
9.3. Các kiểu giao diện người dùng
9.4. Quá trình thiết kế giao diện người dùng
Nhiệm vụ của sinh viên:
Tham dự các buổi học lý thuyết và thực hành, làm các bài tập được giao, làm các bài thi giữa học
phần và bài thi kết thúc học phần theo đúng quy định.
9
Tài liệu học tập:
1. Jeffrey Whitten, Lonnie Bentley, Kevin Dittman, Systems Analysis and Design Methods,
McGraw-Hill, 6
th
edition, 2004.
2. Nguyễn Văn Ba, Phân tích và thiết kế các hệ thống thông tin, Nhà xuất bản ĐHQG Hà
Nội, 2003.
Hình thức và tiêu chuẩn đánh giá sinh viên:
 Hình thức thi: tự luận hoặc trắc nghiệm.
 Tiêu chuẩn đánh giá sinh viên: căn cứ vào sự tham gia học tập của sinh viên trong các buổi
học lý thuyết và thực hành, kết quả làm các bài tập được giao, kết quả của các bài thi giữa
học phần và bài thi kết thúc học phần.
Thang điểm: Thang điểm chữ A, B, C, D, F.
Điểm đánh giá học phần: Z=0,4X + 0,6Y.
10
LỜI NÓI ĐẦU

Phân tích thiết kế là bước đầu tiên và có ý nghĩa quyết định sự thành công của một hệ thống nói
chung và hệ thống phần mềm nói riêng. Phân tích thiết kế hệ thống là quá trình chuyển đổi, cải tiến
những yêu cầu, tác nghiệp của một hệ thống hiện tại thành một thiết kế có thể triển khai được trong
thực tế.
Về cơ bản phân tích hệ thống trải qua 04 bước: khảo sát, phân tích, thiết kế và vận hành hệ
thống. Trong các bước này thì giai doạn khảo sát sẽ là quyết định việc thành lập dự án, xác định yêu
cầu dự án, tạo dữ liệu cho các giai đoạn sau và thông thương chiếm nhiều thời gian nhất. Phân tích
là làm rõ, mô tả, cải tiến hệ thống và lựa chọn giải pháp tốt nhất cho hệ thống. Tiếp theo là quá trình
thiết kế hệ thống theo giải pháp đã chọn. Vận hành hệ thống là quá trình xây dựng hệ thống đưa vào
áp dụng thực tế, kiểm soát và bảo trì hệ thống. Đến thời điểm nào đó, hệ thống xây dựng trở nên
không phù hợp ta lại bắt đầu khảo sát đê xây dựng một hệ thống thay thế.
Tài liệu này được cấu trúc thành 4 phần lớn với 11 chương tương ứng với các quá trình phát
triển hệ thống:
Phần 1: Những nội dung cơ bản bao gồm 02 chƣơng.
Chương I. Tổng quan về hệ thống: Trình bày các khái niệm cơ bản, yếu tố tác động đến đến hệ
thống và còng đời của một hệ thống.
Chương II. Tổng quan cề phân tích thiết kế hệ thống: giúp người đọc nắm được các cách tiếp
cận phân tích thiết kế hệ thống, cấu trúc và giá trình phân tích thiết kế hệ thống.
Phần 2. Phân tích hệ thống theo phƣơng pháp cấu trúc bao gồm 03 chƣơng.
Chương III. Khảo sát hệ thống và xác lập dự án: quá trình, mục tiêu, kết quả và phương pháp
tiếp cận khảo sát hệ thống.
Chương IV. Mô hình hóa hệ thống: Trình bày quá trình cấu trúc, mô hình hóa các thành phần
của hệ thống từ đó đưa ra các sơ đồ diễn giải hệ thống giúp ta hình dung được luồng dữ liệu vào/ ra
hệ thống và liên kết giữa các thành phần hệ thống.
Chương V. Mô hình hóa cơ cở dữ liệu: Trình bày cấu trúc yêu cầu về dữ liệu của hệ thống, quá
trình phân tích để đưa mô hình cơ sở dữ liệu quan niệm.
Phần 3. Thiết kế hệ thống theo phƣơng pháp cấu trúc bao gồm 03 chƣơng.
Chương VI. Tổng quán về thiết kế hệ thống: đưa ra các khái niệm, qusa trình thiết kế hệ thống.
Chương VII. Thiết kế cơ sở dữ liệu: thiết kế cớ sở dữ liệu vật lý để triển khai hệ thống.
Chương VIII. Thiết kế vào/ra hệ thống: quá trình, cách thức thiết kế nhập dữ liệu vào, hiển thị
dữ liệu ra cho hệ thống một cách tiện lợi.
Chương IX. Thiết kế giao diện người dùng: Trình bày các phương pháp thiết kế, những điều lưu
ý để thiết kế giao diện người dùng thân thiện, dễ sử dụng.
Phần 4. Triển khai hệ thống trong thực tế ba gồm 02 chƣơng.
11
Chương X. Xây dựng và triển khai hệ thống: quá trình đưa hệ thống và ứng dụng trong thưc tế,
kiểm thử và kiểm soát lỗi hệ thống.
Chương XI. Vận hành và hỗ trợ hệ thống: Theo dõi việc thực thi hệ thống và hỗ trợ hệ thống về
mặt kỹ thuật cho người sử dụng cũng như việc bảo trì để sửa lỗi hoặc đáp ứng những yêu cầu mới
xuất hiện.
Mặc dù cố gắng tham khảo nhiều tài liệu chuyên ngành và biên soạn nhưng tài liệu không tránh
khỏi những sai sót, hạn chế. Tác giả rất mong được sự đóng giá, nhận xét của độc giả để tài liệu
hoàn thiện hơn.
Địa chỉ liên lạc: Lê Trí Thành- bộ môn Hệ thống thông tin- Khoa Công nghệ thông tin- trường
Đại học Hàng Hải Việt Nam.
Email: thanhletri@vimaru.edu.vn
Hải phòng, tháng 6 năm 2010
12
Chƣơng I. Tổng quan về hệ thống

1. Tổng quan về hệ thống thông tin
a. Hệ thống
- Hệ thống: Là tập hợp các phần tử có những mối quan hệ ràng buộc lẫn nhau cùng hoạt động
chung cho một số mục tiêu nào đó. Trong hoạt động có trao đổi vào ra với môi trường ngoài .
- Một hệ thống có 9 tính chất:
1. Thành phần (component)
2. Tương quan (Interrelated components, interrelationship)
3. Biên giới (Boundary)
4. Mục tiêu (Purpose)
5. Môi trường (Environment)
6. Giao diện (interface)
7. Nguồn vào (Input)
8. Kết xuất (Output)
9. Ràng buộc (Constraint)
+ Thành phần: Một hệ thống được cấu tạo từ các thành phần. Một thành phần hoặc là một phần đơn
(không thể chia nhỏ được) hoặc là một tập các thành phần còn được gọi là hệ thống con
(subsystem). Khái niệm đơn của một thành phần thì rất quan trọng, nó cho phép ta thay đổi, nâng
cấp thành phần này mà không ảnh hưởng đến toàn bộ hệ thống.
+ Các thành phần thì tương quan; nghĩa là, chức năng của một thành phần bằng cách nào đó thắt
chặt với chức năng của các thành phần khác. Ví dụ, công việc của một thành phần, như tạo ra các
báo cáo hàng ngày về đơn hàng được tiếp nhận, không thể tiến triển thành công, trước khi công việc
của thành phần khác được hoàn tất như sắp xếp các đơn hàng theo ngày tiếp nhận.
+ Một hệ thống có một biên giới (boundary), mà tất cả các thành phần được chứa trong đó, nó còn
thiết lập giới hạn của hệ thống, tách nó khỏi các hệ thống khác. Các thành phần trong biên giới có
thể được thay đổi trong khi các hệ thống bên ngoài biên giới không thể bị thay đổi.
+ Mục tiêu: Tất cả các thành phần làm việc với nhau để đạt được một vài mục tiêu toàn diện cho hệ
thống lớn hơn.
+ Môi trường: Một hệ thống tồn tại trong một môi trường - mọi thứ bên ngoài biên giới hệ thống có
ảnh hưởng đến hệ thống. Ví dụ, môi trường của Đại học Hàng Hải bao gồm những sinh viên tương
lai, tiền dự trữ, các quĩ tài trợ và thông tin tin tức. Thông thường hệ thống tương tác với môi trường
của nó. Trường đại học tương tác với sinh viên tương lai bằng cách ưu ái và tuyển chọn từ trường
trung học địa phương. Một hệ thống thông tin tương tác với môi trường của nó bằng việc tiếp nhận
dữ liệu (sự kiện thô) và thông tin (dữ liệu qua xử lý ở một dạng có ích).
13
+ Giao diện: Hệ thống phải có giao diện tương tác với người dùng, giao diện phải được thiết kế phù
hợp, tiện lợi cho người sử dụng.
+ Nguồn vào: Những dữ liệu để cho hệ thống xử lý.
+ Kết xuất: Những dữ liệu đã qua xử lý theo mục đích của người dùng.
+ Một hệ thống phải đứng trước sự ràng buộc (constraint) trong nhiệm vụ của nó vì có các giới hạn
(theo nghĩa số lượng, tốc độ, hay khả năng) về nó có thể làm cái gì và làm thế nào nó có thể đạt
được mục tiêu trong môi trường.
Một vài hạn chế này được đặt bên trong hệ thống (ví dụ: một số lượng giới hạn các nhân
viên có thể có). Một hệ thống nhận nguồn nhập từ môi trường để thực hiện nhiệm vụ.
Ví dụ con người bị hạn chế khỏi hít thở không khí trong lành nếu ta ở bên trong một thang
máy với ai đó đang hút thuốc. Cuối cùng, một hệ thống kết xuất ra môi trường của nó như là một
kết quả của việc thực hiện nhiệm vụ và như vậy nó đạt được mục tiêu. Hệ thống bị hạn chế khi mất
điện.
b. Hệ thống quản lý
- Hệ thống quản lý: Là một hệ thống có một mục đích mang lại lợi nhuận hoặc lợi ích nào đó. Đặc
điểm của hệ thống là có sự tham gia của con người và có sự trao đổi thông tin.
Hệ thống quản lý chia thành hai hệ thống con:
+ Hệ tác nghiệp (trực tiếp sản xuất): gồm con người, phương tiện, phương pháp trực tiếp thực hiện
mục tiêu đa đề ra.
+ Hệ quản lý (gián tiếp sản xuất): Gồm con người, phương tiện, phương pháp cho phép điều khiển
hoạt động của hệ thống.Hệ này lại chia thành hai hệ con:
* Hệ quyết định: Đưa ra các quyết định
* Hệ xử lý thông tin: Xử lý thông tin
c. Hệ thống thông tin
- Hệ thống thông tin (information system) : Là một hệ thống sử dụng công nghệ thông tin để thu
thập, truyền, lưu trữ, xử lý và biểu diễn thông tin trong một hay nhiều quá trình kinh doanh.
- Hệ thông tin phát triển qua bốn loại hình :
+ Hệ xử lý dữ liệu: lưu trữ và cập nhật dữ liệu hàng ngày, ra các báo cáo theo định kỳ (Ví
dụ: Các hệ thống tính lương).
+ Hệ thông tin quản lý (Management Information System - MIS): Một hệ thông tin gồm cơ
sở dữ liệu hợp nhất và các dòng thông tin giúp con người trong sản xuất, quản lý và ra quyết định.
+ Hệ trợ giúp quyết định: Hỗ trợ cho việc ra quyết định (cho phép nhà phân tích ra quyết
định chọn các phương án mà không phải thu thập và phân tích dữ liệu).
+ Hệ chuyên gia: Hỗ trợ nhà quản lý giải quyết các vấn đề và làm quyết định một cách
thông minh.
14
- Vai trò: Hệ thông tin đóng vai trò trung gian giữa hệ quyết định và hệ tác nghiệp trong hệ thống
quản lý.
- Nhiệm vụ:
+ Trao đổi thông tin với môi trường ngoài
+ Thực hiện việc liên lạc giữa các bộ phận và cung cấp thông tin cho các hệ tác nghiệp và hệ
quyết định.
- Các bộ phận hợp thành HTTT
+Dữ liệu: là nguyên liệu của hệ thông tin được biểu diễn dưới nhiều dạng như văn bản,
truyền khẩu, hình vẽ,... và những vật mang tin :Giấy, bảng từ, đĩa từ...
+ Các xử lý: Thông tin đầu vào qua các xử lý thành thông tin đầu ra.
2. Các yếu tố tác động đến hệ thống
2.1. Các tác nhân đối với hệ thống (Stakeholder)
- Chủ sở hữu hệ thống (System owner)
- Người sử dụng hệ thống (System user)
+ Người sử dụng nội bộ
+ Người sử dụng ngoài
- Người thiết kế hệ thống (System designer)
+ Quản trị CSDL
+ Thiết kế mạng
+ Thiết kế Web
+ Thiết kế đồ họa
+ Chuyên gia bảo mật
+ Chuyên gia công nghệ
- Người xây dựng hệ thống (System builder)
+ Lập trình ứng dụng
+ Lập trình hệ thống
+ Lập trình CSDL
+ Quản trị mạng
+ Bảo mật hệ thống
+ Lập trình web
+ Tích hợp phần mềm
- Người phân tích hệ thống (System analysts)
+ Vai trò của người phân tích hệt thống
15

+ Kỹ năng cần có: kiến thức về công nghệ thông tin, có kỹ năng và kinh nghiệm lập trình,
kiến thức tổng quan về thương mại, kỹ năng giải quyết - phân tích vấn đề, kỹ năng quan hệ- liên kết
tập thể, khả năng linh loạt và thích nghi…
- Người cung cấp dịch vụ bên ngoài (External service providers)
- Người quản trị dự án (The project manager)
2.2. Các yếu tố thƣơng mại đối với hệ thống (Business Drivers)
- Sự toàn cầu hóa của nền kinh tế (Globalization of the Rconomy)
- Thương mại điện tử và kinh doanh (Electronic commerce and Business)
- Bảo mật và bản quyền (Security and Privacy)
- Hợp tác và đối tác (Collaboration and Partnership)
- Quản lý tài sản (Knowlege Asset Management)
- Phát triển hệ thống và quản lý chất lượng (Continuous Improvement and Total Quality
Management)
- Thiết kế lại hệ thống thương mại(Business Process Redesign)
2.3. Các yếu tố công nghệ đối với hệ thống (Technology Drivers)
- Mạng và Internet
- Công nghệ di động và mạng không dây
- Các công nghệ khác: công cụ lập trình, CSDL…
- Hợp tác công nghệ (Business Process Redesign)
- Ứng dụng doanh nghiệp (Enterprise Applications)
3. Chu kỳ sống của một hệ thống
16

Chu kỳ sống của một hệ thống (system development life cycle)
a. Khảo sát và lựa chọn hệ thống: Giai đoạn đầu tiên trong chu kỳ sống (SDLC: system
development life cycle). Giai đoạn này có mục đích xác định và phân chia nhỏ các vấn đề trong hệ
thống. Có hai hoạt động chính:
- Hoạt động thứ nhất, nhận diện sự cần thiết phải có một hệ thống mới hay một hệ thống nâng cấp.
Nhu cầu thông tin của tổ chức được xem xét và các dự án phù hợp với các nhu cầu này được nhận
diện. Nhu cầu hệ thống thông tin của tổ chức có thể là kết quả của:
+ Các yêu cầu phải đối phó với các vấn đề trong các thủ tục kinh doanh hiện hành.
+ Sự mong muốn thi hành các nhiệm vụ mới.
+ Sự hiện thực điều mà công nghệ thông tin có thể được sử dụng nhằm tận dụng một cơ hội hiện có.
Nhóm phân tích hệ thống, được thành lập trong giai đoạn này, ưu tiên chuyển đổi các yêu cầu thành
các kế hoạch cho bộ phận IS (information system), bao gồm một thời biểu phát triển mới các hệ
thống chính. Các yêu cầu về hệ thống mới xuất phát từ người sử dụng có nhu cầu một hệ thống mới
hay một hệ thống cải tiến. Trong giai đoạn hoạch định và chọn lựa hệ thống, một tổ chức xác định
có hay không việc nên dành (có sự cân nhắc) các nguồn lực cho phát triển và cải tiến hệ thống
thông tin.
- Hoạt động thứ hai: xác định phạm vi yêu cầu của hệ thống. Đội ngũ phân tích hệ thống tạo ra một
kế hoạch cụ thể cho dự án để thực hiện. Kế hoạch dự án này cụ thể hóa của chu kỳ sống, mô tả thời
gian, nguồn lực cần thiết để thực hiện. Xác định hình thức của một dự án.
b. Phân tích hệ thống
- Giai đoạn thứ nhất: xác định yêu cầu của các vấn đề đã phân chia ở giai đoạn trên. Trong giai đoạn
con này, ta cần làm việc với những người sử dụng để xác định người dùng mong muốn điều gì từ
một hệ thống được đề nghị. Giai đoạn con này bao gồm sự nghiên cứu tỉ mỉ các hệ thống hiện hành,
bằng thủ công hay bằng máy tính, sẽ được thay thế hay cải tiến xem như một phần của dự án.
17
- Giai đoạn thứ hai: nghiên cứu các yêu cầu và cấu trúc chúng phù hợp với các mối tương quan của
chúng, loại bỏ sự dư thừa.
- Kết xuất của giai đoạn phân tích là bản đặc tả giải pháp cho hệ thống. Đó là tiền đề để có thể tạo ra
các kế hoạch liên quan tới phần cứng và phần mềm hệ thống cần thiết để xây dựng hay vận hành hệ
thống.
c. Thiết kế hệ thống
- Thiết kế hệ thống theo các giải pháp đã phân tích và chọn lựu giải pháp tốt nhất với các yêu cầu
bao hàm cả giá cả, nhân công và cấp độ kỹ thuật mà tổ chức sẵn lòng chuyển giao cho tiến trình
phát triển.
+ Giai đoạn này ta chuyển bản mô tả của giải pháp chọn lựa được đề nghị thành đặc tả logic
rồi vật lý. Ta phải thiết kế mọi diện mạo của hệ thống từ nhập vào và xuất ra của màn hình đến máy
in, cơ sở dữ liệu, và các xử lý tính toán.
+ Thiết kế lôgic không bị ràng buộc bởi bất kỳ phần cứng và phần mềm hệ thống cụ thể nào.
Về phương diện lý thuyết, hệ thống mà ta thiết kế có thể được thực hiện trên bất kỳ phần cứng và
phần mềm hệ thống nào. Thiết kế logic tập trung vào khía cạnh doanh nghiệp của hệ thống; nghĩa là
hệ thống sẽ tác động ra sao với các đơn vị nhiệm vụ trong tỗ chức doanh nghiệp. Từ sự so sánh ta
có thể thấy rằng nhiều quyết định cụ thể phải thực hiện để chuyển từ mô hình logic sang sản phẩm
vật lý. Trạng thái này rất tương đồng trong thiết kế hệ thống thông tin.
+Trong thiết kế vật lý, ta chuyển thiết kế logic thành vật lý, kỹ thuật hay đặc tả. Ví dụ ta có
thể chuyển sơ đồ ánh xạ dữ liệu gốc, dòng dữ liệu và xử lý dữ liệu của hệ thống thành một cấu trúc
thiết kế hệ thống rồi có thể phân rã thành các đơn vị nhỏ hơn để chuyển thành các chỉ thị viết được
bằng một ngôn ngữ lập trình.
Ta thiết kế các phần khác nhau của hệ thống để tạo ra các hoạt động vật lý cần thiết để dễ
dàng thu được, xử lý, kết xuất thông tin dữ liệu. Trong quá trình thiết kế vật lý, đội ngũ phân tích
quyết định ngôn ngữ lập trình, hệ cơ sở dữ liệu và cấu trúc tập tin nào sẽ được sử dụng cho dữ liệu,
và nền tảng phần cứng, hệ điều hành, môi trường mạng nào mà hệ thống sẽ chạy.
Sản phẩm cuối cùng của giai đoạn thiết kế là đặc tả hệ thống vật lý, được trình bày dưới
dạng như một sơ đồ hay bản báo cáo được thảo sẵn sàng cho việc chuyển giao cho các lập trình viên
và những người xây dựng hệ thống khác để xây dựng chương trình.
- Xây dựng chương trình theo thiết kế.
d. Thực hiện và vận hành hệ thống
- Giai đoạn thứ nhất: ta chuyển các đặc tả thành hệ thống làm việc được và vận hành thử nghiệm.
Thực hiện bao gồm mã hóa, chạy thử và cài đặt. Trong quá trình mã hóa, lập trình viên lập
các chương trình tạo nên hệ thống. Trong quá trình chạy thử, lập trình viên và phân tích viên kiểm
tra từng chương trình rồi toàn bộ hệ thống để tìm và sửa chữa lỗi. Trong quá trình cài đặt, hệ thống
mới trở thành một phần của hoạt động hàng ngày của tổ chức doanh nghiệp. Phần mềm ứng dụng
18
được cài đặt, hay tải vào phần cứng hiện hữu hay mới; sau đó những người sử dụng được giới thiệu
về hệ thống mới và được huấn luyện.
Hoạt động thực hiện hệ thống cũng bao gồm khởi tạo sự hỗ trợ người dùng như hoàn thành
các tài liệu, các chương trình huấn luyện và giúp đỡ người dùng. Ta cần chú ý tài liệu và chương
trình huấn luyện được hoàn thành trong cả quá trình thực hiện.
- Giai đoạn thứ hai: thu thập những vấn đề phát sinh trong quá trình vận hành hệ thống, với những
vấn đề nhỏ không do thiết kế ban đầu có thể chỉnh sửa trực tiếp phần mềm, ngược lại phải quay lại
từ bước phân tích đầu tiên để xây dựng lại hệ thống. Tuy nhiên đến một giai đoạn nào đó, hệ thống
sẽ trở nên lỗi thời và cần phân tích, xây dựng lại hoàn toàn từ đâu, ta sẽ lại quay về chu kỳ đầu tiên.
4. Các bộ phận hợp thành của Hệ thống thông tin
Nếu không kể đến con người, phương tiện thì HTTT chỉ gồm 2 bộ phận là: các dữ liệu & các
xử lý
- Các dữ liệu:
Dữ liệu về cấu trúc: Là những sự kiện, quá trình tiến hoá, tăng trưởng, cập nhật được lưu trữ
tương đối ổn định.
Dữ liệu kinh doanh: Những thông tin về hoạt động giao dịch, thường là những tập dữ liệu có
cấu trúc (hoá đơn chứng từ).
Thống tin có cấu trúc bao gồm luồng thông tin vào và luồng thông tin ra:
Luồng thông tin vào: phân loại các thông tin cần xử lý thành 3 loại:
+ Thông tin cần cho tra cứu: Các thông tin ít bị thay đổi, thường được cập nhật 1 lần.
+ Thông tin luân chuyển chi tiết: là loại thông tin hoạt động của đơn vị, khối lượng thông tin
thường lớn, cần phải xử lý kịp thời
+ Thông tin luân chuyển tổng hợp: là loại thông tin được tổng hợp từ các cấp thấp hơn, thông
tin này thường cô đọng xử lý theo kỳ hay theo lô
Luồng thông tin ra:
+ Thông tin đầu ra được tổng hợp từ thông tin đầu vào, phụ thuộc vào nhu cầu quản lý trong
từng trường hợp cụ thể, từng đơn vị cụ thể.
+ Thông tin đầu ra quan trọng nhất là các tổng hợp, thống kê, thông báo.
- Các xử lý:
+ Là các chức năng, quy trình, phương pháp, thủ tục xử lý cho phép thu thập, lưu trữ, tìm
kiếm, chế biến thông tin, thực chất là biến đổi từ tập thông tin vào thành tập thông tin ra
+ Các chức năng xử lý trong hệ thống có tính liên hoàn với nhau trong đó đảm bảo sự thống
nhất, an toàn tránh sự cố
5. Các hệ thống thông tin tự động hoá (tin học hoá)
5.1. Mức độ tự động hoá
Hệ thống tự động hoá có thể theo hình thức:
19
- Tự động hoá toàn bộ: Hệ thống được xử lý hoàn toàn tự động bằng máy tính trong đó con
người chỉ đóng vai trò phụ trong hệ thống.
- Tự động hoá một phần (bộ phận): Hệ thống được chia thành hai phần công việc phần xử lý
giữa con người (thực hiện thủ công) và phần thực hiện trên máy tính (không tính những công việc
con người phục vụ máy tính.
Việc tự động hoá một hệ thống kinh doanh có thể làm với hai cách:
- Phương pháp "hồ": Sử dụng máy tính tập trung bao trùm toàn bộ hệ thống
- Phương pháp "giếng": áp dụng máy tính cho từng bộ phận riêng rẽ, cho từng phạm vi nhất
định.
Tin học hoá toàn bộ là mục đích cuối cùng nhưng không phải bao giờ cũng thực hiện được, mà
nhiều khi người ta phải tiến hành tin học hoá bộ phận trước.
5.2. Các phƣơng thức xử lý bằng máy tính
* Xử lý theo lô (batch processing): thường dùng trong các trường hợp sau:
- Xử lý có tính chất định kỳ, (in các báo cáo, kết xuất, thống kê)
- Trong trường hợp in các giấy tờ có số lượng lớn
* Xử lý trực tuyến (on-line processing): Các giao dịch phát sinh, các thông tin đến được cập nhật và
cần tự động xử lý ngay.
Thí dụ: Bán vé máy bay, vé tàu, cung cấp thông tin trên INTERNET...
+Ưu điểm của xử lý trực tuyến:
- Giảm được công việc giấy tờ, các khâu trung gian
- Kiểm tra được sự đúng đắn của dữ liệu ngay sau khi nhập
- Cho trả lời nhanh chóng
+Nhược điểm:
- Xây dựng hệ thống tốn công sức, thời gian, chi phí đắt hơn cả về phần cứng và phần mềm
- Xử lý không kịp khi khối lượng thông tin vào ra lớn
- Dễ bị nhầm lẫn.
- Khó phục hồi dữ liệu (vì dữ liệu luôn trên dòng dữ liệu)
Thông thường một hệ thống có cả hai chế độ xử lý trên và có sự điểu khiển chuyển đổi giữa hai
phương thức để thực hiện phù hợp với yêu cầu trả lời thông tin.
CÂU HỎI CUỐI CHƢƠNG
1. Tại sao khi xây dựng các HTTT cần phải có phân tích thiết kế hệ thống?
2. Nhiệm vụ của HTTT? Vai trò của HTTT trong hệ thống kinh doanh?
3. Trong vòng đời của hệ thống, giai đoạn nào là quyết định sự thành công, bền vững của hệ
thống?
4. Những lĩnh vực nào xử lý theo lô, trực tuyến?
20
Chƣơng II. Tổng quan về phân tích thiết kế hệ thống

1. Giới thiệu
Phát triển HTTT dựa trên máy tính bắt đầu từ những năm 1950, cùng với sự phát triển của
CNTT và trên yêu cầu thực tế mà cách tiếp cận PTTKHT cũng thay đổi, phát triển phù hợp. Trong
quá trình phát triển có thể chia làm 4 cách tiếp cận: hướng tiến trình, hướng dữ liệu, hướng cấu trúc
và hướng đối tượng.
2. Các cách tiếp cận phân tích hệ thống
2.1. Hƣớng tiến trình (process driven approach)
Được phát triển vào thừoi gian đầu do máy tính có tốc độ xử lý chấm, kích thước bộ nhớ còn
rất nhỏ nên ta chỉ tập trung vào các quá trình mà phần mềm phải thực hiện. Vì vậy ta cố gắng đạt
được sự tự động hóa các tiến trình của từng bộ phân riêng rẽ. Lúc này, ta cần quan tâm đến các
thuật toán để giải quyết vấn đề và sử dụng khéo léo bộ nhớ còn hạn hẹp. Các dữ liệu thường được tổ
chức trên cùng một file với chương trình, sau này khi kích thước bộ nhớ lớn ta có thể tách riêng file
dữ liệu ra.






Quan hệ giữa dữ liệu và ứng dụng
Với cách tiếp cận này ta chỉ tập trung vào tiến trình sử dụng và chuyển đổi dữ liệu trong hệ
thống. Những thành phần khác nhau của hệ thống làm việc theo những sơ đồ khác nhau, tốc độ
khác nhau và tiếp cận định hướng tiến trình ở đâu thì dữ liệu được lưu trữ tạm thời ở đó để chờ xử
lý.
Nhược điểm:
- Sự dư thừa dữ liệu.
- Hao phí công sức cho việc thu thập và tổ chức dữ liệu.
- Sử dụng các dữ liệu kém hiệu quả do khó khăn để chia sẻ dữ liệu giữa các ứng dụng.
- Rất khó khăn trong việc tổ chức lại dữ liệu khi có sự thay đổi tiến trình.
2.2. Hƣớng dữ liệu (data driven approach)
Định hướng này tập trung vào việc tổ chức các dữ liệu một cách hợp lý hơn là nghĩ tới việc
sử dụng các dữ liệu ở đâu và khi nào.
Khi dữ liệu được quan tâm, phạm vi ứng dụng mở rộng đến nhiều quá trình, bộ phận khác
của HTTT như: nhà cung cấp, người điều hành, khác hàng… Kết quả là HTTT không chỉ là sự tự
Hệ thống quản lý lương
Dữ liệu dự
án
Dữ liệu
nhân sự
Hệ thống quản lý dự án
Dữ liệu
nhân sự
Dữ liệu sự
án
21
động hóa mà bao gồm cả việc tổ chức dữ liệu, nâng cao năng lực của nhân viên và khả năng truy
cập dữ liệu. Từ đó nảy sinh ra hai ý tưởng:
- Tách dữ liệu ra khỏi quá trình xử lý.
- Tách biệt CSDL và các ứng dụng.







Quan hệ giữa dữ liệu và ứng dụng
Như vậy, một CSDL là tập trung của tất cả các dữ liêu có trong hệ thống, nó bao gồm các
phương pháp tổ chức dữ liệu cho phép quản lý dữ liệu tập trung và nhất quán. Nhờ đó đã khắc phục
được sự dư thừa, theo tác trên dữ liệu nhanh chóng và sử dụng chung được dữ liệu.
2.3. Hƣớng cấu trúc (structure driven approach)
Là buớc phát triển tiếp theo, nhiều tài liệu gợp chung cùng với hướng tiếp cận trên. Trogn
khuôn khổ của giáo án ta sẽ tập trung phân tích thiết kế hệ thống theo hưưong tiếp cận này.
Hướng tiếp cận này thể hiện bằng quá trình phát triển hệ thống hướng cấu trúc qua 03 giai
đoạn chính:
- Cấu trúc dữ liệu (mô hình quan hệ)
- Cấu trúc hệ thống chương trình (cấu trúc phân cấp điều khiển các môđun và phần chung)
- Cấu trúc chương trình và môđun (cấu trúc một chương tình và môdun để xây dựng)






Quan hệ giữa dữ liệu và ứng dụng

Cách thiết kế này đem lại cho ta nhiều lợi ích:
- Làm giảm sự phức tạp: thiết kế theo phương pháp top-down nên việc phân chia nhỏ dần các vấn
đề lớn thành vấn đề nhỏ để giải quyết một cách dễ dàng.
Ứng dụng Ứng dụng

Ứng dụng

CSDL
TẦNG DỮ LIỆU
TẦNG ỨNG DỤNG
Ứng dụng Ứng dụng

Ứng dụng

CSDL
TẦNG DỮ LIỆU
TẦNG ỨNG DỤNG
22
- Tập trung vào ý tưởng: cho phép người phân tích trước hết tập trung vào mô hình ý tưởng (lôgic)
của hệ thống, bỏ qua những ràng buộc vật lý. Sau khi có mô hình ý tưởng mới bổ sung và cụ thể
hóa để gắn vào hệ thống vật lý.
- Chuẩn hóa: cung cấp các định nghĩa, công cụ và cách tiếp cận chuẩn mực cho phép nhà thiết kế
làm việc tách biệt, giúp các hệ thống con làm việc tách biệt mà vẫn đảm bảo sự thống nhất trong hệ
thống.
- Hướng về tương lai: đo việc tách biết nên dễ dàng trong thay đổi các môđun, vần hành và bảo trì.
- Giảm bớt tính nghệ thuật trong thiết kế: bắt buộc người thiết kế tuân thủ theo các chuẩn mực, giảm
bớt tính ngẫu hứng của họ.
2.4. Hƣớng đối tƣợng (object oriented approach)
Là cách tiếp cận mới nhất, hệ thống xây dựng chỉ bao gồm các thành phần liên kết với nhau
gọi là đối tượng. Mục đích của hệ thống là xây dựng các đối tượng tương đối độc lập nhau và có thể
dùng lại được.
Mỗi đối tượng tương ứng với các vật thực trong hệ thống và có cấu trúc dữ liệu, các phép
toán của riêng nó. Đối tượng có tính kế thừa từ một đối tượng khác kể cả dữ liệu và phép toán. Như
vây rất dễ dàng trong việc thay đổi cấu trúc, sửa chữa một hệ thống.










Cấu trúc hệ thống hướng đối tượng

Đối tuợng Đối tuợng

Đối tuợng

Đối tuợng

Đối tuợng

23

3. Các mô hình phân tích thiết kế hệ thống
3.1. Phƣơng pháp thiết kế hệ thống cổ điển (thiết kế phi cấu trúc)
Đặc điểm:
- Gồm các pha (phase): Khảo sát, thiết kế, viết lệnh, kiểm thử đơn lẻ, kiểm thử trong hệ con, kiểm
thử trong toàn hệ thống.
- Việc hoàn thiện hệ thống được thực hiện theo hướng “bottom-up” (từ dưới lên) và theo nguyên tắc
tiến hành tuần tự từ pha này tới pha khác.

Phương pháp thiết kế cổ điển
Nhƣợc điểm:
- Gỡ rối, sửa chữa rất khó khăn và phức tạp.
Ví dụ trong giai đoạn kiểm thử (test) nếu có lỗi nào đó xuất hiện ở giai đoạn cuối pha kiểm thử. Lúc
đó, tuỳ theo mức độ nghiêm trọng của lỗi, có thể buộc phải sửa đổi hàng loạt các mođun. Khi một
lỗi được phát hiện, khó chẩn đoán mođun nào (trong số hàng trăm, hàng ngàn mô đun) chứa lỗi.
- Vì thực hiện theo nguyên tắc tuần tự các pha nên sau khi đã kết thúc một pha, người ta có thể
không cần phải bận tâm đến nó nữa à Nếu ở pha trước còn lỗi thì các pha sau sẽ phải tiếp tục chịu
24
ảnh hưởng của lỗi đó. Mặt khác hầu hết các dự án thường phải tuân thủ theo một kế hoạch chung đã
ấn định từ trước kết quả sẽ khó mà được như ý với một thời gian quy định.
3.2. Phƣơng pháp phân tích thiết kế hệ thống bán cấu trúc
Đặc điểm:
- Một loạt các bước “bottom-up” như viết lệnh và kiểm thử được thay thế bằng giai đoạn hoàn thiện
“top-down”. Nghĩa là các modun mức cao được viết lệnh và kiểm thử trước rồi đến các modun chi
tiết ở mức thấp hơn.
- Pha thiết kế cổ điển được thay bằng thiết kế có cấu trúc.
Nhược điểm:
- Người thiết kế nói chung liên lạc rất ít với phân tích viên hệ thống và cả hai chẳng có liên hệ nào
với người sử dụng. Quá trình phân tích và thiết kế gần như là tách ra thành hai pha độc lập.
3.3. Phƣơng pháp phân tích thiết kế hệ thống có cấu trúc
Đặc điểm:
- Phương pháp này bao gồm 9 hoạt động: Khảo sát, phân tích, thiết kế, bổ sung, tạo sinh, kiểm thử
xác nhận, bảo đảm chất lượng, mô tả thủ tục, biến đổi cơ sở dữ liệu, cài đặt.
- Các hoạt động có thể thực hiện song song. Chính khía cạnh không tuần tự này mà thuật ngữ “pha”
được thay thế bởi thuật ngữ “hoạt động” (“pha” chỉ một khoảng thời gian trong một dự án trong đó
chỉ có một hoạt động được tiến hành). Mỗi hoạt động có thể cung cấp những sửa đổi phù hợp cho
một hoặc nhiều hoạt động trước đó.
- Một số phương pháp phân tích có cấu trúc:
a. Các phƣơng pháp hƣớng chức năng
 Phƣơng pháp SADT (Structured Analysis and Design Technique) –
Kỹ thuật phân tích và thiết kế cấu trúc
Phương pháp này xuất phát từ Mỹ, ý tưởng cơ bản của nó: Phân rã một hệ thống lớn thành các
phân hệ nhỏ và đơn giản.
- Được xây dựng dựa trên 7 nguyên lý sau:
1. Sử dụng 1 mô hình
2. Phân tích đi xuống (top down)
3. Dùng một mô hình chức năng và một mô hình quan niệm (gọi là mô hình thiết kế)
4. Thể hiện tính đối ngẫu của hệ thống
5. Sử dụng các biểu diễn dưới dạng đồ hoạ
6. Phối hợp hoạt động của nhóm
7. Ưu tiên tuyệt đối cho sơ đồ viết
- SADT sử dụng các kỹ thuật:
+ Dòng dữ liệu hay còn gọi là biểu đồ luồng dữ liệu (Data Flow Diagrams)
+ Từ điển dữ liệu (Data Dictionary)
25
+ Tiếng anh có cấu trúc (Structured English)
+ Bảng quyết định
+ Cây quyết định
 Phƣơng pháp MERISE (Methode pour Rassembler les Ide’es Sans Effort)
Phương pháp MERISE là phương pháp phân tích có nguồn gốc từ Pháp, ra đời vào cuối thập
niên 70. Ý tưởng cơ bản xuất phát từ 3 mặt cơ bản sau:
+ Mặt thứ nhất: Quan tâm đến chu kỳ sống của hệ thống thông tin trải qua nhiều giai đoạn
„Thai ngén‟- Quan niệm / ý niệm – Quản trị – Chết, có thể kéo dài từ 10 – 15 năm với các tổ chức
lớn.
+ Mặt thứ hai: Đề cập tới chu kỳ đặc tả hay chu kỳ trừu tượng. Qui trình xử lý được mô tả trên
bình diện quan niệm, kế tiếp là trên bình diện tổ chức và cuối cùng là trên bình diện tác nghiệp.
+ Mặt thứ ba: Liên quan đến chu kỳ của các quyết định
- Đặc trưng cơ bản của phương pháp MERISE
+ Nhìn toàn cục
+ Tách rời các dữ liệu và xử lý
+ Tiếp vận theo mức
- Ưu điểm: có cơ sở khoa học vững chắc
- Nhược điểm: Cồng kềnh
 Phƣơng pháp MCX (Methode de xavier castellani)
Phương pháp phân tích MCX có nguồn gốc từ Pháp
- Một số nét cơ bản về phương pháp phân tích MCX:
+ Cho phép xây dựng được mô hình tổng quát, chính xác, biểu diễn HTTT hoặc các phân
hệ thông tin.
+ Cho phép phân tích, nắm được dữ liệu, quá trình xử lý và truyền thông các HTTT
+ Cho phép biểu diễn các xử lý với các lưu đồ và các chương trình, soạn thảo bởi 1 ngôn
ngữ giải thuật dùng ở các mức khác nhau.
+ Cho phép lượng hoá các xử lý.
- Các giai đoạn cơ bản của quá trình phân tích:
+ Phân tích macro
+ Phân tích sơ bộ
+ Phân tích quan niệm
 Phƣơng pháp GALACSI (Groupe d‟ Animation et de Liaison pour i‟ Analyse et la Conception
de syste‟me d‟ Information)
Phương pháp GLACSI có nguòn gốc từ Pháp. Ra đời tháng 4/1982. Nội dung cơ bản trình bày
một tập hợp cá công cụ và „nguyên liệu‟ để tiến hành các giai đoạn cơ bản sau đây của quá trình
phân tích:
26
- Nghiên cứu các hệ thống tổ chức và các hệ thống thông tin tương ứng: nghiên cứu hiện trạng,
nghiên cứu khả thi
- Phân tích chức năng: mô hình dữ liệu, mô hình xử lý
- Phân tích cấu trúc: tổ chức dữ liệu, tổ chức xử lý, môi trường tiếp nhận, giao diện người máy.
- Lập trình
Nhược điểm của phương pháp này là chưa thử nghiệm nhiều trong thực tế.
b. Các phƣơng pháp hƣớng đối tƣợng
- Phương pháp HOOD (Hierarchical Object Oriented Design) là một phương pháp được lựa
chọn để thiết kế các hệ thống thời gian thực. Những phương pháp này lại yêu cầu các phần mềm
phải được mã hoá bằng ngôn ngữ lập trình ADA. Do vậy phương pháp này chỉ hỗ trợ cho việc thiết
kế các đối tượng mà không hỗ trợ cho các tính năng kế thừa và phân lớp.
- Phương pháp RDD (Responsibility Driven Design) dựa trên việc mô hình hoá hệ thống thành
các lớp.
Các công việc mà hệ thống phải thực hiện được phân tích và chia ra cho các lớp của hệ thống.
Các đối tượng trong các lớp của hệ thống trao đổi các thông báo với nhau nhằm thực hiện công việc
đặt ra. Phương pháp RDD hỗ trợ cho các khái niệm về lớp, đối tượng và kế thừa trong cách tiếp cận
hướng đối tượng.
- Phương pháp OMT (Object Modelling Technique) là một phương pháp được xem là mới nhất
trong cách tiếp cận hướng đối tượng. Phương pháp này kết hợp Mô hình hóa đối tượng về mặt cấu
trúc- dữ liệu, mô hình động thể hiện hành vi- kiểm soát, mô hình chức năng thể hiện chức năng và
biến đổi.
Trên mặt lý thuyết ta thấy cách tiếp cận hướng đối tượng có các bước phát triển hơn so với tiếp
cận hướng chức năng. Nhưng trong thực tế việc phân tích và thiết kế hệ thống theo cách tiếp cận
hướng đối tượng gặp rất nhiều khó khăn vì chưa có nhiều các công cụ phát triển hỗ trợ cho việc
thiết kế hướng đối tượng.
4. Các giai đoạn phân tích và thiết kế Hệ thống thông tin
Phân tích và thiết kế một hệ thống là vấn đề nhận thức một hệ thống. Để phân tích, thiết kế ta
phải dùng các phương pháp mô tả. Có nhiều phương pháp nhưng ở Việt Nam sử dụng chủ yếu hai
phương pháp: SADT (Structure Analysis and Design Technology) và MERI (của Pháp)
27

*Các giai đoạn phân tích thiết kế hệ thống thông tin theo phƣơng pháp SADT:











- Giai đoạn 1 xác định vấn đề cơ bản và tính khả thi của dự án: Cần trả lời các câu hỏi như: “Có
nên thực hiện không?; Mức độ chi phí bao nhiêu?; Quy mô đến đâu?...Cần đưa ra các lập luận để
làm xuất hiện mục tiêu của đề án cuối cùng nếu chấp nhận dự án thì phải vạch kế hoạch cho giai
đoạn 2.
- Giai đoạn 2 phân tích hệ thống: Giai đoạn này ta mô tả hệ thống ở mức khái niệm phân tích sâu
sắc hơn các chức năng, dữ liệu của hệ thống cũ (trả lời các câu hỏi là gì?; làm gì?) sau đó đưa ra mô
tả khái niệm cho hệ thống mới.. Khi phân tích dùng các biểu đồ (chức năng nghiệp vụ, luồng dữ
liệu, mô hình dữ liệu)
- Giai đoạn 3 thiết kế đại thể: Trên cơ sở mô hình khái niệm ở GĐ 2 ta mô tả hệ thống ở mức vật lý,
trả lời các câu hỏi làm thế nào? Xác định các hệ thống con, vai trò của máy tính...
- Giai đoạn 4 thiết kế chi tiết bao gồm:
+ Thiết kế cơ sở dữ liệu
+ Thiết kế các thủ tục, các mô đun xử lý
+ Thiết kế các chức năng chương trình
+ Thiết kế các mẫu thử
+ Thiết kế giao diện
+ Thiết kế các kiểm soát
- Giai đoạn 5 cài đặt chương trình
- Giai đoạn 6 khai thác và bảo trì
Chú ý: Việc phân chia giai đoạn trên chỉ có tính chất tương đối. Đánh giá tương quan giữa các phần
công việc có thể có nhiều tiêu chuẩn khác nhau tuỳ theo trình độ tin học từng quốc gia.
VD: ở các nước phương Tây phần công việc từ giai đoạn 1 - 4 được đánh giá từ 50-60% thời gian,
phần lập trình cài đặt từ 20-30%, còn lại là phần bảo trì.
Để hiểu hệ thống
làm gì?

Xác định hệ thống
mới làm gì?

Mô tả hệ thống
thực làm việc như
thế nào?

Xác định hệ thống
mới thực hiện như
thế nào?

Cần cải
tiến gì?


Mức khái niệm

Mức vật lý

What?

How?

28














CÂU HỎI CUỐI CHƢƠNG
1. Mục đích của phân tích thiết kế hệ thống?
2. Các phương pháp phân tích và thiết kế hệ thống.
3. Các giai đoạn của quá trình PTTK hệ thống?
KHẢO SÁT

PHÂN TÍCH

THIẾT KẾ

XÂY DỰNG

BẢO TRÌ VÀ PHÁT TRIỂN

CÀI ĐẶT

Sơ đồ thể hiện các giai đoạn triển khai xây dựng một dự án

29
Chƣơng III. Khảo sát hệ thống và xác lập dự án

1. Giới thiệu
Đây là giai đoạn đầu tiên của quá trình phân tích và thiết kế hệ thống, nó quyết định dự án có
tồn tại hay không.
Các bước tiến hành tổng quát như sau:













Giai đoạn này phải trả lời các câu hỏi sau:
+ Môi trưởng, hoàn cảnh, các ràng buộc

hạn
chế đối với hệ thống đó như thế nào?
+
Chức năng và nhiệm vụ và mục tiêu cần đạt được của hệ thống đó là gì, tức là người dùng
muốn gì ở hệ thống ?
+ Có thể hình dung sơ bộ một giải pháp có thể đáp ứng được các yêu cầu đặt ra như thế nào?
2. Mục đích, yêu cầu của việc khảo sát
Mục đích:
Khảo sát hiện trạng và xác lập dự án là giai đoạn đầu của quá trình phân tích và thiết kế hệ
thống. Mục đích của giai đoạn này là tìm được sự mô tả hệ thống bằng văn bản, đề xuất ra phương
án thực hiện, cuối cùng là ký được một hợp đồng và hình thành 1 dự án mang tính khả thi (giai đoạn
khảo sát còn có thể coi như "Nghiên cứu tính khả thi" hoặc "Nghiên cứu hiện trạng")
Khảo sát hiện trạng và thu thập thông tin
(Khảo sát ở các mức: Thực hành, quản lý, lãnh đạo, chuyên gia)

Phát hiện yếu kém và yêu cầu đặt ra cho tương lai

Xác định mục tiêu dự án
(cục bộ, toàn bộ)

Đánh giá khả năng thực hiện
(con người, tài chính, thiết bị, thời gian, không gian, môi trường)

Cân nhắc tính khả thi và lựa chọn giải pháp

Lập dự trù và triển khai dự án

30
Việc khảo sát thường được tiến hành qua 2 giai đoạn:
- Khảo sát sơ bộ nhằm xác định tính khả thi của dự án.
- Khảo sát chi tiết nhằm xác định chính xác những gì sẽ thực hiện và khẳng định những lợi ích
kèm theo
Các yêu của việc khảo sát:
- Khảo sát, tìm hiểu, đánh giá sự hoạt động của hệ thống cũ
- Đề xuất các yêu cầu, các mục tiêu và các ưu tiên giải quyết cho hệ thống mới.
- Phác hoạ giải pháp mới và cân nhắc tính khả thi của dự án
- Lập kế hoạch cho dự án cùng với các dự trù tổng quát.
3. Khảo sát và đánh giá hiện trạng
3.1. Nội dung khảo sát và đánh giá hiện trạng
- Tìm hiểu môi trường XH, kinh tế, kỹ thuật của hệ thống, nghiên cứu cơ cấu tổ chức của cơ
quan đó
- Nghiên cứu chức trách, nhiệm vụ, các trung tâm ra quyết định và điều hành, sự phân cấp các
quyền hạn
- Thu thập, nghiên cứu các hồ sơ, sổ sách, các tệp cùng với các phương thức xử lý thông tin
trong đó
- Thu thập và nghiên cứu các qui tắc quản lý, các qui định, các công thức làm căn cứ cho quá
trình xử lý thông tin
- Thu thập các chứng từ giao dịch và mô tả các chu trình lưu chuyển và xử lý thông tin và tài
liệu giao dịch
- Thống kê các phương tiện và tài nguyên đã và có thể sử dụng
- Thu thập các đòi hỏi về thông tin, các ý kiến, dự đoán, nguyện vọng trong tương lai
- Đánh giá phê phán hiện trạng, đề ra hướng giải quyết
- Lập sơ đồ tổng thể về hiện trạng
3.2. Các mức khảo sát
Việc tiến hành khảo sát được tiến hành trên 4 mức đối tượng
- Thao tác thừa hành: Đó là khảo sát những người trực tiếp với những thao tác của hệ thống. Họ
có kỹ năng, nghiệp vụ cao, nhận biết được những khó khăn, phức tạp và nhiều vấn đề chuyên sâu
trong công việc.
- Điều phối quản lý: Đây là những người quản lý trực tiếp về một mảng công việc nào đó, chẳng
hạn quản đốc phân xưởng, họ hiểu được tình hình cơ quan ở thời điểm hiện tại nhưng không có khả
năng nhìn nhận được các vấn đề xảy ra trong tương lai
- Quyết định của lãnh đạo: Đây là những người ra quyết định nên họ có yêu cầu về các thông tin
trợ giúp
31
- Mức chuyên gia cố vấn: Đây là những người nhận thức được sự phát triển và vận động của hệ
thống trong những môi trường
3.3. Các hình thức tiến hành khảo sát
3.3.1. Phỏng vấn
Phỏng vấn là một phương pháp quan trọng để thu thập dữ liệu về các yêu cầu của hệ thống
thông tin
 Việc phỏng vấn nhằm phát hiện thông tin về:
- Các ý kiến của người được phỏng vấn
- Cảm giác của người được phỏng vấn
- Trạng thái hiện tại của hệ thống
- Các mục tiêu của con người và tổ chức
- Các thủ tục nghiệp vụ không chính thức
 Năm bước lập kế hoạch phỏng vấn là:
- Đọc các tài liệu cơ bản
- Thiết lập các mục tiêu phỏng vấn
- Xác định người đi phỏng vấn
- Chuẩn bị người được phỏng vấn
- Quyết định cấu trúc và kiểu câu hỏi
3.3.1.1. Các kiểu câu hỏi phỏng vấn cơ bản
* Câu hỏi mở:
- Các câu hỏi phỏng vấn mở cho phép những người được phỏng vấn trả lời những gì họ mong
muốn và mức độ mong muốn của họ
- Các câu hỏi mở phù hợp khi người phân tích quan tâm tới độ rộng và sâu của câu trả lời
- Ưu điểm:
o Làm cho người được phỏng vấn cảm thấy thoải mái
o Cho phép người phỏng vấn tập trung vào cách biểu đạt của người được phỏng vấn:
o Phản ánh trình độ văn hóa, các giá trị, thái độ và niềm tin
o Cung cấp mức độ chi tiết cao
o Phát hiện các câu hỏi mới mà chưa được khai thác
o Làm cho người được phỏng vấn thấy thú vị hơn
o Cho phép tính tự nhiên cao hơn
o Giúp người phỏng vấn dễ điều chỉnh nhịp độ hơn
o Hữu ích khi người phỏng vấn không chuẩn bị trước
- Nhược điểm:
o Có thể thu được quá nhiều chi tiết không liên quan
o Có thể mất đi tính điều khiển cuộc phỏng vấn
32
o Có thể mất quá nhiều thời gian để thu được thông tin có ích
o Có khả năng thể hiện rằng người phỏng vấn không chuẩn bị
* Câu hỏi đóng
- Câu hỏi đóng hạn chế số câu trả lời có thể có
- Câu hỏi đóng phù hợp để tạo ra dữ liệu đáng tin cậy và chính xác, dễ dàng để phân tích
- Phương pháp luận hiệu quả và đòi hỏi ít kỹ năng đối với người phỏng vấn
- Ưu điểm:
o Tiết kiệm thời gian phỏng vấn
o Dễ dàng so sánh giữa các lần phỏng vấn
o Dễ đạt đúng mục đích
o Kiểm soát được cuộc phỏng vấn
o Bảo phủ một phạm vi rộng lớn một cách nhanh chóng
o Thu hoạch được các dữ liệu liên quan
- Nhược điểm:
o Nhàm chán đối với người được phỏng vấn
o Khó thu được nhiều chi tiết
o Có thể mất đi các ý tưởng chính
o Khó tạo được mối giao tiếp tốt giữa người phỏng vấn và người được phỏng vấn
* Các câu hỏi lƣỡng cực:
- Là những câu hỏi có thể trả lời với các từ “có” hoặc “không” hoặc “đồng ý” hoặc “không đồng
ý”
- Các câu hỏi này chỉ nên dùng khi thật cần thiết
* Các câu hỏi thăm dò:
- Các câu hỏi thăm dò gợi ra tính chi tiết hơn về câu hỏi trước đó
- Mục đích của câu hỏi thăm dò là:
o Thu được nhiều ý nghĩa hơn
o Làm sáng rõ
o Khai thác và mở rộng các quan điểm của người được phỏng vấn
33

So sánh giữa hai loại câu hỏi ở và đóng

3.3.1.2. Thứ tự đặt câu hỏi
- Ba cách cơ bản để cấu trúc cuộc phỏng vấn là:
o Kim tự tháp: mở đầu với các câu hỏi đóng và tiếp tục với các câu hỏi mở
o Hình phễu: mở đầu với các câu hỏi mở và tiếp tục với các câu hỏi đóng
o Kim cương: mở đầu với các câu hỏi đóng, tiếp tục với các câu hỏi mở và kết thúc bằng
các câu hỏi đóng
- Cấu trúc kim tự tháp
o Mở rất chi tiết, thường là bằng các câu hỏi đóng
o Mở rộng bằng các câu hỏi mở và những câu trả lời tổng quát hơn
o Hữu ích nếu người được phỏng vấn cần được khích lệ đi vào chủ để hoặc tỏ ra không tự
nguyện hướng tới chủ đề
- Cấu trúc phễu:
o Mở đầu với các câu hỏi mở, mang tính tổng quát
o Kết thúc bằng cách thu hẹp các câu trả lời có thể có bằng việc sử dụng các câu hỏi đóng
o Cung cấp cách thức dễ dàng, không gây áp lực để bắt đầu một cuộc phỏng vấn
o Có ích khi người được phỏng vấn cảm thấy hứng khởi với chủ đề
o Cấu trúc kim cương
o Một cấu trúc hình kim cương mở đầu theo cách rất cụ thể
o Tiếp theo các vấn đề tổng quát hơn được xem xét
o Kết thúc với các câu hỏi cụ thể
o Cấu trúc này kết hợp thế mạnh của cả cấu trúc kim tự tháp và hình phễu
o Mất nhiều thời gian hơn các cấu trúc khác
34
- Kết thúc việc phỏng vấn:
o Luôn luôn hỏi “Liệu còn có gì khác mà bạn muốn bổ sung không?”
o Tóm tắt và cung cấp phản hồi về ấn tượng của người phỏng vấn
o Hỏi xem người tiếp theo nên phỏng vấn là ai
o Thiết lập các cuộc hẹn gặp tiếp theo
o Cảm ơn người được phỏng vấn và bắt tay
o Báo cáo phỏng vấn
o Viết càng sớm càng tốt ngay sau khi phỏng vấn
o Cung cấp một bản tóm tắt ban đầu, sau đó thì chi tiết hơn
o Xem lại báo cáo với người được phỏng vấn
3.3.2. Điều tra bằng bảng hỏi
- Phiếu hỏi có ích để thu thập thông tin từ các thành viên chủ đạo trong tổ chức về:
o Thái độ
o Niềm tin
o Hành vi
o Tính cách
- Phiếu hỏi có giá trị nếu:
o Các thành viên của tổ chức phân tán rộng
o Nhiều thành viên tham gia vào dự án
o Cần việc có tính thăm dò
- Các câu hỏi được thiết kế theo một trong hai kiểu
o Câu hỏi mở
+ Cố gắng đoán trước câu trả lời sẽ nhận được
+ Phù hợp để thu được các ý kiến
o Câu hỏi đóng
+ Sử dụng khi tất cả các lựa chọn đều liệt kê được
+ Khi các lựa chọn loại trừ lẫn nhau
35

So sánh giữa hai loại câu hỏi ở và đóng
3.3.2.1. Thiết kế phiếu hỏi
- Ngôn ngữ dùng trong phiếu hỏi nên:
o Đơn giản
o Cụ thể
o Không thành kiến
o Không có vẻ bề trên
o Chính xác về mặt kỹ thuật
o Hướng đến những người có hiểu biết
o Phù hợp với khả năng đọc hiểu của người trả lời
- Phiếu hỏi phải chính xác và đáng tin cậy
o Tính tin cậy thể hiện sự nhất quán trong trả lời – nghĩa là thu được cùng các kết quả nếu
như cùng một phiếu hỏi được phân phát trong cùng điều kiện
o Tính chính xác là mức độ câu hỏi đo được những gì người phân tích muốn đánh giá
- Tỉ lệ câu trả lời tốt có thể có được nhờ sự điều chỉnh phù hợp phiếu hỏi
o Để ra nhiều khoảng trống
o Bố trí khoảng trống lớn để viết/gõ câu trả lời
o Tạo điều kiện cho người trả lời dễ dàng bày tỏ rõ câu trả lời của họ
o Nhất quán về hình thức
- Thứ tự câu hỏi:
o Đặt các câu hỏi quan trọng nhất lên đầu tiên
o Nhóm các câu hỏi có cùng nội dung lại với nhau
o Đưa các câu hỏi ít gây tranh luận lên trên
3.3.2.2. Phát phiếu hỏi
- Tập hợp tất cả những người trả lời vào cùng một thời gian
36
- Phát phiếu hỏi cho từng cá nhân
- Gửi phiếu hỏi qua đường bưu điện
- Phát phiếu hỏi qua Web hoặc thư điện tử, có các ưu điểm:
o Giảm chi phí
o Thu thập và lưu trữ các kết quả dễ dàng hơn
- Phiếu hỏi dạng web thường gồm:
o Hộp văn bản đơn dòng
o Hộp văn bản cuộn, dùng một hoặc nhiều đoạn văn bản
o Hộp chọn dành cho các câu trả lời có/không hoặc đúng/sai
o Nút tùy chọn cho các câu trả lời mang tính loại trừ lẫn nhau có/không hoặc đúng/sai
o Menu thả để chọn từ một danh sách
o Nút Submit (xác nhận) hoặc Reset (xác lập lại)
3.3.3. Phƣơng pháp lấy mẫu
- Lấy mẫu là quá trình lựa chọn một cách có hệ thống các phần tử đại diện của một mẫu. Thay
vì nghiên cứu tất cả các thể hiện của các biểu mẫu và bản ghi trong các tệp hoặc cơ sở dữ liệu thì
người phân tích chỉ cần sử dụng kỹ thuật lấy mẫu để chọn ra một phần đủ lớn các phần tử đại diện
phục vụ cho việc xác định thông tin diễn ra trong hệ thống.
- Bao gồm hai quyết định quan trọng:
o Những tài liệu và website quan trọng nào nên được lấy mẫu
o Những người nào nên được phỏng vấn và gửi phiếu hỏi
- Lý do người phân tích cần lấy mẫu là:
o Giảm chi phí
o Tăng tốc quá trình thu thập dữ liệu
o Cải thiện hiệu quả
o Giảm việc tập trung thu thập dữ liệu
3.3.3.1. Thiết kế mẫu
- Để thiết kế một mẫu tốt, một người phân tích hệ thống cần tuân theo bốn bước sau:
o Xác định dữ liệu cần được thu thập hoặc mô tả
o Xác định tập cần được lấy mẫu
o Chọn loại mẫu
o Quyết định kích thước mẫu
- Quyết định kích thước mẫu nên được thực hiện theo những điều kiện cụ thể mà người phân
tích hệ thống làm việc:
o Lấy mẫu dữ liệu trên các thuộc tính
o Lấy mẫu dữ liệu trên các biến
o Lấy mẫu dữ liệu định tính
37
3.3.3.2. Cách thức lấy mẫu
- Lấy mẫu tùy ý:
o Các mẫu không giới hạn, không mang tính xác suất
o Dễ sắp xếp
o Không đáng tin cậy nhất
- Lấy mẫu có mục đích
o Dựa trên sự đánh giá
o Người phân tích chọn nhóm các cá nhân để lấy mẫu
o Dựa trên các tiêu chuẩn
o Mẫu không mang tính xác suất
o Đáng tin cậy ở mức độ vừa phải
- Lấy mẫu ngẫu nhiên đơn giản
o Dựa trên danh sách các con số của tập lấy mẫu
o Mỗi người hoặc tài liệu đều có cơ hội được lựa chon ngang nhau
- Lấy mẫu ngẫu nhiên phức tạp, có ba hình thức là:
o Lấy mẫu có hệ thống: đây là phương pháp đơn giản nhất của lấy mẫu theo xác suất bao
gồm, ta chỉ cần chọn mọi cá nhân thứ k trong danh sách, hình thức này không đem lại hiệu quả cao
nếu danh sách được sắp thứ tự
o Lấy mẫu phân tầng: là phương pháp quan trọng nhất đối với người phân tích.
+ Xác định các tập lấy mẫu con
+ Chọn các đối tượng để lấy mẫu từ tập lấy mẫu con
+ Bù vào số lượng không cân đối trong một nhóm nhất định
+ Chọn các phương pháp khác nhau để thu thập dữ liệu từ các nhóm con khác nhau
o Lấy mẫu theo nhóm
+ Chọn nhóm các tài liệu hoặc con người để nghiên cứu
+ Chọn các nhóm điển hình đại diện cho số còn lại
3.3.4. Phân tích tài liệu
3.3.4.1. Phân tích tài liệu định lƣợng
Đây là phương pháp nghiên cứu hữu hiệu để người phân tích thu thập thông tin
- Dữ liệu cứng có thể thu thập từ:
o Phân tích các tài liệu định lượng như các hồ sơ được sử dụng để ra quyết định
o Các báo cáo thực thi
o Các hồ sơ
o Các mẫu thu thập dữ liệu
o Các giao dịch nghiệp vụ

38
3.3.4.2. Phân tích tài liệu định tính
- Xem xét các tài liệu định tính để thu được:
o Các thông tin tiềm ẩm quan trọng
o Trạng thái tâm lý
o Những gì được coi là tốt/xấu
o Hình ảnh, logo, biểu tượng
- Tài liệu định tính bao gồm:
o Các bản ghi nhớ
o Dấu hiệu trên các bản tin
o Website của tổ chức
o Các tài liệu chỉ dẫn
o Sổ tay về chính sách của tổ chức
3.3.5. Phƣơng pháp quan sát
- Việc quan sát cung cấp sự hiểu biết về những gì các thành viên của tổ chức thực sự đang làm.
- Nhìn nhận trực tiếp các quan hệ tồn tại giữa những người ra quyết định và các thành viên khác
của tổ chức.
- Có hai hình thức quan sát đó là trực tiếp và gián tiếp. Với hình thức quan sát trực tiếp có ưu
điểm là trực quan tuy nhiên dễ gây ức chế cho người theo tác, hình thức quan sát gián tiếp khắc
phục một phần của điều này nhưng khó có thể tìm hiểu được cặn kẽ công việc.
3.5. Phát hiện những yếu kém của hiện trạng và những yêu cầu trong tƣơng lai
* Yếu kém
- Hệ thống thiếu cái gì, (chức năng, phương tiện, nhân lực)
- Kém hiệu quả, hiệu suất công việc thấp
- Phương pháp xử lý không chặt chẽ, di chuyển thông tin vòng vèo
- Cơ cấu tổ chức bất hợp lý
- Giấy tờ, tài liệu trình bày kém gây ùn tắc làm cho hệ thống quá tải, gây tổn phí về vật tư, thiết
bị, con người
* Yêu cầu nảy sinh
- Khắc phục những yếu kém trên
- Những yêu cầu về thông tin chưa được đáp ứng
- Những nguyện vọng của nhân viên
- Các dự kiến và các kế hoạch phát triển về quy mô của đơn vị
4. Xác định phạm vi, khả năng và mục tiêu của dự án
4.1. Xác định phạm vi (khoanh vùng dự án)
* Chỉ rõ hệ thống mới tiến hành trong phạm vi nào?
+ Trong toàn bộ cơ quan (phương pháp hồ)
39
+ Trong từng bộ phận (phương pháp giếng). Nên khảo sát tổng thể trước khi khoanh vùng nơi
thực hiện tin học hoá.
* Đánh giá từng phương pháp:
+ Ưu điểm của phương pháp hồ là nhất quán trong xử lý, cơ sở dữ liệu tập trung nên tránh
được dư thừa dữ liệu, tuy nhiên tốc độ xử lý sẽ chậm, cài đặt phức tạp
+ Với phương pháp giếng thì dễ thực hiện nhưng khó phát triển hệ thống con thành hệ thống
tổng thể.
Chú ý: Một HTTT thường khá phức tạp mà không thể thực hiện trong một thời gian nhất định
bởi vậy cần hạn chế một số ràng buộc để hệ thống mang tính khả thi nhất định. Tại thời điểm này
cần xác định các mục tiêu cho dự án, chính các mục tiêu này là thước đo để kiểm chứng và nghiệm
thu dự án sau này.
4.2. Khả năng và hạn chế thực hiện dự án
Xét trên 5 mặt sau:
- Về mặt tài chính: Kinh phí cho phép triển khai.
- Về con người: Khả năng quản lý, nắm bắt kỹ thuật mới, khả năng về đào tạo, tiếp nhận công
nghệ mới
- Về trang thiết bị kỹ thuật cho phép
- Về mặt thời gian: Các ràng buộc của các hệ thống về thời gian hoàn thành.
- Về môi trường: Các yếu tố ảnh hưởng về môi trường, xã hội.
4.3. Mục tiêu của việc tin học hoá
- Khắc phục yếu kém hệ thống cũ
- Đáp ứng được yêu cầu trong tương lai
- Mang lại lợi ích kinh tế
- Thoả mãn được hạn chế về chi phí và con người
- Thể hiện được chiến lược phát triển lâu dài
4.4. Xác định yếu tố thành công của bài toán
- Mục tiêu quản lý: Được chỉ ra bằng cụm danh động từ thể hiện tóm tắt các qui trình quản lý cơ
bản.
- Yếu tố thành công của bài toán (CSF – Critical Successful Factor): Được thể hiện bằng một
danh từ, đây là các thông tin đầu ra phải có mặt của hệ thống.
5. Phác hoạ giải pháp, cân nhắc tính khả thi
5.1. Các mức tự động hoá
- Tổ chức lại các công việc thủ công
- Tự động hoá việc xử lý tin nhưng không làm thay đổi cơ cấu tổ chức
- Tự động hoá kèm theo thay đổi tổ chức
5.2. Hình thức sử dụng máy tính
40
- Xử lý theo mẻ hay trực tuyến (offline or online)
- Xử lý tập trung/phân tán
5.3. Phân tích hiệu quả và đánh giá tính khả thi
- Tính hiệu quả:
+ Chi phí
+ Lợi ích (về kinh tế)
- Tính khả thi:
+ Khả thi về mặt kĩ thuật
+ Khả thi về tác vụ
+ Khả thi về chi phí
Nguyên tắc chung ở đây là đề xuất 1 số phương án để đối sánh
6. Lập dự trù và kế hoạch triển khai dự án
6.1. Hình thành hợp đồng
Quyết định hệ thống khả thi hay không và thoả thuận các điều khoản sơ bộ dẫn đến 1 hợp đồng
kinh tế và trách nhiệm của các bên tham gia.
6.2. Lập dự trù thiết bị
- Sơ bộ về dự án
+ Khối lượng dữ liệu cần lưu trữ
+ Các dạng làm việc: Trực tuyến, từ xa, theo mẻ,...
+ Số lượng người dùng
+ Khối lượng thông tin cần thu thập, xuất ra
- Thiết bị cần có: Máy tinh đơn lẻ hay mạng máy tính, các thiết bị chuyên dụng và các phần
mềm đang dùng...
- Điều kiện mua bán và lắp đặt: Điều kiện về mặt tài chính, điều kiện giao hàng, kế hoạch tập
huấn, kế hoạch lắp đặt, đào tạo người dùng...
6.3. Lập kế hoạch triển khai dự án
- Lập hồ sơ kế hoạch gồm: Danh sách thành viên nhóm làm việc gồm cả hai bên; các kết quả
khảo sát sơ bộ; các phê phán hiện trạng và yêu cầu phát triển trong tương lai; các giải pháp và lựa
chọn; kế hoạch triển khai dự án.
- Thông qua trao đổi để thảo luận hoàn tất các hồ sơ trên. Sau khi quyết định phân công nhiệm
vụ cho từng nhóm hay từng cá nhân thực hiện các giai đoạn tiếp theo.
CÂU HỎI CUỐI CHƢƠNG
1. Nêu các phương pháp khảo sát?
2. Đặt cho người chủ hệ thống bán hàng nội thất 05 câu hỏi về hệ thống anh ta cần xây dựng?
3. Đặt cho nhân viên thực hiện việc bán hàng 05 câu hỏi về công việc chi ta đang thực hiện?
4. Lập bảng điều tra các chức năng mà một hệ thống bán hàng quần áo nói chung?
41
Chƣơng IV. Mô hình hóa hệ thống

1. Mục đích
Mô hình hóa hệ thống nhằm đạt được các mục đích:
- Để hiểu rõ hơn về hệ thống: các cơ hội để đơn giản hóa, tối ưu hóa (Tái cấu trúc quy trình)
- Để liên kết các hành vi và cấu trúc của hệ thống (các yêu cầu nghiệp vụ về: thông tin/dữ liệu
và chức năng/quy trình)
- Để trực quan hóa và điều khiển kiến trúc hệ thống (thiết kế)
- Để kiểm soát những rủi ro trong quá trình phát triển
- Đầu vào của giai đoạn này là hồ sơ kết quả của khảo sát hệ thống
- Đầu ra bao gồm:
+ Mô hình hóa chức năng (Data Flow Diagram - DFD)
+ Mô hình hóa dữ liệu với biểu đồ quan hệ thực thể (Entity Relationship Diagram - ERD)
+ Mô hình hóa đối tượng (Object Modeling) với ngôn ngữ mô hình hợp nhất (Unified
Modeling Language - UML)
2. Quá trình mô hình hóa hệ thống
- Lập kế hoạch chiến lược hệ thống: lập các mô hình quá trình nghiệp vụ của tổ chức mô tả các
chức năng nghiệp vụ quan trọng
- Tái cấu trúc quy trình nghiệp vụ: phân tích các điểm yếu (Hệ thống hiện tại) và đưa ra các mô
hình chức năng để cải thiện (Hệ thống mới được đề xuất).
- Phân tích hệ thống
+ Mô hình hóa hệ thống hiện có bao gồm những thiếu sót của nó (DFD lôgíc)
+ Mô hình hóa các yêu cầu lôgíc (các quá trình và luồng dữ liệu cần có dù hệ thống được
xây dựng thế nào – DFD lôgíc) của hệ thống được đề xuất.
+ Mô hình hóa các giải pháp kỹ thuật đề cử (DFD vật lý)
+ Mô hình hóa giải pháp được chọn (DFD vật lý)
- Phân biệt mô hình lôgíc và mô hình vật lý
+ Mô hình lôgíc cho biết hệ thống là gì và làm gì. Nó độc lập với việc cài đặt kỹ thuật. Nó
minh họa bản chất của hệ thống. Mô hình lôgíc còn có thể được gọi là mô hình bản chất, mô hình
khái niệmmô hình nghiệp vụ.
+ Mô hình vật lý không chỉ thể hiện hệ thống là gì và làm gì mà còn thể hiện cách thức hệ
thống được cài đặt một cách vật lý và kỹ thuật. Nó phản ánh các lựa chọn công nghệ. Mô hình vật
lý còn có thể được gọi là mô hình cài đặt hay mô hình kỹ thuật.
- Sự cần thiết của mô hình lôgíc
42
+ Các mô hình lôgíc loại bỏ tư tưởng thiên lệch do ảnh hưởng bởi cách thức cài đặt hệ thống
đã có hoặc ý kiến chủ quan của một người nào đó về cách cài đặt cho hệ thống. Do đó, chúng
khuyến khích tính sáng tạo.
+ Các mô hình lôgíc làm giảm khả năng bỏ sót các yêu cầu nghiệp vụ trong trường hợp con
người bị chi phối quá nhiều vì các kết quả mang tính kỹ thuật. Nhờ việc tách biệt những gì hệ
thống phải làm với cách thức hệ thống thực hiện mà chúng ta có thể phân tích tốt hơn các yêu
cầu nhằm đảm bảo tính hoàn thiện, chính xác và nhất quán.
+ Các mô hình lôgíc cho phép truyền đạt với người dùng cuối dưới dạng ngôn ngữ phi kỹ
thuật hoặc ít kỹ thuật hơn.
3. Biểu đồ phân rã chức năng (Functional Diagrams)
3.1. Khái niệm
BFD là việc phân rã có thứ bậc đơn giản các chức năng của hệ thống trong miền khảo cứu thành
các chức năng nhỏ hơn, cuối cùng thu được một cây chức năng.
3.2. Các thành phần của BFD
- Ký hiệu chức năng là một hình chữ nhật bên trong
là tên chức năng
- Liên kết các chức năng là đường thẳng
- Tên chức năng là Động từ - bổ ngữ và động từ nên ở dạng thức mệnh lệnh

Ví dụ:







3.3. Đặc điểm của biểu đồ phân cấp chức năng
- Cung cấp cách nhìn tổng quát về chức năng của hệ thống, phạm vi cần phân tích
- BFD trình bày các chức năng của hệ thống ở dạng tĩnh, tức là không thể hiện được mối quan
hệ về chuyển giao thông tin giữa các chức năng, không thể hiện trình tự thực hiện xử lý thông tin.
- BFD thường được sử dụng để bổ trợ cho việc xây dựng biểu đồ luồng dữ liệu.
- Tên đặt cho các chức năng là quan trọng cho thành công của hệ thống. Mỗi chức năng cần có
một tên duy nhất, tên nên biểu thị thật sát, đầy đủ ý nghĩa của các chức năng con của chức năng
được đặt tên. Tên của chức năng cần phải phản ánh được các chức năng của thế giới thực chứ
không chỉ cho hệ thống thông tin.
Quản lý XN
Quản lý nhân
sự
Quản lý tài chính
Quản lý vật tư
Quản lý hồ sơ
Quản lý lao động
Quản lý kho
43
- BFD rất gần với sơ đồ tổ chức, tuy nhiên không được lầm lẫn giữa 2 sơ đồ.
Ví dụ: Sơ đồ cơ cấu tổ chức của xí nghiệp:






Biểu đồ phân cấp chức năng





3.4. Cách xây dựng BFD
BFD thể hiện các đầu việc mà hệ thống cần thực hiện để đạt được mục tiêu quản lý (quản lý cái
gì?), việc xây dựng dựa trên cơ sở của bước khảo sát, vì vậy khảo sát càng kỹ lưỡng thì việc xác
định mô hình chức năng các đầy đủ chính xác.





Thông tin có trên BFD:
- Thể hiện đầy đủ các chức năng mà hệ thống thực hiện
- Một chức năng lớn có thể được phân thành các chức năng nhỏ hơn
- Việc phân rã được tiến hành theo tiêu chí:
+ Theo bản chất xử lý (chức năng)
+ Theo bộ phận thực hiện
+ Theo dữ liệu phải xử lý
Xây dựng biểu đồ chức năng theo các bước sau:
- Xem cả hệ thống là 1 chức năng duy nhất, còn gọi là mức 0
- Phân rã khối chức năng ở mức trên thành các chức năng nhỏ hơn ở mức dưới, lần lượt
đánh số là mức 1, mức 2, ...
Mục tiêu quản lý
Mô hình chức năng
Làm gì?
Ban giám đốc
Phòng tổ chức Phòng KH, tài vụ Phòng vật tư
Quản lý xí nghiệp
Quản lý nhân sự Quản lý tài chính Quản lý vật tư
44








Trong mức cao nhất một chức năng chính sẽ là một trong những loại sau: Quản lý tiến trình
sản xuất, Quản lý cung cấp dịch vụ, Quản lý tài nguyên- tiền vốn, Quản lý con người. . .
Từ chức năng chính này chúng ta phân rã thành các chức năng con để hình thành nên một biểu
đồ hình cây mà gốc ở trên.
- Thông thường đối với hệ thống lớn cũng không nên có nhiều hơn 6 mức (vì khó theo dõi) và
đối với hệ thống nhỏ và trung bình không nên quá 3 mức.
- Một chức năng không nên quá 7 chức năng con (khó theo dõi mô hình)
- Sơ đồ nên tương đối "cân bằng" theo nghĩa mức của các chức năng con thấp nhất nên được
xác định tương đương như nhau.
- Phân tích chức năng đưa ra những chi tiết quan trọng mà những chi tiết đó sẽ được dùng nhiều
ở những giai đoạn sau của phân tích.
Ví dụ: biểu đồ phân rã chức năng hệ thống quản lý kinh doanh của xí nghiệp A


Hệ thống
A B C D
Mức 0
Mức 1
Mức 2
Quản lý kinh doanh
Quản lý hàng hóa Nhập hàng Bán hàng Báo cáo, thống kê
Cập nhật hàng hóa
Cập nhật giá bán
Lập hóa đơn
Kiểm kê hàng
hóa
Lập hóa đơn
Trả hàng
Quản lý nhà
cung cấp
Quản lý khách
hàng
Báo cáo hàng tồn
Báo cáo doanh thu
….
45
4. Biểu đồ luồng dữ liệu (Data Flow Diagrams)
- Khái niệm: DFD diễn tả tập hợp các chức năng của hệ thống và mối quan hệ chuyển giao
thông tin giữa các chức năng hay nói khác đi nó cung cấp bức tranh động về hệ thống.
- DFD được sử dụng là công cụ cơ bản trong tất cả các giai đoạn phân tích, thiết kế, trao đổi và
lưu trữ dữ liệu.
- Mục đích
+ Xác định yêu cầu của người sử dụng (NSD)
+ Lập kế hoạch và minh hoạ các phương án cho nhà phân tích và NSD xem xét
+ Là công cụ trao đổi giữa nhà phân tích và NSD do tính tường minh của DFD
+ Làm tài liệu đặc tả yêu cầu hình thức và đặc tả thiết kế hệ thống.
4.1. Các ký hiệu
- Tác nhân ngoài: biểu diễn bởi hình chữ nhật, bên trong là tên tác nhân

- Luồng dữ liệu: biểu diễn bởi mũi tên 1 chiều.


- Tiến trình: biểu diễn bở hình chữ nhật có bo tròn bốn góc, bên trong ghi tên tiến trình



- Kho dữ liệu: nơi lưu trữ dữ liệu, biểu diễn như hình dưới, bên trong ghi tên kho dữ liệu

4.1.1. Tác nhân ngoài
- Khái niệm: Một tác nhân ngoài là một nguồn cung cấp hoặc nhận thông tin dữ liệu của hệ
thống, tác nhân ngoài không phải là một phần của hệ thống, nó thể hiện mối quan hệ giữa hệ thống
với môi trường bên ngoài
- Tên của tác nhân ngoài phải là một danh từ
- Một tác nhân ngoài xác định một người, một đơn vị của tổ chức hay một tổ chức khác nằm
ngoài phạm vi của dự án nhưng có tương tác với hệ thống đang được nghiên cứu.
- Các tác nhân ngoài xác định “biên giới” hay phạm vi của hệ thống đang được mô hình hóa.
Khi phạm vi thay đổi, các tác nhân ngoài có thể trở thành các tiến trình và ngược lại
- Tác nhân ngoài thường là:
+ Phòng ban, bộ phận trong tổ chức nhưng nằm ngòai phạm vi hệ thống.
Tên tác nhân
Tên tiến trình
46
+ Một chi nhánh hoặc tổ chức bên ngoài
+ Một hệ thống thông tin khác của tổ chức
+ Người dùng cuối hoặc người quản lý của hệ thống
4.1.2. Kho dữ liệu
- Khái niệm: Một kho dữ liệu là một kho lưu trữ dữ liệu, nó chứa thông tin, kho chứa vật lý là
phi vật chất, nó có thể là một tủ hồ sơ, sách hoặc file máy tính.
- Tên của kho dữ liệu phải bắt đầu bằng danh từ, nó nói lên nội dung thông tin lưu trữ.
- Một kho dữ liệu là “dữ liệu tĩnh” khác với luồng dữ liệu là “dữ liệu chuyển động”. Một kho dữ
liệu cần biểu diễn cho “những thứ” mà tổ chức muốn lưu trữ dữ liệu, “những thứ” thường là:
+ Con người: ví dụ như khách hàng, phòng, nhân viên, thầy giáo, sinh viên, nhà cung cấp…
+ Các địa điểm: ví dụ như nơi sinh, tòa nhà, phòng, chi nhánh…
+ Các đối tượng: ví dụ như sách, máy móc, sản phẩm, nguyên liệu thô, bản quyền phần
mềm, gói phần mềm, công cụ, phương tiện vận tải…
+ Các sự kiện (dữ liệu được thu thập về chúng): ví dụ như việc bán hàng, giải thưởng, sự trì
hoãn, lớp học, chuyến bay, hóa đơn, đơn hàng, đăng ký, đặt chỗ…
+ Các khái niệm (dữ liệu về chúng rất quan trọng): ví dụ như việc giảm giá, tài khoản, khóa
học, chất lượng…
4.1.3. Luồng dữ liệu
- Khái niệm: Một luồng dữ liệu biểu diễn một sự di chuyển của dữ liệu (thông tin) giữa các tiến
trình hoặc kho dữ liệu, một luồng dữ liệu không biểu diễn một tài liệu hay một vật thể vật lý: nó
biểu diễn sự trao đổi thông tin trong tài liệu hoặc về vật thể.
- Luồng phải có tên và không trùng lặp với các luồng dữ liệu khác. Tên phải thể hiện logic của
thông tin chứ không phải dạng vật lý của nó và phải bắt đầu bằng danh từ
- Một luồng dữ liệu biểu diễn một đầu vào dữ liệu tới một tiến trình hoặc đầu ra dữ liệu từ một
tiến trình.
- Một luồng dữ liệu cũng có thể được dùng để biểu diễn việc tạo, đọc, xóa hoặc cập nhật dữ liệu
trong một file hoặc cơ sở dữ liệu (được gọi là kho dữ liệu).
- Một luồng dữ liệu ghép (gói) là một luồng dữ liệu chứa các luồng dữ liệu khác.
4.1.4. Tiến trình
-Khái niệm: Một tiến trình là một hoạt động được thực hiện trên luồng dữ liệu vào để tạo một
luồng dữ liệu ra. Tiến trình là chức năng được thực hiện bởi hệ thống để đáp ứng lại các luồng dữ
liệu hoặc điều kiện vào.
-Tên tiến trình: Sử dụng một động từ để gán nhãn cho hành động thực hiện bởi tiến trình (không
phải là tên của người hay phòng ban thực hiện nó trong DFD vật lý).
- Một tiến trình phải có ít nhất một luồng dữ liệu vào và ít nhất một luồng dữ liệu ra.
- Các loại tiến trình lôgíc
47
+ Chức năng: một tập các hoạt động tiếp diễn liên quan tới một nghiệp vụ; ví dụ như việc
bán hàng
+ Sự kiện (hay giao dịch, hoạt động): một công việc phải được hoàn thành toàn bộ (hoặc
như một phần của một chức năng); ví dụ như việc thu tiền thanh toán (là một công đoạn trong việc
bán hàng)
+ Tiến trình cơ bản (hay thao tác): một hoạt động hoặc thao tác chi tiết, rời rạc được yêu cầu
để đáp lại một sự kiện. Thông thường, một số thao tác như vậy phải được hoàn thành để đáp ứng
một sự kiện; ví dụ như ghi tiền thành toán
4.2. Quy tắc thiết kế biểu đồ luồng dữ liệu
- Không một tiến trình nào chỉ có cái ra mà không có cái vào. Nếu đối tượng chỉ có cái ra thì nó
là tác nhân nguồn.
- Không tiến trình nào chỉ có cái vào. Nếu đối tượng chỉ có cái vào thì nó là tác nhân đích.
- Tên tiến trình phải là một mệnh đề chỉ hành động.
- Dữ liệu không di chuyển trực tiếp từ kho đến kho.
- Dữ liệu không di chuyển trực tiếp từ tác nhân đến kho.
- Dữ liệu không di chuyển từ tác nhân đến tác nhân.
- Dữ liệu chỉ di chuyển từ tác nhân đến tiến trình, tiến tình đến tác nhân, tiến trình đến kho, kho
đến tiến trình và tiến trình đến tiến trình.
- Tên kho là một mệnh đề danh từ.
- Luồng dữ liệu chỉ có 1 hướng, chỉ hướng di chuyển của dữ liệu.
- Một luồng dữ liệu rẽ nhánh chỉ cùng một dữ liệu đi đến hai đối tượng khác nhau.
- Hai luồng dữ liệu chập lại chỉ cùng một dữ liệu đi đến một đối tượng từ hai đối tượng khác
nhau.
- Luồng dữ liệu không đi về chính nơi nó xuất phát.
- Luồng dữ liệu đi vào kho có nghĩa là ghi thông tin vào kho.
- Luồng dữ liệu đi ra kho có nghĩa là đọc thông ti từ kho.
- Tên luồng dữ liệu là một mệnh để danh từ.
4.3. Biểu đồ luồng dữ liệu mức ngữ cảnh
- Khái niệm: Biểu đồ luồng dữ liệu mức ngữ cảnh (Context data flow diagram) là một mô hình
chức năng được dùng để tài liệu hóa phạm vi của một hệ thống.. Để xây dựng biểu đồ ngữ cảnh, cần
phải:
+ Xác định biên giới của hệ thống
+ Xác định các tác nhân ngoài
+ Không chi tiết về các quá trình và kho dữ liệu của hệ thống
- Biểu đồ luồng dữ liệu mức ngữ cảnh bao gồm:
+ Một tiến trình duy nhất: mô tả toàn bộ hệ thống. Tên tiến tình thường là tên của hệ thống.
48
+ Các tác nhân: có mối quan hệ về thông tin với hệ thống.
+ Các luồng dữ liệu giữa các tác nhân và tiến trình.
Ví dụ: biểu đồ dữ liệu mức ngữ cảnh hệ thống quản lý kinh doanh









4.4. Phát triển biểu đồ dữ liệu các mức
4.4.1. Quá trình xây dựng
Kỹ thuật phổ biến được dùng để xây dựng DFD là kỹ thuật phân mức. Dựa theo BFD của hệ
thống, chúng ta sẽ xây dựng DFD theo nhiều mức, mỗi mức thể hiện trên một hoặc nhiều trang.
Nên đặt tên cho mỗi trang bằng tên của chức năng đang được phân tích trên trang đó.
Quá trình xây dựng:
- Xây dựng biểu đồ mức ngữ cảnh
- Xây dựng DFD mức đỉnh
+ Xác định các tiến trình.
+ Xác định các kho dữ liệu
+ Xác định các luồng dữ liệu ngoài giữa các tác nhân ngoài với các tiến trình.
+ Xác định các luồng dữ liệu ngoài giữa các tiến trình với các kho dữ liệu.
- Các DFD mức dưới đỉnh: là các quá trình con của các quá trình mức đỉnh nếu cần thiết phải
biểu diễn.
Hàng hóa, hóa đơn
Thống


Hóa đơn, hàng hóa
Yêu
Cầu

Người quản lý
Phiếu yêu cầu
Nhà cung cấp

Yêu cầu hàng
Khách hàng
Quản lý kinh
doanh
49

4.4.2. Các qui tắc xây dựng DFD
- Mỗi đối tượng có riêng một nhãn duy nhất để tránh gây hiểu nhầm
- Sử dụng một ĐỘNG TỪ để gán nhãn cho một quá trình (vì một quá trình là một hành động)
- Mỗi luồng dữ liệu phải được liên kết với ít nhất một quá trình
- Một tiến trình phải luôn có luồng dữ liệu vào và ra
- Không cần có một luồng dữ liệu (mà không có sự biến đổi) liên kết với một tiến trình (vì hoạt
động như vậy là vô giá trị)
- Các quá trình cha và các quá trình con tương ứng của nó phải có các luồng dữ liệu vào ra
giống nhau (nhưng các quá trình con có thể có luồng dữ liệu của riêng nó)
- Các luồng dữ liệu không thể tự phân tách được
- Một gói dữ liệu có thể gồm nhiều phần tử dữ liệu được truyền đi đồng thời tới cũng một đích
- Không được sử dụng mũi tên hai chiều vì luồng vào (cập nhật) và luồng ra (trích thông tin)
của một đối tượng mang nội dung thông tin khác nhau.
4.4.3. Phân tích hƣớng cấu trúc cổ điển (top-down)
Phân tích hướng cấu trúc cổ điển thông quá các bước sau:
- Vẽ các biểu đồ DFD vật lý dạng top-down để biểu diễn sự cài đặt vật lý hiện tại của hệ thống
bao gồm các giới hạn của nó.
- Chuyển đổi các DFD vật lý thành các DFD lôgíc tương ứng của nó.
- Vẽ các DFD lôgíc dạng top-down biểu diễn một hệ thống được cải thiện.
Hệ thống A
B C D
B1 B2 C1 D1 D2 D3
DFD mức ngữ cảnh
(tiến trình A)
DFD mức đỉnh (bao
gồm các tiến trình B,
C, D)
DFD mức dưới đỉnh
của tiến trình B (bao
gồm các tiến trình
B1, B2)
DFD mức dưới đỉnh
của tiến trình D (bao
gồm các tiến trình
D1, D2, D3)
DFD mức dưới đỉnh
B1
DFD mức dưới đỉnh
B2
DFD mức dưới đỉnh
D1
DFD mức dưới
đỉnh D3
Các DFD mức dưới
đỉnh các tiến trình
trong D1
50
- Mô tả tất cả các luồng dữ liệu, kho dữ liệu, quy tắc và thủ tục trong một từ điển dữ liệu.
- Một cách tuỳ chọn, đánh dấu các bản sao của DFD lôgíc để biểu diễn các giải pháp vật lý khác
nhau.
- Vẽ các DFD vật lý dạng top-down biểu diễn giải pháp được lựa chọn.
4.4.4. Phân tích hƣớng cấu trúc hiện đại (hƣớng sự kiện)
Phân tích hướng cấu trúc hiện đại theo các bước sau:
- Vẽ một DFD ngữ cảnh để xác lập phạm vi ban đầu của dự án.
- Vẽ một biểu đồ phân rã chức năng để phân chia hệ thống thành các hệ thống con.
- Tạo một danh sách các đáp ứng sự kiện hay use-case cho hệ thống để xác định các sự kiện mà
hệ thống phải có đáp ứng.
- Vẽ một DFD sự kiện (hay bộ xử lý sự kiện) cho từng sự kiện.
- Kết hợp các DFD sự kiện thành một biểu đồ hệ thống (hay đối với các hệ thống lớn thì là các
biểu đồ hệ thống con).
- Vẽ các DFD chi tiết cho các bộ xử lý sự kiện phức tạp hơn.
- Tài liệu hoá các luồng dữ liệu và quá trình trong từ điển dữ liệu.

Ví dụ: Mô hình hóa dữ liệu cho bài toán quản lý giao nhận hàng containertại North Freight bao gồm
các nghiệp vụ chính sau đây
- Quản lý hệ thống biểu cước: Hệ thống biểu cước nói chung và tại North Freight nói riêng
tương đối phức tạp, chia làm nhiều khoản mục, mức phí khác nhau. Tại North Freight có thể chia
làm 02 loại biểu cước là:
+ Biểu cước riêng: biểu cước áp dụng cho một số khách hàng, đại lý.
+ Biểu cước chung: biểu cước áp dụng cho các khách hàng, đại lý không trong biểu cước
riêng.
Như vậy ở đây ta cần phải quản lý được các thông tin về khách hàng, đại lý- hãng tàu, danh
sách loại biểu cước, phí chung và phí riêng của các loại biểu cước.
- Quản lý việc báo hàng và giao nhận hàng: Ngay khi có tàu của hãng vào, nhân viên giao nhận
sẽ lập một giấy báo hàng gửi cho khách hàng đến lấy hàng. Nếu khách hàng đến lấy trực tiếp thì
nhân viên xuất lệnh giao hàng, nếu nhờ bên khác đến lấy thì xuất giấy ủy quyền. Một giấy báo hàng
chỉ có thể xuất nhiều lệnh giao hàng hoặc nhiều giấy ủy quyền, không có giấy báo hàng nào có cả
lệnh giao hàng và giấy ủy quyền. Trên giấy báo hàng đến phải ghi thời gian tàu cập bến, số vận đơn,
cước phát sinh nếu có và tổng số lượng hàng. Ta cần lưu ý giấy ủy quyền phải có thời hạn, hết thời
hạn này, khách hàng phải đến ra hạn và nộp thêm chi phí lưu hàng.
Trong nghiệp vụ này ta cần quản lý các thông tin của giấy báo hàng, lệnh giao hang, giấy ủy
quyền, khách hàng, hãng tàu.
51
- Quản lý việc xuất hóa đơn VAT: Dựa trên các thông tin trong các lệnh giao hàng, giấy báo
hàng, các dịch vụ khách hàng đã sử dụng nhân viên sẽ ghi hóa đơn giá trị gia tăng cho khách hàng
với các hình thức có thuế, miễn thuế, không thuế và đơn giá đã có thuế hoặc chưa có thuế, các đơn
giá này tuân theo biểu cước quy định cho khách hàng và đại lý. Hệ thống được yêu cầu thiết kế in
trên mẫu hóa đơn có sẵn của công ty, có hai loại hóa đơn cho hãng tàu mà công ty làm đại lý và các
khách hàng thông thường. Hóa đơn có thể xuất theo lệnh giao hàng- giấy ủy quyền hoặc thông qua
số vận đơn. Với hóa đơn đại lý có mức phí riêng trong biểu cước dành cho đại lý và đã bao gồm
thuế VAT, do đó khi in ra hóa đơn cần quy đổi ngược để tính đơn giá trước thuế, hóa đơn này
không ghi thuế VAT dưới dạng % mà chi ghi giá trị thuế cụ thể.
Trong nghiệp vụ này ta cần quản lý các thông tin của khách hàng, hóa đơn GTGT.
- Thống kê báo cáo: Hàng ngày nhân viên phải thống kê các thông tin vè hàng xuất, nhập và hóa
đơn để lưu trữ và báo cáo. Báo cáo về hóa đơn bao gồm cả báo cáo chi tiết các chi phí,báo cáo này
sẽ được phòng tài vụ tổng hợp vào cuối ngày.
Dựa vào các thông tin trên, ta nhận thấy hệ thống cần chia làm các chức năng sau:
- Quản lý danh mục: quản lý các thông tin về khách hàng, hãng tàu và loại hàng hóa.
- Quản lý biểu cước: quản lý các hệ thống biểu cước dịch vụ chung và riêng theo từng loại hàng,
đại lý.
- Quản lý giấy báo hàng, lệnh giao hàng, giấy ủy quyền: cập nhật dữ liệu các loại giấy, lệnh và
thông báo đến khách hàng.
- Quản lý xuất hóa đơn giá trị gia tăng từ lệnh giao hàng, giấy báo hàng, số vận đơn.
- Thống kê báo cáo: cung cấp các thông tin tổng hợp cho người sử dụng như số lượng hàng
nhập- xuất, số lượng lệnh giao hàng, giấy báo hàng đã giao- chưa giao, thống kế hóa đơn giá trị gia
tăng...
52



Sơ đồ phân rã chức năng
53
Biểu đồ dữ liệu mức ngữ cảnh

Biểu đồ dữ liệu mức ngữ cảnh
Trong đó:
- 1: Hàng hóa, giấy báo hàng, lệnh giao hàng/ giấy ủy quyền, hóa đơn.
- 2: Yêu cầu thông tin hàng hóa
- 3: Yêu cầu thông tin thống kê, báo cáo
- 4: Thống kê, báo cáo
- 5: Thông tin về chuyến, thời gian cập cảng,...
- 6: Hóa đơn đại lý.

Biểu đồ này nói lện phạm vi hoạt động của hệ thống và việc trao đổi dữ liệu với các tác
nhân bên ngoài hệ thống. Biểu đồ có hai tác nhân chính gửi và nhận dữ liệu là hãng tàu,
khách hàng.
54
Biểu đồ dữ liệu mức đỉnh

Biểu đồ dữ liệu mức đỉnh
Trong đó:
- 1: Thông tin hãng tàu - 6: Giấy ủy quyền
- 2: Thông tin tàu đến, hàng đến - 7: Thông tin biểu cước
- 3: Thông tin khách hàng - 8: Biểu cước
- 4: Giấy báo hàng - 9: Hóa đơn giá trị gia tăng
- 5: Lệnh giao hàng

Biểu đồ này nêu lên sự liên kết, trao đổi dữ liệu giữa các chức năng chính của hệ
thống và giữa các chức năng này với các tác nhân đã được nêu ở biểu đồ trên. Trong đó
hãng tàu mà công ty làm đại lý, vừa đóng vai trò là người cung cấp dữ liệu, vừa có vai trò
như một khách hàng. Hóa đơn giá trị gia tăng bao gồm ba loại: hóa đơn từ lệng giao hàng/
giấy ủy quyền của khách hàng, hóa đơn của đại lý, hóa đơn từ vận đơn của giấy báo hàng.
Trong biểu đồ trên chưa bổ sung các kho dữ liệu, các kho này sẽ được mô tả ở các sơ đồ
dưới.
55
Biểu đồ dữ liệu mức dƣới đỉnh

Biểu đồ luồng dữ liệu chức năng lập biểu cước
Trong đó:
- 1: Thông tin loại hàng - 3: Biểu cước chung
- 2: Thông tin hãng tàu - 4: Biểu cước đại lý


Biểu đồ luồng dữ liệu chức năng báo hàng đến cho khách hàng
Trong đó:
- 1: Giấy báo hàng - 3: Giấy ủy quyền
- 2: Lệnh giao hàng
56

Biểu đồ luồng dữ liệu chức năng lập hóa đơn

Trong đó:
- 1: Biểu cước chung - 4: Hóa đơn quan vận đơn
- 2: Biểu cước đại lý - 5: Hóa đơn đại lý
- 3: Hóa đơn thông thường - 6: Hóa đơn
57
CÂU HỎI CUỐI CHƢƠNG
1. Nêu các quy tắc thiết kế biểu đồ DFD?
2. Nêu quá trình thiết kế biểu đồ DFD.
3. Thiết kế biểu đồ phân rã chức năng cho hệ thống mô tả trong bài tập lớn.
4. Thiết kế biểu đồ DFD cho hệ thống mô tả trong bài tập lớn.
58
Chƣơng V. Mô hình hóa cơ sở dữ liệu
1. Mô hình hóa dữ liệu
1.1. Khái niệm
Mô hình hoá dữ liệu (mô hình hoá cơ sở dữ liệu, mô hình hoá thông tin) là một kỹ thuật
để tổ chức và tài liệu hoá dữ liệu của hệ thống trong một mô hình. Kỹ thuật này xác định các
yêu cầu nghiệp vụ đối với một cơ sở dữ liệu. Mô hình hóa dữ liệu thường được gọi là mô
hình hóa cơ sở dữ liệu vì cuối cùng một mô hình dữ liệu luôn được cài đặt thành cơ sở dữ
liệu.
Biểu đồ quan hệ thực thể (Entity Relationship Diagram - ERD) mô tả dữ liệu dưới dạng
các thực thể và các quan hệ được mô tả bởi dữ liệu. ERD xác định các đơn vị thông tin cơ sở
cần thiết cho hệ thống (các thực thể) và các mối quan hệ giữa chúng. Nghĩa là tất cả các dữ
liệu chỉ được lưu giữ một lần trong toàn bộ hệ thống.
1.2. Từ mô hình dữ liệu tới cài đặt cơ sở dữ liệu
- ERD: là một mô hình khái niệm của các thực thể dữ liệu, các thuộc tính (đặc điểm) và
các quan hệ (với các thực thể khác) của chúng trong một hệ thống thông tin (độc lập kỹ
thuật). (Phân tích)
- Mô hình dữ liệu quan hệ (Relational Data Model - RDM): một bản thiết kế cho việc cài
đặt của một mô hình dữ liệu khái niệm (ERD) trong môi trường cơ sở dữ liệu quan hệ (độc
lập phần mềm). (Thiết kế)
- Sơ đồ quan hệ : một sơ đồ thể hiện cách thức một mô hình dữ liệu được cài đặt với hệ
quản trị cơ sở dữ liệu (như Microsoft Access hay MS SQL Server…). (Cài đặt)
1.3. Vai trò của biểu đồ quan hệ thực thể
- Cơ sở dữ liệu = dữ liệu + quan hệ
- ERD được dùng để mô hình hoá dữ liệu và quan hệ của chúng
- ERD là một biểu diễn đồ hoạ của mô hình dữ liệu khái niệm
- ERD là độc lập tài nguyên: nó không gắn với bất cứ môi trường cơ sở dữ liệu cụ thể nào
2. Các phần tử của biểu đồ quan hệ thực thể (ERD)
2.1. Thực thể
Thực thể là một nhóm các thuộc tính tương ứng với một đối tượng khái niệm mà chúng ta
cần thu thập và lưu trữ dữ liệu về nó
- Các vật thể, con người, địa điểm, sự kiện, khái niệm mà sự tồn tại của nó không phụ
thuộc vào các thực thể khác
+ Thực thể là một tập các thể hiện của đối tượng mà nó biểu diễn
+ Thực thể phải có một tên duy nhất (một danh từ số ít), từ định danh duy nhất và ít
nhất một thuộc tính (chính là từ định danh)
+ Các loại thực thể có thể có:
59
o Con người: là những người thực hiện chức năng nào đó trong hoặc ngoài hệ
thống. Ví dụ: công ty, khách hàng, phòng ban, bộ phận, nhân viên, giáo viên, sinh viên, nhà
cung cấp…
o Địa điểm: là nơi được sử dụng bởi con người. Ví dụ: nơi bán hàng, toà nhà,
phòng, chi nhánh…
o Vật thể: là những đối tượng vật lý thấy rõ. Ví dụ: sách, tạp chí, sản phẩm, nguyên
liệu thô, công cụ…
o Sự kiện: là những gì xảy ra theo thời gian hoặc theo một quy trình nhất định. Ví
dụ: giải thưởng, sự huỷ bỏ, chuyến bay, giờ học, việc lập hoá đơn, việc đặt hàng, việc đăng
ký, sự gia hạn, sự đặt chỗ, việc bán hàng…
o Khái niệm: là những gì không thể nhìn thấy được. Ví dụ: tài khoản, khoảng thời
gian, khoá học, nguồn tài chính, quy tắc, luật lệ…
- Trong ERD, thực thể được ký hiệu là một hình chữ nhật, mối thực thể tương đương với
một bảng dữ liệu trong cơ sở dữ liệu của hệ thống.
-Thể hiện của thực thể: là một thực thể cụ thể. Ví dụ thực thể SinhVien có thể có nhiều
thể hiện như Betty, John, Lisa…
2.2. Thuộc tính
Mỗi thực thể bao gồm nhiều thông tin, mỗi thông tin là một thuộc tính của tập thực thể,
ứng với một trường trong bảng dữ liệu tương ứng. Ví dụ: khách hàng Nguyễn Văn A có năm
sinh là 1981, có số điện thoại là 8534… . Tập thực thể khách hàng sẽ có các thuộc tính “năm
sinh”, “số điện thoại”. Một thuộc tính là một đặc tính mô tả hoặc đặc điểm quan tâm của một
thực thể.
-Kiểu dữ liệu (Data type) của một thuộc tính xác định kiểu dữ liệu có thể lưu trữ được
trong thuộc tính đó
- Phạm vi (Domain) của một thuộc tính xác định các giá trị mà thuộc tính đó có thể chứa
một cách hợp lệ
- Giá trị mặc định (default value) của một thuộc tính là giá trị sẽ được ghi vào nếu không
được xác định bởi người dùng
Có 3 loại thuộc tính:
- Thuộc tính khóa: gồm một hoặc nhiều thuộc tính trong thực thể được dùng để gán cho
mỗi thể hiện thực thể một cách tham khảo duy nhất. Ví dụ thuộc tính Mã sinh viên trong thực
thể Sinh viên
- Thuộc tính mô tả: là các thuộc tính dữ liệu mô tả về một đối tượng và không được chọn
làm thuộc tính khóa. Ví dụ các thuộc tính Tên sinh viên, Địa chỉ…
- Thuộc tính kết nối: là thuộc tính mà với thực thể này thì là thuộc tính mô tả nhưng với
thực thể khác thì là thuộc tính khóa, nó đóng vai trò kết nối các thực thể có quan hệ với nhau
60
2.3. Mối quan hệ
Một quan hệ tài liệu hoá một liên kết giữa một, hai hoặc nhiều thực thể. Nó phải có một
cái tên (và có thể mang dữ liệu).
Quan hệ 1-1:
- Là mối quan hệ trong đó một thực thể của tập thực thể này tương ứng với duy nhất một
thực thể của tập thực thể kia và ngược lại. Ví dụ, một thực thể hóa đơn hàng chỉ ứng với duy
nhất một thực thể chi tiết hóa đơn mô tả nó.
- Quan hệ 1-1 được biểu diễn bằng một mũi tên hai đầu hoặc là một đoạn thẳng…
- Quan hệ này sẽ dẫn tới việc nhập chung hai tập thực thể thành một tập thực thể, tập thực
thể mới phải bao gồm các thuộc tính của hai tập thực thể cũ.
Quan hệ 1-n:
- Là mối quan hệ mà trong đó một thực thể của tập thực thể này có quan hệ với nhiều thực
thể của tập thực thể kia. Ví dụ, một khách hàng có thể đặt nhiều đơn hàng nên một thực thể
khách hàng trong tập thực thể khác hàng có quan hệ với nhiều thựuc thể đơn hàng trong tập
thực thể đơn hàng.
- Quan hệ 1- nhiều được biểu diễn bằng một mũi tên 1 đầu hướng từ bên nhiều tới bên 1
hoặc là một đoạn thẳng với một đầu là trạc ba hướng về bên nhiều…
- Quan hệ này đóng vai trò rất quan trọng thể hiện mối liên hệ giữa các thực thể trong mô
hình. Ở đây, thuộc tính khóa của bên một sẽ là thuộc tính kết nối của bên nhiều.
Quan hệ n-n:
- Là mối quan hệ mà trong đó một thực thể của tập thực thể này có quan hệ với nhiều thực
thể của tập thực thể kia và ngược lại. Ví dụ, một nhà cung cấp trong tập thực thể nhà cung
cấp có thể cung cấp nhiều loại hàng trong tập thực thể Hàng hóa và ngược lại một loại hàng
có thể được cung cấp bới nhiều nhà cung cấp.
- Quan hệ nhiều - nhiều được biểu diễn bằng một đoạn thẳng hoặc là một đoạn thẳng có
trạc ba ở cả hai đầu…
- Quan hệ này không thể hiện được mối quan hệ giữa hai thực thể cũng như không cho
thấy điều gì về mặt nghiệp vụ, nên thường tách thành hai quan hệ 1- n bằng cách tạo một tập
thực thể trung gian có quan hệ 1- n với cả hai tập thực thể đã có. Ví dụ với quan hệ n-n giữa
nhà cung cấp và hàng hóa, ta sẽ tạo tập thực thể nhà cung cấp/hàng hóa có quan hệ là một nhà
cung cấp gồm nhiều dòng nhà cung cấp/hàng hóa và một hàng hóa lại ứng với nhiều dòng
nhà cung cấp/hàng hóa.
3. Xây dựng biểu đồ quan hệ thực thể
3.1. Các bƣớc mô hình hóa dữ liệu lôgíc
- Mô hình dữ liệu ngữ cảnh: Để thiết lập phạm vi dự án
- Mô hình dữ liệu dựa trên khoá
61
+ Loại bỏ các quan hệ không cụ thể
+ Thêm các thực thể có liên quan
+ Bao gồm các khoá chính
+ Xác định chính xác số yếu tố
- Mô hình dữ liệu với thuộc tính đầy đủ
+ Tất cả các thuộc tính còn lại
+ Các tiêu chuẩn nhóm con
- Mô hình dữ liệu được chuẩn hoá
3.2. Trình tự xây dựng ERD
- Xác định các thực thể
- Xác định bậc của các quan hệ giữa các thực thể
- Hoàn thiện các quan hệ với các số yếu tố
- Xây dựng mô hình
3.3. Qui tắc xây dựng ERD
- Mỗi thực thể phải có tên
- Mỗi thực thể phải có định danh
- Mỗi thể hiện không thể là một thực thể
- Mỗi quan hệ phải có tên (có thể mang hoặc không mang dữ liệu)
- Số yếu tố phải hợp lý (rõ ràng ngữ cảnh)
4. Xây dựng biểu đồ dữ liệu quan hệ (RDM)
Mô hình dữ liệu quan hệ (RDM – Relational Data model) là công cụ tiếp theo sau ERD
được dùng trong việc mô hình hóa dữ liệu nhằm mục đích xác định danh sách các thuộc tích
của các thực thể.
Quá trình xây dựng RDM bao gồm các bước:
- Xác định các thuộc tính cần thiết.
-Chuẩn hóa các thực thể.
-Xác định các mối quan hệ giữa các thuộc tính của các thực thể.
4.1. Xác định thuộc tính
Để xác định các thuộc tính của các thực thể, cần dựa vào những yếu tố sau:
- Sự hiểu biết về hệ thống đang phân tích.
- Quá trình phỏng vấn, trao đổi với người sử dụng.
- Các báo cáo, biểu mẫu được dùng trong hệ thống hiện tại.
Từ những thông tin thu thập được, ta sẽ lập danh sách các thuộc tính cho các thực thể đã
được xác định trong ERD. Phân biệt các thuộc tính khóa bằng cách gạch dưới.
4.2. Phân tích và chuẩn hóa dữ liệu
62
Phân tích dữ liệu là một quá trình chuẩn bị một mô hình dữ liệu cho việc cài đặt thành
một cơ sở dữ liệu đơn giản, không dư thừa, mềm dẻo và dễ thích ứng. Kỹ thuật cụ thể được
gọi là sự chuẩn hóa.
Chuẩn hóa là một kỹ thuật tổ chức các thuộc tính dữ liệu sao cho chúng được nhóm thành
các thực thể không dư thừa, ổn định, mềm dẻo và dễ thích ứng:
- Không có sự lặp lại các thuộc tính ở các bảng khác nhau, trừ thuộc tính khóa và thuộc
tính kết nối
- Không chứa các thuộc tính có giá trị là kết quả tính được của các thuộc tính khác. Ví dụ,
thuộc tính giá thành là kết quả của thuộc tính số lượng nhân với thuộc tính đơn giá nên cần
phải loại bỏ.
- Không có vai trò giống nhau giữa các thực thể
Khái niệm phụ thuộc hàm:
- Phụ thuộc hàm đơn trị: từ 1 giá trị của khóa trong bảng, ta chỉ xác định được 1 giá trị
cho các thuộc tính khác.VD: với mỗi mã khách hàng, chỉ có duy nhất một giá trị Họ tên, số
điện thoại, địa chỉ…
- Phụ thuộc hàm đa trị: 1 giá trị của khóa trong bảng lại ứng với nhiều giá trị của các
thuộc tính khác. Ví dụ: ứng với một mã số học sinh lại có nhiều môn học khác nhau vì một
học sinh có thể học nhiều môn học.
- Như vậy, nếu có thuộc tính không phụ thuộc hàm vào khóa thì nó phải nằm trong một
thực thể khác. Quá trình chuẩn hóa được thực hiện dựa trên khái niệm phụ thuộc hàm nêu
trên.
Chuẩn hóa dạng 1:
- Yêu cầu: các thuộc tính nào có thể xuất hiện nhiều lần với cùng một thực thể thì loại bỏ
ra.
- Các thuộc tính bị loại ra sẽ cùng với thuộc tính khóa của thực thể ban đầu tạo thành một
tập thực thể mới.
Chuẩn hóa dạng 2:
- Yêu cầu: tất cả các thuộc tính trong thực thể phải phụ thuộc hàm vào toàn bộ khóa.
- Đối với các thực thể chỉ có một trường là khóa thì đương nhiên thỏa mãn dạng chuẩn 2.
- Đối với các thực thể có khóa bao gồm 2 thuộc tính trở lên, nếu trong đó có những thuộc
tính phụ thuộc hàm đơn trị vào một bộ phận của khóa thì tách các thuộc tính đó ra thành 1
thực thể mới với khóa là bộ phận khóa của thực thể ban đầu mà nó phụ thuộc hàm.
Chuẩn hóa dạng 3:
- Yêu cầu: tất cả các thuộc tính phải phụ thuộc đơn trị vào khóa và không phụ thuộc hàm
đơn trị vào bất kỳ thuộc tính nào không phải là khóa trong thực thể.
63
- Tách những thuộc tính phụ thuộc hàm đơn trị vào thuộc tính không phải là khóa, đưa
chúng vào thực thể mới có khóa chính là thuộc tính mà nó phụ thuộc hàm.
Ví dụ: xét quá trình xây dựng các thuộc tính cho các tập thực thể dựa trên mẫu hóa đơn bán
hàng của một công ty
Số HĐ:
HÓA ĐƠN BÁN
Ngày……………
Họ tên khách hàng:……………………….Mã số khách hàng:………………...
Địa chỉ:………………………………………………………………
Mã sô mặt
hàng
Tên hàng Số lƣợng Đơn giá
(1000 vnđ)
Thành
tiền(1000 vnđ)
110026 Chuột 01 150 150
332253 Bàn phím 01 350 350
156535 Màn hình 01 2,100 2,100
567409 Hdd 2TB 02 2,000 4,000
TỔNG 6,500

64
Quá trình chuẩn hóa diễn ra như sau:
Thuộc tính ban
đầu chưa chuẩn hóa
Chuẩn hóa dạng 1
1NF
Chuẩn hóa dạng 2
2NF
Chuẩn hóa dạng 3
3NF
Số hiệu đơn
Mã số khách hàng
Ngày đặt hàng
Tên khách hàng
Địa chỉ
Mã số mặt hàng
Tên mặt hàng
Số lượng
Đơn giá
Số hiệu đơn
Mã số khách hàng
Ngày đặt hàng
Tên khách hàng
Địa chỉ
Số hiệu đơn
Mã số mặt hàng
Tên mặt hàng
Số lượng
Đơn giá
Số hiệu đơn
Mã số khách hàng
Ngày đặt hàng
Tên khách hàng
Địa chỉ
Số hiệu đơn
Mã số mặt hàng
Số lượng
Đơn giá
Mã số mặt hàng
Tên mặt hàng
Số hiệu đơn
Mã số khách hàng
Ngày đặt hàng
Mã số khách hàng
Tên khách hàng
Địa chỉ
Số hiệu đơn
Mã số mặt hàng
Số lượng
Đơn giá
Mã số mặt hàng
Tên mặt hàng
- Sau khi chuẩn hóa, thu được các thực thể sau:
Đơn hàng bán (Số hiệu đơn hàng, Mã số khách hàng, Ngày đặt hàng)
Khách hàng (Mã số khách hàng, Tên khách hàng, Địa chỉ khách hàng)
Dòng đơn hàng (Số hiệu đơn hàng, Mã số mặt hàng, Số lượng, Đơn giá)
Mặt hàng (Mã số mặt hàng, Tên mặt hàng)
- Kết hợp các tập thực thể chung.
Do việc chuẩn hóa xuất phát từ nhiều tài liệu khác nhau nên có thể sau khi chuẩn hóa sẽ
xuất hiện các thực thể giống nhau. Cần phải hợp nhất chúng thành một thực thể mà chứa đủ
các thuộc tính. Rất có thể sau giai đoạn này thì thực thể thu được sẽ không còn ở dạng chuẩn
3 nên cần phải thực hiện chuẩn hóa lại các thực thể mới.
Ví dụ: Có 2 tập thực thể đơn đặt hàng được chuẩn hóa từ 2 tài liệu là đơn đặt hàng và tài
liệu giao hàng như sau:
Đơn hàng (Số hiệu đơn hàng, Mã số khách hàng, Ngày đặt hàng)
Đơn đặt hàng (Số hiệu đơn hàng, Tình trạng đơn hàng, Địa chỉ giao hàng)
Sau khi kết hợp có:
Đơn hàng (Số hiệu đơn hàng, Mã số khách hàng, Ngày đặt hàng, Tình trạng đơn hàng,
Địa chỉ giao hàng)

Thực thể mới không còn thỏa dạng chuẩn 3 vì địa chỉ giao nhận phụ thuộc hàm vào Mã
số khách hàng là thuộc tính không phải là khóa của thực thể. Thực hiện chuẩn hóa, tách thuộc
tính Địa chỉ giao nhận ra khỏi thực thể ta được thực thể mới:
65

Đơn hàng (Số hiệu đơn hàng, Mã số khách hàng, Ngày đặt hàng, Tình trạng đơn hàng)
4.3. Xác định các mối quan hệ
Ma trận thực thể/khóa.
- Để xác định các mối quan hệ giữa các thực thể , ta cần lập bảng ma trận thực thể/khóa.
Trong đó, các cột liệt kê các tập thực thể, các hàng liệt kê các thuộc tính khóa của các thực
thể.
- Ứng với mỗi ô giao giữa hàng và cột, nếu thuộc tính khóa có trong thực thể, ta đánh dấu X,
nếu không là khóa của thực thể nhưng có xuất hiện trong đó thì đánh dấu O. Ví dụ:
Thực thể
Thuộc tính
khóa
Đơn
hàng
Khách
hàng
Dòng
đơn hàng
Mặt
hàng
Giao
nhận
Dòng
giao
hàng
Số hiệu đơn
hàng
X X X
Mã số khách
hàng
O X X
Mã số mặt
hàng
X X X
Số hiệu giao
nhận
X X

Thiết lập các mối quan hệ.
Dựa theo bảng ma trận thực thể/khóa, ta xác định các mối quan hệ bằng cách bắt đầu từ
cột thứ nhất, từ ô chứa khóa của nó, ta chiếu qua các ô kế tiếp trên cùng một hàng để xem nếu
ô nào có chứa dấu X hoặc O thì ta có một liên kết giữa thực thể đang xét với thực thể có ô
chứa dấu trên hàng đó.
4.4. Xây dựng mô hình RDM
- Sau khi đã thực hiện xong 3 bước trên, ta lập mô hình quan hệ.
- Tiếp theo, cần điều chỉnh để có được mô hình dữ liệu hoàn chỉnh:
+ So sánh ERD được xây dựng ban đầu với RDM để chỉnh lý những điểm khác biệt
sao cho hai mô hình phải phản ánh chính xác lẫn nhau.
+ Trong một số trường hợp, nhà phân tích có thể đưa vào hoặc loại bỏ những quan hệ
phụ để làm trong sáng mô hình.
5. Từ điển dữ liệu
66
Từ điển dữ liệu là bộ phận của tư liệu trong phân tích thiết kế, nó mô tả nội dung của các
đối tượng theo định nghĩa có cấu trúc
Trong DFD các chức năng xử lý, kho dữ liệu, luồng dữ liệu chỉ mô tả ở mức khái quát
thường là tập hợp các khoản mục riêng lẻ. Các khái quát này cần được mô tả chi tiết hoá hơn
qua công cụ từ điển dữ liệu
Từ điển dữ liệu là sự liệt kê có tổ chức các phần tử dữ liệu thuộc hệ thống, liệt kê các mục
từ chỉ tên gọi theo một thứ tự nào đó và giải thích các tên một cách chính xác chặt chẽ ngắn
gọn để cho cả người dùng và người phân tích hiểu chung cái vào, cái ra, cái luân chuyển.
CÂU HỎI CUỐI CHƢƠNG
1. Nêu quá trình mô hình hóa dữ liệu.
2. Nêu 03 dạng chuẩn dữ liệu.
3. Nêu quá tình chuẩn hóa dữ liệu.
4. Xây dựng sơ đồ E-R cho hệ thống được mô tả trong bài tập lớn.
67
Chƣơng VI. Tổng quan về thiết kế hệ thống
1. Các hƣớng tiếp cận thiết kế hệ thống
1.1. Các tiếp cận hƣớng mô hình
Thiết kế hướng mô hình (Model-driven) là một cách tiếp cận thiết kế hệ thống nhấn mạnh
vào việc vẽ các mô hình hệ thống để tài liệu hóa các khía cạnh cài đặt và kỹ thuật của một hệ
thống. Các mô hình thiết kế thường được dẫn xuất từ các mô hình lôgíc được phát triển trước
đó theo cách phân tích hướng mô hình. Cuối cùng thì các mô hình thiết kế hệ thống sẽ trở
thành các bản thiết kế phục vụ cho việc xây dựng và cài đặt hệ thống mới.
Trong tiếp cận hướng mô hình có 3 kỹ thuật là thiết kế hướng cấu trúc, kỹ thuật thông tin
và thiết kế hướng đối tượng. Ngày nay, các tiếp cận hướng mô hình thường được củng cố nhờ
vào việc sử dụng các công cụ tự động hóa. Các công cụ thường dùng:
- Công cụ đi kèm bộ công cụ lập trình: Oracle Designer
- Các công cụ đơn giản: MS.Word, MS.Visio, Smartdraw...
- Các công cụ chuyên dụng: Rational Rose, Rational XDE for platforms...
 Thiết kế hƣớng cấu trúc hiện đại (Modern Structured Design):
- Là kỹ thuật phân rã chức năng hệ thống ra thành nhiều phần, mỗi thành phần lại được
thiết kế chi tiết hơn ở các bước sau. Thiết kế hướng cấu trúc còn được gọi là thiết kế chương
trình từ tổng quan đến chi tiết (top- down).
- Mỗi modun ở mức thấp nhất chỉ thực hiện một phần việc nhất định, ít liên quan đến
công việc của các modun khác.
- Thường sử dụng vì đơn giản, dễ hiểu, thuận tiện trong triển khai và nâng cấp.
- Mô hình phần mềm được dẫn xuất từ thiết kế hướng cấu trúc được gọi là biểu đồ cấu
trúc (structure chart). Biều đồ này được xây dựng từ các luồng dữ liệu trong chương trình.
Thiết kế hướng cấu trúc được thực hiện trong giai đoạn phân tích hệ thống. Tuy nhiên, nó
không bao trùm mọi khía cạnh của việc thiết kế, như thiết kế đầu vào/đầu ra hay cơ sở dữ
liệu.
 Kỹ thuật thông tin (Information Engineering):
- Là cách tiếp cận hướng mô hình và lấy dữ liệu làm trung tâm nhưng chú trọng đến việc
tổ chức các thông tin: nội dung thông tin và quan hệ giữa các thành phần thông tin.
- Công cụ chủ yếu của kỹ thuật thông tin là sơ đồ mô hình dữ liệu
- Kỹ thuật thông tin được sử dụng khi thiết kế chương trình dựa trên mô hình cơ sở dữ
liệu quan hệ.
 Làm bản mẫu (Prototyping)
- Bản mẫu là một chương trình nhỏ, chưa hoàn chỉnh nhưng đủ để cho người xem hình
dung về chức năng, hoạt động của chương trình cần thực hiện:
- Đây là phương pháp mô hình hoá trên mã nguồn chứ không trên bản vẽ
68
- Thuận tiện để làm bản demo cho người dùng cuối xem (không đòi hỏi phải hiểu những
ngôn ngữ mô hình hoá)
- Phương pháp này sớm phát hiện những sai khác về nghiệp vụ
- Phương pháp này chỉ phù hợp với các dự án nhỏ, ít phức tạp
 Thiết kế hƣớng đối tƣợng (Object Oriented Design):
- Sử dụng cách tiếp cận theo hướng đối tượng - phân biệt rõ ràng hai yếu tố:
+ dữ liệu (thuộc tính)
+ chức năng (hành vi) và các mối tương tác (sự kiện)
- Phương pháp này là bước tiếp theo của Phân tích hệ thống hướng đối tượng, do đó đòi
hỏi những kết quả từ bước trước: định nghĩa đối tượng, thuộc tính, hành vi, sự kiện...
1.2. Phát triển ứng dụng nhanh
- Kỹ thuật xây dựng ứng dụng nhanh chóng bằng cách phối hợp sử dụng nhiều kỹ thuật:
tổ hợp thông tin và làm bản mẫu.
- Kỹ thuật phát triển ứng dụng kết hợp (Joint Application Development): phát triển ứng
dụng bằng cách gộp chung hai giai đoạn phân tích và thiết kế. Nhấn mạnh sự tham gia đồng
thời của nhà phân tích, thiết kế, người dùng cuối, chuyên gia hệ thống trong quá trình xây
dựng. Thường được dùng phát triển các ứng dụng nhỏ trong thời gian ngắn.
2. Các công việc cụ thể trong giai đoạn thiết kế
- Thiết kế kiến trúc ứng dụng: Lựa chọn công nghệ sử dụng cho dự án, Đưa ra mô hình
vật lý của hệ thống.
- Thiết kế cơ sở dữ liệu
+ Đưa ra mô hình dữ liệu.
+ Lựa chọn hệ quản trị CSDL và tối ưu hoá mô hình dữ liệu theo hệ quản trị đã lựa
chọn
- Thiết kế giao diện hệ thống: đầu ra, đầu vào, giao diện người dùng, báo cáo...
- Đưa ra các đặc tả hệ thống cho lập trình viên
CÂU HỎI CUỐI CHƢƠNG
1. Nêu các công việc khi thiết kế hệ thống?
2. Nêu các phương pháp thiêt kế hệ thống
69
Chƣơng VII. Thiết kế cơ sở dữ liệu

1. Các phƣơng thức lƣu trữ dữ liệu
Có hai phương thức lưu trữ dữ liệu phổ biến là file và cơ sở dữ liệu
1.1. File
Là một tập hợp của các bản ghi tương tự nhau. Các file không có liên quan với nhau trừ
khi được liên kết trong code của chương trình ngoài
- Ưu điểm:
+ Dễ dàng thiết kế nếu chỉ dùng cho một ứng dụng
+ Tối ưu về hiệu năng nếu chỉ dùng cho một ứng dụng
- Nhược điểm:
+ Khó thích ứng hoặc khó dùng chung giữa nhiều ứng dụng
+ Hay bị dư thừa dữ liệu (cùng một thông tin lại được lưu trữ trên nhiều file khác
nhau)
1.2. Cơ sở dữ liệu
Là một tập hợp của nhiều files (bảng) có quan hệ với nhau. Bản ghi của một file (hay
bảng) có thể có mối quan hệ vật lý với một hay nhiều bản ghi ở các file (hay bảng) khác.
- Ưu điểm:
+ Tách biệt dữ liệu khỏi logic chương trình do đó tăng tính thích ứng, khả chuyển của
chương trình.
+ Kiểm soát được quy mô, độ lớn của dữ liệu
+ Tối ưu trong việc chia sẻ dùng chung giữa nhiều ứng dụng
+ Giảm thiểu dư thừa dữ liệu
- Nhược điểm:
+ Phức tạp hơn công nghệ file rất nhiều
+ Ở khía cạnh nào đó truy xuất cơ sở dữ liệu thường chậm hơn so với truy xuất file
+ Cần tuân thủ nhiều nguyên tắc khi thiết kế để có thể khai thác được lợi ích của cơ sở
dữ liệu quan hệ
+ Cần có chuyên gia sử dụng hệ quản trị cơ sở dữ liệu
2. Kiến trúc dữ liệu
Kiến trúc dữ liệu mô tả cách thức:
- sử dụng file/cơ sở dữ liệu để lưu trữ dữ liệu
- công nghệ file/cơ sở dữ liệu được lựa chọn sử dụng
- cơ cấu quản lý được thiết lập để quản lý các nguồn dữ liệu
Thông thường dữ liệu được lưu trữ đồng thời bởi nhiều cách thức, phương tiện:
- Các files.
70
- Cơ sở dữ liệu cá nhân, cơ sở dữ liệu chung của nhóm, cơ sở dữ liệu giao dịch,
- Nhà kho dữ liệu (tổng hợp các nguồn)...
Hệ quản trị CSDL:
- Là một phần mềm dùng để quản lý việc tạo, truy nhập, kiểm soát, quản lý các đối
tượng dữ liệu của một hay nhiều cơ sở dữ liệu.
- Phần nền tảng của một HQTCSDL là một bộ máy dữ liệu - data engine
- Ngôn ngữ định nghĩa dữ liệu (Data Definition Language - DDL) là một phần của bộ
máy dùng để định nghĩa các bảng, trường, quan hệ
- Ngôn ngữ thao tác dữ liệu (Data Manipulation Language - DML) dùng để thêm, sửa,
xoá và di chuyển giữa các trường trong cơ sở dữ liệu
3. Triển khai mô hình dữ liệu logic dựa trên một cơ sở dữ liệu quan hệ
3.1. Cơ sở dữ liệu quan hệ
Là cơ sở dữ liệu lưu trữ và quản lý dữ liệu trong những bảng 2 chiều. Các bảng này có thể
có quan hệ với nhau thông qua các trường khoá
Đặc thù của cơ sở dữ liệu quan hệ:
- Mô hình dữ liệu vật lý (Schema)
- DDL và DML được thể hiện bởi ngôn ngữ SQL
- Triggers là các chương trình được nhúng cùng cơ sở dữ liệu và tự động thực thi khi
cơ sở dữ liệu được cập nhật
- Thủ tục thường trú (Stored procedure) là chương trình được nhúng cùng cơ sở dữ
liệu và thực thi từ câu lệnh của ứng dụng
3.2. Mô hình hoá dữ liệu
Một mô hình dữ liệu tốt là mô hình trong đó:
- Mỗi thuộc tính mô tả một và chỉ một thực thể
- Mỗi thuộc tính chỉ tồn tại ở duy nhất một thực thể (trừ thuộc tính khoá ngoại)
Để có được một mô hình dữ liệu tốt, ta tiến hành các bước chuẩn hoá (xem thêm phần
phân tích hệ thống)
Chuẩn hoá dữ liệu - Một thực thể logic hay một bảng vật lý được gọi là:
- Ở dạng chuẩn thứ nhất (NF1) nếu không có thuộc tính (trường) nào có hai giá trị
trong cùng một thể hiện
- Ở dạng chuẩn thứ hai (NF2) nếu nó đã ở dạng chuẩn thứ nhất và giá trị các trường
không phải là khoá chính hoàn toàn phụ thuộc vào khoá chính.
- Ở dạng chuẩn thứ ba (NF3) nếu nó đã ở dạng chuẩn thứ hai và giá trị các trường
không phải khoá chính không phụ thuộc các trường không phải khoá chính khác
Các bước tạo mô hình dữ liệu vật lý
- Xem lại mô hình dữ liệu logic
71
- Tạo bảng cho mỗi thực thể
- Tạo trường cho mỗi thuộc tính
- Tạo chỉ mục (index) cho mỗi khoá
- Thiết kế khoá ngoại cho các quan hệ
- Định nghĩa kích thước/kiểu dữ liệu, thuộc tính null, giá trị mặc định
- Đánh giá và thiết lập các ràng buộc
- Chú ý các công nghệ khác nhau cho các kiểu dữ liệu khác nhau
- Tạo câu lệnh SQL: tuỳ vào từng hệ quản trị CSDL, tạo CSDL tương ứng trên ngôn
ngữ DDL.
Ví dụ: một CSDL trên hệ quản trị dữ liệu SQL Server 2005.


CÂU HỎI CUỐI CHƢƠNG
1. Nêu các phương thức lưu trữ dữ liệu?
2. Nêu quá trình thiết kế dữ liệu.
3. Thiết kế CSDL cho hệ thống mô tả trong bài tập lớn với hệ quản trị CSDL tùy chọn.
72
Chƣơng VIII. Thiết kế vào/ra hệ thống

1. Thiết kế đầu vào
1.1. Tổng quan
1.1.1. Các khái niệm
Có thể phân loại các phương thức nhập liệu theo hai đặc trưng:
- Cách thức dữ liệu được thu thập, đưa vào và xử lý.
- Phương pháp và công nghệ được dùng để thu thập và nhập dữ liệu.
Quá trình thiết kế hệ thống:
- Thu thập dữ liệu (data capture): nhận dạng và tạo dữ liệu mới từ nguồn tạo tin
- Nhập liệu (data entry): chuyển dữ liệu từ nguồn tạo tin vào máy tính
- Xử lý dữ liệu (data processing): là quá trình biến đổi trực tiếp trên dữ liệu trước khi đưa
nó về dạng máy tính có thể đọc được. Xử lý bó là thu thập 1 khối lượng dữ liệu và xử lý đồng
thời cả bó. Xử lý trực tuyến là xử lý ngay lập tức dữ liệu vừa thu thập được.
1.1.2. Các phƣơng thức nhập liệu
- Bàn phím
- Chuột
- Màn hình cảm ứng (màn hình tương tác)
- Nhận dạng âm thanh, tiếng nói
- Tự động nhập liệu: mã vạch, nhận dạng quang học, mực từ, thẻ từ, thẻ thông minh, sinh
trắc học...
1.1.3. Các nguyên tắc thiết kế đầu vào
Nên tuân theo những nguyên tắc dưới đây khi thiết kế phương thức nhập liệu:
- Không nên nhập những dữ liệu có thể tính toán được từ những dữ liệu khác.
Ví dụ: Số lượng x Đơn giá = Thành tiền
- Không nhập những dữ liệu có thể lưu trong máy tính như những hằng số.
- Sử dụng mã lấy từ cơ sở dữ liệu đối với những thuộc tính phù hợp.
- Sử dụng các chỉ dẫn nhập liệu khi thiết kế các form nhập liệu (tooltip).
- Giảm thiểu số lượng ký tự gõ vào để tránh gây sai sót. Thay vào đó, cố gắng dùng các
hộp check chọn càng nhiều càng tốt.
- Dữ liệu nhập vào theo trình tự từ trên xuống dưới, trái qua phải.
1.1.4. Kiểm soát nhập liệu
Việc kiểm soát dữ liệu đầu vào rất cần thiết trong tất cả các hệ thống ứmg dụng trên máy
tính. Các điều khiển đầu vào đảm bảo rằng dữ liệu đầu vào là chính xác và hệ thống được bảo
vệ khỏi các lỗi vô ý hoặc hữu ý.
73
Số lượng đầu vào cần phải được theo dõi, đặc biệt là trong trường hợp nhập dữ liệu theo
bó:
- Lưu mã số giao dịch cho khối các dữ liệu nhập liệu theo khối.
- Ghi các log file cho các dữ liệu được nhập trực tuyến.
Phải kiểm soát tính đúng đắn của dữ liệu nhập vào. Phải làm các kiểm tra về: trùng lặp
thực thể, kiểu dữ liệu, định dạng, tính ràng buộc với các dữ liệu khác. Ví dụ: Khi nhập liệu
thành phố và quốc gia cho một hồ sơ nhân sự, nếu đã chọn quốc gia là Việt Nam thì chỉ cho
phép chọn thành phố là Hà Nội, Huế hoặc các thành phố khác ở Việt Nam ... chứ không cho
phép chọn thành phố thuộc quốc gia khác như Tokyo chẳng hạn.
1.2. Các điều khiển giao diện cho thiết kế đầu vào
1.2.1. Một số điều khiển phổ biến
- Hộp văn bản (Text box): chứa một hộp hình chữ nhật kèm theo tên, cho phép nhập dữ
liệu vào.
- Nút chọn loại trừ (Radio button): chứa một hình trong nhỏ kèm theo một đoạn văn bản
mô tả tương ứng với giá trị lựa chọn. Trong một nhóm các nút này thì chỉ cho phép chọn một
nút mà thôi.
- Hộp chọn kiểm tra (Check box): chứa một hộp hình vuông kèm theo đoạn văn bản mô
tả trường dữ liệu vào, người dùng sẽ chọn giá trị Yes/No. Trong một nhóm các hộp chọn thì
có thể chọn nhiều hộp.
- Hộp danh sách (List box): là một hình chữ nhật chứa một hoặc nhiều dòng dữ liệu.
- Danh sách thả (Drop down list): chứa hộp chọn hình chữ nhật và một nút bên cạnh. Khi
nhấn vào nút đó thì danh sách sẽ được thả xuống.
- Hộp thả kết hợp (Combination box): cũng là một danh sách thả nhưng cho phép người
dùng nhập thêm dữ liệu ngoài những dữ liệu có sẵn trong đó.
- Nút lệnh (Button): các nút lệnh không phải là điều khiển vào. Chúng không dành cho
việc lựa chọn dữ liệu vào. Mục đích của chúng là cho phép người dùng xác nhận rằng tất cả
các dữ liệu cần được xử lý hay hủy bỏ một giao dịch hoặc cần gọi chức năng trợ giúp… Tóm
lại, nút lệnh đóng vai trò gọi tới một chức năng nào đó.
1.2.2. Một số điều khiển cao cấp
- Hộp lịch thả (Drop down calendar): là một ô dữ liệu có chứa một nút mũi tên. Khi nhấn
chuột vào đó thì hộp lịch được thả xuống để chọn ngày.
- Điều khiển hiệu chỉnh trượt (Slider edit control): cho phép lựa chọn giá trị bằng cách
trượt con trỏ.
- Điều khiển hiệu chỉnh mặt nạ (Masked edit control): điều khiển này tạo ra định dạng để
buộc dữ liệu nhập vào phải tuân theo.
74
- Hộp danh sách chọn (Check list box): điều khiển này được dùng để kết hợp nhiều hộp
chọn kiểm tra.
- Hộp cây chọn (Check tree box): điều khiển này được dùng để biểu diễn các lựa chọn dữ
liệu dưới dạng cây phân cấp.
- Lưới dữ liệu (Data Grid): điều khiển cho phép hiển thị dữ liệu dạng bảng.
1.3. Quy trình thiết kế đầu vào
- Xác định các dữ liệu đầu vào của hệ thống và các yêu cầu nhập liệu logic.
- Lựa chọn các điều khiển thích hợp.
- Thiết kế, lập cơ chế kiểm soát nhập liệu, lưu vết
- Nếu cần thiết, lập hồ sơ đặc tả đầu vào.
2. Thiết kế đầu ra hệ thống
2.1. Tổng quan
2.1.1. Phân loại
Một cách để phân loại đầu ra là dựa vào hình thức phân phối chúng trong hay ngoài tổ
chức và đối tượng người sẽ đọc và sử dụng chúng. Hình thức đầu ra chủ yếu là dưới dạng các
báo cáo.
- Báo cáo nội bộ: là các báo cáo được cung cấp cho người dùng hệ thống trong tổ chức.
+ Báo cáo chi tiết: thông tin trực tiếp truy xuất từ dữ liệu hệ thống, ví dụ: danh sách
khách hàng.
+ Báo cáo tóm lược: thông tin sau khi truy xuất đã được sắp xếp theo thứ tự thuận tiện
cho người dùng quan sát, đôi khi kết quả được thể hiện dưới dạng đồ hoạ.
+ Báo cáo ngoại lệ: thông tin cảnh báo, đột xuất theo sự kiện thay đổi về chất lượng,
điều kiện của hệ thống.
- Báo cáo bên ngoài là các báo cáo cung cấp cho khách hàng, nhà cung cấp, cơ quan...
- Báo cáo quay vòng là các loại báo cáo bên ngoài sau đó lại trở về hệ thống như là một
phương thức thu thập dữ liệu, chẳng hạn bản điều tra, hoá đơn...
2.1.2. Phƣơng thức cài đặt đầu ra
- In ra trên giấy
- Hiển thị trên màn hình, trên trang web
- Xuất dưới dạng đa phương tiện
- Gửi thư trực tiếp
- Tạo các đường liên kết ...
2.2. Cách thức thiết kế đầu ra
2.2.1. Các nguyên tắc
- Báo cáo phải đơn giản, dễ hiểu, dễ giải thích:
+ Bao gồm tiêu đề
75
+ Ghi rõ ngày giờ phát hành
+ Có các phần ghi thông tin chung
- Thông tin phải được thể hiện ở dạng người dùng bình thường không được tuỳ ý sửa
chữa.
- Thông tin hiển thị phải hài hoà giữa các trang
- Cung cấp cách di chuyển giữa các ô thật sự đơn giản
- Thời gian xuất báo cáo phải được kiểm soát
- Một số hình thức báo cáo phải được sự đồng ý của công ty
2.2.2. Quy trình thiết kế đầu ra
- Xem xét tất cả các đầu ra của hệ thống và các yêu cầu logic.
- Làm rõ đặc tả (vật lý) của các yêu cầu báo cáo.
- Thiết kế các bản mẫu trước (nếu cần).
- Thiết kế, kiểm thử và kiểm tra đầu ra của báo cáo

CÂU HỎI CUỐI CHƢƠNG
1. Nêu các quy tắc thiết kế đầu vào hệ thống.
2. Nêu các quy tắc thiết kế đầu ra hệ thống.
3. Thiết kế giao diện vào/ra cho hệ thống mô tả trong bài tập lớn.
76
Chƣơng IX. Thiết kế giao diện ngƣời dùng

1. Tổng quan
- Giao diện người dùng hiệu quả phải phù hợp với trình độ và kinh nghiệm của người
dùng. Những nguyên nhân sau đây khiến cho người dùng sử dụng sai hay cảm thấy nhàm
chán, lẫn lộn thậm chí quay sang chối bỏ phần mềm:
+ Sử dụng nhầm lẫn các thuật ngữ, khái niệm
+ Giao diện không trực quan
+ Cách tiếp cận giải quyết vấn đề bị lẫn lộn
+ Thiết kế giao diện rắc rối
- Các nguyên tắc nên áp dụng khi thiết kế giao diện người dùng:
+ Phải hiểu rõ trình độ người sử dụng cũng như đặc thù các công việc của họ
+ Lôi kéo người dùng vào việc thiết kế giao diện
+ Kiểm tra và thử nghiệm việc thiết kế trên người dùng thật
+ Áp dụng các quy ước, thói quen trong thiết kế giao diện, tuân thủ mẫu chung cho
toàn chương trình.
- Người dùng cần được chỉ dẫn những công việc họ sẽ đối mặt tiếp theo:
+ Chỉ cho người dùng hệ thống đang mong đợi họ làm gì
+ Chỉ cho người dùng dữ liệu họ nhập đúng hay sai
+ Giải thích cho người dùng hệ thống đang đứng yên do có công việc cần xử lý chứ
không treo
+ Khẳng định với người dùng hệ thống đã hay chưa hoàn thành một công việc nào đó
- Định hình giao diện sao cho các thông điệp, chỉ dẫn luôn xuất hiện cùng vị trí
- Định hình các thông điệp và chỉ dẫn đủ dài để người dùng có thể đọc được, đủ ngắn để
họ có thể hiểu được
- Các giá trị mặc định cần được hiển thị
- Lường trước những sai sót người dùng có thể gặp phải để phòng tránh
- Không cho phép xử lý tiếp nếu lỗi chưa được khắc phục
2. Kỹ thuật giao diện ngƣời dùng
2.1. Hệ điều hành và trình duyệt WEB
Những hệ điều hành đồ họa phổ biến cho các máy khách hiện nay là Windows, Mac,
Unix, Linux và cho các máy cầm tay là Palm OS, Windows CE, Android, Mac OS. Tuy
nhiên, hệ điều hành không còn là nhân tố chính trong thiết kế giao diện người dùng nữa. Các
ứng dụng Internet và Intranet chạy trên các trình duyệt web. Hầu hết các trình duyệt có thể
chạy trên nhiều hệ điều hành. Điều này cho phép thiết kế giao diện người dùng ít phụ thuộc
vào hệ điều hành. Tính năng này được gọi là độc lập nền tảng (platform independence). Thay
77
vì viết giao diện riêng cho từng hệ điều hành thì chỉ cần viết giao diện cho một hoặc hai trình
duyệt. Hiện tại, các trình duyệt phổ biến nhất là Microsoft Internet Explorer, Fire fox, Google
chorme…
2.2. Màn hình hiển thị
Kích thước vùng hiển thị là vấn đề then chốt khi thiết kế giao diện. Không phải màn hình
hiển thị nào cũng là dạng màn hình máy tính cá nhân. Có rất nhiều thiết bị hiển thị không
phải là máy tính cá nhân.
Đối với màn hình máy tính cá nhân, chúng ta có đơn vị đo lường là độ phân giải đồ họa.
Người thiết kế nên thiết kế giao diện theo loại màn hình có độ phân giải phổ biến nhất.
Rõ ràng, các máy tính cầm tay và một số thiết bị hiển thị đặc biệt (ví dụ như màn hình
máy rút tiền tự động ATM) hỗ trợ màn hình hiển thị nhỏ hơn nhiều cũng phải được xem xét
khi thiết kế giao diện.
Cách thức thể hiện vùng hiển thị đối với người dùng được điều khiển bởi cả khả năng kỹ
thuật của màn hình và khả năng của hệ điều hành, Hai cách tiếp cận phổ biến nhất là paging
và scrolling. Paging hiển thị một màn hình hoàn chỉnh các ký tự vào cùng một lần. Toàn bộ
vùng hiển thị được gọi là một trang (hay màn hình). Các trang được hiển thị theo nhu cầu của
người dùng bằng cách nhấn nút lệnh, tương tự như lật các trang trong một cuốn sách.
Scrolling dịch chuyển phần thông tin hiển thị lên hoặc xuống trên màn hình, thường là mỗi
lần 1 dòng. Các màn hình máy tính cá nhân còn cho phép nhiều tùy chọn paging và scrolling.
2.3. Bàn phím và các thiết bị trỏ
Hầu hết (nhưng không phải tất cả) các thiết bị hiển thị và màn hình đều được tích hợp với
bàn phím. Những tính năng chủ yếu của bàn phím là tập ký tự và các khóa chức năng.
Tập ký tự của hầu hết các máy tính cá nhân đều theo chuẩn. Những tập ký tự đó có thể
được mở rộng với phần mềm để hỗ trợ thêm các ký tự và biểu tượng. Các khóa chức năng
nên được sử dụng một cách nhất quán. Nghĩa là, bất kỳ chương trình nào cũng nên sử dụng
nhất quán các khóa chức năng cho cùng mục đích. Ví dụ, F1 thường được dùng để gọi chức
năng trợ giúp trong cả hệ điều hành và các ứng dụng.
Hầu hết các giao diện (bao gồm các hệ điều hành và trình duyệt) đều sử dụng thiết bị trỏ
như chuột, bút và màn hình cảm ứng. Tất nhiên, thiết bị trỏ phổ biến nhất vẫn là chuột.
Bút đang trở nên quan trọng trong các ứng dụng chạy trên các thiết bị cầm tay. Bởi lý do
là những thiết bị đó thường không có bàn phím. Do đó, giao diện có thể cần được thiết kế để
cho phép “gõ” trên một bàn phím được hiển thị trên màn hình hoặc sử dụng một chuẩn viết
tay như Graffiti hoặc Jot.
3. Phong cách thiết kế giao diện ngƣời dùng
3.1. Giao diện dựa trên cửa sổ và frame
78
Phần cơ bản nhất của một giao diện là cửa sổ. Một cửa sổ có thể nhỏ hoặc lớn hơn vùng
màn hình hiển thị. Nó thường chứa các điều khiển chuẩn ở góc trên bên phải như phóng to,
thu nhỏ hay đóng cửa sổ.
Phần dữ liệu hiển thị bên trong cửa sổ có thể lớn hoặc nhỏ hơn kích thước cửa sổ. Trong
trường hợp lớn hơn, có thể dùng thanh cuộn để dịch chuyển.
Một cửa sổ có thể được chia thành các vùng gọi là frame. Mỗi frame có thể hoạt động độc
lập với các các frame khác trong cùng một cửa sổ. Mỗi frame có thể được xác định để phục
vụ cho một mục đích nhất định.
Trong một cửa sổ, chúng ta có thể sử dụng tất cả các điều khiển giao diện đã giới thiệu
trong chương trước.
3.2. Giao diện dựa trên menu
Chiến lược đối thoại phổ biến nhất và cổ điển nhất là menu. Có nhiều loại menu nhưng tư
tưởng chung đều là yêu cầu người dùng chọn một hành động từ menu:
- Menu kéo thả, menu xếp tầng
- Menu pop-up
- Thanh công cụ và menu icon
- Menu siêu liên kết
3.3. Giao diện dựa trên dòng lệnh
Thay cho menu hoặc cũng có thể bổ sung thêm cho menu, một số ứng dụng được thiết kế
sử dụng đối thoại dựa trên tệp lệnh (còn gọi là giao diện ngôn ngữ lệnh – command language
interface). Tuy nhiên, người sử dụng phải học cú pháp tập lập nên cách tiếp cận này chỉ phù
hợp với đối tượng người dùng chuyên gia. Có 3 loại cú pháp, lựa chọn loại nào là phụ thuộc
vào công nghệ có thể dùng:
- Cú pháp dựa trên ngôn ngữ (ví dụ như SQL)
- Cú pháp mnemonic: người sử dụng được cung cấp một màn hình giao tiếp trong đó họ
có thể nhập các lệnh gọi tới các hành động. Các câu lệnh phải có nghĩa với người sử dụng.
- Cú pháp ngôn ngữ tự nhiên: cho phép người dùng nhập các câu hỏi các lệnh bằng ngôn
ngữ tự nhiên. Hệ thống thông dịch các lệnh đó theo cú pháp đã biết và có thể yêu cầu người
dùng nhập lại rõ ràng hơn nếu nó không hiểu được ý muốn của người dùng.
Cách thiết kế giao diện dựa trên dòng lệnh từng phổ biến trong các ứng dụng máy tính lớn
và các ứng dụng máy tính cá nhân trên DOS trước đây. Nhưng phong cách tương tác này vẫn
được sử dụng trong một số ứng dụng hiện nay.
3.4. Một số tính năng đặc biệt
 Xác thực và phân quyền
Trong hầu hết các hệ thống, người sử dụng phải được xác thực trước khi họ được phép sử
dụng hệ thống. Nói một cách khác, người sử dụng phải đăng nhập vào hệ thống. Hầu hết việc
79
đăng nhập đều yêu cầu tên người dùng và mật khẩu. Mỗi người dùng được cấp một quyền
hạn sử dụng một số chức năng nhất định. Người dùng có quyền cao nhất thường là người
quản trị hệ thống.
 Trợ giúp
- Tooltip: xuất hiện khi người dùng đưa chuột vào vị trí biểu tượng (hoặc đối tượng) trên
màn hình. Tooltip chứa một đoạn mô tả ngắn gọn về chức năng thể hiện bởi đối tượng tương
ứng.
- Help Wizard: hướng dẫn người sử dụng thông qua một quá trình phức tạp bằng cách đưa
ra một chuỗi các hộp đối thoại yêu cầu người dùng phải đưa ra đầu và và trả về phản hồi của
hệ thống.
- Tác tử (Agents): là các đối tượng phần mềm có thể hoạt động trên nhiều ứng dụng phần
mềm và thậm chí là trên các mạng. Ví dụ như tác tử trợ giúp của Microsoft (có thể hiểu là trợ
lý) cung cấp một trợ lý chung trong các ứng dụng Office. Nó cho phép người dùng đặt câu
hỏi bằng một đoạn ngôn ngữ tự nhiên. Đoạn ngôn ngữ sẽ được thông dịch bởi tác tử để đưa ra
đáp ứng phù hợp. Sau đó, người dùng có thể lựa chọn một trong các đáp ứng để chọn ra chỉ
mục trợ giúp chi tiết hơn nữa.
3.5. Cách thức thiết kế giao diện ngƣời dùng
- Công cụ: các ngôn ngữ lập trình.
- Quy trình thiết kế:
+ Bước 1: Lập sơ đồ phân cấp giao tiếp người dùng hoặc sử dụng lược đồ biến đổi
trạng thái
+ Bước 2: Lập bản mẫu đối thoại và giao diện người dùng
+ Bước 3: Tham khảo và tiếp thu ý kiến phản hồi của người dùng. Nếu cần thiết
quay trở lại bước 1 và bước 2.

CÂU HỎI CUỐI CHƢƠNG
1. Trình bày kỹ thuật thiết kế giao diện người dùng.
2. Trình bày cách thức thiết kế giao diện người dùng.
80
Chƣơng X. Xây dựng và triển khai hệ thống

Chương này tập trung vào việc xây dựng và triển khai hệ thống.
- Xây dựng hệ thống (Systems construction) là việc phát triển, cài đặt và kiểm thử các
thành phần của hệ thống. Xây dựng hệ thống thường được hiểu và gọi bằng thuật ngữ không
phù hợp là phát triển hệ thống (cụm từ này thường được dùng để nói tới toàn bộ vòng đời hệ
thống).
- Triển khai hệ thống (Systems implementation) là việc cài đặt và đưa toàn bộ hệ thống
vào hoạt động.
1. Giai đoạn xây dựng
Mục tiêu của giai đoạn xây dựng là phát triển và kiểm thử một hệ thống chức năng đáp
ứng các yêu cầu nghiệp vụ và thiết kế, đồng thời cài đặt giao diện giữa hệ thống mới và hệ
thống đã có. Trong mục này, chúng tôi giới thiệu các bước trong giai đoạn xây dựng của một
dự án phát triển hệ thống thông thường.
1.1. Xây dựng và kiểm thử mạng
Thông thường các hệ thống được xây dựng trên những mạng sẵn có. Trong trường hợp,
hệ thống đòi hỏi hệ thống mạng mới thì cần phải xây dựng và kiểm thử mạng mới sao cho
phù hợp với chương trình sẽ sử dụng nó.
- Phân bổ nhiệm vụ:
+ Người thiết kế mạng: Thiết kế kết nối LAN và WAN
+ Người quản trị mảng xây dựng và kiểm thử: Các chuẩn kiến trúc mạng và bảo mật
mạng.
+ Người phân tích hệ thống: Đóng vai trò diễn giải, làm đơn giản hoá các yêu cầu của
hệ thống và đảm bảo rằng các yêu cầu nghiệp vụ không gây tác động xấu
1.2. Xây dựng và kiểm thử cơ sở dữ liệu
- Cài đặt lược đồ cơ sở dữ liệu
- Kiểm thử với dữ liệu mẫu
- Đưa ra kết quả là cấu trúc dữ liệu rỗng
- Phân bổ nhiệm vụ:
+ Người sử dụng hệ thống: Cung cấp và/hoặc phê chuẩn dữ liệu kiểm thử
+ Người thiết kế cơ sở dữ liệu và người lập trình: xây dựng các bảng, views, thủ tục
thường trú (nếu là cơ sở dữ liệu quan hệ)
+ Người quản trị cơ sở dữ liệu: Điều chỉnh cơ sở dữ liệu để đạt hiệu suất tối ưu, bảo
mật và sao lưu phục hồi dữ liệu.
+ Người phân tích hệ thống: Xây dựng cơ sở dữ liệu hướng ứng dụng và không kết
hợp. đảm bảo việc tuân theo các yêu cầu nghiệp vụ
81

1.3. Cài đặt và kiểm thử gói phần mềm mới
- Nếu hệ thống đòi hỏi phải có những phần mềm được thuê hoặc mua về thì chúng cần
phải được cài đặt và kiểm thử
- Phân bổ nhiệm vụ:
+ Người phân tích hệ thống: làm rõ các yêu cầu nghiệp vụ
+ Người thiết kế hệ thống: làm rõ các yêu cầu tích hợp
+ Người quản trị mạng: Cài đặt gói phần mềm
+ Người bán phần mềm hoặc người tư vấn: Trợ giúp cài đặt và kiểm thử
+ Người lập trình ứng dụng: Kiểm thử dựa theo các yêu cầu tích hợp
1.4. Viết và kiểm thử các chƣơng trình mới
- Tái sử dụng các thành phần phần mềm có thể có trong thư viện
- Viết các thành phần mới
- Kiểm thử
- Tài liệu hoá chương trình
- Phân bố nhiệm vụ:
+ Người phân tích hệ thống: làm rõ các yêu cầu nghiệp vụ
+ Người thiết kế hệ thống: làm rõ các yêu cầu tích hợp
+ Đội lập trình ứng dụng: Viết và kiểm thử phần mềm
- Các mức độ kiểm thử:
+ Kiểm thử một phần (Stub test) – việc kiểm thử được thực hiện đối với một số
môđun của chương trình. Nói một cách khác, đó là cách kiểm thử một tập con độc lập của
chương trình.
+ Kiểm thử chƣơng trình (Unit or program test) – việc kiểm thử được thực hiện đối
với toàn bộ một chương trình. Mức độ kiểm thử này được tiến hành khi các mô đun đã được
lập trình và việc kiểm thử một phần đã hoàn thành.
+ Kiểm thử hệ thống (Systems test) – việc kiểm thử được thực hiện đối với toàn bộ
hệ thống nhằm đảm bảo rằng các chương trình ứng dụng được viết và kiểm thử độc lập đều
hoạt động tốt khi chúng được tích hợp vào hệ thống tổng hợp.
2. Giai đoạn triển khai
Hệ thống chức năng thu được từ giai đoạn xây dựng chính là đầu vào then chốt cho giai
đoạn triển khai. Kết quả của giai đoạn triển khai là hệ thống hoạt động là đầu vào của giai
đoạn vận hành và bảo trì trong vòng đời hệ thống. Trong mục này, chúng tôi trình bày các
bước trong giai đoạn triển khai cho một dự án phát triển hệ thống thông thường.
2.1. Kiểm thử hệ thống lần cuối
82
- Kiểm tra mạng, cơ sở dữ liệu, phần mềm được mua về, phần mềm mới xây dựng và
phần mềm đã có để đảm bảo rằng chúng đều có thể họat động cùng nhau.
- Phân bổ nhiệm vụ:
+ Người phân tích hệ thống: Phát triển dữ liệu kiểm thử cho hệ thống.
+ Người xây dựng hệ thống (lập trình viên ứng dụng, lập trình viên cơ sở dữ liệu và
chuyên viên mạng): Giải quyết các vấn đề xuất hiện trong quá trình kiểm thử.
+ Người sở hữu và người sử dụng hệ thống, kiểm chứng xem hệ thống hoạt động có
chính xác hay không.
- Kết quả thu được có thể là việc phải quay trở lại giai đoạn xây dựng để sửa đổi hệ thống
- Lặp lại tới khi việc kiểm thử hệ thống thành công
2.2. Lập kế hoạch chuyển đổi
- Người phân tích hệ thống sẽ xây dựng một kế hoạch chuyển đổi chi tiết từ hệ thống cũ
sang hệ thống mới, trong đó xác địng rõ:
+ Cách thức cài đặt cơ sở dữ liệu
+ Cách thức đào tạo người dùng
+ Các tài liệu cần xây dựng
+ Chiến lược chuyển đổi
- Phân bố nhiệm vụ:
+ Người phân tích hệ thống/người phân tích dự án: Phát triển kế hoạch chuyển đổi chi
tiết
+ Chủ hệ thống: phê chuẩn kế hoạch và thời gian biểu
2.3. Cài đặt cơ sở dữ liệu
- Nạp cơ sở dữ liệu mới từ dữ liệu sẵn có từ hệ thống cũ
+ Thông thường là phải tái cấu trúc dữ liệu khi nạp vào
+ Phải đảm bảo rằng dữ liệu được chuyển đổi một cách chính xác
- Phân bố nhiệm vụ:
+ Lập trình viên ứng dụng: Viết (hoặc sử dụng) các chương trình đặc biệt để trích rút
dữ liệu từ các cơ sở dữ liệu sẵn có và nạp vào cơ sở dữ liệu mới
o Người phân tích và người thiết kế hệ thống, tính toán kích thước cơ sở dữ liệu và ước lượng
thời gian cài đặt
2.4. Huấn luyện ngƣời dùng
- Đào tạo và cung cấp tài liệu cho người sử dụng
- Phân bố nhiệm vụ:
+ Người phân tích hệ thống: Lập kế hoạch đào tạo, theo dõi việc đào tạo, viết tài liệu
và trợ giúp người dùng trong thời gian học.
+ Người sở hữu hệ thống: Phê duyệt thời gian hoàn thiện việc đào tạo
83
+ Người sử dụng hệ thống, tham dự khóa đào tạo và tiếp nhận hệ thống
2.5. Chuyển đổi sang hệ thống mới
- Hệ thống được bàn giao từ người phát triển tới cho người dùng cuối
- Phân bố nhiệm vụ:
+ Người phân tích hệ thống/Người quản lý dự án: Thực hiện kế hoạch chuyển đổi,
điều chỉnh lỗi phát sinh, nhận phản hồi của người dùng.
+ Người sở hữu hệ thống/người sử dụng hệ thống: sử dụng và cung cấp ý kiến phản
hồi.

CÂU HỎI CUỐI CHƢƠNG
1. Trình bày quá trình xây dựng hệ thống.
2. Trình bày các cách thức kiểm thử hệ thống.
3. Trình bày quá trình triển khai hệ thống.

84
Chƣơng XI. Vận hành và hỗ trợ hệ thống

1. Tổng quan
Hỗ trợ hệ thống (Systems support) là việc hỗ trợ về mặt kỹ thuật cho người sử dụng cũng
như việc bảo trì để sửa lỗi hoặc đáp ứng những yêu cầu mới xuất hiện.Vận hành hệ thống
(Systems operation) là việc thực thi hàng ngày của một hệ thống thông tin.
Các hoạt động hỗ trợ hệ thống:
- Bảo trì hệ thống (Program maintenance) sửa các lỗi xuất hiện trong quá trình phát triển
hệ thống
- Phục hồi hệ thống (System recovery) là việc phục hồi lại hệ thống và dữ liệu sau khi xảy
ra sự cố
- Hỗ trợ kỹ thuật (Technical support) là bất kỳ sự trợ giúp nào được cung cấp cho người
sử dụng trong trường hợp cần thiết
- Nâng cấp hệ thống (System enhancement) là việc cải thiện hệ thống để xử lý các vấn đề
nghiệp vụ hoặc vấn đề kỹ thuật hay yêu cầu kỹ thuật mới
2. Bảo trì hệ thống
Các nguyên nhân gây lỗi:
- Các yêu cầu không được xem xét kỹ
- Các yêu cầu không được truyền đạt chính xác
- Các yêu cầu bị hiểu sai
- Các yêu cầu hoặc bản thiết kế bị cài đặt không chính xác
- Sử dụng sai mục đích chương trình
Các mục tiêu của việc bảo trì hệ thống:
- Tạo các thay đổi dự đoán trước đối với hệ thống hiện có để hiệu chỉnh lỗi
- Duy trì các bộ phận vẫn hoạt động tốt của chương trình và tránh trường hợp những
thay đổi có thể gây ảnh hưởng bất lợi tới các bộ phận đó
- Tránh nhiều nhất có thể việc làm giảm hiệu suất của hệ thống
- Hoàn thành nhiệm vụ nhanh nhất để tránh giảm tính tin cậy của hệ thống
2.1. Xác định vấn đề
Các dự án bảo trì hệ thống nhỏ thường được kích hoạt bởi việc phát hiện ra lỗi. Hầu hết
các lỗi đều được phát hiện bởi người sử dụng khi họ nhận thấy một số bộ phận của hệ thống
hoạt động không chính xác. Nhiệm vụ đầu tiên của người phân tích hệ thống hoặc lập trình
viên là xác định vấn đề. Nếu đúng là có lỗi thì việc bảo trì phải được thực hiện trên bản sao
của chương trình. Còn chương trình gốc vẫn được sử dụng tới khi sửa xong lỗi.
2.2. Đánh dấu chƣơng trình
85
Không phải phần nào của chương trình cũng hỏng. Do đó, trước khi thực hiện bất cứ thay
đổi nào đối với chương trình thì cần kiểm thử chương trình để phân định ranh giới giữa phần
chương trình có lỗi cần sửa với phần chương trình có thể xem xét muộn hơn.
2.3. Nghiên cứu và bắt lỗi chƣơng trình
Tri thức về chương trình thì có được từ mã nguồn. Để có thể hiểu được chương trình thì
cần không ít thời gian. Hoạt động này có thể bị chậm trễ do một số hạn chế có thể có sau:
- Cấu trúc chương trình tồi
- Lôgíc không có cấu trúc
- Những hoạt động bảo trì không tốt trước đó (chẳng hạn như việc sửa đổi nhanh chóng
và phần mở rộng được thiết kế tồi)
- Mã chết (là những câu lệnh không thể thực hiện được)
- Tài liệu không tốt hoặc không đầy đủ
2.4. Kiểm thử chƣơng trình
Một phiên bản đề cử của chương trình phải được kiểm thử trước khi được đưa vào vận
hành. Dưới đây là những bước kiểm thử cần thiết hoặc tùy chọn:
- Kiểm thử bộ phận (Unit testing) cần thiết để đảm bảo rằng một chương trình độc lập đã
được sửa lỗi mà không gây ảnh hưởng ngoài dự đoán tới chương trình.
- Kiểm thử hệ thống (System testing) cần thiết để đảm bảo rằng toàn bộ ứng dụng (trong
đó chương trình đã được sửa chữa và kiểm thử là một phần) vẫn hoạt động tốt trên phạm vi
toàn hệ thống.
- Kiểm thử hồi quy (Regression testing) ngoại suy ảnh hưởng của các thay đổi tới hiệu
suất hệ thống bằng cách phân tích hiệu suất trước và sau khi thay đổi.
- Kiểm soát phiên bản (Version control) là quá trình theo dõi những thay đổi đã có đối với
chương trình để làm thuận tiện việc tìm hiểu chương trình về sau.
3. Phục hồi hệ thống
Sự cố hệ thống là điều không thể tránh khỏi. Người phân tích hệ thống thường sửa lỗi hệ
thống hoặc haọt động như một cầu nối giữa người sử dụng và người có trách nhiệm sửa lỗi.
Các hoạt động phục hồi hệ thống có thể tóm tắt như sau:
- Trong nhiều trường hợp, người phân tích hệ thống có thể ngồi tại máy tính của người
dùng để phục hồi hệ thống. Họ có thể cần phải cung cấp các chỉ dẫn để hiệu chỉnh cho người
dùng để tránh lặp lại sự cố.
- Trong một số trường hợp, người phân tích phải liên hệ với nhân lực vận hành hệ thống
để sửa lỗi. Điều này thường cần thiết khi hệ thống có sử dụng máy chủ. Thường thì người
quản trị mạng hoặc quản trị viên cơ sở dữ liệu hay người quản trị web sẽ xem xét các vấn đề
của máy chủ.
86
- Trong một số trường hợp, người phân tích có thể cần phải nhờ người quản trị dữ liệu
phục hồi các tệp dữ liệu hoặc cơ sở dữ liệu đã mất hoặc bị hỏng. Khi phục hồi dữ liệu nghiệp
vụ thì không chỉ cần khôi phục cơ sở dữ liệu.
+ Bất cứ giao dịch nào xuất hiện trong khoảng thời gian kể từ lần sao lưu cuối cùng
tới lúc phục hồi dữ liệu đều phải được xử lý lại.
+ Nếu sự cố xảy ra trong khi diễn ra một giao dịch và giao dịch đó đã được hoàn
thành một phần thì bất cứ việc cập nhật giao dịch nào diễn ra trước sự cố đều phải được hủy
bỏ trước khi xử lý lại toàn bộ giao dịch.
- Trong một số trường hợp, người phân tích có thể phải nhờ người quản trị mạng sửa một
lỗi trên mạng cục bộ hay mạng diện rộng.
- Trong một số trường hợp, người phân tích có thể phải nhờ chuyên viên kỹ thuật giải
quyết các vấn đề nảy sinh về phần cứng.
- Trong một số trường hợp, người phân tích sẽ phát hiện được lỗi phần mềm có thể gây ra
sự cố. Họ sẽ cố gắng cô lập lỗi nhanh chóng để nó không thể gây ra sự cố khác. Tiếp theo là
việc xử lý lỗi.
4. Hỗ trợ kỹ thuật
Một hoạt động thường xuyên khác trong giai đoạn hỗ trợ hệ thống đó là hỗ trợ kỹ thuật.
Cho dù người dùng có được đào tạo tốt như thế nào hay các tài liệu được viết kỹ thế nào thì
người dùng vẫn cần có sự trợ giúp. Người phân tích hệ thống thường sẵn sàng đợi yêu cầu
của người dùng. Những công việc thường phải làm là:
- Đều đặn theo dõi việc sử dụng hệ thống
- Theo dõi kết quả thăm dò mức độ hài lòng của người dùng và gặp gỡ họ
- Thay đổi thủ tục nghiệp vụ cho phù hợp với hoạt động của hệ thống phần mềm
- Cung cấp thêm các hoạt động đào tạo người dùng
- Lưu lại các yêu cầu và ý tưởng về việc nâng cấp hệ thống
5. Nâng cấp hệ thống
Hầu hết các hoạt động nâng cấp hệ thống đều xuất phát từ việc đáp ứng các sự kiện sau:
- Các vấn đề về nghiệp vụ mới phát sinh: một vấn đề nghiệp vụ mới nảy sinh khiến cho
một phần của hệ thống hiện tại trở nên không sử dụng được hoặc không hiệu quả.
- Các yêu cầu nghiệp vụ mới xuất hiện: một yêu cầu nghiệp vụ mới (ví dụ loại báo cáo
hay giao dịch hoặc chính sách mới) cần có để duy trì giá trị sử dụng của hệ thống hiện tại.
- Các yêu cầu công nghệ mới xuất hiện: một quyết định về việc sử dụng một công nghệ
mới (bao gồm cả việc nâng cấp phần cứng và phần mềm) trong hệ thống hiện có cần được
thực hiện.
- Các yêu cầu thiết kế mới: một phần tử hệ thống hiện có cần thiết kế lại không.
5.1. Phân tích yêu cầu nâng cấp
87
Bước này nhằm xác định các hoạt động cần thực hiện để đáp ứng yêu cầu nâng cấp của hệ
thống. Nhiệm vụ đầu tiên là phân tích một yêu cầu trong mối tương quan với các yêu cầu
thay đổi nổi bật khác để xác đinh thứ tự ưu tiên.
Nếu cần phải thay đổi ngay lập tức thì yêu cầu được chọn cần phải được định hướng giải
pháp tùy theo loại thay đổi cần thực hiện:
- Các vấn đề nghiệp vụ mới cần được hướng tới phiên bản thu nhỏ của giai đoạn phân tích
vấn đề. Từ đó, việc nâng cấp sẽ được định hướng thông qua các phiên bản thu nhỏ tương ứng
của các giai đoạn phân tích yêu cầu, phân tích quyết định, thiết kế, xây dựng và triển khai.
- Các yêu cầu kỹ thuật mới cần được hướng tới giai đoạn phân tích quyết định trước khi
diễn ra giai đoạn thiết kế, xây dựng và triển khai. Việc phân tích quyết định sẽ xác định xem
liệu công nghệ được đề xuất có khả thi trong hệ thống mới hay không. Điều này đặc biệt quan
trọng bởi việc thay đổi công nghệ có thể tốn kém và phức tạp.
- Các yêu cầu thiết kế mới phải được hướng tới giai đoạn thiết kế, xây dựng và triển khai.
5.2. Thực hiện sửa chữa nhanh
Một số kiểu nâng cấp hệ thống có thể được thực hiện nhanh chóng bằng cách viết những
chương trình đơn giản mới hoặc thựuc hiện các thay đổi đơn giản đối với các chương trình
đang có. Các chương trình và thay đổi đơn giản có thể được thực hiện mà không cần phải tái
cấu trúc dữ liệu (tức là thay đổi cấu trúc cơ sở dữ liệu), không phải cập nhật dữ liệu hay nhập
dữ liệu mới. Nói một cách khác, các chương trình đó sinh ra các báo các và đầu ra mới.
5.3. Phục hồi hệ thống vật lý hiện có
Đôi khi xảy ra việc hệ thống được nâng cấp nhưng tài liệu về nó lại không được cập nhật.
Và có trường hợp các hệ thống được phát triển không theo quy trình nghiêm ngặt nào. Khi
đó, người phân tích có thể được yêu cầu phục hồi cấu trúc vật lý hiện có của một hệ thống để
làm cơ sở cho việc nâng cấp hệ thống về sau.
88
TÀI LIỆU THAM KHẢO

1. Jeffrey Whitten, Lonnie Bentley, Kevin Dittman, Systems Analysis and Design Methods,
McGraw-Hill, 6
th
edition, 2004.
2. Prof. Nam Suh, Dr. Taesik Lee, System Design and Analysis based on AD and
Complexity Theories, 2005.
3. Ray Rankins, Paul Bertucci, Chris Gallelli, Alex T.Silverstein, Microsoft SQL Server
2005 Unleashed, Sams Publishing, 2007.
4. Nguyễn Văn Ba, Phân tích và thiết kế các hệ thống thông tin, Nhà xuất bản ĐHQG Hà
Nội, 2003.
5. Nguyễn Văn Vỵ, Phân tích và thiết kế các hệ thống thông tin hiện đại, Nhà xuất bản
Thống kê, 2002.

89







MỘT SỐ ĐỀ THI MẪU
90

Trƣờng Đại Học Hàng Hải Việt Nam
Khoa Công nghệ Thông tin
BỘ MÔN HỆ THỐNG THÔNG TIN
-----***-----

THI KẾT THÚC HỌC PHẦN

Tên học phần : PHÂN TÍCH THIẾT KẾ HỆ THỐNG
Năm học: x
Đề thi số: Ký duyệt đề:
x
Thời gian: 90 phút

Cho bài toán quản lý đƣợc miêu tả trong phụ lục 01

Câu 1: (3 điểm)
Hãy xây dựng sơ đồ phân rã chức năng và biểu đồ luồng dữ liệu mức khung cảnh của hệ
thống.
Câu 2: (4 điểm)
Xây dựng biểu đồ luồng dữ liệu mức đỉnh và mức dưới đỉnh cho nghiệp vụ Bán hàng
hóa/sản phẩm cho khách. (02 điểm)
Sau đó tiến hành xác định sơ đồ liên kết tập thực thể của nghiệp vụ trên(chỉ xét với các
thực thể liên quan trực tiếp đến nghiệp vụ này). (02 điểm)
Câu 3: (3 điểm)
Thiết kế chi tiết giao diện form bán hàng hóa/sản phẩm cho khách.

----------------------------***HẾT***----------------------------
Lưu ý:
- Sinh viên không được ghi chép vào đề thi, làm rách hoặc hỏng đề thi;
- Nộp đề kèm theo bài làm sau khi hết giờ.




91

Trƣờng Đại Học Hàng Hải Việt Nam
Khoa Công nghệ Thông tin
BỘ MÔN HỆ THỐNG THÔNG TIN
-----***-----

THI KẾT THÚC HỌC PHẦN

Tên học phần : PHÂN TÍCH THIẾT KẾ HỆ THỐNG
Năm học: x
Đề thi số: Ký duyệt đề:
x
Thời gian: 90 phút

Cho bài toán quản lý đƣợc miêu tả trong phụ lục 01

Câu 1: (3 điểm)
Hãy xây dựng sơ đồ phân rã chức năng và biểu đồ luồng dữ liệu mức khung cảnh của hệ
thống.
Câu 2: (4 điểm)
Xây dựng biểu đồ luồng dữ liệu mức đỉnh và mức dưới đỉnh cho nghiệp vụ Bán hàng
hóa/sản phẩm cho khách. (02 điểm)
Sau đó tiến hành xác định sơ đồ liên kết tập thực thể của nghiệp vụ trên(chỉ xét với các
thực thể liên quan trực tiếp đến nghiệp vụ này). (02 điểm)
Câu 3: (3 điểm)
Thiết kế chi tiết giao diện form tìm kiếm dịch vụ khách đã sử dụng trong khoảng thời
gian và thông báo hóa đơn thanh toán tổng hợp đến khách hàng.

----------------------------***HẾT***----------------------------
Lưu ý:
- Sinh viên không được ghi chép vào đề thi, làm rách hoặc hỏng đề thi;
- Nộp đề kèm theo bài làm sau khi hết giờ.

92

Trƣờng Đại Học Hàng Hải Việt Nam
Khoa Công nghệ Thông tin
BỘ MÔN HỆ THỐNG THÔNG TIN
-----***-----

THI KẾT THÚC HỌC PHẦN

Tên học phần : PHÂN TÍCH THIẾT KẾ HỆ THỐNG
Năm học: x
Đề thi số: Ký duyệt đề:
x
Thời gian: 90 phút

Cho bài toán quản lý đƣợc miêu tả trong phụ lục 01

Câu 1: (3 điểm)
Hãy xây dựng sơ đồ phân rã chức năng và biểu đồ luồng dữ liệu mức khung cảnh của hệ
thống.
Câu 2: (4 điểm)
Xây dựng biểu đồ dữ liệu mức đỉnh và mức dưới đỉnh nghiệp vụ Thiết lập thông tin sử
dụng & giá cả của các dịch vụ. (02 điểm)
Sau đó tiến hành xác định sơ đồ liên kết tập thực thể của nghiệp vụ trên(chỉ xét với các
thực thể liên quan trực tiếp đến nghiệp vụ này). (02 điểm)
Câu 3: (3 điểm)
Thiết kế chi tiết giao diện form cập nhật và tìm kiếm giá hiện tại của dịch vụ.

----------------------------***HẾT***----------------------------
Lưu ý:
- Sinh viên không được ghi chép vào đề thi, làm rách hoặc hỏng đề thi;
- Nộp đề kèm theo bài làm sau khi hết giờ.




93

Trƣờng Đại Học Hàng Hải Việt Nam
Khoa Công nghệ Thông tin
BỘ MÔN HỆ THỐNG THÔNG TIN
-----***-----

THI KẾT THÚC HỌC PHẦN

Tên học phần : PHÂN TÍCH THIẾT KẾ HỆ THỐNG
Năm học: x
Đề thi số: Ký duyệt đề:
x
Thời gian: 90 phút

Cho bài toán quản lý đƣợc miêu tả trong phụ lục 01

Câu 1: (3 điểm)
Hãy xây dựng sơ đồ phân rã chức năng và biểu đồ luồng dữ liệu mức khung cảnh của hệ
thống.
Câu 2: (4 điểm)
Xây dựng biểu đồ dữ liệu mức đỉnh và mức dưới đỉnh cho nghiệp vụ Thiết lập thông tin
sử dụng & giá cả của các dịch vụ. (02 điểm)
Sau đó tiến hành xác định sơ đồ liên kết tập thực thể của nghiệp vụ trên(chỉ xét với các
thực thể liên quan trực tiếp đến nghiệp vụ này). (02 điểm)
Câu 3: (3 điểm)
Thiết kế chi tiết giao diện form cập nhật giá dịch vụ và tìm kiếm quá trình thay đổi giá
của dịch vụ đó.
----------------------------***HẾT***----------------------------
Lưu ý:
- Sinh viên không được ghi chép vào đề thi, làm rách hoặc hỏng đề thi;
- Nộp đề kèm theo bài làm sau khi hết giờ.

94

Trƣờng Đại Học Hàng Hải Việt Nam
Khoa Công nghệ Thông tin
BỘ MÔN HỆ THỐNG THÔNG TIN
-----***-----

THI KẾT THÚC HỌC PHẦN

Tên học phần : PHÂN TÍCH THIẾT KẾ HỆ THỐNG
Năm học: x
Đề thi số: Ký duyệt đề:
x
Thời gian: 90 phút

Cho bài toán quản lý đƣợc miêu tả trong phụ lục 01

Câu 1: (3 điểm)
Hãy xây dựng sơ đồ phân rã chức năng và biểu đồ luồng dữ liệu mức khung cảnh của hệ
thống.
Câu 2: (4 điểm)
Xây dựng biểu đồ dữ liệu mức đỉnh và mức dưới đỉnh cho nghiệp vụ Tiếp nhận đăng ký
và trả thẻ hội viên. (02 điểm)
Sau đó tiến hành xác định sơ đồ liên kết tập thực thể của nghiệp vụ trên(chỉ xét với các
thực thể liên quan trực tiếp đến nghiệp vụ này). (02 điểm)
Câu 2: (3 điểm)
Thiết kế chi tiết giao diện form tìm kiếm thông tin hội viên dựa trên: các thông tin về hội
viên; các dịch vụ mà hội viên đã sử dụng.
----------------------------***HẾT***----------------------------
Lưu ý:
- Sinh viên không được ghi chép vào đề thi, làm rách hoặc hỏng đề thi;
- Nộp đề kèm theo bài làm sau khi hết giờ.




95

PHỤ LỤC 01
(Ban hành kèm theo đề thi môn PTTKHT năm học 2010-2011 cho khóa 49)
BÀI TOÁN QUẢN LÝ TRUNG TÂM DỊCH VỤ THỂ THAO LẠCH TRAY

I. Giới thiệu chung
Trung tâm thể thao LẠCH TRAY kinh doanh dịch vụ cung cấp trang thiết bị, cơ sở vật
chất, phòng tập cho các khu dân cư trong vùng. Với một cơ sở vật chất hiện đại gồm nhiều
phòng tập chuyên ngành, bể bơi, sân thể thao, v/v…., trung tâm cung cấp một dịch vụ hoàn
hảo cho nhu cầu chăm sóc sức khỏe hàng ngày của người dân. Khách hàng đến với Trung
tâm sau khi đăng kí hội viên được phép sử dụng các cơ sở vật chất và dịch vụ giá trị gia tăng
do trung tâm cung cấp với chi phí hợp lý.
Để tạo thuận lợi, trung tâm có một hệ thống theo dõi ra vào khu tập luyện dựa trên thẻ
mã vạch (Mỗi khi vào/ra phòng nào đó khách hàng có nhiệm vụ quẹt thẻ hội viên để xác định
thời gian sử dụng phòng), bên cạnh đó mọi dịch vụ khác có phát sinh hóa đơn như ăn uống,
mua bán trang thiết bị trong trung tâm khách hàng sẽ thanh toán thông qua thẻ hội viên. Cuối
mỗi tháng hóa đơn theo dõi tổng sẽ được gửi đến cho khách hàng để yêu cầu khách thanh
toán qua chuyển khoản. Khách hàng nào vi phạm nội quy của trung tâm hoặc không thanh
toán chi phí dịch vụ hàng tháng sẽ bị khóa tài khoản và truy tố theo quy định của pháp luật.
II. Các công việc thƣờng ngày tại trung tâm
1. Tiếp nhận đăng ký và trả thẻ hội viên
Khách hàng muốn làm hội viên của trung tâm phải đến gặp nhân viên lễ tân và
thực hiện các bước sau:
B1. Khách nộp bản đăng ký theo Mẫu 1
B2. Nhân viên lễ tân điền thêm các thông tin lên mẫu tại các vị trí:
- Số thẻ
- Ngày hết hạn
B3. Nhân viên lễ tân chuyển phiếu đăng ký cho lãnh đạo trung tâm xác nhận;
B4. In thẻ hội viên theo Mẫu 2;
B5. Trả thẻ cho khách và mời sử dụng các dịch vụ của trung tâm.
2. Thiết lập thông tin sử dụng & giá cả của các dịch vụ
Định kỳ sau một khoản thời gian trung tâm tiến hành cập nhật lại giá sử dụng các
dịch vụ của trung tâm. Đó là chi phí tính theo giờ khi khách hàng ra vào một khu vực
nào đó. Mỗi khu vực có một mức giá riêng. Quá trình thay đổi giá của mỗi khu vực
phải được lưu trữ lại. Nhân viên phụ trách việc này sẽ tiến hành theo các bước:
B1. Liệt kê các khu vực dịch vụ hiện có của trung tâm như Mẫu 3;
96
B2. Căn cứ tình hình thực tế để xác định cho phép khu vực đó hoạt động hay
không hoạt động;
B3. Thiết lập giá sử dụng dịch vụ tính theo giờ cho khu vực;
B4. Trình lãnh đạo trung tâm xin xác nhận;
B5. Thông báo công khai thông tin cho khách hàng.
3. Theo dõi khách hàng ra vào trung tâm
Khách ra vào trung tâm hoặc các khu tập luyện: Phòng tập thể thao, bể bơi, phòng
dịch vụ … Đều phải tiến hành quẹt thẻ hội viên để xác định thời gian vào sử dụng
dịch vụ tại khu vực đó.
B1. Đưa thẻ vào máy đọc thẻ khi ra/vào một khu vực;
B2. Máy tự động ghi nhận thời gian của khách dựa trên thông tin trên thẻ hội
viên;
B3. Khách nhận lại thẻ từ máy đọc thẻ.
4. Bán sản phẩm/hàng hóa phục vụ khách
Trong khu hoạt động của mình, trung tâm có một số cửa hàng phục vụ bán các đồ
uống, thức ăn, trang thiết bị thể thao… Khi khách hàng có nhu cầu sử dụng dịch vụ ở
các cửa hàng này, nhân viên tác nghiệp theo các bước sau:
B1. Cung cấp đầy đủ các sản phẩm / hàng hóa mà khách hàng yêu cầu trong khả
năng cho phép (các sản phẩm/hảng hóa được quản lý cụ thể gồm các thông tin tên sản
phẩm/hàng hóa, giá bán, khuyến mại nếu có).
B2. Lập hóa đơn tính chi phí cho khách hàng theo Mẫu 4.
B3. Yêu cầu khách hàng quẹt thẻ hội viên vào máy bán hàng để thanh toán cho
hóa đơn vừa in.
B4. Cảm ơn và tạm biệt khách hàng.
5. Tổng hợp tình hình sử dụng dịch vụ trong ngày
Đề nắm bắt tình hình sử dụng dịch vụ trong ngày, cuối mỗi ngày lãnh đạo trung
tâm tiến hành lập các báo cáo theo Mẫu 5 để lưu trữ.
6. Phát hành hóa đơn thu phí dịch vụ tổng hợp
Cuối tháng nhân viên trung tâm sẽ tiến hành gửi hóa đơn thu phí dịch vụ theo các
bước sau:
B1. Nhân viên nghiệp vụ tổng hợp chi tiết dịch vụ đã sử dụng trong tháng theo
Mẫu 6.
B2. Lập và chuyển phát hóa đơn đến cho khách hàng theo email & địa chỉ đã
đăng ký.
B3. Chờ khách hàng chuyển khoản chi phí
B4. Theo dõi & đánh dấu những khách hàng đã chuyển trả chi phí
97
7. Thực hiện theo dõi vi phạm và hủy tƣ cách hội viên
Nhân viên trung tâm có trách nhiệm thường xuyên theo dõi và lưu lại các vi phạm
của khách hàng để tiến hành xử lý theo các bước:
B1. Thu thập và ghi nhận chứng cứ vi phạm của khách hàng (ngày vi phạm, nội
dung vi phạm, mức độ vi phạm được tính bằng điểm tứ 1 đến 10, tiền phạt = mức độ*
đơn giá phạt).
Các vi phạm được quy định trước trong nội quy của trung tâm (bao gồm tên vi
phạm, đơn giá phạt)
B2. Tạm đình chỉ hoạt động của thẻ hội viên trong 15 ngày nếu tổng mức độ vi
phạm lên quá 20.
B3. Thông báo đến khách hàng các lỗi vi phạm để và yêu cầu đến thanh toán các
lỗi vi phạm.
B4. Sau 15 ngày nếu khách hàng không khắc phục vi phạm thì dừng hẳn tư cách
hội viên
B5. Đối với các vi phạm nghiêm trọng mà khách hàng không khắc phục thì lập hồ
sơ chuyển cho đơn vị pháp luật có thẩm quyền.
III. Các mẫu văn bản.
1. Mẫu 1: Phiếu đăng ký hội viên

Trung tâm thể thao LẠCH TRAY
PHIẾU ĐĂNG KÝ HỘI VIÊN
Phần khách ghi thông tin

1. Họ và tên:……………………………… 2. Giới tính:  Nam  Nữ
3. Ngày sinh: …………………………….. 4. CMND: ………………..
5. Dân tộc:………………………………... 6. Tôn giáo:……………….
7. Địa chỉ thường trú:……………………………………………………
8. Điện thoại:……………………………... 9. Email:…………………..
10. Thời gian tập luyện mong muốn:  Sáng  Chiều  Tối

Phần trung tâm ghi thông tin:
11. Mã số thẻ được cấp:…………………………………………………
12. Ngày hết hạn:………………………………………………………..
Người đăng ký Người tiếp nhận Phê duyệt
Ảnh 4x6
98

2. Mẫu 2: Thẻ hội viên


3. Mẫu 3: Bảng giá sử dụng khu vực tập luyện
BẢNG GIÁ SỬ DỤNG DỊCH VỤ
Stt Tên khu vực
Giá/giờ
VNĐ
1. Phòng tập thể hình N1 đến N7 30.000
2. Phòng tập thể dục thẩm mỹ M1 đến M3 25.000
3. Bể bơi 15.000
4. Sân Tennis T1 đến T6 25.000
5. Sân Tennis VIP V1 đến V3 50.000
6. Sân bóng trong nhà B1 đến B4 30.000
7. Phòng chơi bóng bàn 30.000
Lưu ý: Giá trên chưa bao gồm VAT

4. Mẫu 4: Hóa đơn mua hàng

Stt Hàng Số lượng Đơn giá Thành tiền
1 Kem Merino 2 7.000 14.000
2 Lavie 1 2.500 2.500
Tổng cộng: 16.500
Thuế VAT (5%): 825
Số tiền phải trả: 17.325
Trung tâm thể thao LẠCH TRAY
Hóa đơn số: A223200 Ngày: 10/01/2010
Trung tâm thể thao LẠCH TRAY
THẺ HỘI VIÊN
Ảnh 4x6
Họ và tên:………………………………
Ngày sinh:………………………………
Cấp ngày:………… Hết hạn:………….
MÃ SỐ:………………………….……..
|||


















99

5. Mẫu 5: Báo cáo mức khai thác các khu vực tập luyện trong ngày

6. Mẫu 6: Hóa đơn thanh toán tổng hợp có chi tiết kèm theo

Ví dụ: Bảng kê chi tiết
Bảng kê chi tiết
Stt
Tên dịch vụ / mặt
hàng
Ngày
Mô tả Chi phí
1. Bể bơi 10/01/2010 1 giờ [7h30-8h30] 15.000
2. Phòng tập thể hình 10/01/2010 0.5 giờ [4h30-
5h0]
15.000
Trung tâm thể thao LẠCH TRAY
HÓA ĐƠN THÁNG ……
1. Thông tin khách hàng
Số thẻ: …………………………………….
Khách hàng: …………………………………………………………
Địa chỉ:………………………………………………………………..
2. Thông tin Trung tâm:
Tên: Trung tâm thể thao ASANIC
Địa chỉ: số 484 Lạch Tray, Ngô Quyền, Hải Phòng.
Số tài khoản: 1019203949573 tại Ngân hàng Techcombank chi nhánh HP
3. Hình thức thanh toán: Chuyển khoản
4. Loại tiền: VNĐ
5. Tổng số tiền cần thanh toán: ………………….
Chi tiết sử dụng dịch vụ xem bảng đính kèm
Người lập
Thủ trưởng đơn vị
Trung tâm thể thao LẠCH TRAY
BÁO CÁO MỨC KHAI THÁC
Stt Khu vực
Số giờ Số người tối đa
Sáng Chiều Tối Sáng Chiều Tối
1 Bể bơi 50 100 25 35 55 26






Ngày: ……………………..
Người lập
Khách hàng
100
3. Kem Merino 10/01/2010 1 chiếc 7.000
4. Nước Lavie 10/01/2010 1 chai 2.500
5. Giầy tập thể thao
Nike
10/01/2010 1 đôi 350.000
6. Phòng bóng đá trong
nhà
11/01/2010 1 giờ [8h30-9h30] 30.000
7. Bể bơi 11/01/2010 1 giờ [9h30-
10h30]
15.000
8.
9.
TỔNG CỘNG 434.500

You're Reading a Free Preview

Tải về
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->