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

Phân tích và thiết kế hệ thống

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

Tài liệu Phân Tích Thiết Kế Hệ Thống


1
LỜI NÓI ĐẦU

Chào mừng các bạn đến với môn học Phân tích thiết kế thống, một môn học rất thú vò,
cần thiết trong việc xây dựng một ứng dụng thực tế. Nó cũng sẽ trang bò cho các bạn
những kiến thức cần thiết dùng để viết phần lý thuyết của đề án tốt nghiệp. Tài liệu sẽ
cung cấp những kỹ năng cần thiết trong phân tích thiết kế một hệ thống thông tin quản ly.ù

Tài liệu này một phần được dòch và biên soạn lại từ quyển sách Practical Data Modelling
For Database Design của hai tác giả Renzo D’Orazio & Gunter Happel

Tài liệu trình bày tường tận chi tiết các kỹ năng cần thiết trong phân tích thiết kế một hệ
thống thông tin, từ việc trình bày các nguyên tắc cần thiết để phân biệt một khái niệm là
tập thực thể hay thuộc tính đến việc trình bày hình ảnh dữ liệu bằng mô hình thực thể kết
hợp. Nó cũng đào sâu vào các khía cạnh tập thực thể cha con, mối kết hợp một ngôi, mối
kết hợp ba ngôi, nhiều mối kết hợp giữa các tập thực thể. Tài liệu có nhiều ví dụ cụ thể
dễ hiểu từ đơn giản đến phức tạp.

Dù đã cố gắng hết sức, tài liệu cũng không thể tránh khỏi những thiếu sót, rất mong sư
đóng góp của các bạn.


Chúng tôi chân thành cám ơn sự động viên và đóng góp ý kiến của các bạn đồng nghiệp
trong quá trình biên soạn tài liệu.









Tổ Bộ môn Hệ thống thông tin

Tài liệu Phân Tích Thiết Kế Hệ Thống


2
M ỤC L ỤC
Chương 1 8
QUI TRÌNH PHÂN TÍCH THIẾT KẾ HỆ THỐNG 8
I PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG THÔNG TIN LÀ GÌ? 8
II HỆ THỐNG (system) 10
III QUI TRÌNH PHÂN TÍCH THIẾT KẾ HỆ THỐNG 12
Chương 2 16
CƠ SỞ DỮ LIỆU VÀ MÔ HÌNH HÓA DỮ LIỆU 16
I HỆ THÔNG TIN THEO LỐI CŨ (information system) 16
1 Hệ tập tin theo lối cũ 17
2 Một ví dụ về trùng lắp dữ liệu (data redundancy) 17
II TIẾP CẬN CƠ SỞ DỮ LIỆU 18
1 Cơ sở dữ liệu là gì? 18
2 Hệ quản trò CSDL (DBMS: database management system) 18
3 Các loại HQTCSDL 18
III CSDL, HQTCSDL VÀ NGƯỜI DÙNG (User) 19
1 CSDL quan hệ và hệ tập tin theo lối cũ 19
IV DỮ LIỆU TẬP TRUNG HAY PHÂN TÁN 20
V MÔ HÌNH DỮ LIỆU 20
1 Phân tích dữ liệu và phân tích hệ thống thông tin 20

2 Vấn đề tồn kho và nhà cung cấp 20
3 Việc sử dụng và vai trò của mô hình dữ liệu 21
VI THIẾT KẾ MÔ HÌNH DỮ LIỆU VÀ CSDL 21
1 Các bước phân tích thiết kế CSDL 21
2 Tóm tắt các giai đoạn khác nhau trong PTTK CSDL 22
VII TÓM TẮT CHƯƠNG 22
VIII BÀI TẬP 22
Chương 3 23
GIỚI THIỆU VỀ MÔ HÌNH HÓA DỮ LIỆU 23
I GIỚI THIỆU MÔ HÌNH HÓA DỮ LIỆU 23
II XÂY DỰNG MÔ HÌNH ER 23
1 Ví dụ - Mối kết hợp một-nhiều 24
2 Ví dụ – mối kết hợp một-một 25
3 Ví dụ – mối kết hợp nhiều-nhiều 26
III MÔ HÌNH ER THEO KÝ HIỆU CỦA CHEN 27
IV PHIẾU THỰC THỂ THUỘC TÍNH 28
V CÁCH TIẾP CẬN MÔ HÌNH HÓA DỮ LIỆU 29
Tài liệu Phân Tích Thiết Kế Hệ Thống


3
1 Các bước cấu trúc hóa dữ liệu 29
1 Tóm tắt 30
2 Thực hành các bước mô hình hóa dữ liệu 31
VI TỰ ĐIỂN DỮ LIỆU (data dictionary) 33
VII BÀI TẬP 34
1 Bài 2.1 34
2 Bài 2.2 34
3 Bài 2.3 34
4 Bài 2.4 35

5 Bài 2.5 35
6 Trắc nghiệm 35
Chương 4 37
MÔ HÌNH QUAN HỆ 37
I MÔ HÌNH QUAN HỆ LÀ GÌ 37
1 Quan hệ (relation) 37
2 Thực thể, quan hệ, và bảng (table) 37
3 Bộ (tuple) 38
4 Thuộc tính (attribute) 38
5 Ký hiệu 39
II KHÓA 39
1 Khoá (key, candidate key) 39
2 Khóa hợp (composite key) 39
3 Khóa chính (primary key) 39
4 Khóa ngoại (foreign key) 40
5 Khóa dự tuyển và khóa khác 40
6 Khóa nhân tạo (khóa đại diện) artificial key (surrogate key) 41
7 Khóa phụ (Secondary keys) 41
III NHỮNG TÍNH CHẤT KHÁC CỦA MÔ HÌNH QUAN HỆ 41
1 Đại số quan hệ, phép tính quan hệ 41
2 Ràng buộc toàn vẹn 42
3 Kết nối quan hệ 42
4 Miền giá trò (data domain integrity) 42
5 Ràng buộc do người dùng (user constraint) 43
IV QUI TẮC BIẾN ĐỔI MÔ HÌNH ER THÀNH MÔ HÌNH QUAN HỆ 43
1 Qui tắc biến đổi mô hình ER 43
2 Qui tắc thể hiện mối kết hợp thông qua khóa ngoại 43
3 Tóm tắt các qui tắc biến đổi 45
V BÀI TẬP 46
1 Bài tập 1 46

2 Trắc nghiệm 46
Chương 5 48
PHÂN TÍCH DỮ LIỆU VÀ YÊU CẦU CHỨC NĂNG 48
I GIỚI THIỆU 48
1 Hoạt động kiểm tra yêu cầu chức năng 48
2 Phân tích hệ thống thông tin 48
Tài liệu Phân Tích Thiết Kế Hệ Thống


4
3 Phân tích dữ liệu 48
II NGUỒN DỮ LIỆU 49
1 Các phương pháp thu thập thông tin 49
2 Phân tích mẫu biểu 49
III KIỂM TRA YÊU CẦU CHỨC NĂNG 51
1 Nguyên tắc chung 51
2 Ví dụ: 51
IV BÀI TẬP 4.1 53
V TRẮC NGHIỆM 54
Chương 6 55
TÍNH BẮT BUỘC, KHÔNG BẮT BUỘC TRONG MỐI KẾT HP 55
I NGỮ NGHĨEA MỐI KẾT HP 55
1 Tính không bắt buộc của mối kết hợp 55
II PHIẾU MỐI KẾT HP 56
III ẢNH HƯỞNG CỦA TÍNH KHÔNG BẮT BUỘC TRÊN KHÓA NGOẠI 57
1 Quan hệ một-nhiều 58
2 Quan hệ một-một 59
3 Quan hệ nhiều-nhiều 59
IV TÍNH BẮT BUỘC, KHÔNG BẮT BUỘC TRONG CÁC BƯỚc mô hình hóa dữ liệu 60
V BÀI TẬP 60

1 Bài tập 5.1 60
2 Trắc nghiệm 61
Chương 7 63
TẬP THỰC THỂ CHA VÀ TẬP THỰC THỂ CON 63
I TẬP THỰC THỂ PHỤ THUỘC (dependent entity, id-dependent entity) 63
II THUỘC TÍNH HAY TẬP THỰC THỂ 64
III TẬP THỰC THỂ CHA VÀ TẬP THỰC THỂ CON 65
1 Cái tổng quát và cái chuyên biệt 65
2 Ký hiệu tập thực thể cha/con 66
3 Ýnghóa 66
4 Cái tổng thể và cái thành phần 66
5 Thuộc tính của các tập thực thể cha/con 66
6 Các tính chất của tập thực thể cha/con 67
7 Biến đổi tập thực thể cha/con thành quan hệ 69
8 Mô hình hóa các tập con giao nhau bằng vai trò 70
IV TẬP THỰC THỂ CHA, CON TRONG CÁC BƯỚC mô hình hóa dữ liệu 71
V BÀI TẬP 6.1 71
Chương 8 73
MỞ RỘNG KHÁI NIỆM MỐI KẾT HP 73
Tài liệu Phân Tích Thiết Kế Hệ Thống


5
I MỐI KẾT HP MỘT-MỘT 73
II NHIỀU MỐI KẾT HP GIỮA HAI TẬP THỰC THỂ 74
III MỐI KẾT HP hay THUỘC TÍNH 75
IV MỐI KẾT HP LOẠI TRỪ 75
V MỐI KẾT HP BA NGÔI (ternary RELATIONSHIP) 76
VI MỐI KẾT HP MỘT NGÔI (unary relationship, recursive relationship) 77
1 Bản số kết nối một nhiều 77

2 Bản số kết nối một một 78
3 Bản số kết nối nhiều nhiều 79
VII BÀI TẬP 81
1 Bài 7.1 81
2 Bài 7.2 81
3 Bài 7.3 81
Chương 9 83
KHÍA CẠNH TẠM THỜI CỦA MÔ HÌNH DỮ LIỆU 83
I DỮ LIỆU LỊCH SỬ 83
II DÙNG TẬP THỰC THỂ pHỤ THUỘC ĐỂ MÔ HÌNH VẤN ĐỀ CÓ DỮ LIỆU LỊCH SỬ 83
III SỰ THAY ĐỔI bản số KẾT NỐI CỦA MỐI KẾT HP 83
1 Do qui tắc quản lý thay đổi 83
2 Do phải lưu trữ dữ liệu lòch sử 84
IV BÀI TẬP 85
1 Bài 8.1 86
Chương 10 87
KIỂM TRA SỰ DƯ THỪA DỮ LIỆU 87
I DƯ THỪA DỮ LIỆU TRONG CSDL 87
1 Dư thừa tập thực thể 87
2 Dư thừa thuộc tính 87
3 Dư thừa mối kết hợp 87
II BÀI TẬP 9.1 87
Chương 11 89
SỰ CHUẨN HÓA 89
I GIỚI THIỆU 89
II PHỤ THUỘC HÀM (functional dependency) 89
1 Phụ thuộc hàm 89
2 Phụ thuộc hàm đầy đủ 89
III CÁC DẠNG CHUẨN 90
1 Ví dụ 90

2 Dạng chuẩn một (first normal form) 91
3 Dạng chuẩn hai (second normal form) 92
Tài liệu Phân Tích Thiết Kế Hệ Thống


6
4 Dạng chuẩn ba (third normal form) 92
IV CHUẨN HÓA THEO LÝ THUYẾT CSDL 93
V TIẾP CẬN THEO MÔ HÌNH ER 94
VI BÀI TẬP 94
1 10.1 94
2 10.2 95
3 Trắc nghiệm 96
Chương 12 97
CÁC SUY XÉT TRONG THIẾT KẾ VẬT LÝ 97
I GIỚI THIỆU 97
II BẢNG, VÙNG 97
III VÙNG, MÔ TẢ, LOẠI DỮ LIỆU VÀ KÍCH THƯỚC 98
IV KHÓA CHÍNH VÀ KHÓA NGOẠI 98
V KHÓA NHÂN TẠO 98
VI LẬP CHỈ MỤC 98
VII PHÁ VỢ CÁC DẠNG CHUẨN (denormalization) 99
1 Ví dụ 1 99
2 Ví dụ 2 99
3 Ví dụ 3 99
VIII CÁC KHÍA CẠNH KHÁC 100
Chương 13 101
CÁC TRƯỜNG HP NGHIÊN CỨU 101
I TRƯỜNG CAO ĐẲNG TÂY ĐÔ 101
1 Yêu cầu dữ liệu / đặc tả vấn đề 101

2 Mô hình hóa dữ liệu 102
II BÀI TẬP 104
1 Bài tập 1 (hàng hóa) 104
2 Bài tập 2 (Vật tư) 105
3 Bài tập 3 (Mô hình TSCĐ) 106
4 Bài tập 4 (Lương) 107
5 Bài tập 6 (cho thuê băng đóa) 108
6 Bài tập 7 (xử lý đơn hàng) 108
Chương 14 110
SƠ ĐỒ DFD 110
I KHÁI NIỆM 110
II SƠ ĐỒ DÒNG DỮ LIỆU DFD (Data Flow Diagram) 111
1 Khái niệm: 111
2 Công dụng: 112
3 Các thành phần dùng để biểu diễn sơ đồ DFD: 112
Tài liệu Phân Tích Thiết Kế Hệ Thống


7
4 Sơ đồ dòng dữ liệu 113
5 Các qui tắc cần phải tuân thủ khi vẽ sơ đồ DFD 116
6 Các ký hiệu lặp lại 116
III CÁC BƯỚC THỰC HIỆN ĐỂ VẼ SƠ ĐỒ DFD 116
1 Bước 1: lập bảng sự kiện 117
2 Bước 2: Lập sơ đồ môi trường 118
3 Bước 3: Lập sơ đồ DFD cấp 0 118
4 Bước 4: Lập sơ đồ DFD con 119
5 Bước 5: Thiết kế xử lý chi tiết cho các ô xử lý không thể phân rã 119
IV THIẾT KẾ XỬ LÝ CHI TIẾT 119
1 Các phương pháp sử dụng 120

2 Anh ngữ cấu trúc (structured English) 120
3 Bảng quyết đònh và cây quyết đònh 120
1 Sơ đồ thuật giải (flowchart) 121
V TỪ ĐIỂN DỰ ÁN 121
1 Khái niệm 121
2 Xây dựng các điểm vào cho tự điển dự án 121
oOo
Tài liệu Phân Tích Thiết Kế Hệ Thống


8

Chương 1 .
QUI TRÌNH PHÂN TÍCH THIẾT KẾ HỆ THỐNG

I PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG THÔNG TIN LÀ GÌ?

Phân tích và thiết kế hệ thống thơng tin là một phương pháp được sử dụng bởi dãy các cơng ty
từ IBM đến Pepsi, Hasbro, Inc., để tạo và duy trì hệ thống thơng tin nhằm thực hiện các chức
năng cơ bản như lưu trữ chính xác các tên và địa chỉ của khách hàng, xử lý các đơn hàng và
thanh tốn cho người làm cơng. Mục tiêu chính của phân tích và thiết kế hệ thống là cải tiến hệ
thống cấu trúc, điển hình là qua ứng dụng phầ
n mềm, có thể giúp đỡ các nhân viên hồn tất các
cơng việc chính của doanh nghiệp được dễ dàng và hiệu quả hơn. Là một người phân tích hệ
thống, bạn sẽ là trung tâm của sự phát triển phần mềm đó. Phân tích và thiết kế hệ thống thơng
tin được dựa trên:
 Sự hiểu biết của bạn về các mục tiêu, các cấu trúc và các qui trình của tổ chức.
 Kiến thức của bạn về làm thế
nào để triển khai cơng nghệ thơng tin nhằm mang lại lợi ích
cho doanh nghiệp.

Để thành cơng trong cố gắng này, bạn nên có một tiếp cận cấu trúc. SDLC được trình bày trong
hình 1-1 là một tiếp cận bốn-giai đoạn để nhận diện, phân tích, thiết kế, và thực hiện một hệ
thống thơng tin. Qua giáo trình này, chúng tơi dùng SDLC để cấu trúc sự bàn luận về qui trình
phát triển hệ thống. Trước khi chúng tơi nói về SDLC, Chúng tơi mơ tả trước nhất phân tích và
thiết kế hệ
thống có nghĩa là gì.
Phân tích và thiết kế hệ thống: các khái niệm chính

Mục tiêu chính của phân tích và thiết kế hệ thống là để cải tiến hệ thống cấu trúc. Thơng thường
điều này liên quan đến phát triển hay tạo được phần mềm ứng dụng và huấn luyện nhân viên để
sử dụng nó. Phần mềm ứng dụng, cũng còn được gọi là một hệ thống, được thiết kế để hỗ trợ
một nhiệm vụ hay một qui trình đượ
c tổ chức cụ thể như quản lý tồn kho, chi trả lương, hay phân
tích thị trường. Mục tiêu của phần mềm ứng dụng là chuyển dữ liệu thành thơng tin. Ví dụ chẳng
hạn phần mềm được phát triển cho bộ phận kho của một cửa hàng bán sách có thể theo dõi số
lượng sách trong kho của các cuốn sách bán chạy nhất của đợt bán sau cùng. Phần mềm cho
bộ phận chi trả lương có thể theo dõi s
ự thay đổi lương của nhân viên. Sự đa dạng của phần
mềm ứng dụng rời khỏi kệ bán có thể được mua bao gồm WordPerfect, Lotus, and PowerPoint.
Dẫu sao, phần mềm rời khỏi kệ bán có thể khơng phù hợp với u cầu của một tổ chức nào đó,
và vì vậy tổ chức phải triển khai sản phẩm riêng cho mình.
Ngồi phần mềm ứng dụng, hệ thống thơng tin còn bao gồm:
 Phầ
n cứng (hardware) và phần mềm hệ thống (system software) là nền tảng để phần
mềm ứng dụng hoạt động. Hãy nhớ rằng, phần mềm hệ thống trợ giúp các chức năng
của máy tính, trong khi phần mềm ứng dụng trợ giúp người sử dụng hồn thành các cơng
việc như viết lách, chuẩn bị bảng tính, và nối với Internet.
 Các tài liệu sưu liệu và huấn luyện (documentation and training manuals
) là các tài liệu
được tạo bởi người phân tích hệ thống để trợ giúp nhân viên sử dụng phần mềm mà từ

đó nó tạo ra sự trợ giúp.
 Các vai trò cơng việc cụ thể (specific job roles) gắn liền với tồn bộ hệ thống, ví dụ như
người chạy máy tính và việc canh giữ cho phần mềm hoạt động.
 Kiểm sốt (controls) là các phần việc của phần mềm nhằm ngăn ngừ
a gian lận và bị
trộm cắp.
 Người sử dụng phần mềm nhằm thực hiện cơng việc của mình.
Tài liệu Phân Tích Thiết Kế Hệ Thống


9
Các thành phần của các úng dụng hệ thống thơng tin dựa trên máy tính được tóm tắt trong hình
1-2. Chúng tơi chỉ ra mọi chiều của tồn bộ hệ thống, với sự chú trọng đặc biệt đến sự phát triển
phần mềm ứng dụng – trách nhiệm hàng đầu của bạn khi là một người phân tích hệ thống.
Mục tiêu của chúng tơi là giúp bạn hiểu và làm theo qui trình cơng nghệ phần mềm mà nó sẽ dẫn
dắt bạn đến sự t
ạo dựng một hệ thống thơng tin. Như được chỉ ra trong hình 1-3, các phương
pháp (methodologies), kỹ thuật (techniques), và cơng cụ (tools) đã được minh chứng là phần
cốt lõi để xử lý cơng nghệ phần mềm.
Methodologies
Techniques Tools
Software
Engineering
Process
Figure 1-3: The software engineering process
uses methodologies, techniques, and tools


Phương pháp (methodologies) là một dãy cách tiếp cận theo từng bước giúp phát triển sản
phẩm cuối cùng: hệ thống thơng tin. Phần lớn các phương pháp tích hợp một vài kỹ thuật phát

triển, như quan sát trực tiếp và phỏng vấn người sử dụng hệ thống hiện hành.
Kỹ thuật (techniques) là các xử lý mà bạn, là một người phân tích, sẽ làm theo để bảo đảm
rằng cơng việc của bạ
n là hiểu được, trọn vẹn và dễ hiểu. Kỹ thuật cung cấp sự hỗ trợ trên
một phạm vi rộng lớn các cơng việc bao gồm cả việc dẫn dắt trọn vẹn việc phỏng vấn
người dùng hiện hành và tương lai của hệ thống thơng tin để xác định hệ thống của
Tài liệu Phân Tích Thiết Kế Hệ Thống


10
bạn nên làm gì, hoạch định và quản trị các hoạt động của dự án phát triển hệ thống, sơ đồ hóa
hệ thống thực hiện chức năng như thế nào và thiết kế các báo cáo, ví dụ như hệ thống của bạn
sẽ phát sinh các hóa đơn cho người dùng để họ hồn thành cơng việc.
Cơng cụ (tools) là các chương trình máy tính, như cơng cụ máy tính trợ giúp cơng nghệ phần
mềm (CASE: computer aided software engineering) giúp dễ dàng để sử d
ụng một kỹ thuật nào
đó. Ba phần tử này-phương pháp, kỹ thuật, và cơng cụ - cùng làm việc với nhau để tạo ra một
tiếp cận có tính cấu trúc để phân tích và thiết kế hệ thống.
II HỆ THỐNG (SYSTEM)

Thuật ngữ chính được sử dụng thường xun trong quyển sách này là hệ thống. Hiểu biết về hệ
thống và về chúng hoạt động ra sao có tính quyết định để hiểu phân tích và thiế kế hệ thống.
Sự xác định hệ thống và các thành phần của nó

Một hệ thống là một tập tương quan các thủ tục kinh doanh (hay các thành phần) được sử dụng
trong một đơn vị doanh nghiệp, cùng hoạt động vì một mục tiêu nào đó. Ví dụ, mộ hê thống trong
bộ phận lương sẽ theo dõi chính xác khoản chi trả, trong khi hệ thống kho theo dõi chính xác các
hoạt động cung ứng. Hai hệ thống này hồn tồn tách biệt. Một hệ thống có chín tính chất, bảy
trong các tính chất đó được trình bày trong hình 1-4. Sự giả
i thích chi tiết mỗi tính chất sẽ đi theo

sau, nhưng từ hình bạn có thể thấy một hệ thống tồn tại trong một thế giới rộng mở, một mơi
trường. Một đường biên tách hệ thống với mơi trường của nó. Hệ thống nhận nguồn vào từ bên
ngồi, xử lý chúng và gởi kết quả ngược lại mơi trường của nó. Mũi tên trong hình trình bày sự
tương tác này giữa hệ thống và th
ế giới bên ngồi của nó.
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. Hạn chế (Constraint)
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. Ví dụ với một ơ-tơ hay một hệ thống stereo với
thiết kế đúng đắn, chúng ta có thể sửa chữa hay nâng cấp hệ thống bằng cách thay đổi từng
thành phần mà khơng cần phải thay đổi tồn bộ hệ thống.

Tài liệu Phân Tích Thiết Kế Hệ Thống


11
Input
Component
Boundary
Interface
Interrelation

ship
Output
Environment
FIGURE 1-4: Seven characteristics of a system


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 hồ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 ngồi biên giới khơng thể bị thay đổi. 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 tồn diện cho hệ thống lớn hơn: lý
do tồn tại của hệ thố
ng.
Một hệ thống tồn tại trong một mơi trường - mọi thứ bên ngồ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 Bang 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). Hình 1-5 trình bày một
trường đại học có thể được hiểu như một hệ thống sẽ ra sao. Điểm mà ở đó nguồn vào bắt gặp
đường biên giới của nó được gọ
i là giao diện (interface), và cũng có các giao diện giữa các hệ
thống con.
Tài liệu Phân Tích Thiết Kế Hệ Thống



12
Prospective Students
News Media
Funding Sources
UNIVERSITY
FIGURE 1-5: A University As a System
Interface
University
Boundary
ENVIRONMENT

Một hệ thống phải đứng trước sự hạn chế (
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 nhận thực phẩm, dưỡng khí, và nước từ mơi trường như
nguồn nhập. Bạn bị hạn chế khỏi hít thở khơng khí trong lành nếu bạn ở 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.
III QUI TRÌNH PHÂN TÍCH THIẾT KẾ HỆ THỐNG
Taứi lieọu Phaõn Tớch Thieỏt Keỏ Heọ Thoỏng


13


Giai on 1: Hoch nh v chn la h thng (systems planing and selection)
Giai on u tiờn trong chu k sng (SDLC: system development life cycle), hoch nh v chn
la h thng, cú hai hot ng chớnh:
- Hot ng th nht, ai ú nhn din s cn thit phi cú mt h thng mi hay mt h thng
nõng cp. Nhu cu thụng tin ca t chc c xem xột v cỏc d ỏn phự hp vi cỏc nhu c
u
ny c nhn din. Nhu cu h thng thụng tin ca t chc cú th l kt qu ca:
Cỏc yờu cu phi i phú vi cỏc vn trong cỏc th tc kinh doanh hin hnh.
S mong mun thi hnh cỏc nhim v mi.
S hin thc iu m cụng ngh thụng tin cú th c s dng nhm tn dng mt c
hi hin cú.
Nhúm phõn tớch h thng, c thnh lp trong giai on ny, u tiờn chuyn i cỏc yờu cu
thnh cỏc k hoch cho b phn IS (
information system), bao gm mt thi biu phỏt trin mi
cỏc h thng chớnh. Cỏc yờu cu v h thng mi xut phỏt t ngi s dng cú nhu cu mt
h thng mi hay mt h thng ci tin. Trong giai on hoch nh v chn la h thng, mt t
chc xỏc nh cú hay khụng vic nờn dnh (cú s cõn nhc) cỏc ngun lc cho phỏt trin v ci
tin h
thng thụng tin. Nghiờn cu kh thi c lốo lỏi trc giai on th hai ca chu k sng
SDLC xỏc nh s tỏc ng mang tớnh kinh t v t chc ca h thng.
- Hot ng th hai trong giai on hoch nh v chn la h thng l iu nghiờn h thng v
xỏc nh phm vi yờu cu ca h thng. i ng phõn tớch h thng to ra mt k
hoch c th
cho d-ỏn-c--ngh i ng lm theo. K hoch d ỏn ny c th húa ca chu k sng
chun SDLC v mụ t thi gian v ngun lc cn thit thc hin. Xỏc nh hỡnh thc ca mt
d ỏn da trờn mt thc t l b phn IS ca t chc cú kh nng phỏt trin mt h thng gi
i
quyt c vn hay tn dng c thi c v xỏc nh c cú hay khụng cỏi giỏ ca vic
phỏt trin h thng ln hn li ớch cú th cú. iu trỡnh by cui cựng cho ngi qun tr ca t
chc v k hoch x lý vi cỏc giai on d ỏn con thng c thc hin bi ngi ng u

d ỏn v cỏc thnh viờn i ng
khỏc.
Giai on 2: Phõn tớch h thng (systems analysis)
Giai on th hai ca chu k sng l phõn tớch h thng. Trong giai on ny, ngi phõn tớch
thụng qua nghiờn cu th tc kinh doanh hin hnh ca t chc v h thng thụng tin c s
dng to ra cỏc nhim v cụng vic nh thc hin s cỏi, vn chuyn, nhn n hng,
lờn lch thit b v chi tr lng. Phõn tớch cú vi giai on con. Giai
on con th nht bao
hm n vic xỏc nh yờu cu h thng. Trong giai on con ny, bn hay mt phõn
tớch viờn khỏc lm vic vi nhng ngi s dng xỏc nh ngi dựng mong
Tài liệu Phân Tích Thiết Kế Hệ Thống


14
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. Bước kế, bạn nghiên cứu các 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. Thứ ba, bạn phát sinh ra các thiết kế được chọn
lựa phù hợp với các u cầu. Rồi bạn so sánh các chọn lựa này với nhau để xác định cái nào
phù hợp tốt nhất với các 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. Kết xuất của giai đoạn phân tích là bản đặc tả giải
pháp thay thế được đề nghị bởi
đội ngũ phân tích. Một khi việc đề nghị được chấp nhận bởi tổ
chức, bạn có thể tạo ra các kế hoạch để có được 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 như được đề nghị.
Giai đoạn 3: Thiết kế hệ thống (systems design)
Giai đoạn thứ ba của chu kỳ sống đượ
c gọi là thiết kế hệ thống. Trong q trình thiết kế hệ
thống người phân tích 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ý. Bạn 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 tố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à bạn 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. Hình
1-16 trình bày cả thiết kế logic của một sản phẩm với thiết kế vật lý của nó, cạnh nhau nhằm tiện
so sánh. Từ sự so sánh bạn 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ý, bạn chuyển thiết kế logic thành vật lý, kỹ thuật hay đặc tả. Ví dụ bạn 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. Bạn 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 q trình
thiết kế vật lý, đội ngũ phân tích quyết định ngơn ngữ lập trình mà các chỉ thị máy tính sẽ được
viết, 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. Các quyết định này hồn thành
các kế hoạch phần cứng và phần mềm mà nó được nhận diện ở phần cuối của giai đoạn phân
tích. Giờ đây bạn có thể có được bất kỳ cơng nghệ mới nào khơng có sẵn trong tổ chức. 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ưong trình.
Giao đoạn 4: Thực hiện và vận hành hệ thống (systems implemention and operation)

Giai đoạn cuối cùng của chu kỳ sống là một qui trình hai bước: thực hiện và vận hành hệ
thống.
Trong q trình thực hiện và vận hành hệ thống, bạn chuyển các đặc tả hệ thống thành hệ thống
làm việc được vận hành thử rồi đưa vào sử dụng. Thực hiện bao gồm mã hóa, chạy thử và cài
đặt. Trong q 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 q
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 tồn bộ hệ thống
để tìm và sửa chữa lỗi. Trong q 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 đượ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. Khởi đầu hoạch định cả chạy thử và cài đặt đồ
ng thời với việc hoạch định dự án và giai
đoạn chọn lựa, bởi vì chúng cùng đòi hỏi sự phân tích mở rộng để phát triển chính xác các tiếp
cập đúng.
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ư hồn
thành các tư liệu sưu liệu, các chương trình huấn luyện và giúp đỡ người dùng. Hãy chú
ý tư liệu sưu li
ệu và chương trình huấn luyện được hồn thành trong q trình thực
Tài liệu Phân Tích Thiết Kế Hệ Thống


15
hiện. Tư liệu sưu liệu được tạo ra trong suốt chu kỳ sống và huấn luyện xảy ra vào lúc khởi đầu
một dự án. Thực hiện hệ thống có thể tiếp tục cùng với sự tồn tại của hệ thống bởi vì sự hỗ trợ
người dùng cũng là một phần của thực hiện. Bất chấp các cố gắng tốt nhất của ng
ười phân tích,
người quản lý, người lập trình dẫu như thế nào thì việc cài đặt khơng phải ln ln là một xử lý
đơn giản. Nhiều hệ thống được thiết kế tốt vẫn gặp thất bại do qúa trình cài đặt gặp lỗi. Hãy nhớ
là ngay cả một hệ thống được thiết kế tốt cũng gặp sự cố khi mà việc thực hiện khơng được
quản lý tốt. Do việc qu

ản lý việc thực hiện hệ thống thường được thực hiện bởi đội ngũ dự án,
chúng tơi nhấn mạnh khía cạnh thực hiện xun suốt quyển sách này.
Phần thứ hai của giai đoạn thứ tư của chu kỳ sống là vận hành. Ngay khi một hệ thống đang
hoạt động trong tổ chức, người sử dụng cũng nhận ra các vấn đề về nó làm việc nh
ư thế nào và
thường suy nghĩ các cách cải tiến. Trong q trình vận hành, người lập trình tạo sự thay đổi mà
người sử dụng u cầu và sửa đổi hệ thống để phản ánh các điều kiện doanh nghiệp. Các thay
đổi này thì cần thiết để duy trì hệ thống hoạt động và có ích. Lượng thời gian và mức độ cố gắng
dành cho sự cải tiến hệ thống trong q trình hệ thống hoạt động ph
ụ thuộc vào sự thoả thuận
trên việc thực hiện của các giai đoạn trước trong chu kỳ sống. Dẫu sao, vấn đề của hệ thống
chắc chắn xảy đến, khi một hệ thống thơng tin khơng thực thi như mong muốn, khi giá cả để duy
trì hệ thống hoạt động trở nên cao hay khi một u cầu của tổ chức đòi hỏi được thay đổi một
cách cơ bả
n. Những vấn đề như vậy chỉ ra rằng đến lúc bắt đầu thiết kế sự thay thế hệ thống.
Do vậy, xảy ra hồn tất chu kỳ lặp và bắt đầu chu kỳ sống lần nữa và mãi mãi.
oOo

Tài liệu Phân Tích Thiết Kế Hệ Thống


16
Phần 1: THỰC HÀNH MÔ HÌNH HÓA DỮ LIỆU ĐỂ THIẾT KẾ CƠ SỞ DỮ LIỆU
(PRACTICAL DATA MODELLING FOR DATABASE DESIGN)
Chương 2 .
CƠ SỞ DỮ LIỆU VÀ MÔ HÌNH HÓA DỮ LIỆU
(DATABASES AND DATA MODELLING)
Tóm tắt: Chương này trình bày lý do của việc thiết kế CSDL cho Hệ thống thông tin quản lý của một tổ
chức, so sánh sự tiếp cận dựa trên tập tin truyền thống để giải quyết các vấn đề của hệ thống thông tin
với sự tiếp cận dựa trên Cơ sở dữ liệu hiện đại, và đề ra các bước công việc của việc phân tích, mô hình

hóa và thiết kế có tính hệ thống để thực hiện các giải pháp csdl cho các vấn đề của doanh nghiệp
Đến cuối chương này, bạn có thể:
-
so sánh giữa sự tiếp cận dựa trên tập tin truyền thống với sự tiếp cận hiện đại dựa trên csdl để
giải quyết các vấn đề tích hợp.
-
nhận diện được những tồn tại cơ bản của tiếp cận dựa trên tập tin truyền thống.
-
nắm được những khái niệm căn bản của csdl quan hệ
-
thấy được những lợi ích trong việc dùng csdl quan hệ
-
nắm được các bước công việc của việc phân tích, mô hình hóa, thiết kế và thực hiện các giải pháp
csdl quan hệ cho các vấn đề doanh nghiệp
I HỆ THÔNG TIN THEO LỐI CŨ (INFORMATION SYSTEM)

Trong nhiều năm, công nghệ tính toán và thông tin phát triển từ những hệ thống lớn, đắt tiền, độc quyền
đến các hệ thống mở mạnh và vừa phải không đắt tiền. Sự phát triển này mang lại lợi ích to lớn cho
người dùng cuối bởi sự phát triển của các gói ứng dụng số như xử lý văn bản, bảng tính điện tử, văn
phòng xuất bản, hệ quản lý csdl, máy tính trợ giúp công nghệ phần mềm là những ví dụ.
Trước khi máy tính hóa csdl đươc giới thiệu, dữ liệu được lưu trữ theo kiểu điện tử thành nhiều tập tin
riêng biệt, sử dụng hệ tập tin theo lối cũ. Những tập tin này được xử lý bằng các ngôn ngữ thế hệ thứ
ba như COBOL, FORTRAN, PASCAL và ngay cả BASIC để tạo ra các giải pháp cho các vấn đề của
doanh nghiệp. Mỗi ứng dụng, chẳng hạn như hệ tính lương, hệ kho hay hệ thống kế toán sẽ có một tập
các tập tin riêng chứa dữ liệu riêng. Những ứng dụng khác nhau:
-
được viết bằng các ngôn ngữ khác nhau.
-
hoạt động với loại và cấu trúc tập tin riêng
-

thường được thực hiện trên các hệ máy tính khác nhau.
Khi những hệ thống này phát triển, những khiếm khuyết cơ bản bắt đầu tự bộc lộ.
-
cùng một dữ liệu bò trùng lắp ở nhiều hệ thống, hậu quả là phải chi phí thêm cho phần lưu trữ
-
sự không nhất quán gia tăng khi dữ liệu trùng lắp được sửa nơi này nhưng nơi kia thì không
-
Nếu ứng dụng được viết bằng các ngôn ngữ khác nhau, sử dụng cấu trúc tập tin khác nhau,
phương pháp xử lý khác nhau, lưu trữ trong các hệ thống khác nhau thì việc chuyển đổi dữ liệu
giữa các ứng dụng thuận lợi nhất cũng rất cồng kềnh, nặng nề, xấu nhất thì rất khó khăn.
-
Việc xử lý dữ liệu không dễ và rất khó tạo ra các truy vấn, báo cáo không chuẩn mực.
Do vậy, người sử dụng ít có cơ may trực tiếp xử lý dữ liệu hay ứng dụng. Những hệ thống này được điều
hành bởi đội ngũ các chuyên viên máy tính trong áo choàng trắng, cư ngụ trên các văn phòng cửa khóa
và thẻ an ninh.
Tài liệu Phân Tích Thiết Kế Hệ Thống


17
Người sử dụng có nhu cầu thực hiện một ứng dụng phải gởi một bảng yêu cầu cho phòng xử lý dữ liệu.
Thường, những yêu cầu này sẽ nằm ở khay phòng xử lý dữ liệu hàng tháng, nếu không phải là năm.
Cuối cùng, nếu yêu cầu này được thực hiện, một lập trình viên ứng dụng phải thiết kế, lập trình để rút
trích, cập nhật dữ liệu liên quan. Thông thường hệ thống bò quá hạn khi giao cho người sử dụng
Những hệ thống thông tin này, thường được xem như một gia sản, rất nặng nề trong sử dụng và không
đáp ứng yêu cầu người sử dụng.
1
Hệ tập tin theo lối cũ
Trong quá trình tạo ra các hệ thống thông tin, người lập trình phải chọn loại tập tin thích hợp (tuần tự,
tương đối, tuần tự theo chỉ mục ), sự lựa chọn loại tập tin phụ thuộc vào các yếu tố sau:
-

Ngôn ngữ lập trình được sử dụng.
-
Yêu cầu của ứng dụng.
-
phần cứng máy tính/ hệ điều hành sử dụng.
Bất kể tiếp cận nào xảy ra, vấn đế cơ bản vẫn tồn tại trong tất cả loại tập tin và tất cả ngôn ngữ thế hệ
thứ ba. Tồn tại sự gắn bó giữa:
-
cấu trúc luận lý, vật lý của tập tin với
-
chương trình ứng dụng xử lý tập tin này
Sự phụ thuộc của chương trình ứng dụng vào cấu trúc tập tin mà nó xử lý, tạo ra hệ thống thông tin rối
rắm, và tốn thời gian tạo dựng do vậy tốn kém trong bảo trì. Nếu cấu trúc mẫu tin của tập tin bò thay đổi
(ví dụ, một cột hay một qui tắc được thêm hay được thay đổi) tất cả chương trình xử lý tập tin này phải
được sử đổi.
-
Mỗi chương trình phải được chỉnh sửa (trừ khi phần thay đổi được tạo trong phần thư viện
chung) để phản ánh cấu trúc tập tin mới.
-
Mỗi chương trình phải được biên dòch và liên kết lại.
-
mỗi chương trình phải được thử lại.
-
Dữ liệu tồn tại trong hệ thống cũ phải được chuyển đổi thành hệ thống mới, thông thường bằng
cách viết thêm chương trình để thực hiện sự chuyển đổi này.
-
Hệ thống sản xuất phải ngưng hoạt động để cài đặt phần mềm mới.
Những vấn đề trên kết hợp với nhau do một thực tế là trong một tổ chức lớn một ứng dụng được tạo và
được bảo trì độc lập với nhau, sử dụng phần cứng và phần mềm khác nhau. Do mỗi ứng dụng có riêng
các tập tin, nên một dữ liệu cần cho nhiều ứng dụng phải được trùng lắp nghóa là nhiều tập tin chứa

cùng dữ liệu sẽ được tạo
2
Một ví dụ về trùng lắp dữ liệu (data redundancy)
Dữ liệu trùng lắp hay dư thừa (nơi mà một sự kiện được lưu hơn một lần) thì thường thấy trong hệ thống
cũ. Một ví dụ mẫu mực về điều này là hệ quản lý nguồn nhân lực. Hệ quản lý nguồn nhân lực bao gồm
ba hệ chính:
1.
Hệ lương, hệ này duy trì ngày công và lương cho tất cả nhân viên.
2.
Hệ nhân sự. Hệ này duy trì lý lòch cá nhân, dữ liệu về tổ chức, công việc đào tạo và vò trí thăng
tiến.
3.
Hệ hưu. Hệ này quản trò các qui tắc liên quan đến nghỉ hưu, loại nghỉ hưu. Chi tiết về hưu của
từng nhân viên
Vấn đề phức tạp là Hệ lương thông thường được quản lý bởi phòng tài chánh, trong khi Hệ lý lòch và Hệ
Quản lý hưu được quản lý bởi phòng tổ chức.
Tài liệu Phân Tích Thiết Kế Hệ Thống


18
Rõ ràng, có nhiều dữ liệu về nhân viên là chung cho cả ba hệ. Thường những hệ này được thực hiện và
bảo trì riêng biệt, kể cả nguồn tài nguyên riêng và chúng tạo sự trùng dữ liệu nhân viên mà chúng dùng
II TIẾP CẬN CƠ SỞ DỮ LIỆU

Khởi đầu, sự giới thiệu csdl và hệ quản trò csdl nhằm vào một số vấn đề gắn liền với hệ dựa trên các tập
tin theo lối cũ. Điều này tạo ra việc xử lý, phát triển trên hai mươi lăm năm qua với một hệ quan hệ
thương mại xuất hiện cuối những năm thập niên 70 và các năm đầu của thập niên 80
Trước khi xem xét CSDL và hệ quản trò csdl quan hệ giải quyết một vài vấn đề này như thế nào chúng
ta cần làm rõ vài khái niệm.
1

Cơ sở dữ liệu là gì?
Một csdl có thể đònh nghóa tạm như sau: một chỗ chứa có tổ chức tập hợp các tập tin, các mẫu tin và các
cột dữ liệu có liên quan.
Ngày nay csdl tồn tại trong mỗi ứng dụng thông dụng, ví dụ:
-
Hệ kho và kiểm kê.
-
Hệ đặt chỗ máy bay.
-
Hệ nguồn nhân lực.
-
hệ dòch vụ công cộng như cấp nước, điện, khí đốt.
-
Điều khiển quá trình chế tạo và sản xuất.
Danh sách thì vô tận.
2
Hệ quản trò CSDL (DBMS: database management system)
Một hệ quản trò csdl (HQTCSDL) là:
-
một tập các phần mềm quản lý csdl và cung cấp các dòch vụ xử lý csdl cho các những người
phát triển ứng dụng và người dùng cuối.
-
HQTCSDL cung cấp một giao diện giữa người sử dụng và dữ liệu.
-
HQTCSDL biến đổi csdl vật lý thành csdl logic.

3
Các loại HQTCSDL
Các HQTCSDL có thể được phân lớp theo một số cách. Một phương pháp phổ biến trong việc phân lớp
là dựa vào cấu trúc bên trong của HQTCSDL. Hiện có năm loại hệ QTCSDL đang dùng:

-
loại phân cấp như hệ IMS của IBM
-
loại mạng IDMS của Cullinet Software
-
Loại tập tin đảo như ADABAS của Software AG
-
Loại quan hệ như như ORACLE của Oracle, DB2 của IBM, ACCESS của Microsoft Access
-
Loại đối tượng. Loại này là một tiếp cận khá mới trong thiết kế HQTCSDL và việc sử dụng hệ
loại này sớm trở nên phổ biến.
Tài liệu Phân Tích Thiết Kế Hệ Thống


19
Hiện tại, loại HQTCSDL chính được sử dụng trong công nghệ là loại HQTCSDL quan hệ (RDBMS).
Loại này đã chiếm lónh trong công nghệ trên 10-15 năm cuối cùng khi đánh bật loại HQTCSDL phân
cấp và gần đây là HQTCSDL mạng.
III CSDL, HQTCSDL VÀ NGƯỜI DÙNG (USER)

Người dùng khai thác csdl (thông qua HQTCSDL) có thể phân lớp thành ba loại:
-
Người quản trò CSDL (administrator)
-
Người phát triển ứng dụng và lập trình (programer)
-
Người dùng cuối (end user)
¾
Người quản trò CSDL
Hàng ngày, người QTCSDL chòu trách nhiệm quản lý và bảo trì csdl như:

-
sự chính xác và toàn vẹn của dữ liệu và ứng dụng trong csdlsự an ninh của csdl.
-
lưu phòng hờ và phục hồi csdl.
-
giữ liên lạc với người phát triển ứng dụng, người lập trình và người dùng cuối.
-
hoạt động trôi chảy và hiệu quả của csdl và HQTCSDL
¾
Người phát triển và lập trình ứng dụng là những người chuyên nghiệp về máy tính có trách nhiệm
thiết kế, tạo ra và bảo trì hệ thông tin cho người dùng cuối.
¾
Người dùng cuối không phải là những người chuyên nghiệp vể máy tính nhưng họ là các chuyên gia
trong các lãnh vực khác có trách nhiệm cụ thể trong tổ chức. Họ khai thác csdl quan hệ thông qua hệ
được phát triển bởi người phát triển ứng dụng hay các công cụ truy vấn, báo cáo để rút trích thông
tin cần thiết. Nhớ rằng chỉ csdl quan hệ cung cấp khả năng thực cho người dùng cuối khai thác trực
tiếp csdl. Hệ QTCSDL dựa trên loại phân cấp và mạng thông thường đòi hỏi khai thác dữ liệu bởi
các ứng dụng đặc biệt, được phát triển bởi những chuyên gia máy tính chuyên nghiệp, còn đa phần
chỉ tạo được những xử lý dữ liệu đơn giản.
1
CSDL quan hệ và hệ tập tin theo lối cũ
Vì sao csdl quan hệ tác động mạnh đến công nghệ hệ thông tin trên 20 năm qua? Nó cung cấp những gì
mà hệ truyền thống lại không cung cấp được?
csdl quan hệ khắc phục được một số vấn đề cơ bản mà đã gắn liền với hệ dựa trên tập tin theo lối cũ.
Những vấn đề chính yếu này là:
-
Có sự liên kết chặt chẽ giữa cấu trúc luận lý, vật lý của các tập tin dữ liệu và chương trình ứng
dụng khai thác chúng. Điều này tạo cho nó trở nên phức tạp, tốn nhiều thời gian trong tạo dựng
và do vậy mà tốn kém trong bảo trì hệ thống.
-

Có sự dư thừa dữ liệu rất lớn qua việc trùng lắp các tập tin trong các ứng dụng khác nhau, có lẽ
được quản lý bởi các phòng khác nhau trong một tổ chức. Điều này tạo ra những vấn đề liên
quan đến sự thiếu nhất quán của dữ liệu, không gian đóa bò lãng phí, thời gian bảo trì và lưu
phòng hờ các tập tin gia tăng, vấn đề quản trò như an ninh và chuẩn mực khác nhau.
-
Có ít khả năng cho việc khai thác trực tiếp, không theo thể thức các dữ liệu.
Tiếp cận csdl giải quyết vấn đề này như thế nào?
i
Vấn đề 1: cấu trúc logic và cấu trúc vật lý
Tài liệu Phân Tích Thiết Kế Hệ Thống


20
chương trình
ứng dụng
Hệ quản trò cơ sở dữ liệu
CSDL Logic
NSD
Hình 1.3 - Tiếp cận theo csdl tạo ra một lớp phần mềm giữa dữ liệu vật lý và chương trình ứng dụng
chương trình
ứng dụng
NSD
Tiếp cận theo lối cũ Tiếp cận theo csdl

Kiến trúc bên trong HQTCSDL quan hệ tách biệt rõ ràng giữa:
-
cấu trúc luận lý của tất cả tập tin và chương trình ứng dụng khai thác tập tin này và
-
cấu trúc vật lý của csdl và phần lưu trữ các tập tin.
Tiếp cận này tạo cho NQTCSDL có thể thay đổi cấu trúc vật lý hay nơi lưu trữ của tập tin mà không ảnh

hưởng đến chương trình ứng dụng. Cấu trúc vật lý của dữ liệu có thể thay đổi vì nhiều lý do:
-
Một ứng dụng mới cần thêm cột để lưu trữ.
-
Phần cứng lưu trữ tập tin dữ liệu có thể được nâng cấp.
-
Người QTCSDL muốn điều chỉnh CSDL vì lý do hiệu suất.
Tiếp cận csdl dẫn đến một số lợi ích quan trọng để phát triển và sử dụng ứng dụng.Nó tạo khả năng thay
đổi cấu trúc luận lý, chẳng hạn như: thêm vài mục tin mà không ảnh hưởng đến chương trình ứng dụng
không sử dụng mục tin này….Điều này có kết quả là tiết kiệm đáng kể chi phí bảo trì.
ii
Vấn đề 2: dư thừa dữ liệu (data redundancy)
Khi HQTCSDLQH được giới thiệu, nhiều tổ chức mong tích hợp các tập tin đã phân tán khắp trong tổ
chức. Trong xử lý, các cố gắng nhằm hợp nhất các thành phần dữ liệu dư thừa. Dữ liệu có thể chia sẻ
cho nhiều ứng dụng khác nhau và người sử dụng có thể khai thác đồng thời các tập con dữ liệu liên
quan đến họ.
iii
Vấn đề 3: Sự khai thác dữ liệu của người sử dụng
Trong hệ QTCSDLQH người dùng có thể trực tiếp khai thác dữ liệu thông qua việc sử dụng các câu
truy vấn hay các công cụ báo cáo được cung cấp bởi hệ QTCSDL. Ngược lại người sử dụng không thể
trực tiếp khai thác dữ liệu trong các hệ tập tin theo lối cũ.
IV DỮ LIỆU TẬP TRUNG HAY PHÂN TÁN

Khuynh hướng lưu trữ dữ liệu trong csdl tập trung ngày nay đã bò đảo ngược. Sự tiến bộ của mạng máy
tính và công nghệ về csdl đã cho phép dữ liệu được lưu trữ trên nhiều csdl để phân tán ở các nơi và cho
phép khả năng khai thác csdl qua nhiều vò trí vật lý khác nhau.
V MÔ HÌNH DỮ LIỆU

1
Phân tích dữ liệu và phân tích hệ thống thông tin

-
Phân tích dữ liệu là xem xét yêu cầu dữ liệu của một vấn đề đơn lẻ còn
-
Phân tích hệ thống thông tin là xem xét toàn bộ dữ liệu của một tổ chức.
2
Vấn đề tồn kho và nhà cung cấp
Tài liệu Phân Tích Thiết Kế Hệ Thống


21
Csdl quan hệ không tự động loại bỏ sự dư thừa dữ liệu. Đây là trách nhiệm của người thiết kế csdl. Ví
dụ như dữ liệu lưu trữ sau về hàng và nhà cung cấp sau:
Mã hàng Mô tả Mã nhà cung cấp Tên nhà cung cấp Chi nhánh
10 Máy bơm 458 ABC Hardware Bayswater
20 Máy lọc 325 Clough Mt Lawley
30 Máy nén khí 405 Air supplies Cloverdale
40 Máy nghiền 458 ABC Hardware Bayswater
50 Búa 277 HWStores Cloverdale
60 Cây vặn 4 góc 458 ABC Hardware Bayswater
70 Cái cưa 325 Clough Mt Lawley
Bảng 1.1 – Ví dụ về hàng và nhà cung cấp
Ta có thể lưu trữ dữ liệu của bảng 1.1 và bất kỳ csdl quan hệ nào mà không gặp sự phản đối nào của hệ
QTCSDL. Sự dư thừa dữ liệu của bảng trên gây ra các vấn đề sau:
-
Sự kiện ABC Hardware được lưu trữ 3 lần
-
Ta không thể lưu trữ nhà cung cấp mới khi họ chưa cung cấp mặt hàng.
-
Khi cần xóa một mặt hàng sẽ kéo theo khả năng xóa luôn nhà cung cấp.
-

Khi có nhu cầu sửa đổi tên một nhà cung cấp sẽ phải sửa tất cả các dòng có tên nhà cung cấp
này.
3
Việc sử dụng và vai trò của mô hình dữ liệu
Khi giải quyết vấn đề rõ ràng cần thiết phải tiếp cận có phương pháp để:
-
nhận diện phần tử dữ liệu (sự vật, sự việc) của vấn đề.
-
Thiết lập mối kết hợp giữa các phần tử dữ liệu.
Việc phân tích và cấu trúc hóa dữ liệu này được xem như mô hình hóa dữ liệu.
Trước đây, một ứng dụng máy tính được thiết kế và cài đặt sau khi nghiên cứu kỹ các xử lý và yêu cầu
chức năng của hệ thống. Nhưng kinh nghiệm cho thấy các xử lý và chức năng của một tổ chức thường
có khuynh hướng hay thay đổi còn cấu trúc dữ liệu lại ít thay đổi. Vì lý do này mà nhiều hệ thống thông
tin hiện nay cơ bản dựa trên dữ liệu hơn là dựa vào xử lý.
VI THIẾT KẾ MÔ HÌNH DỮ LIỆU VÀ CSDL

Dữ liệu yêu cầu
Phân tích yêu cầu về dữ liệu của ứng
dụng để thiết lập dữ liệu yêu cầu
Mô hình dữ liệu
Cấu trúc hóa dữ liệu để tạo mô hình dữ liệu.
Hình ảnh hóa việc trình bày bằng mô hình thực
thể kết hợp có bổ sung bảng từ điển dữ liệu.
Quan hệ tuyển chọn
Tuyển chọn các quan hệ dự tuyển.
Biến đổi mô hình thực thể kết hợp
thành mô hình quan hệ
Quan hệ chuẩn
Chuẩn hóa quan hệ tuyển chọn đạt
tối thiểu dạng chuẩn 3

Bảng trong csdl
quan hệ
Quyết đònh cấu trúc thực của bảng
để lưu trữ trong csdl quan hệ
Bảng có cài đặt các
hỗ trợ của QTCSDL
Thực hiện cài đặt đầy đủ csdl vật lý, Sử dụng các
tiến bộ của các đặc tính của HQTCSDL và tinh
chỉnh csdl về thi hành
Phân tích-
Độc lập với HQTCSDL
Thiết kế csdl logic -
Độc lập với
HQTCSDL
Thiết kế csdl vật lý -
trong một HQTCSDL
cụ thể
Thiết kế -
CSDL quan hệ
Hình 1.4 - Các bước trong thiết kế mô hình dữ liệu và csdl quan hệ

1
Các bước phân tích thiết kế CSDL
Tài liệu Phân Tích Thiết Kế Hệ Thống


22
- Các bước được làm đi làm lại nhiều lần
-
Những điều thiếu sót ở bước trước sẽ trở thành các tổ hợp thiếu sót ở bước sau.

-
Thời gian ở các bước không có tính cố đònh: có các vấn đề rất khó ở bước phân tích, nhưng lại
dễ ở bước thực hiện. Có những vấn đề lại ngược lại.
-
Các giai đoạn xây dựng một hệ cơ sở dữ liệu bao gồm:
1.
Giai đoạn phân tích (analysis phase, requirements phase)
-
Hoàn thành mô hình dữ liệu
-
Hoàn thành chi tiết sưu liệu trong tự điển dữ liệu
2.
Giai đoạn thiết kế csdl logic (logical design phase)
-
Biến đổi mô hình thực thể thành mô hình quan hệ
-
Kiểm tra yêu cầu chức năng
-
Chuẩn hóa các quan hệ
3.
Giai đoạn thiết kế csdl vật lý (physical design phase)
-
Trong HQTCSDL được chọn, xây dựng các bảng (Table) và các chi tiết cài đặt
2
Tóm tắt các giai đoạn khác nhau trong PTTK CSDL
1.
Phân tích yêu cầu dữ liệu: giai đoạn này được tiến hành đồng thời với giai đoạn mô hình hóa
dữ liệu. Trong giai đoạn này người phân tích phải có hiểu biết về doanh nghiệp và các qui
tắc quản lý của họ. Chúng ta sẽ đề cập điều này chi tiết hơn trong chương 2 và chương 4
2.

Mô hình hóa dữ liệu là xây dựng các cấu trúc dữ liệu và mối liên quan giữa chúng. Các khái
niệm cơ bản sẽ đề cập trong chương 2 và giải thích chi tiết từ chương 5 đến chương 9
3.
Tuyển chọn các quan hệ. Các quan hệ được tuyển chọn từ mô hình thực thể. Chương 3 sẽ đề
cập đến các qui tắc tuyển chọn này
4.
Chuẩn hóa các quan hệ là một xử lý tạo ra các cấu trúc dữ liệu cơ bản, có sự dư thừa dữ liệu
tối thiểu và liên quan với nhau.
5.
Thiết kế csdl vật lý là giai đoạn thực hiện hệ thống trong một HQTCSDL cụ thể
VII TÓM TẮT CHƯƠNG

-
Trong chương này chúng ta đã thấy nguyên nhân ra đời của lý thuyết phân tích thiết kế hệ
thống thông tin của một tổ chức. Sự nguy hiểm khi dử dụng hệ tập tin theo lối cũ để giải bài
toán hệ thống thông tin và các lợi điểm của sự tiếp cận theo kiểu csdl.
-
Mối nguy hiểm khi xây dựng ứng dụng không theo lý thuyết về csdl.
-
Phân biệt giữa csdl và hqtcsdl
-
Các giai đoạn tiến hành để xây dựng giải pháp csdl quan hệ để giải quyết các vấn đề của doanh
nghiệp
VIII BÀI TẬP

Which of the following are components of information systems architecture?
A)
 Data
B)
 Networks

C)
 Processes
oOo
Tài liệu Phân Tích Thiết Kế Hệ Thống


23
Chương 3 .
GIỚI THIỆU VỀ MÔ HÌNH HÓA DỮ LIỆU
(INTRODUCTION TO DATA MODELLING)

Chương này trình bày các kỹ thuật cơ bản để xây dựng mô hình dữ liệu sử dụng mô hình thực thể kết hợp
– Thực thể - thuộc tính – phiếu thực thể thuộc tính - tự điển dữ liệu
-
Nhận diện được thực thể, thuộc tính và mối quan từ đặc tả vấn đề.
-
Liệt kê được các qui tắc quản lý của doanh nghiệp.
-
Xây dựng mô hình ER bằng các thực thể, thuộc tính nhận diện, thuộc tính mô tả và mối kết hợp.
-
Xác đònh được bản số của mối kết hợp.
-
Giải quyết được mối kết hợp nhiều nhiều bằng cách đưa vào tập kết hợp thích hợp.
-
Dùng mô hình thể hiện để giải quyết vấn đề tập kết hợp.
-
Nhận biết các ký hiệu khác nhau về ký hiệu mô hình ER.
-
Nhận biết các thành phần dữ liệu phải lưu trữ trong tự điển dữ liệu và xây dựng phiếu thực thể
thuộc tính.

I GIỚI THIỆU MÔ HÌNH HÓA DỮ LIỆU


Giai đoạn phân tích hệ thống (system analysis) gồm ba hoạt động chính: xác đònh yêu cầu hệ thống
(determining system requirements), cấu trúc yêu cầu hệ thống (structuring system requirements) và
chọn lựa giải pháp thay thế tốt nhất.
Bước đầu tiên của mô hình hóa dữ liệu (phần 2.b của hình trên) là phân tích dữ liệu. Phân tích dữ liệu
có mục đích:
nhận diện các qui tắc quản lý của doanh nghiệp và
thu thập dữ liệu yêu cầu cho mô hình dữ liệu
Chương này bắt đầu bằng các ví dụ hay vấn đề cụ thể. Công cụ mô hình hóa là Mô hình thực thể kết
hợp (mô hình ER) là sự biểu diễn bằng hình ảnh của mô hình dữ liệu.
II XÂY DỰNG MÔ HÌNH ER

Tài liệu Phân Tích Thiết Kế Hệ Thống


24
1 Ví dụ - Mối kết hợp một-nhiều
Những người phụ trách đào tạo của Trường cao đẳng cộng đồng núi Ayers mong muốn tạo lập một csdl
về các môn đào tạo của trường (chứng chỉ leo núi, công nghệ bay) và học viên ghi danh vào những môn
học này. Trường cũng có qui đònh là cùng một lúc, học viên chỉ có thể ghi danh vào một môn học. Họ
chỉ quan tâm về dữ liệu của đợt ghi danh hiện tại. Một khi học viên kết thúc môn học thì nhà trường sẽ
không còn quan tâm đến họ và những học viên này phải được xóa khỏi csdl. Thông tin cần lưu trữ về
một học viên bao gồm: mã học viên, tên học viên, đòa chỉ, ngày sinh, số điện thoại, ngày nhập học của
học viên.
Thông tin về môn học gồm mã môn học, tên môn học, thời lượng.
i
Đặc tả vấn đề
Phần đặc tả vấn đề chứa đựng các qui tắc quản lý và dữ liệu yêu cầu của vấn đề. Chúng ta phải nhận

diện được chúng và mô hình chúng trong mô hình ER.
ii
Thành phần dữ liệu
Dữ liệu yêu cầu của vấn đề là:
-
Chi tiết về học viên có mã học viên, tên học viên, đòa chỉ, ngày sinh, số điện thoại và ngày nhập
học.
-
Chi tiết về môn học có mã môn học, tên môn học và thời lượng.
iii
Qui tắc quản lý
Qui tắc quản lý của vấn đề là:
1.
Mỗi học viên chỉ có thể ghi danh vào một môn học.
2.
Nhiều học viên có thể ghi danh vào một môn học.
3.
Nhà trường chỉ quan tâm đến những học viên của môn học hiện tại.
iv
Những khía cạnh khác
-
Người phụ trách đào tạo là người dùng cuối mà chúng ta xây dựng mô hình dữ liệu và là csdl
cho họ, là người mà ta có thể thu thập thông tin cần thiết cho vấn đề.
-
Học viên học xong môn học và không ghi danh học tiếp môn học khác phải được xóa khỏi csdl.
Đây là yêu cầu chức năng của hệ thống mà ta phải thực hiện. Yêu cầu chức năng không ảnh
hưởng đến mô hình dữ liệu.
-
Nhà trường chỉ quan tâm đến môn học hiện tại. Điều này cho thấy khía cạnh tạm thời của dữ
liệu và chúng được đưa vào nhằm mục đích làm đơn giản bài toán.

v
Mô hình ER (Entity Relationship Model; Entity Relationship Diagram)

Mô hình ER đôi khi còn được gọi là mô hình ý niệm dữ liệu (Conceptual Data Model) hay đơn giản là
mô hình dữ liệu (data model)
Các tính chất trong mô hình ER

Tài liệu Phân Tích Thiết Kế Hệ Thống


25
Tập thực thể (entity type, regular entity type,entity class, generic entity): Hình chữ nhật được gọi là tập
thực thể. Tên của tập thực thể được ghi bên trong hình chữ nhật và dùng danh từ để đặt tên cho tập thực
thể.
Thực thể (instance, entity instance):Một tập thực thể có nhiều phần tử có cùng loại. Mỗi một phần tử
như vậy được gọi là một thực thể.
Mối kết hợp (relationship): Đường nối giữa hai tập thực thể được gọi là mối kết hợp. Mối kết hợp trong
vấn đề trên là mối kết hợp một-nhiều (1:M). Nội dung của mối kết hợp được diễn tả theo hai chiều:
“ghi danh vào”, “được ghi danh bởi”
Thuộc tính (attribute): Các dữ liệu ghi bên cạnh tập thực thể được gọi là thuộc tính. Chúng cung cấp
thông tin chi tiết về tập thực thể. Có hai loại thuộc tính:
Thuộc tính nhận diện (identifier) là thuộc tính để phân biệt thực thể (instance) này với thực thể kia
trong tập thực thể.
Thuộc tính mô tả (descriptive attribute) là thuộc tính cung cấp thông tin chi tiết hơn về thực thể trong
tập thực thể.
vi
Biểu diễn qui tắc doanh nghiệp trên mô hình
Mô hình ER trên đã diễn tả được hai qui tắc quản lý của doanh nghiệp là:
Mỗi HỌC VIÊN ghi danh vào một MÔN HỌC
Mỗi MÔN HỌC được ghi danh bởi một hay nhiều HỌC VIÊN

vii
Bản số kết nối của mối kết hợp (cardinality)
Mối kết hợp của vấn đề trên là mối kết hợp hai ngôi (binary relationship) có bản số (cardinality, degree
of relationship) kết nối một nhiều. Bản số kết nối một-nhiều rất phổ biến trong mô hình ER. Hai loại
bản số kết nối còn lại ít phổ biến hơn nhưng không kém phần quan trọng là mối kết hợp một-một và mối
kết hợp nhiều-nhiều.
2
Ví dụ – mối kết hợp một-một
Phòng cảnh sát mong muốn quản lý lý lòch cá nhân những người lái xe và bằng lái của họ. Một người
chỉ lấy được một bằng lái và một bằng lái chỉ thuộc về một người. Thông tin về lái xe mà phòng cảnh
sát quan tâm là:
+
mã người lái xe
+
tên
+
đòa chỉ
+
ngày sinh
Thông tin về bằng lái cần lưu trữ là:
+
mã bằng lái
+
loại bằng lái
+
ngày hết hạn

×