Bài giảng: Phân tích thiết kế hệ thống (11 chương)

Chia sẻ: abcdef_14

Giới thiệu sơ lược một số phương pháp phân tích thiết kế Phân tích thiết kế hệ thống thông tin là phương pháp luận để xây dựng và phát triển hệ thống thông tin bao gồm các lý thuyết, mô hình, phương pháp và các công cụ sử dụng trong quá trình phân tích và thiết kế hệ thống. Có nhiều phưong pháp phân tích khác nhau. Ở đây chúng ta tóm lược một vài phương pháp quan trọng để làm phương tiện so sánh và đối chiếu tham khảo các tài liệu khác. Phương pháp Sadt ( Structured Analysis...

Bạn đang xem 10 trang mẫu tài liệu này, vui lòng download file gốc để xem toàn bộ.

Nội dung Text: Bài giảng: Phân tích thiết kế hệ thống (11 chương)

Mặt thứ ba:
Chương1. Đại cương về hệ thống thông tin quản lý
Mặt này có liên quan đến chu kỳ của các quyết định (Cycle des Decisions) cầ n phả i ra trong suốt chu kỳ sống
Giới thiệ u sơ lược mộ t số phương pháp phân tích thiết kế
củ a sản phẩm. Nhữ ng quyết định có liên quan đến nội dung của những mô hình khác nhau của chu kỳ tr ừu
Phân tích thiết kế hệ thống thông tin là phương pháp luận để xây dựng và phát triển hệ thống thông tin bao gồm
tượng, đ ến các hình thái của quan niệm và liên quan đ ến sự phát triển củ a hệ thống .
các lý thuyết, mô hình, phương pháp và các công cụ sử dụng trong quá trình phân tích và thiết k ế hệ thống. Có
Đặ c trư ng cơ bản của phương pháp MERISE là :
nhiều phưong pháp phân tích khác nhau. Ở đây chúng ta tóm lược một vài phương pháp quan tr ọng để làm
+ Nhìn toàn cục
phương tiện so sánh và đối chiếu tham khảo các tài liệu khác.
+ Tách rời các dữ liệu và xử lý
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
+ Tiếp vận theo mức
Phương pháp này xuất phát từ Mỹ, ý tưởng cơ bản củ a nó là: phân rã một hệ thống lớn thành các phân hệ nhỏ
Có thể tóm tắ t nội dung thứ hai và nội dung thứ ba thể hiện qua việc nhậ n thứ c và xây dựng các loại mô hình
và đơn giản.
trong quá trình phân tích và thi ết kế bằ ng bảng sau :
SADT đ ược xây dựng dựa trên 7 nguyên lý sau đây.
• Sử dụ ng một mô hình
M ức Dữ liệ u Xử lý
• Phân tích đi xu ống (top down)
Quan niệm Mô hình quan niệm dữ liệu Mô hình quan niệm xử lý
• Dùng một mô hình chức năng và một mô hình quan niệm ( còn đ ược gọi là " Mô hình thiết kế ")
Tổ chức Mô hình Logic dữ liệu Mô hình tổ chứ c xử lý
• Thể hiện tính đ ối ngẫu củ a hệ thống
Kỹ thuật Mô hình vậ t lý dữ liệu Mô hình tác vụ xử lý
• Sử dụ ng các biểu diễn dưới dạng đ ồ hoạ.
• Phối hợp hoạt động của nhóm.
Ưu điểm của phương pháp MERISE là có cơ sở khoa học vữ ng chắ c. Hiện tại nó là một trong những phương
• Ưu tiên tuyệt đ ối cho hồ sơ viết.
pháp phân tích được dùng nhiều ở Pháp và các nước Châu Âu khi phả i phân tích và thiết k ế các hệ thống lớn.
Nhược điểm của phương pháp này là cồng kềnh, do đó, để giả i quyết các áp dụ ng nhỏ việc sử dụng phương
SADT đ ược định nghĩa là phương pháp sử dụng các k ỹ thu ật :
pháp này nhiều lúc đ ưa đến việc kéo dài thời gian, nặng nề không đáng có.
• 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 )
Phương pháp MCX ( Methode de xavier castellani)
• Anh ngữ có cấ u trúc (Structured English) Phương pháp phân tích MCX có ngu ồn gốc từ Pháp, do giáo sư của Viện tin học xí nghiệp (IIE - Institut
• Bảng quyết định Informatique d' entreris) sáng tạ o. Phương pháp này khá thông dụng và thoả các đ iều kiện củ a các phương pháp
• Cây quyết đ ịnh phân tích thế hệ thứ hai .
Phương pháp SADT có nhiều ưu điểm như dựa vào nguyên lý phân tích cấu trúc, thiết kế theo lối phân cấp, Có thể nêu một số nét cơ bả n về phương pháp phân tích MCX
dự ng trên các lưu đ ồ chức nă ng, tạo được các liên hệ " Một cha nhiều con " (One parent to many children • Cho phép xây dự ng được một mô hình tổng quát, chính xác, biểu diễn hệ thống thông tin hoặc các phân
relationship), bảo đả m từ một dữ liệu vào sả n xu ất nhiều dữ liệu ra. hệ thông tin.
Như ng nhược điểm củ a nó là không bao gồm toàn bộ tiến trình phân tích và nếu không thận tr ọng sử dụng • 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 hệ thống thông tin.
SADT có thể đưa tiến trình trùng lặ p thông tin.
• 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 một ngôn ngữ giải thuật
Phương pháp này được dùng khá phổ biến, truyền thống do tính logíc của nó.
dùng ở các mức khác nhau.
Tài liệu này sẽ bám sát phương pháp thiết kế SADT và tham khảo các phương pháp khác
• Cho phép lượng hoá các xử lý.
• Phương pháp MCX đưa ra các giai đoạn cơ bả n của quá trình phân tích.
Phương pháp MERISE ( Methode pour Rassembler les Ideés Sans Effort )
• Phân tích macro
Phương pháp đ ể tậ p hợp các ý tưởng không cầ n cố gắ ng
• Phân tích sơ bộ
Phương pháp MERISE là phương pháp phân tích có nguồn gốc từ Pháp, ra đời từ nhữ ng năm cuối thập niên 70.
• Phân tích quan niệm
Nó là k ết quả nghiên cứu củ a nhiều tập thể nghiên cứu tin học nhằ m đáp ứng các chờ đ ợi củ a người sử dụng, ý
• Phân tích chứ c năng
thức được về sự lạc hậu của các phương pháp phân tích cổ điển thế hệ thứ nhất.
• Phân tích cấu trúc
ý tưởng cơ bả n của phương pháp MERISE là xu ất phát từ ba mặt cơ bả n sau :
Phương pháp phân tích này khá hữu hiệu, thích hợp với việc thực hành. Nhược điểm là rườm rà.
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 nghén"(Gestation) - Quan
Phương pháp GALACSI (Groupe d' Animation et de Liaison pour I' Analyse et la Conception de système d'
niệm/ý niệm - Quản tr ị - chết . Chu k ỳ sống này đối với hệ thống tổ chứ c lớn có thể kéo dài từ 10-15 nă m.
Mặt thứ hai : Information )
Phương pháp GLACSI có nguồn gốc tại Pháp, do một nhóm các giáo sư của các học viện công nghệ I UT
Đề cập tới chu kỳ đ ặc tả của hệ thống thông tin còn đ ược gọi là chu k ỳ trừu tượng.
Hệ thống thông tin tựu trung lạ i như một toàn thể được miêu tả bởi nhiều tầng (Couche): "Bộ nhớ" củ a hệ (Institut Universiture de Technologic) và MIAGE (Maitrise de Methodes Informatiques Applyquées à la
Gestion - Cao học về phương pháp tin học áp dụng vào qu ản lý).
thống thông tin được mô tả trên bình diện quan niệm, kế đó trên bình diện logic và cuối cùng trên bình diện vật
Phương pháp GALCSI chính thứ c ra đời vào tháng 04 năm 1982. Nội dung cơ bả n của phương pháp trình bày
lý. "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
một tập hợp cá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.
bình diện tác nghiệp.
1. Nghiên cứu các hệ t hống tổ chức và hệ t hố ng thông tin tương ứng:
Mỗi tầng được mô tả dưới dạng mô hình tập trung tập hợp các thông số chính xác. Theo đó kho nhữ ng thông số
* Nghiên cứu hiện trạng
củ a tầng dưới tăng trưởng, tầng đang mô tả không biến đổi và nó chỉ thay đổi khi các tham số của mình thay
* Nghiên cứu khả thi
đổi.
2. Phân tích chức năng
Mỗi mô hình được mô tả thông qua một hình thứ c dựa trên các nguyên tắc, nguyên lý ngữ vự ng và cú pháp xác
* Mô hình dữ liệu
định. Có những qui tắc chuyển cho phép chuyển từ mô hình này sang mô hình khác một cách tự động nhiều hay
* Mô hình xử lý
ít.
3. Phân tích cấu trúc
* Tổ chức dữ liệu : ở mức logic và vật lý
* Tổ chức xử lý : Xử lý theo lô, xử lý theo thời gian thự c (đối thoại người với máy)
http://www.ebook.edu.vn
Page 1 of 70 Page 2 of 70
* Môi trường tiếp nhận : Máy vi tính, mạng máy tính, ngôn ngữ , các phần mềm chuyên dụ ng. o Đối nội: H ệ thống thông tin là cầ u nối liên lạ c giữ a các bộ phận của hệ kinh doanh. Nó cung cấ p
* Giao diện người - máy : Công thái học, ngôn ngữ giao tiếp. cho hệ tác nghiệp, hệ quyết định thông tin nhằ m 2 loạ i sau :
§ Phản ánh tình trạ ng nội bộ của cơ quan, tổ chức trong hệ thống .
4. Lập trình:
§ Tình trạng hoạt đ ộng kinh doanh của hệ thống.
Giải thuật, ngôn ngữ lậ p trình, kiến trúc các môi trường đặ thù. Do phầ n lớn các tác giả là các giáo sư nên
§ Vai trò củ a hệ thống thông tin :
phương pháp đ ược dùng đ ể giả ng dạ y trong nhiều học viện (IUT) . Nhược điểm của phương pháp là chưa thử
nghiệm nhiều trong thực tế. Hệ thống thông tin đóng vai trò trung gian giữa hệ thống và môi tr ường, giữa hệ thống con quyết định và hệ
thống con tác nghiệp. Sơ đồ dưới đây cho ta các nhìn nhậ n vai trò của hệ thống thông tin
1. Các hệ t hống kinh doanh :
Hệ thống : Là một tập hợp có tổ chứ c của nhiều phầ n tử có những mối ràng buộc lẫn nhau và cùng hoạt động
HT
chung cho một mụ c đ ích nào đó. Tư vấn Quyết định
quyết đ ịnh
TT môi trường
HT
thông tin
Thông tin vào Thông tin ra
HT
Môi trường tác nghiệp
- Nguyên vật liệu - Thành phẩm
- Tiền - Tiền
Phần tử - Thông tin - Thông tin
Hệ thống kinh doanh là hệ thống có mục đ ích phục vụ cho kinh doanh (Business). Kinh doanh có thể vì lợi ích 3. Các thành phần hợp thành của hệ thống thông tin:
hoặc vì lợi nhuận. Việc phân định này chỉ mang tính tương đối và nó thật sự cầ n thiết để sau này khi xây dự ng a) Đặc điểm của HTTT quản lý:
hệ thống ta có thể kiểm nghiệm hệ thống đã đạt được yêu cầu và mục tiêu chưa. HTTT là hệ thống được tổ chứ c thống nhất từ trên xuống dưới có chứ c năng tổng hợp các thông tin giúp các
Thí dụ : Các công ty, nhà máy, d ịch vụ ... là hệ thống kinh doanh vì lợi nhuận nhà qu ản lý tốt cơ sở củ a mình và tr ợ giúp ra quyết định hoạ t đ ộng kinh doanh. Một hệ thống qu ản lý được
Các trường học, công trình công cộng, bệnh viện ... là h ệ thống kinh doanh vì lợi ích phân thành nhiều cấ p từ trên xuống dưới và chuyển từ dưới lên trên.
Đặ c điểm củ a hệ thống kinh doanh là có sự tham gia của con người nên mang theo nhiều đặ c điểm, ưu điểm, b) Các thành phần cơ bản của HTTT
khuyết điểm của con người. Nếu không k ể con người và phương tiện thì HTTT còn lại thự c chất gồm 2 bộ phậ n: Dữ liệu và xử lý.
• Các dữ liệu: Các thông tin có cấ u trúc. Với mỗi cấp quả n lý lượng thông tin xử lý có thể rất lớn, đ a dạng
Các thành phần của hệ thống kinh doanh: Một hệ thống kinh doanh có thể phân làm 3 hệ thống con :
• Hệ thống quyết định là hệ thống bao gồm: con người, phương tiện và các phương pháp tham gia đ ề xuấ t và biến động cả về chủng loại, về cách thứ c xử lý. Thông tin cấu trúc bao gồm luồng thông tin vào và
quyết định. lu ồng thông tin ra.
• Hệ thống thông tin là hệ thống bao gồm: con người, phương tiện và các phương pháp tham gia xử lý Luồ ng thông tin vào
Có thể phân loại các thông tin cầ n xử lý thành ba loạ i sau:
thông tin kinh doanh (hệ qu ản trị ) .
• Thông tin cần cho tra cứu: Các thông tin dùng cho tra cứu là thông tin dùng chung cho hệ thông và ít bị
• Hệ tác nghiệp là hệ thống bao gồm: con người , phương tiện và các phương pháp tham gia tr ực tiếp
thay đổi. Các thông tin này thường đ ược cập nhật một lầ n và chỉ dùng cho tra cứu trong việc xử lý thông
thự c hiện mục tiêu kinh doanh (sản xuất trực tiếp ). Một cách tổng quát hệ tác nghiệp là các hoạt động
nhằm thự c hiện có tính cách cạnh tranh đ ể đạ t đ ược mục tiêu đã xác định củ a hệ quyết định. tin sau này.
• Thông tin luân chuyển chi tiết: Các thông tin luân chuyển chi tiết là loại thông tin chi tiết về hoạt động
Lưu ý rằ ng nhiệm vụ của môn họ c xây dựng hệ thống thông tin nên tránh sa đà nhầm lẫn với hệ tác nghiệp
của đ ơn vị, khối lượng, khối lượng thông tin thường rất lớn, cần phải xử lý kịp thời.
2. Nhiệm vụ v à vai trò của hệ thống thông tin
• Thông tin luân chuyển tổng hợp: Các thông tin luân chuyển tổng hợp là loạ i thông tin được tổng hợp từ
Hệ thống thông tin là phân hệ con của hệ thống kinh doanh. Chức nă ng chính của nó là xử lý thông tin của hệ
thống. Sự phân chia này có tính phương pháp luận chứ không phải là sự chia mang tính vậ t lý. Quá trình xử lý hoạt động của các cấp thấ p hơn, thông tin này thường cô đọng, xử lý theo k ỳ, theo lô.
thông tin tương tự như hộp đ en gồm bộ xử lý, thông tin đầu vào, thông tin đầu ra và thông tin phả n hồi của hệ Luồ ng thông tin ra
thống • Thông tin đ ầu ra được tổng hợp từ các thông tin đầu vào và 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 ra là việc tra cứu nhanh về một đối tượng cần quan tâm
Black box
đồng thời phải đ ảm bả o chính xác kịp thời.
(H ộp đ en)
• Các thông tin đầu ra quan trọng nhất được tổng hợp trong quá trình xử lý là các báo cáo tổng hợp, thống
Input Output
kê, thông báo. Các mẫ u biểu báo cáo thống kê phả i phả n ánh cụ thể trự c tiếp, sát với một đ ơn vị.
• Ngoài nhữ ng yêu cầu được cậ p nhật thông tin kịp thời cho hệ thống, luồng thông tin ra phả i được thiết
Feed back (phản hồi ) kế linh hoạt mềm dẻo. Đây là chứ c nă ng thể hiện tính mở, tính giao diện của hệ thống thông tin đầu ra
gắn với chu kỳ thời gian tu ỳ ý theo yêu cầu của bài toán cụ thể, từ đó ta có thể lọc bớt được thông tin
Thông tin kinh doanh có 2 loại sau đây. thừa trong quá trình xử lý.
- Thông tin tự nhiên là loại thông tin giũ nguyên dạng khi nó phát sinh : tiếng nói , công vă n , hình ả nh ... Việc Các xử lý là các quy trình, phương pháp, chứ c nă ng xử lý thông tin đ ược lưu giữ lâu dài như ng luôn tiến triển
xử lý thông tin này thuộc về công tác văn phòng với k ỹ thu ật mang đặ c đ iểm khác nhau do 2 ngu ồn gốc.
- Thông tin có cấu trúc là thông tin được cấu trúc hoá với khuôn dạng nhất định thường dạng sổ sách, bảng • Tự nhiên tiến hoá: Thông tin làm thay đổi tình trạng về nội bộ.
biểu quy định • Tự nhiên hoạt động: Thông tin làm thay đổi tình trạng hoạt đ ộng kinh doanh của doanh nghiệp.
• Nhiệm vụ của hệ thống thông tin: 4. Các hệ t hống tự động hoá :
o Đối ngoạ i: H ệ thống thông tin thu nhận thông tin từ môi trường ngoài, đưa thông báo ra ngoài. Hệ thống tự đ ộng là hệ thống có sự tham gia củ a máy tính để xử lý thông tin, có nhiều mứ c đ ộ xử lý khác nhau.
Ví dụ như thông tin về giá cả, thị tr ường,... * Mức độ tự động hoá :
• Toàn bộ: Con người chỉ đóng vai trò phụ trong hệ thống.
http://www.ebook.edu.vn
Page 3 of 70 Page 4 of 70
• Một phần : Chia công việc xử lý giữa người (thủ công) và máy tính. Requirements
Việc tự động hoá một hệ thống kinh doanh có thể làm với 2 cách 3%

• Sử dụ ng máy tính tậ p trung bao trùm toàn bộ (Phương pháp hồ) Specifications
3%
• Áp dụng máy tính cho từng bộ phận riêng r ẽ, cho từng phạm vi (Phương pháp giếng) Design 5%
* Phương thức xử lý thông tin:
• Xử lý mẻ (Batch Processing): T hông tin đến đợi theo mẻ. Thí dụ như tính lương, tuyển sinh, các bài Code 7%
toán giải quyết có tính đ ịnh k ỳ theo chu kỳ thời gian nhất định Module Test
• Xử lý trực tuyến (on-line processing): Thông tin đến xử lý ngay. Thí dụ như bán vé máy bay, vé tàu, hệ 8%
INTERNET Intergration
Phương thức này thường dùng cho các trường hợp sau : Test 7%
Maintenace
• In các báo cáo, k ết xuấ t, thống kê. 67%
• In các giấ y tờ giao dịch có số lượng lớn Các giai đoạn củ a phân tích và thiết kế hệ thống thông tin
Xử lý có tính chất đ ịnh k ỳ thường dùng khi: Người sử dụ ng muốn
• Vào ra và xử lý một số lượng nhỏ các giao dịch xử lý tr ực tiếp
• Hiển thị, chỉnh đốn, sửa chữa các tệp Mô hình hệ
• Phục vụ trự c tiếp khách hàng tại chỗ thống mức Mô tả h oạt động h ệ
Mô tả h oạt độ ng của
vật lý.
Ngày nay người ta có xu hướng dùng xử lý trực tuyến nhiều do máy có giá thành thấ p, như ng điều đ ó không thống mớ i
hệ th ống hiện tại
hẳ n là hay. làm việc nh ư thế n ào
làm việc nh ư thế nào
* Ưu điể m trực tuyến (HOW TO DO)
( HOW TO DO)
I
• Giảm được công việc giấ y tờ, các khâu trung gian. IV

• Kiểm tra đ ược sự đúng đắn của dữ liệu ngay khi thu nhậ p.
• Người dùng hiểu rõ được qui trình xử lý (người dùng tham gia với vai trò tích cự c).
Đây là vấn đề khó Người sử dụng
• Cho tr ả lời nhanh chóng.
mong muốn
Ngườ i sử d ụng và
* Nhược điể m :
ngườ i phân tích
• Đắt hơn (cả về phần cứng và phần mềm )
• Xây dựng tốn công, tốn thì giờ hơn
• Sử dụ ng CPU không kinh tế ( phải thường trực ngay cả lúc không làm gì )
• Xử lí chậ m khi khối lượnglớn.
• Khó bảo đảm tính tin cậ y (Reliability).
M ô hình hệ M ô tả hệ th ống hiện
• Khó phục hồi dữ liệu (vì dữ liệu ở trên dòng). Mô tả hệ thống Mớ i
th ống mức tại làm gì
• Đòi hỏi nhiều biện pháp đ ặc biệt dữ liệu. làm gì
Logic (WHAT TO DO) (WHAT TO DO)
5. Các giai đoạn phân tích, thiết kế v à cài đặt : II III
Các công việc cần hoàn thành .
• Xác định vấ n đ ề và yêu cầ u.
• Xác định mục tiêu, ưu tiên.
• Thiết kế logic (tr ả lời câu hỏi làm gì ? hoặc là gì ? What ?).
• Thiết kế vật lý ( đưa những biện pháp, phương tiện, How ?). Ngườ i thiết kế mong
• Cài đặt (lậ p trình). mu ốn
• Khai thác và bảo trì.
Bài t ập chương 1:
Việc phân giai đoạ n tùy từ ng phương pháp và chỉ có tính tương đ ối.
Tại sao khi xây dựng các phần mềm cần phả i phân tích và thiết k ế hệ thống ?.
1.1
* Giai đoạn 1 : - Khả o sát hiện trạng và xác lậ p dự án.
Nêu vai trò hệ thống thông tin trong hệ thống kinh doanh.
1.2
- Tìm hiểu phê phán để đưa ra giả i pháp
Nêu các giai đoạn của quá trình phân tích và thiết kế hệ thống.
1.3
* Giai đoạn 2 : - Phân tích hệ thống.
Những lĩnh vự c ứ ng dụng nào phù hợp với phương thức xử lý thông tin theo lô (batch), và lĩnh vực nào
1.4
Phân tích sâu hơn các chức năng, các dữ liệu của hoạt đ ộng cũ để đ ưa ra mô tả hoạ t động mới (giai đ oạn thiết
phù hợp xử lý theo trực tuyến (on-line)
kế logic).
Phân biệt hệ thông tin quả n lý (MIS) với hệ trợ giúp quyết đ ịnh (DSS) và hệ chuyên gia (ES)
1.5
* Giai đoạn 3 : Thiết k ế tổng thể ( xác lập vai trò của môi trường một cách tổng thể trong hệ thống).
Hãy thảo lu ận sơ đồ phân bố các sự cố sai sót của vòng đ ời hệ thống
1.6
* Giai đoạn 4 : Thiết k ế chi tiết :
- Thủ công. Design
- Kiểm soát phục hồi. 2 7%

- Thiết k ế cơ sở dữ liệu. Requirement
- Chương trình. 56%
* Giai đoạn 5 : Cài đặ t, lập trình C ode
7%
Other
* Giai đoạn 6 : Khai thác và bảo trì 10%
Theo một thống kê tính về chi phí cho các giai đ oạn này được thể hiện bằng sơ đồ sau (Zelkowitz 1978, Trang
202)
http://www.ebook.edu.vn
Page 5 of 70 Page 6 of 70
a. Mục đích: Diễn tả tập hợp các chức nă ng củ a hệ thống trong các mối quan hệ trước sau trong tiến trình xử
Chương 2. Các công cụ diễn t ả xử l ý
lí, trong bàn giao thông tin cho nhau. Mục đích của biểu đ ồ luồng dữ liệu là giúp chúng ta thấy được đ ằng sau
2.1 Đại cương: Phân tích thiết kế hệ thống nói chung là sự nhận thứ c và mô tả một hệ thống; bởi vậy người ta
nhữ ng cái gì thực tế xảy ra trong hệ thống (cái bản chất), làm rõ những chức nă ng và thông tin nào cần thiết cho
thường dùng các mô hình, các biểu đồ đ ể trừu tượng hoá và là công cụ giúp con người trao đổi với nhau trong
qu ản lý
quá trình phát triển hệ thống. Mỗi mô hình là một khuôn dạng để nhận thứ c về hệ thống và nó mang ý thức chủ
Biểu đồ này dựa vào phương pháp phát triển hệ thống có cấu trúc bao gồm 3 kỹ thuật phân tích chính:
quan.
• Sơ đồ dòng dữ liệu (Data Flow Diagram ) mô tả quan hệ giữa quá trình xử lý và các dòng dữ liệu
Mục tiêu củ a phân tích mô hình xử lý là đưa ra một cách xác đ ịnh các yêu cầu củ a người dùng trong quá trình
• Từ điển định nghĩa d ữ liệu (Data Dictionary Definitions) môt tả các phần tử dòng dữ liệu
phát triển hệ thống; nhữ ng yêu cầu này được bám sát từ một loạt các sự kiện mà người phân tích thu được qua
• Xác định quá trình xử lý (Proccess Specifications) mô tả quá trình xử lý một cách chi tiết
phỏng vấ n, đặt câu hỏi, đọc tài liệu và qua các phép đo thử nghiệm
Có một số công cụ chính để d iễn tả ch ức năng của hệ thống: Mối quan hệ giữa 3 thành phần là bức tranh sinh động của hệ thống được thể hiện qua sơ đồ sau:
• Biểu đ ồ phân cấp chứ c năng (BPC) - Functional Hierachical Decomposition Diagram (FHD): Quản lý
• Biểu đ ồ luồng dữ liệu (BLD) - Data Flow Diagram (DFD)
Dữ liệu
Xử lý
• Các kí hiệu mở r ộng của hãng IBM
• Sơ đồ thuật toán (Algorithsm) Lưu tr ữ
• Ngôn ngữ giả trình (Pseudo Code)
• Các đặ c tả các qui tắc qu ản lý
Từ điển dữ liệu
• Từ đ iển đ ịnh nghĩa chức năng xử lý
2.2. Biể u đồ phân c ấp chức năng (BPC) b. Tác dụng: BLD là công cụ chính củ a quá trình phân tích, nhằ m mụ c đích thiết kế trao đ ổi và tạo lập dữ liệu.
BPC là công cụ khởi đầu để mô tả hệ thống qua chức nă ng do công ty IBM phát triển vì vậ y cho đến nay nó Nó thể hiện rõ ràng và khá đầ y đủ các nét đ ặc tr ưng của hệ thống trong các bước phân tích, thiết kế và trao đổi
vẫ n còn được sử dụng. Nó cho phép phân rã dần dầ n các chức năng từ chứ c nă ng mứ c cao thành chức năng chi tư liệu
tiết nhỏ hơn; và kết quả cuối cùng ta thu đ ược một cây chứ c năng. Cây chứ c năng này xác định một cách rõ c. Các mức diễn t ả:
ràng dễ hiểu cái gì xảy ra trong hệ thống. • Mức v ật lí: Mô tả hệ thống làm như thế nào ? (How to do ?)
Thành phần củ a biểu đồ bao gồm : • Mức khái niệm (logic): Mô tả hệ thống làm gì?(What to do?); ở đây không nói đến biện pháp công cụ...)
• Các ch ức năng: được kí hiệu bằng hình chữ nhật trên có gán tên nhãn Hình thức biểu diễn : Trong một số tài liệu khác nhau với các phương pháp tiếp cận khác nhau (MEIN,
SSADM) người ta thường dùng các kí hiệu không hoàn toàn giống nhau. Tuy vậy các thành phầ n cơ bản không
Tên
thay đổi và nó được sử dụng nhất quán trong các quá trình phân tích, thi ết kế
• Kế t nối: kết nối giữa các chứ c năng mang tính chấ t phân cấ p và được kí hiệu bằng đoạ n thẳ ng nối chứ c
d. Các thành phần của biể u đồ
năng "cha" tới các chứ c năng "con".
Mỗi biểu đồ luồng dữ liệu gồm 5 thành phầ n :
Thí dụ : Chứ c nă ng A phân rã thành các chứ c năng B, C, D
• Chức năng xử lí (Process)
A
• Luồng thông tin (Data Flows)
• Kho dữ liệu (Data Store)
• Tác nhân ngoài (External Entity)
• Tác nhân trong (Internal Entity)
B C D
1. Chức năng xử lí (Process)
Đặ c điểm củ a BPC :
• Khái niệm: Chứ c năng xử lý là chứ c năng biểu đạt các thao tác, nhiệm vụ hay tiến trình xử lí nào đ ó.
• Các chức năng được nhìn một cách khái quát nhất, tr ực quan dễ hiểu, thể hiện tính cấ u trúc củ a phân rã Tính chất quan trọng của chức năng là biến đ ổi thông tin. T ức là nó phải làm thay đổi thông tin từ đầu
chức năng (Functionally Decomposed) vào theo một cách nào đó như tổ chứ c lại thông tin, bổ sung thông tin hoặc tạo ra thông tin mới
• Dễ thành lậ p vì tính đ ơn giả n : Nó trình bày hệ thống phải làm gì hơn là hệ thống làm như thế nào? • Biểu diễn: Chức năng xử lý được biểu diễn bằng đ ường tròn hay ô van, trong đó có ghi nhãn (tên) của
• Mang tính chấ t tĩnh vì bỏ qua mối liên quan thông tin giữa các chức nă ng. Các chức năng không bị lặp chức năng. Việc dùng kí hiệu đ ường tròn chỉ là qui ước, được kế thừa từ các phương pháp luậ n dựa trên
lạ i và không dư thừa tiến trình trước đây. Nhiều phương pháp luận đã chấp nhận những ký hiệu khác cho mụ c đích này chẳ ng
• Rất gần gũi với sơ đồ tổ chức nhưng ta không đồng nhất nó với sơ đồ tổ chức: Phần lớn các tổ chức của hạn như hình chữ nhậ t hay hình vuông tròn các góc tiện lợi cho soạ n thảo văn bản. Bởi vậ y khi tham
doanh nghiệp nói chung thường gắ n liền với chức năng . khảo các tài liệu khác ta nên chú ý; còn trong tài liệu này ta sử dụng nhất quán kí hiệu đường tròn
Thí dụ : Hình 2.2 Biểu đồ phân cấ p chức năng của hệ thống qu ản lý xí nghiệp. • Nhãn (tên) chức năng : Bởi vì chức năng là các thao tác nên tên phải đ ược dùng là một “ Động từ” cộng
với “bổ ngữ”. Chú ý r ằng trong tiếng Việt động từ và danh từ đôi khi chung một từ nên cầ n thiết ta phải
Quản lý Xý nghiệp
thêm từ xác định “sự” nếu mu ốn nhấn mạnh đ ó là danh từ.
Ví dụ : Chứ c nă ng “Ghi nhận hoá đơn”, “Theo dõi mượn trả ”, “Xử lý thi lại”
Nhân lực Kế toán Vật tư Sản xuất Thị trườ ng
Khách hàng
Ghi nhậ n Xử lý thi
Theo dõi
hoá đơn mượn tr ả lại

Hồ s ơ Lươ ng Tiêu thụ Đặt hàng Đại lý
Q.cáo
Ng Vật liệu Công nợ
2. Luồng dữ liệu
• Khái niệm: Luồng dữ liệu là luồng thông tin vào hay ra củ a một chứ c năng xử lí. Bởi vậy luồng dữ liệu
Kế toán thu Hạch toán Kế toán chi Kế hoạch Ti ến độ Dự báo
Qlý kho
được coi như các giao diện giữa các thành phầ n của biểu đ ồ
• Biểu diễn: Luồng dữ liệu trên biểu đồ được biểu diễn bằ ng mũi tên có hướng trên đó có ghi tên nhãn là
2.3 Biể u đồ luồng dữ liệ u (BLD)
tên luồng thông tin mang theo. Mũ i tên đ ể chỉ hướng của luồng thông tin
http://www.ebook.edu.vn
Page 7 of 70 Page 8 of 70
• •
Nhãn (tên) luồng dữ liệu: Vì thông tin mang trên luồng, nên tên là “danh từ “ cộng với “tính từ” nếu Biểu diễn: Tác nhân trong biểu diễn bằ ng hình chữ nhật hở một phía và trên có ghi nhãn.

cần thiết. Nhãn (tên) tác nhân trong: Được biểu diễn bằng Động từ k èm bổ ngữ
Thí dụ “Hoá đơn”, “Hoá đ ơn đã kiểm tra”, “Điểm thi”, “Danh sách thi lạ i”
Các luồng dữ liệu và tên được gán cho chúng là các thông tin “logic” chứ không phải là các tài liệu vật lý Tính lương
Kế toán
Thí dụ về chứ c năng xử lý và lu ồng dữ liệu tương ứng

Hoá đơn Một số chú ý khi xây dựng biểu đồ BLD :
Ghi nhậ n Hoá đơn đã kiểm tra
• Trong biểu đồ không có hai tác nhân ngoài trao đổi trực tiếp với nhau
hoá đon




• Không có trao đổi tr ực tiếp giữa hai kho dữ liệu mà không thông qua chức nă ng xử lý.
Danh sách thi lại
Xử lý thi
Điểm thi l ại


3. Kho dữ liệu
• Nói chung kho đã có tên nên luồng dữ liệu vào ra kho không cần tên, chỉ khi việc cập nhậ t, hoặ c trích
• Khái niệm: Kho dữ liệu là các thông tin cầ n lưu giữ lại trong một khoả ng thời gian, để sau đó một hay
từ kho chỉ một phần thông tin ở kho, người ta mới dùng tên cho luồng dữ liệu.
một vài chức năng xử lý, hoặ c tác nhân trong sử dụ ng. Nó bao gồm một nghĩa rất r ộng các dạ ng dữ liệu
• Vì lí do trình bày nên tác nhân ngoài, tác nhân trong và kho dữ liệu sử dụ ng nhiều lần có thể vẽ được vẽ
lưu tr ữ: Dưới dạng vật lý chúng có thể là các tài liệu lưu trữ trong văn phòng hoặ c các file trên các thiết
lạ i ở nhiều nơi trong cùng biểu đồ đ ể cho dễ đọc, dễ hiểu hơn
bị mang tin (bă ng từ, đĩa từ) của máy tính; nhưng ở đây ta quan tâm đến thông tin chứa trong đ ó tức là
• Mối liên quan giữa chức năng xử lý , kho dữ liệu và luồng dữ liệu :
dạng logic củ a nó (trong cơ sở dữ liệu)
• Biểu diễn: Kho dữ liệu được biểu diễn bằ ng hình chữ nhậ t hở hai đầu hay (cặp đoạn thẳng song song)
Vừa lấy thông
C ập Nhậ t kho Nhập thông
trên đó ghi nhãn của kho. Xoá thông
Đọc file, Lấy
tin vừa cập nhật
(sửa đổi bản ghi) tin vào kho tin trong kho
thông tin từ
• Nhãn: Bởi vì kho chứa các dữ liệu nên tên của nó là danh từ kèm theo tính từ nếu cần thiết, nó nói lên (xoá bản ghi)
(thêm)
kho
nội dung thông tin chứ không phải là giá mang thông tin
Thí dụ : Kho “Hồ s ơ Cán bộ”, “Vậ t tư”, “Phòng”, “ Độc giả”


• Đối với kho dữ liệu phả i có ít nhất một luồng vào và ít nhấ t một lu ồng ra. N ếu kho chỉ có luồng vào mà
Hồ sơ cán bộ Vật tư Độc giả không có lu ồng ra là kho “vô tích sự”, nếu kho chỉ có luồng ra mà không có lu ồng vào là kho “r ỗng”
• Tác nhân ngoài không trao đổi với kho dữ liệu mà phả i thông qua chứ c năng xử lý


4. Tác nhân ngoài: Người ta còn gọi là Đối tác (External Entities) là một người, nhóm hay tổ chức ở bên ngoài
lĩnh vực nghiên cứu củ a hệ thống như ng đ ặc biệt có một số hình thứ c tiếp xúc, trao đổi thông tin với hệ thống.
Thí dụ (Case Study): Sau đây ta xét một ví dụ tổng quát, thí dụ này sẽ có đầ y đủ các đ ặc thù được xem xét các
Sự có mặ t các nhân tố này trên sơ đồ chỉ ra giới hạn của hệ thống, và định rõ mối quan hệ củ a hệ thống với thế
khía cạnh xuyên suốt trong các chương về sau
giới bên ngoài. Điều đ áng chú ý là hiểu nghĩa “ngoài lĩnh vực nghiên cứu” không có nghĩa là bên ngoài tổ chứ c,
chẳng hạn như đối với hệ thống xử lý đơn hàng thì bộ phận kế toán, bộ phận mua hàng và các bộ phận kho tàng Hệ thống cung ứng v ật tư của nhà máy X.
Nhà máy X bao gồm các phân xưởng, sản xuất một số sả n phẩm nhấ t định. Trong quá trình sản xuất các phân
vẫ n là tác nhân ngoài. Đ ối với hệ thống tuyển sinh đ ại học thì tác nhân ngoài vẫn có thể là thí sinh, giáo viên
xưởng sử dụng vật tư. Nhà máy có bộ phận qu ản lý cung ứng vật tư. Hiện tại hệ thống gồm có 2 bộ phận tách
chấm thi và hội đ ồng tuyển sinh.
rời: Mua hàng (ĐH) và Tiếp nhận hàng, Phát hàng (PH)
Tác nhân ngoài là phầ n sống còn của hệ thống, chúng là nguồn cung cấp thông tin cho hệ thống cũng như
Hai bộ phận này đã lập riêng hai hệ thống xử lý trên 2 máy tính và 2 máy tính này không tương thích nên
chúng nhận các sả n phẩ m thông tin từ hệ thống
không nối với nhau được. Cấ u trúc tương ứ ng củ a 2 bộ phậ n là
• Biểu diễn: Bằng hình chữ nhật, có gán nhãn.
a) Hệ đặt hàng (ĐH) nhằm giải quyết các dự trù vật tư của các phân xưởng
• Nhãn (tên): Được xác định bằ ng danh từ kèm theo tính từ nếu cần thiết
• Chọn người cung ứng
Thí dụ :
Nhà cung cấp • Thương lượng với nhà cung cấp
Khách mua Sinh viên
• Lập đơn hàng (SH -đơn)
• Sao lưu đ ơn hàng và cất trong file “Đơn hàng”.
5. Tác nhân trong
• Khái niệm: Tác nhân trong là một chức năng hay một hệ thống con của hệ thống đ ược mô tả ở trang File sử dụ ng : “Người cung cấp “ chứa thông tin về người cung cấ p với các thông tin cần qu ản lý: Mã người
khác của biểu đ ồ. Thông thường mọi biểu đồ có thể bao gồm một số trang, đặc biệt là trong các hệ cung cấ p, Tài khoả n, Địa chỉ, Điện thoại, Các mặt hàng và khả năng cung cấ p.
thống phứ c tạp và với khuôn khổ giấy có hạ n thông tin được truyền giữa các quá trình trên các trang Chú ý :
• Mỗi bả n dữ trù vật tư có thể đáp ứng bởi nhữ ng người cung cấp khác nhau. Tuy nhiên mỗi mặt hàng
khác nhau được chỉ ra nhờ k ý hiệu này. Ý nghĩa của tác nhân trong với kí hiệu tương tự như nút tiếp nối
của sơ đồ thuật toán. trên một bả n dự trù chỉ do một người cung cấp cung ứng.

http://www.ebook.edu.vn
Page 9 of 70 Page 10 of 70
• Biểu đồ luồng dữ liệu BLD chỉ giới hạn mô tả các chứ c nă ng trong tiến trình xử lý như ng chưa diễn tả thời gian
Mỗi đơn hàng lại có thể chứa nhiều mặt hàng do nhiều phân xưởng tiêu thụ yêu cầ u, lưu ý rằ ng trên
và đ ịa đ iểm thực hiện. Phương pháp Merise cho r ằng như vậy không đủ cần xây dự ng bả ng gồm các công việc
đơn hàng không có lưu thông tin nơi người dự trù vì vậ y cần lưu thông tin Dự trù- Đơn hàng (DT/ĐH)
và thời gian phân bổ thực hiện, làm mịn hoá tiến trình xử lý (xem hình 2.1).
b) Hệ Phát hàng (PH): T heo dõi hàng từ khi nhậ n về, nhậ p vào kho đ ến khi phát hàng về phân xưởng
c) S ơ đồ công việc theo theo các thanh:
• Hàng về k èm phiếu giao hàng: Thông tin trên phiếu giao hàng kèm theo nơi cất (tạ m) hàng lưu ở file
Đây là phương pháp đ ể mô tả thô các công việc theo bả ng. Với cột chỉ thời gian tivà hàng chỉ các công việc
“Nhận hang”. Thông tin trên phiếu giao hàng không lưu thông tin ngư òi sử dụng hàng
cvk. Các thanh xác đ ịnh công việc cvk từ thời điểm ti tới tj.
• Bộ phận thủ công: Làm nhiệm vụ đối chiếu, các công việc tiến hành như sau:
- Hàng ngày bộ phậ n thu hàng nhậ n hàng, in các danh sách hàng nhận về gửi đến bộ phậ n đối t1 t2 tn-1 tn
chiếu, trong danh sách đ ều có ghi SH- đơn cv1 .
- Đối chiếu SH-đơn để tìm địa chỉ phát hàng đ ể bộ phậ n nhậ n hàng phát cho nơi nhận cv2 .
- Đối chiếu nhận hoá đ ơn với danh sách hàng về, nếu khớp chuyển cho tài vụ đ ể trả tiền, nếu cv3 .
không khớp thì trao đổi về các bất nhất giữa Đơn hàng-Nhận hàng-Hoá đơn ( ĐH/NH/HĐ)
Việc vẽ biểu đ ồ luồng dữ liệu BLD có thể vẽ ở các mứ c đ ộ thô hay tinh dầ n cvk
Ban đầu căn cứ vào 4 chức năng chính: Hình 2.2 Sơ đồ thanh mô tả phân bổ chức nă ng theo thời gian
• Đặt hàng Thời gian Khách Duyệt Nhập và
Phòng Mã hoá Máy tính File
• Nhận, phát hàng thương sửa kiểm tra
hàng
mạ i dữ liệu
• Đối chiếu
• Trả tiền 48 h Nhận
Tác nhân ngoài :
• Phân xưởng Ghi thêm một
s ố thông tin
Đơn
• Người cung cấ p hàng

*SHđơn - SHMH - SH Dự trù Đon
Mã hoá một số
hàng
*SHGH - SHMH - SH Đơn hàng. thông tin

Đơn
2.4. Các thể hiện khác của biểu đồ luồng dữ liệu: Duyệt s ử a thủ
hàng
công
Trên đây ta đã nghiên cứu 2 phương pháp biểu diễn công cụ diễn tả chức nă ng xử lý của hệ thống: Biểu đ ồ
Đon
phân cấ p chứ c năng (BPC) và Biểu đồ luồng dữ liệu (BLD) Nhập vào Nhập liệu
hàng
Các phương pháp này đôi khi chưa sáng tỏ với thực tế vì thự c chất mô hình còn giản lược, chưa lột tả hết các cuối tu ần
khía cạnh chi tiết của quá trình 16 h
Bởi vậ y cần thiết phải đ ưa ra một số k hái niệm đ ể trừu tượng hoá, lấy được bản chấ t củ a vấn đề File động về
Vào máy đơn hàng Ghi nhận hàng
a) S ự đồng bộ hoá: thứ 6 theo đơn File khách
Sự đồng bộ hoá thể hiện quá trình diễn ra đồng thời hoặc lựa chọn củ a các dòng dữ liệu vào hoặc ra từ các chức hàng
hàng tuần
nă ng xử lý. Để thực hiện điều này ta bổ sung một số k í hiệu bên cạnh luồng dữ liệu
Kí hiệu : * và (AND) Đơn bị từ
chối
hoặc loại trừ (XOR ) * : Lưu
hoặc không loại trừ (OR)
()
Thí dụ : Hãy xét phân hệ bán hàng Sửa
G iấy
báo
Đon không hợp lệ chờ
đợi Đon đã

G iải quyết s ửa
Khách hàng đơn

Hình 2.1 Tiến trình thực hiện chi tiết các công việc

d) Đưa thêm các kí hiệu vật lí vào biểu đồ:
Làm hoá
đơn và phiếu
Để làm rõ các các chứ c năng và phân biệt các giá thông tin đ ối với các nguồn dữ liệu và kho dữ liệu ta đưa
Lệnh xuất
kho
thêm các kí hiệu và các quy ước dùng trong giáo trình. Đây là các qui đ ịnh của hãng IBM, tuy các kí hiệu này
*
Hoá đơn
*
tương đối cổ điển như ng ngày nay người ta vẫn dùng do thói quen và tính tr ực quan của nó. Các kí hiệu này có
Hoá đơn
G iải quyết
tác dụng khi ta muốn chi tiết thêm các biểu đồ.
Khách hàng
và phát hàng


Trả t iền
Biểu diễn thông tin
P hiếu giao
* hàng *
Thông tin tổng quát Đĩa từ
G iao hàng
* Thu và Thanh
Hồ sơ / Kết xuất
t oán tiền
Băng từ
Tài liệu in
Trống từ Màn Hình
b) Phương pháp của MERISE: Mô tả chi tiết các chức nă ng
Đĩa mềm Tài liệu vào

http://www.ebook.edu.vn
Page 11 of 70 Page 12 of 70
Biểu diễn xử lý CASE
WHEN < điều kiện >
Kí hiệu chức năng tổng quát Nhập thủ công WHEN < điều kiện >
... ...
Cấu trúc lặ p
Hợp nhấ t Xử lý thủ công
DO WHILE < điều kiện >

Chuẩn bị
Tách
REPEAT

Chương trình con
Chèn
< điều kiện >
UNTIL
3. Nhữ ng qui định và qui t ắc v ề quản lí: Các quy định được thể hiện qua các công thức tính toán, các phép
Sắ p xếp biến đổi.
Thí dụ
Đường truyề n liên hệ • Qui định tính lãi suất tín dụng và tiền gửi
• Qui định cách tính lương,
Chuyển giao thông tin Bắt đầu , kết thúc gián đoạn
• Qui định đánh thu ế thu nhậ p cao
• Qui định tính đ iểm trung bình chung học tập
Truyền xa Rẽ nhánh
4. Phương pháp đặc tả sử dụng bảng quyế t định: Bảng quyết định là bảng biểu diễn các điều kiện, các hành
động và dưới điều kiện nào thì hành đ ộng sẽ được tiến hành. Bảng thường phân thành các trường hợp một cách
Gửi Rẽ nhiều nhánh rành r ẽ và không bỏ sót các trường hợp. Bảng quyết định gồm bốn góc một phầ n tư có dạng sau:
Các điều kiện có thể xảy ra Các qui tắc áp dụ ng
Hình 2.3 Các kí hiệu bổ sung củ a IBM
2.4. Đ ặc tả c ác chức năng
Các hành động có thể có Các hành đ ộng xả y ra
a) Khái niệm về đặc tả: Trong biểu đồ phân cấ p chứ c nă ng BPC, biểu đồ luồng dữ liệu BLD, các chức năng dù
Thí dụ: Bài toán phát biểu như sau:
có chi tiết đến đâu (tới mứ c không phân nhỏ được nữa) cũng chỉ xác đ ịnh nhờ tên củ a nó.
Giả sử có 3 người tù đi làm khổ sai với tên tương ứng A,B,C. Ông cai tù đặt điều kiện: Có 5 cái mũ , gồm 2 mũ
Quá trình phân tích từ trên xu ống dưới, với mục đích phân rã dầ n từ ng bước sẽ ngừ ng ở một mứ c nào đó vì có
trắng (T), và 3 mũ đỏ (Đ). Mỗi người chỉ xem được 2 mũ trên đ ầu 2 người kia. Hãy đoán xem mình đội mũ
phân tích sâu thêm sẽ vượt qua câu hỏi “Hệ thống là gì” để lấn sang giai đoạn thiết k ế trả lời câu hỏi “Hệ thống
màu gì? Nếu ngưòi nào đoán đúng màu thì được thưởng, không phải đi làm, nếu đoán sai thì ă n đòn và vẫ n
như thế nào” hoặc là chức nă ng thu được đã đơn giản tới mức có thể mô tả vài lời là rõ.
phải đi làm, và nếu không đoán thì đi làm bình thường
Bởi vậ y cần thiết các chứ c năng có thể đ ược mô tả một cách chi tiết (mức mô tả thấ p nhấ t) hơn bằng một số
A : thua, xin không đ oán
phương pháp khác gọi là đặc tả chứ c năng P-Spec (Process Specification).
B : thua, xin không đ oán
Một đặc tả gồm 2 phần (thường không quá 1 trang A4) :
C : (mù) đ oán được ( )
Phần đầ u đề : - T ên chức nă ng
Trường hợp Người Hành động
- Các dữ liệu vào
A B C
- Các dữ liệu ra
Không có 3 mũ tr ắng
1 T T T
Phần thân: Mô tả nội dung xử lý,
Đ
2 T T
b) Các phương tiện có thể s ử dụng để đặc tả
Đ B, loại
• Các biểu đồ, lược đồ, sơ đ ồ khối 3 T T
Đ Đ
• Các phương trình toán học 4 T
Đ A, loại
• Các bảng, cây quyết định 5 T T
Đ Đ
• Các ngôn ngữ tự nhiên cấu trúc hoá 6 T
Đ Đ B loại
7 T
1. Phương pháp đặc tả bằng sơ đồ khố i (Flow Chart, Diagram): Phương pháp này khá cổ điển như ng trực
Đ Đ Đ
8
quan và thường áp dụ ng cho các hệ thống đơn giản. Một sơ đồ khối gồm: Các khối bắt đầu, kết thức, Thao tác,
Bài t ập Chương 2
rẽ nhánh, và khối vòng lặ p. Phần này chúng ta có thể tham khả o trong phần tin học đ ại cương.
2.1 Tìm chỗ sai trong các biểu đồ luồng dữ liệu dưới đ ây:
2. Phương pháp đặc tả bằng ngôn ngữ có c ấu trúc (Pseudo Code): Đây là ngôn ngữ đặc tả hay còn gọi là
ngôn ngữ giả trình vì nó r ất gần với ngôn ngữ lập trình và chuyển đổi sang ngôn ngữ lậ p trình một cách dễ a) b) Bad
dàng, Ngôn ngữ giả trình đ ược đặc tả bằng lời thông qua một ngôn ngữ nào đ ó với cú pháp không chặ t chẽ để Tên Thuộc Thuộc tính
diễn tả các bước với các hành động cơ sở ( Primitive Actions), cấ u trúc tuần tự ( Sequences), lựa chọn tính lấy ra soạn thảo đ ịnh dạng
Lấy thuộc
(Selections), và thao tác lặp (Iterations). Tuy nhiên ta không nên dùng ngôn ngữ tự do tính
Thí dụ: Cấu trúc lựa chọn IF ... THEN c) d)
Gạo
READ-FILE STOCK-DETAILS
Dữ liệu
IF < điều kiện > Thông tin
Xử lý dữ liệu Rong biển

Dầu lửa
Mù tạt Xử lý dữ liệu
ELSE

Cấ u trúc đa lựa chọn e)
Cá ngừ

http://www.ebook.edu.vn
Page 13 of 70 Page 14 of 70
Chư ong 3. Các phương tiện và mô hình di ễn tả dữ liệu
Ngu ồn C
3.1.Khái niệm diễn t ả dữ liệu
Một hệ thống trong tr ạng thái vận động bao gồm hai yếu tố là các chứ c nă ng xử lý và dữ liệu. Giữa xử lý và dữ
C
N guồn A A liệu có mối quan hệ mậ t thiết chặt chẽ và bản thân dữ liệu có mối liên k ết nội bộ không liên quan đến xử lý đó
E
là tính độc lậ p dữ liệu. Mô tả dữ liệu được xem như việc xác định tên, dạng dữ liệu và tính chất của dữ liệu. Dữ
2X
1W liệu không phụ thuộc vào người sử dụ ng đồng thời không phụ thuộc vào yêu cầ u tìm kiếm và thay đổi thông tin.
Trong chương này để thuận tiện cho phương pháp nghiên cứu chúng ta chỉ tập trung đ ề cập đ ến các phương tiện
và mô hình diễn tả dữ liệu. Đó là các thông tin được quan tâm đến trong quản lý, nó được lưu trữ lâu dài, được
xử lý và sử dụ ng trong hệ thống thông tin quản lý.
H D
3Y 4Z Có nhiều công cụ đ ể mô tả dữ liệu. Các công cụ này là các cách tr ừu tượng hoá dữ liệu đặc biệt là mối quan hệ
Nguồ n B B Nguồn D củ a dữ liệu nhằm phổ biến nhữ ng cái chung nhất mà con người ta có thể trao đổi lẫn nhau. Trong phần này
chúng ta đề cập tới 4 công cụ chủ yếu:
• Mã hoá dữ liệu (coding)
f) • Từ đ iển dữ liệu (Data Dictionary)
C
• Mô hình thực thể liên kết ER ( Entity- Relationship)
2.1 X1
• Mô hình quan hệ (Relational Data Base Modeling)
2 .2 X2
E
S 3.2. Sự mã hoá
S
a) Khái niệm mã hoá: Mã là tên viết tắt gắ n cho một đ ối tượng nào đó hay nói cách khác mỗi đối tượng cần có
R
tên và vấ n đặt ra ta sẽ đ ặt tên cho đối tượng như thế nào. Trong mỗi đối tương gồm nhiều thuộc tính khác nhau
S FILE
thì yêu cầu mã hoá cho các thu ộc tính cũng là yêu cầu cần thiết. Ngoài ra mã hoá còn là hình thức chuẩ n hóa dữ
liệu và bảo mật dữ liệu đặc biệt trong các hệ thống thông tin xử lý bằng máy tính
B
2.4 X4
Một số thí dụ về mã hóa: Khi ta cần xác đ ịnh một công dân thì số chứng minh thư hoặ c số hộ chiếu là mã của
G 2.3 X3
Q
công dân đó. Khi cầ n xác định xe ô tô hay xe máy thì biển số xe là mã của xe đó.
b) Chất lượng của việc mã hoá: Trong thự c tế ta gặ p r ất nhiều đối tượng cần mã hoá như mã hoá ngành nghề
g) đào tạo, mã hoá các bệnh, mã số điện thoại, mã thẻ sinh viên, thẻ bảo hiểm y tế,... Chúng ta có nhiều phương
pháp mã khác nhau. Do vậy cần xác định một số tiêu chí để đánh giá chất lượng củ a việc mã hoá:
J
G
• Mã không được nhập nhằng : Thể hiện ánh xạ 1 - 1 giữa mã hoá và giả i mã, mỗi đối tượng đ ược
F 3.1 Y1
3.2 Y2
xác định rõ ràng với một mã nhấ t định
K
• Thích ứng với phương thức s ử dụng: Việc mã có thể tiến hành bằng thủ công nên cần phải dễ hiểu, dễ
L
giải mã, và việc mã hoá bằng máy đ òi hỏi cú pháp chặt chẽ.
3.3
M
• Có khả năng mở rộng mã:
M
Y3
o Thêm phía cuối (sau) của các mã đ ã có
S FILE
M
o Xen mã mới vào giữa các mã đã có, thường mã xen phải dùng phương pháp cóc nhảy, nhả y đều
B 3.4 Y4
đặn dựa vào thống kê để tránh tình trạng “bùng nổ” mã. Chẳng hạn như mã dòng lệnh trong
M O
N ngôn ngữ lập trình BASIC
• Mã phải ng ắn gọn làm giảm kích cỡ của mã: đây cũng là mục tiêu của mã hoá. Tuy nhiên điều này
3.5 Y5
đôi khi mâu thuẫn với khái niệm mở rộng mã sau này.
• Mã có tính gợi ý: Thể hiện tính ngữ nghĩa của mã. Đôi khi tính gợi ý là yêu cầu đối với mã công khai,
2.2. Tại sao lu ồng dữ liệu vào/ra từ kho dữ liệu đ ôi khi không có tên ?
và làm cho việc mã hoá thuận tiện dễ dàng
2.3. Chức năng sơ cấp là gì? Trong BLD, chức năng sơ cấp đòi hỏi điều gì mà thành phầ n khác không nhất
c ) Các kiểu mã hoá:
thiết phải có?
(1) Mã hoá liên tiếp: Ta dùng các số nguyên liên tiếp 000, 001, 002. . . để mã hoá. Phương pháp này thường
2.4. Trong biểu đồ lu ồng dữ liệu có khi nào không có tác nhân ngoài không? Tại sao?
để đánh số thứ tự trong danh sách các đối tượng
2.5. Trong biểu đồ lu ồng dữ liệu nhữ ng sai sót nào hay gặp phải. Hãy giải thích?
Ưu đ iểm: Không nhập nhằ ng, đơn giản, thêm phía sau
2.6. Biểu đ ồ luồng dữ liệu cho ta biết mối quan hệ gì giữa các thành phần củ a hệ thống?
Khuyết điểm: Không xen được, thiếu tính gợi ý vì cầ n phả i có bảng tương ứ ng và không phân theo nhóm
(2) Mã hoá theo lát: Sử dụng các số nguyên như mã hoá liên tiếp như ng phân ra từng lát (lớp) cho từng loại
đối tượng, trong mỗi lát dùng mã liên tiếp
Thí dụ: Mã hoá Ngũ kim
ngũ kim bé
Vùng 1 0001 - 0999
Vùng 2 0001 - 0099 vít
Vùng 3 0100 - 0299 ê cu
0300 - 0499 bulong
đinh
0500 - 0599
chi tiết kim loạ i
1000 - 1999
sắt U
Vùng n 1000 - 1099
Ưu đ iểm: Không nhập nhằ ng, đơn giản, có thể mở rộng xen thêm đ ược
Nh ược điểm: Thiếu gợi ý
http://www.ebook.edu.vn
Page 15 of 70 Page 16 of 70
(3) Mã phân đoạn: Bản thân mã được phân thành nhiều đoạn mỗi đ oạn mang một ý nghĩa riêng * Lời chú thích * giới hạn chú thích
Thí dụ: Số đ ăng kí xe máy Thí dụ : Giả sử có tờ hoá đ ơn bán hàng như sau
Số H D: 123 HOÁ ĐƠN BÁN HÀNG
99AA99 99 N gày: 01-01-99
Bán cho ông/bà : Trầ n T ĩnh Mịch Tài khoản : LTM010254
↓ ↓ ↓
Địa chỉ : 534 Hàng Mành, Tel : (04) 8226465/8692205
Tỉnh Lát (xê ri) Số liên tiếp
Số Tên, quy cách Đon vị Đơn giá Số Thành tiền
Mã hàng Ghi chú
Thí dụ : Biển số xe máy củ a ông X là 29 F6 696 là biển xe đă ng kí tại Hà nội (mã tỉnh là 29)
lượng
TT
Ưu điểm: Không nhập nhằng, mở r ộng, xen thêm được và được dùng khá phổ biến. Loại mã này cho phép thiết
Xi mă ng
1 X30 bao 47000 200 9400000
lập các phương thứ c kiểm tra gián tiếp đối với mã của các đối tượng bằng cách trích rút các đoạn mã để kiểm
Quạ t thông gió chiếc
2 Y10 100000 6 600000
tra
Nồi cao áp chiếc
3 Z20 2500000 1 2500000
Nh ược điểm: Mã quá dài nên thủ tục mã nặ ng nề, không cố định và vẫn có thể bị bão hoà mã
Đinh 20 phân
4 X10 kg 5500 100 550000
(4) Mã phân cấp: Các đ ối tượng được mã hoá theo chế độ phân cấp các chi tiết nhỏ dần. Một hình ảnh khá
Tổng cộng
quen thuộc của mã hoá phân cấp là đ ánh số chương, tiết, mụ c trong một quyển sách.
Bằng chữ
1. Chương 1
1 Kế toán tr ưởng Người nộp tiền Người bán hàng
1.1 Bài 1
Ta có một phần từ điển dữ liệu sau
1.2 Bài 2
* Xác định mộ t tờ hoá đơn nh ư s au*
2. Chương 2
Hoá đơn = Số HD + Ngày bán + Khách hàng +
1 .1 1.2 1 .3
2.1 Bài 3
+ Hàng
2.1.1 Mục 1
+ Số lượng n
2.1.2 Mục 2
+ Thành tiền
2.2 Bài 4 1.2.2
1 .1.1 1 .2.1 1.2.3 1.3.1
+ Tổng cộng +KT trưởng + Người bán.
2.3 Bài 5
*Xác định thông tin về khách hàng*
Khách hàng= H ọ tên Khách + Tài khoản + Địa chỉ + Điện thoại
1 .2.1.1 1.2.1.2 1.2.1.3 1.3.1.1 * Xác định thông tin về từng mặt hàng*
Hàng = Mã hàng + Tên quy cách + đ ơn vị tính + Đ ơn giá
Ưu đ iểm: Các ưu điểm tương tự như mã hoá phân đ oạn. Ngoài ra việc tìm kiếm mã dễ dàng
*Họ tên khách cần được tách tên để thuận tiện đối với tên Tiếng Việt*
Khuyết điểm: T ương tự các nhược điểm của mã kiểu phân đoạ n
Họ tên khách = H ọ đ ệm + tên
(5) Mã diễn nghĩa: Bằng cách gán một tên ngắn gọn như ng hiểu được cho một đối tượng
Một ví dụ khác là từ điển xác định số điện thoại:
Thí dụ : Đ ội bóng các nước tham gia giải Tiger cup đ ược mã bằng cách lấ y 3 kí tự đ ầu như sau
Số điện thoại = [số máy phụ | số bên ngoài ]
VIE : Vietnam, THA: Thailand, SIN : Singarpore, IND: Indonesia, MAL: Malaysia .
Số máy phụ = [ 2001 | 2002| ... |2999 ]
Ưu đ iểm: Tiện dùng cho xử lí bằng thủ công và số lượng đối tượng đ ược mã ít
Số bên ngoài = 9 + [số nội hạt | số đường dài]
Khuyết điểm: Không giả i mã được bằ ng máy tính.
Số nội hạt = số đầu + số thâm nhậ p
d) Cách lựa chọn sự mã hoá:
Số đường dài = (1) + mã vùng + số nội hạt
Có nhiều phương pháp mã hoá khác nhau, có thể sử dụng kết hợp nhiều kiểu để đạt chất lượng mã tốt nhất.
Số đầu = [795 | 799 | 874 | 877]
Việc lựa chọn mã hoá cần dựa vào các yếu tố sau:
Số thâm nhập = *Bất k ỳ xâu bốn chữ số *
• Nghiên cứu việc sử dụng mã sau này
3.4) Mô hình thực thể liên kết
• Nghiên cứu số lượng các đối tượng đ ược mã hoá để lường tr ước đ ược sự phát triển
a) Khái niệm: Mô hình thực thể liên kết là công cụ thành lập lược đồ dữ liệu hay gọi là biểu đ ồ cấu trúc dữ liệu
• Nghiên cứu sự phân bố thống kê các đối tượng để phân bổ theo lớp
(BCD), nhằ m xác định khung khái niêm về các thực thể, thu ộc tính, và mối liên hệ ràng buộc giữa chúng. Mụ c
• Tìm xem đã có những mã hoá nào được dùng tr ước đó cho các đối tượng này để kế thừa đích của mô hình xác định các yếu tố:
• Thoả thuận người dùng cách mã
• Dữ liệu nào cầ n xử lý
• Thử nghiệm trước khi dùng chính thứ c đ ể chỉnh lý kịp thời • Mối liên quan nội tạ i (cấu trúc) giữa các dữ liệu
3.3.Từ điển dữ liệu b) Thực thể và kiểu thực thể
a) Khái niệm: Từ điển dữ liệu (còn gọi từ điển yêu cầu) là bộ phậ n của tư liệu trong phân tích thiết kế, nó là
Thực thể là một đối tượng đ ược quan tâm đến trong một tổ chứ c, một hệ thống, nó có thể là đ ối tượng cụ thể
vă n phạ m giả hình thức mô tả nội dung của các sự vật, đ ối tượng theo định nghĩa có cấ u trúc. Trong biểu đồ hay trừu tượng. Thực thể (theo Mein II, 1991) phải tồn tại, cần lựa chọn có lợi cho quản lí và phân biệt được
luồng dữ liệu (BLD) 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
Thí dụ : Các khách hàng đều có tài khoả n của họ và các nhà cung cấp cung cấp các mặt hàng. ở đ ây các đối
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ượng được quan tâm:
b) Cấu tạo từ điển : 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ài khoản là đối tượng cụ thể
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ả
Khách hàng
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. Kí pháp mô tả nội dung cho từ đ iển
Nhà cung cấp Đối tượng trừu tượng
dữ liệu tuân theo bảng sau:
Mặt hàng
Kết c ấu dữ liệu Ý nghĩa
Ký pháp
Để đ ịnh nghĩa một cách chính xác hơn ta đưa ra khái niệm: Kiểu thực thể ( entity type) và thể hiện thự c thể
được tạ o từ
=
(entity instance).
Tuần tự + và
Kiểu thực thể là tập hợp các thự c thể hoặc một lớp các thực thể có cùng đặ c tr ưng cùng bản chất. Thể hiện thự c
Tuyển chọn hoặc
[|]
thể là một thự c thể cụ thể, nó là một phần tử trong tậ p hợp hay lớp của kiểu thự c thể. Sau này trong các ứ ng
{ }n
Lặp Lặp n lần
dụ ng đ ể tránh sử dụng nhiều khái niệm ta đồng nhất thực thể và kiểu thự c thể.
dữ liệu tu ỳ chọn
()

http://www.ebook.edu.vn
Page 17 of 70 Page 18 of 70
Thí dụ : ông "Nguyễn văn Bích", Hoá đơn số "50", Mặt hàng "X30 "là các thực thể cụ thể. Nhưng "Khoa Công Văn phòng phẩm Hồng Hà - bút bi : giá 1000đ/chiếc, đ óng gói 10cái
nghệ thông tin" , "Ngành xử lý nước thải" là các thực thể tr ừu tượng vì ta không xác đ ịnh rõ ràng các tiêu chuẩn Thiên Long - bút bi : giá 1100đ/chiếc, đóng gói 12 cái
củ a nó Kiểu thuộc tính :
• Tên gọ i
Với các thự c thể nêu trên ta có kiểu thự c thể tương ứ ng : Khách hàng, hoá đơn, hàng, khoa, ngành
Biểu diễn thực thể : Kiểu thự c thể được biểu diễn bằng hình hộp chữ nhật trong đó ghi nhãn tên kiểu thực thể • Mô tả: dữ liệu gắ n liền với thự c thể là thu ộc tính Không khoá
Giả sử ta có các kiểu thự c thể tương ứng các nhãn khách hàng, ngành học, sách • Kế t n ối: nhậ n diện kiểu thực thể trong thực hệ hay mối liên kết. Thu ộc tính k ết nối là khoá ở quan hệ
Ngành học
Khách hàng này, là mô tả ở quan hệ khác.
Sách
• Khoá: dùng để phân biệt các thự c thể hay liên k ết nên không được cập nhật
Nhận xét : Trong một bả ng dữ liệu ta hình dung cả bả ng là kiểu thực thể, mỗi dòng ứng với các bả n ghi là thể 4. Mô hình quan hệ :
hiện thự c thể, các cột ứ ng với các thu ộc tính của thực thể. Biểu diễn bằ ng bả ng củ a các kiểu thự c thể liên k ết :
c) Liên kết và kiểu liên kết • Mỗi bảng 2 chiều là kiểu thự c thể. Mỗi cột là một thuộc tính, mỗi dòng là thực thể
Liên kết là sự kết nối có ý nghĩa giữa hai hay nhiều thự c thể phản ánh một sự ràng buộc về quản lí. • Trong mô hình vẽ chính là thể hiện những đường truy nhậ p vì nó thể hiện các kết nối và phải trôi theo
Thí dụ: Ông Nguyễn Văn An làm việc ở phòng tài vụ; Hoá đ ơn số 5 0 gửi cho khách hàng Lê Văn ích; Sinh các mối nối
viên Trầ n tĩnh Mịch thu ộc lớp Tin • Trong mô hình quan hệ khái niệm xuất phát là bảng (file)
Kiểu liên kết là tập các liên kết cùng bản chất. Giữ a các kiểu thực thể có thể tồn tại nhiều mối liên kết, mỗi mối
Các khái niệm cơ bản : Đại số quan hệ quan niệm theo nghĩa r ộng không nhấ t thiết là thực thể. Các Phụ thuộc
liên kết xác định một tên duy nhấ t. hàm, chuẩn hoá 1NF, 2NF, 3NF chúng ta sẽ đề cậ p chi tiết trong chương sau.
Biểu diễn các liên kết bằ ng đoạn thẳng nối giữa hai kiểu thực thể. Ví dụ về quan hệ : ĐƠNHANG - MĂTHANG - NGUOICCAP - NGCC/MH
Các dạng kiểu liên k ết : Giả sử ta có các thự c thể A,B, C, D ...Kiểu liên k ết là sự xác định có bao nhiêu thể hiện
Mô hình thự c thể liên kết E-R
củ a kiểu thực thể này có thể kết hợp với bao nhiêu thể hiện của thực thể kia. ĐƠNHANG
• Liên kết một-mộ t (1-1) giữa hai kiểu thực thể A, B là ứng với một thực thể trong A có một thực thể
trong B và ngược lại. Liên k ết này còn gọi là liên kết tầm thường và ít xảy ra trong thực tế, thông
thường liên kết này mang đặ c trưng bảo mậ t hoặc cầ n tách bạch một kiểu thực thể phức tạ p thành các
MẶTHANG
kiểu thực thể nhỏ hơn; chẳ ng hạ n một chiến dịch quảng cáo (phát động) cho một dự án; một số báo danh NGUOICCAP
(ứng với một môn thi) có một số phách.
1-1 1 -1
Phát động Dự á n Số BD,môn Môn, Phách
NGCC/MH

• Liên kết một - nhiều (1-N) giữa hai kiểu thực thể A, B là ứ ng với một thực thể trong A có nhiều thự c Bả ng quan hệ thể hiện như sau:
thể trong B và ngược lại ứng với một thực thể trong B chỉ có một thực thể trong B. Ng ười cung cấp
Liên kết này biểu diễn kết bằ ng đoạn thẳng giữa hai kiểu thực thể và thêm trạc 3 (hay còn gọi chân gà) Địa chỉ Tài khoản
SH-NCC Tên NCC
về phía nhiều. Hồng Hà
C300 HN 3420
Thí dụ : Một lớp có nhiều sinh viên (sinh viên thu ộc vào một lớp); Một khách hàng có nhiều tài khoản (tài C301 Thiên Long HCM 4218
khoản thu ộc về một khách hàng).
A18 Gang thép TNg TN 2937
A20 Gang thép BHoà BH 4812
Tài Khoản Lớp
1-N 1-N
Khách hàng Sinh viên
Mặt hàng
Mô tả Đóng gói
SH-MH Tên Hàng
• Liên kết nhiều - nhiều (N-N) giữa hai kiểu thự c thể A, B là ứ ng với một thự c thể trong A có nhiều
425 Bút bi 1000 cái
thự c thể trong B và ngược lạ i ứng với một thực thể trong B có nhiều thự c thể trong B. Biểu diễn liên
Mự c 100 lọ
449
kết này bằng ba tr ạc (chân gà) ở cả hai phía.
Sắt Φ8 1 tạ
M97
N-N
N-N
Sắt Φ20 2 tạ
M70
Mặ t hàng Nhà cung cấ p
B
A
Ng ười cung cấp -Mặt hàng
Đơn giá
Liên kết nhiều nhiều rất khó cài đặt trong các hệ quản tr ị cơ sở dữ liệu sẵn có. Đ ể dễ biểu diễn người ta dùng SH-NCC SH-MH
phương pháp thự c thể hoá bằ ng cách bổ sung thực thể trung gian để biến đổi liên kết nhiều - nhiều thành hai C300 425 1. 000.000
liên kết một - nhiều C300 449 40.000
Nhà cung C301 425 1.200.000
Mặt hàng cấp
Mh/NCC
A A/B B A18 M97 800.000
Đơn hàng
Ở đây A/B là thực thể trung gian giữa A và B, MH/NCC là kiểu thực thể trung gian giữa kiểu thực thể "Mặ t HĐ P t vận chuyển
SH Ngày SH-NCCØ
hàng" và "Nhà cung cấ p" 2142 20/05/99 C300 ô tô
Biểu diễn: xem liên kết này như một thự c thể (thự c thể hoá ) 2143 25/05/99 A18 ô tô
Liên kết nhiều bên (nhiều phía): Một kiểu thực thể có thể liên kết với nhiều kiểu thực thể. Liên kết này cũ ng Tàu hoả
2239 15/07/93 C300
biểu diễn dưới dạng một thực thể trung gian Ví dụ Khi chấ m công dùng bảng
d) Các thuộc tính (c, t, m, p, r, g)
Định nghĩa Thuộc tính là giá tr ị thể hiện một đặc điểm nào đó của một thự c thể hay một liên k ết Công nhân có số hiệu c, tên là t làm trên máy có số hiệu m, ở phân xưởng p mà ông r là tr ưởng phân xưởng, với
Hoá đơn 30 : ngày 20/5/94, tổng số tiền 4000000 đồng số giờ tích lu ỹ là g.

http://www.ebook.edu.vn
Page 19 of 70 Page 20 of 70
Các thu ộc tính có thể thu thập như sau : b) Loại bỏ phụ thuộc hàm dư thừa ( do tính bắc cầ u )
Có nghĩa là : N ếu có A→ B, B→ C và A→ C thì
Tên thuộc tính Giải thích ý nghĩa
bỏ A→ C và chỉ giữ lạ i A→ B, B→ C
Số hiệu máy
SH-máy
Loại-máy Chủng loại Bước 2: Nhóm các phụ thuộc hàm cùng vế trái (gộp lạ i):
Nếu có: X→ A1 , X→ A2 ... X→ An thì X→ A1 , A2 ... An
Số hiệu phân xưởng
SH-PX
Tên phân xưởng Xây dự ng các tậ p Ui, = {Tậ p các thuộc tính không liên quan đến vế trái , vế phải của mọi phụ thuộc hàm, có
Tên-PX
nghĩa là không có mặt trong mọi phụ thuộc hàm} ta gọi là “ Các thành thu ộc tính bơ vơ “
Trưởng-PX Tên của tr ưởng phân xưởng
U1={Tập các thuộc tính trong phụ thu ộc hàm 1}
Tên-CN Tên công nhân
U2={Tập các thuộc tính trong phụ thuộc hàm 2}
Bậc-CN Tay nghề của công nhân
U3={Tập các thuộc tính trong phụ thu ộc hàm 3}
Chỉ số Chỉ số lương cho những bậc thợ
Un={Tập các thuộc tính trong phụ thu ộc hàm n}
Thời gian Thời gian làm việc
Với mỗi quan hệ Ri(Ui) xác định khoá Ki
Tổng số giờ Số giờ tổng cộng của các máy đã chạy củ a một phân xưởng
R1 (U1) xác đ ịnh khoá K1, Rn(U1) xác định khoá Kn
Tên của tháng hiện thời
Tháng
Bước 3 : Tìm khoá tối thiẻu Kcho tậ p thuộc tính U0 nếu có
K = { Hợp các thuộc tính khoá K1 K2 Kr }/ loại bỏ thuộc tính bắ c cầu }
Đứng máy Máy
R0 = { K ∪ U0 }
SH máy
SH-Pxưởng Hãy chuẩn hoá lược đồ quan hệ sau
Loại máy
Má CN
Công nhân a) Cho U ={ A, B, C, D, E, F, G, H}
SH-Máy
Mã CN
F= { A→ CB, C→ D, EG→ FH}
Thờ i gian
Tên CN
b) Cho U ={C#,I, D, B, K, F, L, M, G,}
Bậc CN
F= { C# → IDBKF, D→ B, K→ F}
SH-PX
c) Cho U ={ A, B, C, D}
F= { AB→ C, D→ B, C→ ABD}
Phân xưởng S/X phân xưởng


SH-PX
Bậc lương SH-PX
Tên PX
Số lượng PX Tháng
Tổng số giờ
Trưởng PX
Bậ c CN
Ch ỉ số


Bài t ập chương 3
1. Khách sạn Steak- Acclaim không nhậ n thanh toán bằng séc cá nhân hay thẻ tín dụng mà chỉ thanh toán bằ ng
tiền mặ t hoặc séc luân chuyển (hoặ c cả hai loại). Hãy xác định việc thanh toán bằng từ điển dữ liệu.
Thanh toán = ?
2. Trong định nghĩa bằ ng từ điển sau, hãy chỉ chỗ sai:
Tổng giá của mặt hàng = giá bán + thuế giá trị gia tă ng.
3. Xây dự ng mô hình thự c thể liên k ết E-R cho hệ thống quản lý thư viên. Hệ thống gồm các thực thể sau:
• Độc giả
• Sách
• Mượn tr ả
4. Xây dựng mô hình thự c thể liên kết E-R cho hệ thống quả n lý sử dụng vận tư của xí nghiệp. H ệ thống gồm
các thự c thể sau:
• Phân xưởng
• Vật tư
• Sử dụ ng vậ t tư
5. Thuậ t toán tách 1 lược đồ quan hệ thành dạ ng chuẩn 3NF được phát biểu như sau:
Cho U = {Tập thuộc tính }, F= {Tập phụ thuộc hàm }
Kết luận : R(U) đ ược tách thành R1 (U1), R2(U2),... Rk(Uk). Với Ri ở dạng 3NF.
Phép tách ρ = (R1, R2,... Rk).
Thuậ t toán :
Bước 1: Tìm phủ tối thiểu
a) Tách vế phải của các phụ thuộc hàm thành các thuộc tính đơn
X→ A1 A2 X→ A1 và X→ A2
thì

http://www.ebook.edu.vn
Page 21 of 70 Page 22 of 70
a) Phân loại thông tin:
Chương 4 : Khảo sát hiện trạng và xác l ập dự án
Các thông tin thu thập được cần phải phân loại theo các tiêu chí
4.1 Đại c ương giai đo ạn khảo sát
• Hiện tại / tương lai:
a) 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
o Thông tin cho hiện tại phả n ánh chung về môi trường, hoàn cả nh, các thông tin có lợi ích cho
(Giai đoạn I của 4 bước phân tích thiết kế cấu trúc). Việc khảo sát thường được tiến hành qua hai giai đoạ n:
nghiên cứu hệ thống quản lý.
• Khảo sát sơ bộ nhằm xác định tính khả thi củ a dự á n
o Các thông tin cho tương lai được phát biểu từ các mong muốn, phàn nàn, các dự k iến k ế hoạ ch.
• 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 thông tin cho tương lai có thể có ý thức nhưng không được phát biểu cầ n được gợi ý hoặc
Giai đoạn này còn có tên gọi như "Nghiên cứu tính khả thi (feasibility study) " hoặc "Nghiên cứu hiện trạng
các thông tin vô ý thức cầ n được dự đoán.
(survey of existing system)"
• Tĩnh / động / biến đổi:
Mục đích cuối cùng của giai đ oạ n này là "ký kết được hợp đồng thoả thuận " để xây dự ng hệ thống thông tin đối
o Các thông tin tĩnh có thể các thông tin sơ đẳ ng, cấ u trúc hoá, Các phòng ban, chức vụ v.v..
với hệ thống kinh doanh, một tổ chức
o Các thông tin động thường các thông tin về không gian như các đường di chuyển tài liệu, về thời
b) Yêu cầu thực hiện của giai đoạn:
gian như thời gian xử lý, hạn định chuyển giao thông tin
• Khảo sát đánh giá sự hoạ t động của hệ thống cũ
o Các thông tin biến đổi : Quy tắ c quản lý, các quy định củ a nhà nước, của cơ quan làm nền cho
• Đề xuấ t mục tiêu, ưu tiên cho hệ thống mới
việc xử lý thông tin. Các thủ tụ c, những công thứ c tính toán cũ ng như các điều kiện khởi động
• Đề xuấ t ý tưởng cho giải pháp mới
công việc. Các quy trình xử lý v.v...
• Vạch kế hoạch cho dự án
• Môi trường / nội bộ:
4.2 Tìm hiể u và đánh giá hiện trạng
o Phân biệt các thông tin của nội bộ hoặ c từ môi trường có tác động với hệ thống
Tìm hiểu và đánh giá hiện trạng nhằm phát hiện những nhược điểm cơ bả n của hệ thống cũ , đồng thời cũng
o Một điểm đáng lưu ý trong việc phân loại là chú tr ọng việc đánh giá các tiêu chuẩn như tần su ất
định hướng cho hệ thống mới cần giả i quyết "cả i tạo cái cũ xây dự ng cái mới"
xu ất hiện ( điểm đỉnh, đ iểm trùng ), độ chính xác và thời gian sống
a) Phương pháp khảo sát hiện trạng:
b) Phát hiện các yếu kém của hiện trạng và các yêu cầu cho tương lai :
Các mứ c khảo sát: cho dù là khảo sát sơ bộ, đ ược phân biệt 4 mứ c theo thứ tự
Yếu kém:
• Thao tác, thừa hành (Tác v ụ): Người sử dụng làm việc tr ực tiếp với các thao tác của hệ thống và họ
• Thiếu, vắ ng: Thiếu một chức năng nào đó, thiếu phương tiện xử lí thông tin, thiếu con người thực hiện,
thường xuyên nhậ n ra nhữ ng khó khăn và nhữ ng vấn đề nả y sinh ít người được biết. Nhữ ng công việc
quản lý v.v.
này có ảnh hưởng rấ t lớn do có sự thay đ ổi các thủ tục và nhữ ng thay đ ổi khác kèm theo khi có hệ thống
• Kém hiệu lực (hiệu su ất thấp ) do các yếu tố
mới
o Phương pháp xử lý không chặt chẽ
• Điều phối, quản lý ( Điều phố i): Mức giám sát củ a các nhữ ng người qu ản lý tr ực tiếp. H ọ cung cấp
o Cơ cấu tổ chức bất hợp lý
thông tin báo cáo tóm tắt đ ịnh kỳ, các thông tin chi tiết mà họ qu ản lý tại mọi thời đ iểm. Tuy nhiên họ
o Lưu chuyển thông tin bất hợp lý, dài lòng vòng
không nhìn vấ n đ ề xa được , và không phải là người trự c tiếp ra quyết đ ịnh.
o Giấy tờ tài liệu trình bày kém
• Quyế t định, lãnh đạo: Quan sát ở mức tổ chứ c, lãnh đ ạo ra quyết định, những ý tưỏng mang tính chiến
o Sự ù n tắ c, quá tải.
lược phát triển lâu dài quyết định xu hướng phát triển củ a hệ thống.
• Tổn phí cao: Thự c chất sự tổn phí cần đ ược đ ánh giá theo một tiêu chuẩn và khía cạnh nào đ ó như yếu
• Chuyên gia cố vấn (Tư vấn): Mứ c này bao gồm cố vấn và nhữ ng người chuyên nghiệp. Vai trò của họ
tố thời gian, con người, quá trình
tư vấ n về chuyên môn sâu và có thể phê phán hoặc chấ p nhận hệ thống. Họ có thể quan tr ọng hay
Yêu cầu nả y sinh:
không tuỳ thuộc vào đ ánh giá của mức quyết đ ịnh.
• Những nhu cầu về thông tin chưa được đáp ứng
• Các nguyện vọng của nhân viên
• Dự kiến, k ế hoạ ch của lãnh đạ o
4.3. Xác định phạm vi, mục tiêu và hạn chế của dự án.
Chuyên gia
Một hệ thống thông tin 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
Lãnh đạo
cho dự án, và chính các mục tiêu này là thước đo để k iểm chứng và nghiệm thu dự á n sau này.
Điều phối a. Phạm vi (Scope):
Phạm vi là khoanh vùng dự á n cần thự c hiện với các phương pháp
Thao tác thừa hành
• Ph ương pháp giếng (well) theo chiều sâu: hạn chế phạ m vi hẹp và đi sâu. Phương pháp này dễ nhưng
không giải quyết được tổng thể và sau này khó phát triển các hệ con thành nhất thể .
Mỗi một mứ c ở trên có vai trò và ảnh hưởng đến hoạ t động và sự phát triển chung củ a hệ thống nên phải được
• Ph ương pháp hồ (lake) theo chiều rộng : giải quyết tổng thể, nhất quán, mang tính tập trung hoá cao có
khảo sát đầy đủ
định hướng lâu dài.
Hình thứ c khả o sát: Có nhiều hình thứ c khả o sát, chúng được sử dụ ng kết hợp đ ể nâng cao hiệu quả , tính xác
Trên thực tế thường chọn giả i pháp trung hoà cả 2 phương pháp này
thực, tính khách quan, tính toàn diện của phương pháp luận:
b. Mục tiêu của hệ thống
• Quan sát theo dõi:
• Khắc phục những yếu kém hiện tại
o Chính th ức: Có chu ẩn bị, có thông báo trước
• Đáp ứ ng nhữ ng nhu cầu trong tương lai, thể hiện chiến lược phát triển lâu dài của cơ quan
o Không chính thức: Lưu ý rằ ng với quan sát không chính thứ c thường cho ta các k ết luận khách
• Thể hiện các hạn chế về thời gian, chi phí, con người
quan hơn. Quá trình theo dõi có ghi chép và sử dụng các phương pháp để rút ra các kết luận có
tính thuyết phụ c và khoa học c. Hạn chế
• Phỏng vấn (Interview) • Tài chính : Kinh phí cho phép triển khai
• 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, tác vụ
o Sử dụng các câu hỏi trự c tiếp (đóng)
o Sử dụng các câu hỏi mở • Thiế t b ị: Các kỹ thuậ t cho phép
o Sử dụng các bả ng hỏi, mẫu đ iều tra • Môi trường: Các yếu tố ảnh hưởng về môi tr ường, xã hội

http://www.ebook.edu.vn
Page 23 of 70 Page 24 of 70
• Thời gian: Các ràng buộc củ a các hệ thống thời gian hoàn thành, phân phối tài liệu
Giả i Giả i
4.4 Phác ho ạ và nghiên cứu tính khả thi của giải pháp Giải
Sau khi khả o sát và đánh giá sơ bộ hệ thống cũ cũng như đưa ra giải pháp cho hệ thống mới , giai đoạn phác pháp 2 pháp 3
pháp 1
hoạ tính khả thi cự c kỳ quan trọng. Nó quyết định hệ dự án hệ thống này có trở thành hiện thự c hay không?.
Hệ đặt hàng Hệ đặt hàng
Phác hoạ này nhằm vào các các điều kiện sau:
Hệ đặt hàng
• Thoả mãn các yêu cầu bên A (bên chủ đầu tư) hay không?: Thường các yêu cầ u này được đưa ra dưới
các dạ ng câu hỏi cốt yếu - TOR (Term of references) mà nhà phân tích cầ n phải trả lời
• Định hướng giải quyết, thực hiện như thế nào?.
• Thiết bị: Cầ n đưa ra các chủng loại, tính nă ng, giá cả, thời gian cung cấp vì chúng thường phải dự trù Ttmt
Hệ phát hàng Hệ phát hàng
sớ m
Xác định các mức tự động hoá khác nhau:
• Tổ chức lại các hoạt động thủ công Hệ phát hàng
• Tự đ ộng hoá một phần, nghĩa là có máy tính tự giúp như ng không đảo lộn cơ cấ u tổ chứ c
• Tự đ ộng hoá làm thay đổi về cơ cấu tổ chức
Phân tích tính hiệu quả và đánh giá tính khả thi : (Chi phí/ lợi ích)
• Khả thi về kỹ thuật
• Khả thi về tác vụ ( về xử lí thông tin ) Giải
Giả i
• Khả thi về kinh tế pháp 4
Đơn hàng pháp 5
T óm lạ i nhà phân tích thường đưa ra một loạt giải pháp đ ể tiện việc so sánh, đánh giá rồi chọn lựa một giải
Hệ ĐH chỉ làm nv
pháp tối ưu chấ p nhậ n đ ược Hoá đơn
mua hàng
4.5. Xét thí dụ (Case Study)
Hệ đặt hàng
Hệ thống cung ứ ng vật tư của một xí nghiệp đã được trình bày ở chương trước. H ệ thống gồm phân hệ đặt hàng
Yêu cầu Ghi nh ận
và mua hàng (gọi tắt hệ ĐH), hệ nhậ n hàng từ nhà cung cấ p và phát hàng tới các phân xưởng dự trù (gọi tắ t là
hàng về
mua hàng
hệ PH) và bộ phậ n đối chiếu thủ công thanh toán với nhà cung cấp. Qua giai đoạn khảo sát ta đánh giá hiện Đối chiếu
trạng của hệ thống thủ công
Yếu kém: Tồn kho
Hệ phát hàng
• Thiếu vắng: Không có kho hàng thông dụ ng đ ể lưu tạm thời các mặt hàng nhập về và tạm thời chưa sử Hệ PH : Qlý dự trù vừa
dụng nhận và phát hàng + Qlý
Dự trù từ các
• Kém hiệu lực do : Kho hàng
phân xưở ng Giao hàng
o Giải quyết đơn hàng, dự trù quá chậm do cách đối chiếu thủ công và cách lấy thông tin cho PX
o Theo dõi việc thự c hiện đơn hàng không sát, xả y ra nhiều sai sót do phân tán về quả n lí
• Tổn phí: Do quá trình đối chiếu thủ công để khớp từ khi dự trù, đơn hàng, hàng nhận, phiếu giao hàng Trên đây ta đ ưa ra 5 giải pháp có tính tương đối và không có chuẩ n mự c nào cả. N ếu xét chi tiết hơn, nhà phân
và hoá đơn thanh toán tích cầ n thiết phả i tính toán cụ thể về nhiều khía cạnh để khẳng định việc lựa chọn một giải pháp và phủ đ ịnh
Mục tiêu các giải pháp còn lại
• Thêm kho hàng thông dụ ng 4.6 Lập dự trù và kế hoạch triển khai dự án
• Khắc phục 2 điều kém hiệu lực bằng cách tổ chức lại để rút ngắn quá trình giải quyết 1 dự trù hàng a) Giai đoạn hình thành hợp đồng
• Tổ chức lại để theo dõi thực hiện đơn hàng chặt chẽ, tránh sai sót b) Dự trù thiết bị
• Cố gắng tận dụ ng phần mềm và phầ n cứng đ ã có c) Kế hoạch triển khai dự án:
• Tổ chức
Phác hoạ giải quyết: ở đây ta đưa ra 5 giả i pháp đ ể cân nhắ c lựa chọn
• Tiến đ ộ
Giải pháp 1: Tạo kênh liên lạc để kết nối hai phân hệ. Giải pháp này vi phạm tính khả thi về k ĩ thuật vì giả
thiết 2 máy không tương thích
Giải pháp 2: Gộp hệ đ ặt hàng vào hệ phát hàng hay ngược lại nhằm loại bỏ một máy tính vi phạm thao tác (tác Bài t ập chương 4
nghiệp) 4.1 Tại sao phải khả o sát hiện tr ạng của hệ thống cũ khi xây dự ng hệ thống thông tin mới ?.
Giải pháp 3 : Loại bỏ 2 máy tính đưa các toàn bộ các nhiệm vụ vào trung tâm máy tính củ a xí nghiệp. Thực 4.1 Trình bày các phương pháp khảo sát hiện tr ạng hệ thống mà anh chị biết. Có nhất thiết khi khảo sát hệ
chất củ a giải pháp này là trang bị máy tính mới, viết lại phần mềm, xử lý tập trung.. Giải pháp này đ òi hỏi chi thống người phân tích viên phải trực tiếp đ ến tận nơi để k hảo sát không ? Tại sao?
phí lớn, tốn kém hơn. Nó chỉ có lợi khi điều kiện kinh tế cho phép. 4.2 Hãy thực tập khảo sát hệ thống thông tin phụ c vụ quản lý ở cơ quan và viết các yêu cầu mục tiêu của dự án
Giải pháp 4: Giữ nguyên hiện trạng vốn đang có, vẫ n dùng bộ máy tính cũ, chương trình cũ. Thự c chấ t không tin học hoá, giả sử ta chọn một trong các dự án sau
phát triển hệ thống. Thự c chất giải pháp này không có ý nghĩa gì như ng đôi khi chưa tìm đ ược giải pháp nào • Hệ thống quản lý thư viện
hay hơn thì tạm thời chấ p nhậ n. • Hệ thống quản lý nhân sự/ đả ng viên
Giải pháp 5 : Chuyển nhiệm vụ nhận dự trù từ hệ Đặ t hàng sang hệ Phát hàng. Như vậy hệ ĐH chỉ làm nhiệm • Hệ thống nhân sự /tính lương
vụ mua hàng. Hệ PH vừa qu ản lý dự trù, vừa nhận và phát hàng • Hệ thống quản lý vậ t tư.
• Hệ thống quản lý khen thưởng
• Hệ thống quản lý học tập của học sinh tr ường phổ thông
• Hệ thống quản lý học tập sinh viên đại học, cao đẳ ng
• Hệ thống tuyển sinh đại học
http://www.ebook.edu.vn
Page 25 of 70 Page 26 of 70
• Chương 5. Phân tích hệ thống về xử lý
Hệ thống quản lý kinh doanh trong lĩnh vực nào đ ó
• Hệ thống quản lý Mini Lab 5.1 Đại c ương
• Phân tích hệ thống theo nghĩa chung nhất là khảo sát nhậ n diện và phân đ ịnh các thành phần của một phứ c hợp
Hệ thống quản lý khách sạ n
• và chỉ r a các mối liên quan giữa chúng. Theo nghĩa hẹp phân tích hệ thống là giai đoạn 2, đ i sau giai đoạn khảo
Hệ thống quản lý sả n xuất của nhà máy
sát sơ bộ, là giai đoạ n bản lề giữa khảo sát sơ bộ và giai đoạ n đ i sâu vào các thành phần hệ thống.
• Hệ thống quản lý tín dụng/tiết kiệm
Kết quả của giai đoạn này ta xây dự ng được các biểu đồ mô tả logic chức năng xử lí của hệ thống. Giai đoạn
• Hệ thống quản lý thuế
này gọi là giai đoạn thiết k ế logic chuẩ n bị cho giai đoạn thiết kế vật lý.Yêu cầu đòi hỏi thiết kế logic một cách
• Hệ thống hạ ch toán kế toán
hoàn chỉnh trước khi thiết kế vật lí
• Hệ thống quản lý bệnh án của bệnh viện.
Đường lối th ực hiện:
• Hệ thống mạng máy tính
• Phân tích trên xuống (Top-down) : Phân tích từ đại thể đ ến chi tiết, thể hiện phân rã các chứ c nă ng ở
• Hệ thống quản lý đối tượng, vụ án
biểu đồ phân cấp chức nă ng và ở cách phân mức ở BLD
• Hệ thống quản lý các dự á n v. v ...
• Đi từ hệ t hống cũ sang hệ thống mới: ( Từ II - III)
• Chuyển từ mô t ả vật lí sang mô t ả logic: (Từ I - I I ).
Sau đây ta chi tiết hoá từng phương pháp với các giai đoạn tương ứ ng
5.2. Phân tích hệ t hống từ trên xuống:
Phương pháp phân tích từ trên xuống dưới áp dụ ng cho việc xây dự ng hai loạ i biểu đồ liên quan đến chức năng
xử lý : Biểu đồ phân cấ p chứ c nă ng và Biểu đồ luồng dữ liệu
a) Xây dựng biểu đồ phân cấp chức năng BPC:
Đây là biểu đ ồ mô tả tĩnh. Bằ ng kỹ thu ật phân mứ c ta xây dựng biểu đồ dưới dạ ng cây. Trong đ ó mỗi nút tương
ứng với một chứ c năng.
Tại giai đoạn khảo sát sơ bộ hệ thống ta liệt kê các chức năng của hệ thống; Các chức năng này phản ánh hệ
thống làm gì chẳ ng hạn như cập nhật dữ liệu, tra cứu, thống kê, tính toấn xử lý. ... Các chức nă ng được phân
thành từng nhóm chứ c năng có liên quan với nhau và chúng đ ược xếp gần nhau. Các chức năng đ ược đ ánh số
theo thứ tự và theo nhóm.
Một điểm lưu ý rằng các phân tích viên thường gặp các sai lầm khi vẽ biểu đồ này:
• Các đường nối từ mức trên xuống mức dưới không có mũi tên vì bản thân các mức đã thể h iện tính
phân cấp
• Biểu đồ này thuần tuý là chức năng xử lý, các tiến trình nên không có mô tả dữ liệu, hoặc mô tả các
thuộc tính
• Lưu ý rằng đây là các chức năng của hệ thống thông tin chứ không phải là ch ức năng của hệ tác
nghiệp.
Việc phân tích liệt kê các chứ c có dạng như sau

Chức năng 1
1.
Chức năng 2
2. Nhóm 1
Chức năng 3 C.năng nhóm
3.
Chức năng 4
4.
Chức năng 5
5. Nhóm 2
Chức năng 6 C.nă ng Tổng quát
6.
Chức năng 7
7.
Chức năng 8
8. Nhóm 3
Chức năng 9
9.
C.nă ng nhóm
............

Chức năng n
n. Nhóm k

Mức 1: Nút gốc là chứ c nă ng tổng quát của hệ thống
Mức 2: Phân rã ở chứ c nă ng thấp hơn là chức nă ng nhóm.
Các mứ c tiếp theo đ ược phân rã (Decomposition) tiếp tục và mức cuối cùng là chức năng nhỏ nhất không phân
chia được nữa.
Cu ối cùng ta có biểu đồ BPC sau:




http://www.ebook.edu.vn
Page 27 of 70 Page 28 of 70
Chỉnh lý lại biểu đồ từ ng bước thích hợp và bả o đảm tính logíc
Chức năng
Một kỹ thuật sử dụ ng khá phổ biến để phân rã (decompose) biểu đồ là k ỹ thu ật phân mức.
F1
Có 3 mứ c cơ bản đ ược đ ề cập đến :
Mức 1: Biểu đồ luồng dữ liệu mứ c khung cảnh (Context Data Flow Diagram)
Mức 2: Biểu đồ luồng dữ liệu mứ c đỉnh (Top Level Data Flow Diagram)
Mức 3: Biểu đồ luồng dữ liệu mứ c dưới đỉnh (Levelling Data Flow Diagram)
BLD mức ngữ cảnh (mứ c 1): Đây là mô hình hệ thống ở mứ c tổng quát nhất, ta xem cả hệ thống như một chức
Chức năng Chức năng C hức năng Chức năng
nă ng. T ại mứ c này hệ thống chỉ có duy nhất một chứ c nă ng. Các tác nhân ngoài và đồng thời các luồng dữ liệu
nhóm F1.1 nhóm F1.2 nhóm F1.3 nhóm F1.n
vào ra từ tác nhân ngoài đến hệ thống được xác định..
Thí dụ : Hệ thống được xác định 1 chứ c năng HT, Tác nhân ngoài là X và Y, 2 lu ồng dữ liệu từ hệ thống ra X
và Y. Một luồng dữ liệu từ X vào hệ thống.
CN CN CN CN CN CN CN
F1.1.1 F1.1.2 F1.1.3 F1.3.1 F1.3.2 F1.N.1 F1.N.2

X

CN CN CN F1.3.2.1 CN F1.3.2.1
CN F1.1.2.2 HT
F1.1.2.1 F1.1.2.3

Y
Phương pháp kết hợp từ dưới lên trên (Bottom-up): Một cách đ ể xác định các công việc cụ thể của một chứ c
nă ng nào đó ta sử dụ ng kết hợp phương pháp “Kiểm soát” từ dưới lên trên. Thự c chấ t của phương pháp này Biểu đồ lu ồng dữ liệu mức khung cảnh
ngược với phương pháp trên để tạo thành một sơ đồ hoàn chỉnh. Mỗi chứ c nă ng nhỏ gom tụ từ một nhóm các
công việc cụ thể chi tiết hơn như sau: Mức 2 : BLD mứ c đỉnh (BLD nhiều chức nă ng) được phân rã từ BLD mứ c ngữ cảnh với các chức năng phân rã
tương ứ ng mứ c 2 của BPC. Các nguyên tắc phân rã :
• Các lu ồng dữ liệu được bảo toàn
• Các tác nhân ngoài bả o toàn
• Có thể xu ất hiện các kho dữ liệu
• Bổ sung thêm các lu ồng dữ liệu nội tại nếu cầ n thiết.
Từ 2 biểu đồ trên ta có BPC kết hợp như sau Với thí dụ trên giả sử hệ thống được định nghĩa như sau:
HT = B ⊕ C ⊕ D
Chức năng Chứ c năng
Dữ liệu : Xuất hiện kho K
F1
X
C

B
Chức năng Chức năng Chức năng Chức năng
nhóm F1.1 nhóm F1.2 nhóm F1.3 nhóm F1.n
K

D
CN CN CN CN CN CN CN
F1.1.1 F1.1.2 F1.1.3 F1.3.1 F1.3.2 F1.N.1 F1.N.2
Biểu đồ BLD mức đ ỉnh
Y

Mức 3: BLD mứ c dưới đỉnh phân rã từ BLD mức đ ỉnh. Các chứ c năng được định nghĩa riêng từng biểu đồ
hoặc ghép lại thành một biểu đồ trong trường hợp biểu đồ đơn giản. Các thành phầ n của biểu đồ đ ược phát triển
như sau
Biểu đồ luồng dữ liệu:
• Về Chứ c năng : phân rã chứ c năng cấp trên thành chức năng cấp dưới thấ p hơn
Mô tả các chứ c năng củ a hệ thống theo tiến trình (process) (biểu đồ động)
• Luồng dữ liệu:
Phương pháp cấu trúc biểu đồ lu ồng dữ liệu: Biểu đồ luồng dữ liệu đối với hệ thống nhỏ, đ ơn giản thông
Vào/ra mức trên thì lặp lạ i (bả o toàn) ở mức dưới (phân rã)
thường được xây dự ng dễ dàng, không cồng kềnh dễ xem xét; tuy nhiên đối với hệ thống lớn phứ c tạ p chẳng
Thêm luồng nội bộ
hạ n như các hệ kinh doanh thì cách tốt nhất là nên tuân theo các hướng dẫn đơn giản đ ể có được một biểu đồ
• Kho dữ liệu : dần dần xuất hiện theo nhu cầu nội bộ
tốt:
• Tác nhân ngoài: Xu ất hiện đầy đủ ở mức khung cả nh, ở mứ c dưới không thể thêm gì .
Xác định các thành phầ n tĩnh trong hệ thống, có nghĩa là các đối tương có chứa dữ liệu
Thí dụ : T ừ biểu đ ồ mứ c đỉnh trên ta có BLD mức dưới đ ỉnh với định nghĩa sau
Xác định các thao tác xử lý chính mà nó sử dụng và dữ liệu sinh ra, đồng thời xác định các dòng dữ liệu giữa
B = E ⊕ F; C = I ⊕ J; D = H ⊕ L; Thêm kho dữ liệu K1
chúng
Mở r ộng - Khai triển và làm mịn dần các tiến trình của biểu đồ

http://www.ebook.edu.vn
Page 29 of 70 Page 30 of 70
+Quá hạn
+Xác nhậ n hoàn trả
J
- T hống kê và tra cứu
K
K
+Thống kê khách vay
+Thống kê nợ quá hạn
E
I +Tra cứu theo mã khách
F K1
- In ấn
Định nghĩa B
+In hoá đơn thanh toán
Định nghĩa C
+In phiếu báo nợ
K
Hoạt đ ộng tín dụ ng chủ yếu cho vay và thu nợ.

Hệ tín dụng
H
L
Định nghĩa D
Thu nợ
Cho vay

Nhậ n xét: số mức phân rã thông thường là 7 ± 2 mức tu ỳ đ ộ phứ c tạp củ a hệ thống
Thí dụ : H oạt động tín dụng
Ghi nhậ n
Sơ đ ồ luân chuyển thông tin X¸c Ghi
Nhận Duyệt Trả lời định nhận hoàn trả
Trả lời Cho vay đon đon
vay Hoàn hoàn k hông
trả tr ả đúng hạ n
đúng
hạn

• BLD khung cảnh:
Hồ s ơ
Đơn vay
Hệ thống
Khách hàng Lưu hồ sơ Hệ
Trả nợ
Tín dụng Khách vay
tín
dụ ng
Trả lãi vay



Thu nợ
Giấy báo Hoàn trả

Hệ thống tín dụng ngân
Đối với khách hàng đến vay tiền ở ngân hàng thì phả i có một hồ sơ (gồm: Đơn xin vay,giấy chứ ng minh thư) và
hàng
yêu cầu đ ược vay. Nếu hồ sơ hợp lệ hoặc không hợp lệ thì hệ thống sẽ trả lời khách hàng.
Đối với ngân hàng nếu yêu cầu và hồ sơ của khách vay hợp lệ tức là yêu cầ u của khách được đáp ứng thì ngân
hàng lập một tài khoả n tương ứ ng vơí khế ư ớc vay mà ngân hàng quy định về số tài khoản, thời gian vay, mức
lãi suất và ngày hoàn tr ả. Khách vay phải thanh toán (gốc + lãi) cho ngân hàng theo đúng hạn ghi trên khế ước
vay, nếu quá hạn khách hàng không đến tr ả ngân hàng thì hệ thống sẽ thông báo tới khách hàng đồng thời áp Cậ p nhật Thu nợ T hống kê In ấn
dụ ng mứ c lãi suất quá hạn.
Đến kỳ hạn hoàn trả k hách vay đến thanh toán (tr ả nợ) bộ phận thu nợ tính ra số tiền mà khách hàng phả i trả ,
că n cứ vào ngày vay, ngày hoàn trả và lãi suất. Sau đó hệ thống đối chiếu với tài khoản gốc, in hoá đơn thanh
toán và thông báo tới khách hàng.
Ghi Ghi
3.Xây dựng biểu đồ phân cấp chức nă ng mới của hệ thống.
Hồ Mứ c Khế nhận nhậ n Thống Phiếu
Xác Tra
Sơ đ ồ phân cấp (rã) chứ c nă ng thể hiện cái nhìn tổng quát về hệ thống, đây là bước phân tích hệ thống về xử lý. Hoá
sơ ướ c tr ả trả cứu
lãi kê báo
Gồm có các mức sau: đ ịnh đ ơn
suấ t đúng nợ
khách sai khách theo
Mứ c 1: Quả n lý toàn bộ hệ thống thông tin tín dụng thanh
hạn hạn
hàng hoàn vay mã
Mứ c 2: G ồm các chứ c năng sau:
trả toán
khách
- Cập nhật dữ liệu
+Khách hàng
Biểu đồ phân rã chức nă ng.(BPC)
+Lập khế ước
- Thu nợ
+Đúng hạ n

http://www.ebook.edu.vn
Page 31 of 70 Page 32 of 70
* BLD mứ c đ ỉnh: Trong khi đó BLD mứ c logic bỏ qua những ràng buộc, các yếu tố vật lý, nó chỉ quan tâm chức năng nào là cần
cho hệ thống và thông tin nào là cần để thự c hiện cho chứ c nă ng đ ó. Nói một cách đơn giản BLD mứ c vật lý
thường được dùng trong khảo sát hệ thống hiện tại (hệ thống cũ ) và trong thiết kế hệ thống mới (khối I,IV trong
Trả lời Cho
4 bước phân tích thiết kế có cấu trúc), còn các BLD logic đ ược dùng cho việc phân tích các các yêu cầu của hệ
đon vay vay
thống cả cũ lẫ n mới (Khối II,III trong 4 bước phân tích thiết kế có cấu trúc).
Sự phân biệt hai khái niệm vậ t lý và logic là nhân tố chủ yếu trong mọi phương pháp lu ận của hệ thống có cấu
trúc
đ ơn vay
Khách vay b) Ph ương pháp chuyển đổi BLD mức v ật lý sang mức logic:
Ghi nợ
Xuất phát từ biểu đồ lu ồng dữ liệu mứ c vậ t lý ta tiến hành loại bỏ các yếu tố vậ t lí từ biểu đồ này. Đây là quá
trình trừu tượng hoá các thành phần của biểu đồ, lược bỏ các yếu tố vật lý để giữ lại các tính chấ t tinh tuý nhất
mà vẫn không làm thay đổi bản chất của hệ thống.
Khi loại bỏ một số chứ c năng, dữ liệu và chỉ giữ nhữ ng thành phần gắ n liền với mục đích trong BLD, ta cầ n lưu
Hoàn tr ả
ý loạ i bỏ theo các tiêu chí sau:
Thu nợ • Loại bỏ các chứ c năng do chính con người, thiết bị, và hệ thống thực hiện. Các chức năng này thuần tuý chỉ
là các thao tác vật lý, nên không tin học hoá đ ược
• Phát hiện và loại bỏ những chứ c năng gắ n liền với các biện pháp xử lí. Ở đây các chứ c nă ng này chỉ tồn tại
tạm thời do nhữ ng biện pháp quy định. Khi thay đổi biện pháp, các chứ c này không còn phù hợp nữa
Biểu đồ lu ồng dữ liệu mức dưới đỉnh • Loại bỏ các cấ u trúc BLD gắn liền với biện pháp xử lý
• Định nghĩa chứ c năng 1 (cho vay) Biện pháp loại bỏ: Chúng ta có thể loạ i bỏ trên BLD bằng cách xoá bỏ các chức năng cần loạ i bỏ (xoá bỏ ngôn
Đơn đã kiểm
từ); thay thế chuyển đổi các lu ồng dữ liệu cho thích hợp khi loại bỏ một số chức nă ng và dữ liệu; ghép phối một
Đơn vay tra
số chức nă ng gần gũi thành cụm và cu ối cùng là tổ chức lại biểu đồ bằng cách đánh số lại các chứ c năng. Trong
1.1 1.2
Khách vay trường hợp phát hiện một chứ c năng nào đ ó chưa rõ vật lý hay logic, cách tốt nhất là phân rã chức năng này
nhận duyệt
thành các chức nă ng chi tiết hơn để việc loạ i loại bỏ được thự c hiện.
vay vay
Chú ý rằng việc chuyển đổi BLD từ mứ c vật lý thành mứ c logic chỉ diễn ra đ ối với BLD mức đỉnh và mứ c dưới
đỉnh, không áp dụ ng cho BLD mứ c ngữ cảnh vì biểu đ ồ này chỉ có một chức nă ng duy nhất và không có kho dữ
Đơ n đ ã
liệu.
duyệt Ghi nợ
Thi dụ B: Xây dự ng BLD đối với hệ thống cung ứng vật tư của nhà máy ở mứ c logic. Đầu tiên ta xây dựng
BLD ở mức vật lý
Giải quyết cho vay
Biểu đ ồ luồng dữ liệu mứ c khung cảnh
1 .3
Trả lời
đ ơn
Từ chối vay

• Định nghĩa chứ c năng 2 (thu nợ)
Hệ không kh ớp
Trả đúng
Hoàn trả 2.2 Phân Hệ cung ứng Người cung
hạ n xưởng
Cnhật trả
Khách vay cấp
vật tư
2.1
đúng hạ n
Xác đ ịnh
Lo ại h.trả
Trả
không
đúng Ghi nợ
2.3
hạn
Cập nh ật
trả sai hạn




5.3. Chuyển từ BLD mức v ật lí sang BLD mức logic
a) Khái niệm BLD mức vật lý, mức logic: Do phương pháp phân tích hệ thống có cấu trúc nên trong quá trình
phát triển hệ thống một ưu thế quan tr ọng nhất trong thực hành là tách bạch chính thức cách nhìn “Vật lý” và
cách nhìn “Logic” của hệ thống. ở bước trước chúng ta đã đề cập xây dự ng BLD mứ c vật lý và nó làm tiền đ ề
cho nhà phân tích thiết k ế chuyển đổi thành biểu đồ BLD mức logic.
BLD mức vật lý của hệ thống mô tả cách thứ c hệ thống thực hiện các nhiệm vụ của nó, ai làm gì, làm ở đâu,
mất bao nhiêu thời gian v.v...


http://www.ebook.edu.vn
Page 33 of 70 Page 34 of 70
Biểu đ ồ luồng dữ liệu mứ c đỉnh


Người cung cấp
1.4Ghi nhận
trả tiền
Người cung cấp 1.2)Làm đơn
hàng
4 .1 Trả tiền
Đơn hàng

4)Trả tiền
1 )H ệ Đ H


DT/ĐH

1.1Chọn
1.3In d/s
người cấ p
3) Đối chiếu thủ đơn hàng
công
3 .Đối chiếu


Phân xưởng 2)Hệ P.H
Phân xưởng
Nhận hàng



2.2.In d/s nhận 2.1Ghi nhận giao
2.3.Làm phiếu hàng hàng
phát hàng




3.3Ghi nhận
3.1Khớp đơn
hàng về theo
hàng với giao
đúng hàng
hàng
Hoá đơ n




Người cung
cấp
3.2.Xác định
địa chỉ phát hàng 3.4Khớp đơn
hàng đã đáp ứng
vớ i hoá đ ơn




http://www.ebook.edu.vn
Page 35 of 70 Page 36 of 70
Đơn hàng 1. Nhược điể m hệ thống cũ :
• T hiếu kho hàng thông dụng: Thiếu hẳn một chức năng trong BLD
• T ốc đ ộ xử lý chậ m: Do đối chiếu thủ công rấ t nhiều; lỗi này do cài đặ t hệ thống ban đầu trên hai máy
không tương thích, nên không thấ y thể hiện ở BLD.
2.Làm đơn Bản ghi xác nh ận S éc/Tiền Người cung • T heo dõi thực hiện đơn hàng có nhiều sai sót : Từ các khâu làm đơn hàng đ ến việc nhận hàng và trả tiền có
7.Trả tiền cấp
hàng
thể gây ả nh hưởng một phần.
Ng CC
• Sự lãng phí: Lý do chính là đ ối chiếu thủ công và cũng không thấy được ở BLD
Hoá đơn
được
Hoá đơn
Đơn hàng Sau đây ta có thể vẽ lại Biểu đồ lu ồng dữ liệu của hệ thống mới ở mức logic. Biểu đồ này là biểu đồ cu ối cùng
bất nhất
chọn +
đã khớp củ a giai đ oạ n phân tích hệ thống về chứ c nă ng xử lý. Nó nhấ t thiết cần đ ược rà soát nhiều lần để biểu đồ được
đơn hàng
hoàn thiện tr ước khi đưa ra thiết kế các module chương trình và dữ liệu.
Hoá đơn 6.Khớp
1 .Chọn
DT/ĐH Hđơn với
ngườ i cung
Biểu đồ luồng dữ liệu c ủa hệ thống mới mức logic
hàng về
cấp KTra bấ t
4.Tìm px có nhất
hàng về

Phiếu dự Địa chỉ Phiếu
trù N gườ i cung
phát hàng giao hàng
Chọn người cấp
Phiếu Nhận hàng cung cấp Làm đ ơn
phát hàng 5 .Làm hàng
P hân xưởng 3.Ghi nhận
phiếu phát
giao hàng
hàng
Trả tiền
và chỗ cất
Đơn hàng
B iểu đồ luồ ng dữ liệu mức lôgic DT/ĐH

Hoá đơn
Trong biểu đ ồ luồng dữ liệu mức dưới đỉnh các chức năng đối chiếu thủ công bị loại bỏ.
Kết hợp hoá
Kiểm tra
Triển khai chứ c nă ng3 với nhiều đ ường vào ra. Cách tổ chứ c lại biểu đ ồ như sau: x/nhập đơn vớ i hàng
kh ả năng số
- Chức năng 1.3 và 2.2 thu ần tuý vật lí được loại bỏ. kho về
h àng kho
- Tiến hành ghép một số chức năng và đánh số lại ta có 7 chứ c năng sau: Tìm phân
1.1 thành 1 xưởng có
hàng về
1.2 thành 2
Tồn kho
2.1 thành 3
3.1,3.2, và 3.3 4
2.3 thành 5 Nhập hàng
3.4 thành 6
4.1 và 1.4 thành 7
Phân xưởng Ghi nhận
Làm phiếu
5. 4. Chuyển từ BLD của hệ t hống cũ sang BLD c ủa hệ thống mới. giao hàng và
giao hàng nơ i cất
Một câu hỏi đặt ra: "Vì sao ta cần thiết chuyển BLD h ệ thống cũ sang hệ thống mới ở mức logic? ". Trả lời là:
Lý do để hệ thống mới thừa hưởng nhữ ng cốt lõi tinh tuý của hệ thống cũ, không làm biến đổi cái bả n chấ t của
hệ thống cũ, khắ c phục các nhược điểm và kế thừa nhữ ng cái đã có ưu điểm, khác về cài đặt.
Trong khi chuyển ta cần phải xem lại: Bài t ập chương 5
1. Những nhược điểm của hệ thống cũ như Thiếu chức nă ng, hiệu suất thấp, lãng phí. Nhữ ng nhược điểm này Ý tưởng cơ bản của phân tích hệ thống về xử lý là gì, gồm các bước và tiêu chuẩn nào?
1.
cầ n đ ược khắ c phụ c Khi xây dựng biểu đồ phân cấ p chức nă ng ta dựa vào các yếu tố nào?
2.
2. Các yêu cầu, mục tiêu củ a hệ thống mới: Đây là các yêu cầu ưu tiên cầ n bổ sung vào các chức năng của biểu Cơ sở đ ể xây dựng biểu đ ồ luồng dữ liệu các mứ c: Khung cảnh, mứ c đ ỉnh và mức dưới đỉnh. Giữa
3.
đồ. biểu đồ BLD và biểu đồ BPC có mối liên hệ gì?.Tiêu chuẩn nào đ ánh giá biểu đồ xây dựng đ ược là
Việc biến đổi có thể thực hiện bằ ng cách khoanh lại một số vùng là các vùng thay đổi. Đ ối với nhữ ng vùng thay hợp lý và có tính logic
đổi sẽ được sắ p xếp lại sao cho: Biểu đồ luồng dữ liệu ở mứ c vật lý và mứ c logíc khác nhau ở nhữ ng điểm nào?
4.
• Luồng dữ liệu vào, ra: Đ ó là giao diện đối với những vùng còn lại phải bảo toàn. Tạ i sao các chứ c năng của biểu đồ BLD được gán nhãn ( đánh số) theo dạng phân cấp?
5.
• Xác định chứ c nă ng tổng quát của vùng thay đổi đ ể khi biến đổi vẫ n giữ nguyên được chứ c năng chính của Hãy thự c hiện việc phân tích về chứ c nă ng xử lý của các hệ thống đ ưa ra trong phần bài tậ p chương
6.
nó; không làm cho chức năng này bị biến dạng. 4 (câu 4.3)
• Xoá một phần BLD cần thay đổi bên trong và lập lại các chức năng từ nhỏ chi tiết, các chức năng biến đổi
trung gian (kiểm tra, thêm...) và các trung tâm bi ến đổi
• Bổ sung các nhu cầu về kho dữ liệu, lậ p các luồng dữ liệu.
₪₪ Trở lạ i thí dụ (Case study): Quản lý sử dụng vật tư

http://www.ebook.edu.vn
Page 37 of 70 Page 38 of 70
Đơn vị .......... Phiếu nhập/xuất kho Quyển số ..........
Chương 6. Phân tích hệ thống về dữ li ệu
Số......................
6.1. Đại c ương: Phân tích hệ thống bao gồm việc phân tích về xử lý và phân tích về dữ liệu. Chúng ta tách tạm
Ngày.........tháng.......... năm..........
thời việc phân tích dữ liệu vì dữ liệu có tính độc lập tương đối. Dữ liệu là đối tượng của xử lý.
Tên người lập:................................Bộ phận:..........
Mục đích của giai đ oạ n phân tích hệ thống về dữ liệu là: Lập lược đồ dữ liệu hay gọi là biểu đ ồ cấu trúc dữ liệu
Nhậ p vào kho:................................Ghi có tài khoả n............
BCD. Hệ thống dữ liệu lưu giữ lâu dài:
Số lượng
• T hông tin gì, bao gồm dữ liệu gì. Số TT Đơn vị tính Giá đơn vị Thành tiền
Tên hàng Ghi chú
Xin nhậ p T hực nhập
• Mối liên quan: xác định liên quan giữa các dữ liệu.
Phương pháp thự c hiện: thể hiện 2 cách tiếp cận:
• Mô hình thực thể liên kết: phương pháp này trực quan hơn đ i từ trên xuống dưới, bằ ng cách xác đ ịnh các
Cộng
thự c thể, mối liên k ết giữa chúng r ồi đến các thuộc tính. Phương pháp này bao trùm được nhiều thông tin,
tuy nhiên k ết quả hay thừa.
Cộng thành tiền (Viết bằng chữ)..................................................................
• Mô hình quan hệ: xuất phát từ danh sách các thuộc tính rồi đ i đ ến các lược đồ quan hệ. Phương pháp này đ i
từ dưới lên, kết quả là vừa đủ cho nhữ ng kết xuất xử lí.
Ng ười nhập/xuấ t Th ủ kho Kế toán trưởng Thủ trưởng đ ơn v ị
Chúng ta nên làm theo 2 cách để so sánh.

Ởđây sẽ xuất hiện 2 kiểu thực thể là phiếu nhậ p/xuấ t và dòng phiếu nhập/xuấ t.
6.2. Thành lập BCD theo mô hình thực thể liên kế t
Chúng ta xem xét lại ví dụ về hệ thống Quả n lý vật tư:
Trước tiên ta phải thu nhậ p thông tin theo 3 yếu tố:
Các thự c thể
• Kiểu thự c thể (Entities Type)
• Kiểu liên k ết (Entities Relationship Type) (1) Tài nguyên:
Người cấ p
• Các thuộc tính (Attributes)
Phân xưởng
a. Phát hiện các kiểu thực thể: để phát hiện các kiểu th ực thể ta thường tìm từ 3 nguồn:
Tồn kho
• Các tài nguyên: vậ t tư, tài chính, con người, môi tr ường
Mặt hàng
• Các giao dịch: đó là các thông tin đến từ môi tr ường bên ngoài nhằ m kích động một chu ỗi các hoạt động
(2) Giao dịch :
nào đó của hệ thống chẳng hạn như đơn hàng, hoá đơn...
Đơn hàng - dòng đơn hàng
• Các thông tin đã cấu trúc hoá: sổ sách, hồ sơ, các bảng biểu quy định..
Giao hàng - dòng giao hàng
b. Phát hiện các kiểu liên kết: trên thự c tế có r ất nhiều các liên kết giữa các thự c thể nhưng ta chỉ ghi nhận các
Hoá đơn - dòng hoá đơn
kiểu liên k ết có ích cho công tác quản lí và các liên k ết giữa các kiểu thự c thể mà ta vừa phát hiện ở trên.
Phát hàng - dòng phát hàng
- Liên kết 1 - nhiề u: đ ó là các liên kết thường hay gặp nhất, thường thông qua các đ ường truy nhập, không phải
Dự trù - dòng dự trù
một bước mà được lần theo khoá có thể qua nhiều tệp khác nhau. Các liên kết 1 - nhiều thường là:
(3) Thông tin cấu trúc: ( đa số là các liên k ết phả n ánh bằng sổ sách )
Chứ ng từ / D òng chứng từ, hóa đơn / dòng hóa đ ơn
Xuấ t/nhập kho
Ví dụ:
Các liên k ết:
Hoá đơn
Dự trù/ Đơn hàng (nhiều - nhiều)
Mặt hàng / người cấp (1- nhiều)
Dòng hoá đơn Qua đó sơ bộ ta vẽ được biểu đồ sau:
Thông tin tình huống (đưa vào trong tương lai)
Mối liên quan thường được diễn tả bằng các giới từ sở hữu “cho, thuộc, bởi, củ a...”..
- Liên kế t nhiều - nhiều: có thể liên k ết nhiều bên nhiều phía. Trên biểu đồ nó phải được thể hiện bằ ng một
kiểu thự c thể trung gian với khoá là tổ hợp khoá của các bên tham gia.
Ví dụ:
Sinh viên
Giáo viên


Thờ i khoá biểu


Ti ết học
Phòng học

c. Phát hiện các thuộc tính:
Thuộc tính khoá nhận diện (khoá đơn hoặc khoá kép)
Các thu ộc tính mô tả chỉ xuấ t hiện ở mỗi kiểu thực thể, dùng để mô tả các đặc trưng củ a thự c thể.
Thuộc tính kết nối: đó là thuộc tính thể hiện vai trò kết nối giữa 2 kiểu thực thể.Nó là thuộc tính khoá nhận diện
ở thực thể này và đ ồng thời xuấ t hiện là thuộc tính mô tả ở thực thể k hác.
Ví dụ: Việc xuất nhậ p vật tư của một cơ sở sản xuấ t được tiến hành như sau:
Khi xuấ t hoặ c nhậ p vật tư k èm theo phiếu nhậ p/xuất kho đ ược nhập vào máy.
Phiếu có dạng sau:

http://www.ebook.edu.vn
Page 39 of 70 Page 40 of 70
Mô hình thự c thể liên kết E-R củ a hệ thống cung ứ ng vật tư: R={A1,A2,....An} Ai i=1..n là tập hữu hạn các thuộc tính
r(R) hay r(A1,A2,....An)
Biểu diễn một quan hệ bảng trong đ ó cột là các thuộc tính, dòng là các bộ có thứ tự, n là bậ c của R hay R là
quan hệ n ngôi.
Ví dụ:
Phân xưởng
SHPX Phát hàng
Ta có bả ng quan hệ NHAN VIEN
SH phát hàng
M ô tả P X
NHAN VIEN (H ọ tên, nă m sinh, nơi làm việc, lương)
Ngày phát
SHPX nhận Họ tên Năm sinh Nơi làm việc Lương
SH dự trù
Dự trù
Lê vă n A Đại học bách khoa
SHPX 1960 425
Ngày dự trù Hoàng thị B Viện KH Việt Nam
1970 320
Dòng phát hàng ......... .......... ........... .........
SH phát hàng
t1= (Lê vă n A,1960,Đại học bách khoa,425) là một bộ củ a quan hệ NHAN VIEN
Ngày MH
Dòng dự trù SH dự trù
Khoá quan hệ R là tập con K⊆{A1,A2,....An} sao cho
Lượng phát
SHPX
Với ∀ t1,t2 ∈R sẽ ∃ A ∈K sao cho t1(A) ≠ t2(A) có nghĩa là không tồn tại 2 bộ mà có giá trị bằ ng nhau trên
M ã MH
Lượng dtrù
mọi thu ộc tính các bộ củ a K là duy nhấ t.
SH đơn hàng Dòng đơ n hàng
SH đơn hàng R(A,B,C,D) là lược đồ quan hệ
R là tên lược đồ quan hệ
Ngày MH
Lượng đặt (A,B,C,D) là tập các thu ộc tính
Định nghĩa phụ thuộc hàm:( Function dependence)
Thuộc tính B gọi là phụ thuộc hàm vào thuộc tính A nếu như trong R bấ t cứ 2 bộ
Đon hàng
SH Đơn hàng
(a1, b1, c1 ) (a2, b2, c2 ) mà a1= a2 thì b1= b2 , ai ∈A thì bi ∈B
Mặt hàng M ã MH
SH ngccấp Ta ký hiệu phụ thuộc hàm A → B ( A xác định B)
Đơ n giá chuẩn
Ngày đặt hàng Các tính chất của phụ thuộc hàm (Tiên đề Amstrong)
Mô tả MH
Giả sử: A,B,C là tậ p các thuộc tính thì
MH/ngccấp • Tính phản xạ: A → B
• Tính chiếu: A → B,C thì A → B và A → C
Hoá đơn
Số hiệu HĐ • Tính gộp: A → B, A → C thì A → B,C
SH ngccấp
Mã MH
• Tính tăng cường: A → B thì A,C → B với C bất kỳ
SH-Ngccấp Đơn giá
• Tính truyền ứ ng(bắ c cầu): A → B, B→ C thì A → C
Ngày HĐ
• Tính giả truyền ứng: A → B, B,C → D thì A,C → D
Một số định nghĩa về chuẩn:
SH ngccấp
Ngccấp
• Phụ thuộc hàm sơ đẳng (không bộ phận): một phụ thuộc hàm A → B gọi là sơ đẳng ⇔ không tồn tại A’⊂
Mô tả ccấp
Dòng hoá đơn Số hiệu HĐ A: A’ → B
SH-Ngccấp
• Phụ thuộc hàm trực tiếp (không bắc cầu):một phụ thuộc hàm A → B gọi là trực tiếp ⇔ trong R không tồn
M ã MH
tại C (C khác A,B) mà A→ C và C→ B
Lượng lên HĐ
Các dạng chuẩn:
SH giao hàng
Giao hàng
SH-Giao hàng
SH ngccấp
• Chuẩ n hoá: Quan hệ chuẩn hoá là quan hệ trong đó mỗi miền củ a một thuộc tính chỉ chứa giá trị nguyên tố
Ngày GH, nơi cất
tức là không phân nhỏ được nữa.
• Dạng chuẩn 1 (1NF) : một quan hệ R gọi là chuẩ n1 nếu như các miền thuộc tính là miền đơn.
• Dạng chuẩn 2 (2NF) : Một dạng chu ẩn là chuẩn 2 nếu như nó là chuẩ n 1 và phụ thuộc hàm giữa khoá
và các thu ộc tính khác là phụ thuộc hàm sơ đ ẳng.
Dòng giao hàng
• Dạng chuẩn 3 (3NF) : Một dạng chu ẩn là chuẩn 3 nếu như nó là chuẩ n 2 và phụ thuộc hàm giữa khoá
SH giao hàng
và các thu ộc tính khác là phụ thuộc hàm tr ực tiếp.
SH ngccấp
Nguyên tắc:
Mã MH
Một quan hệ đ ược chuẩ n hoá có thể tách thành 1 hoặc nhiều quan hệ chuẩ n hoá khác mà không làm mất mát
SH Đơn hàng
thông tin.
Ví dụ:
Tên kho X/nh kho SH-MH Quan hệ SINHVIEN (môn thi, mã SV, Tên, tuổi, địa chỉ, điểm) được tách thành 2 quan hệ
Ngày xuất/nhập
SH-MH SINHVIEN (mã SV, Tên, tuổi, đ ịa chỉ)
Lượng xuất/nhập
Lượng tồn KQTHI (môn thi, mã SV, đ iểm)
Ngưỡng
a. Thành lập biểu đồ BCD:
Để thành lập biểu đ ồ BCD ta chia thành 4 bước:
3. Lập biểu đồ c ấu trúc dữ liệu (BCD) theo mô hình quan hệ
• Bước 1: Thành lập danh sách các thuộc tính (danh sách xuất phát): xuất phát từ những "điểm" khác nhau
a. Khái niệm toán học về mô hình quan hệ:
dẫn đến có nhiều nguồn danh sách xuấ t phát từ các nguồn:
Mô hình quan hệ là tập con của tích đ ề các của các miền (Domain)

http://www.ebook.edu.vn
Page 41 of 70 Page 42 of 70
• Ví dụ:
Danh sách những thông tin cơ bả n
1 SH- Đon → SH - Nguồn cung cấp, Ten Nccap, Đ/chi - Nccap, ngay - ĐH
• Xuấ t phát từ 1 hay một số tài liệu xu ất ra củ a các hệ thống, nhặt các tiêu thứ c (cái ra → cái cần)"
2 SH - Nccap → Ten - Nccap, Đ/c - Nccap
Phương pháp cái ra" Methog Sortir.
3 Mã MH→ Mô tả - MH, Đ ơn vi tính, Đơn giá
• Bước 2: Tu chỉnh lại danh sách:
4 SH - Mã MH → SH - Đ ơn, Mã MH, Mô tả MH, ĐV tính, Đơn giá, số lượng đặt
• Loại bỏ các tên đồng nghĩa
• Loại bỏ các thu ộc tính tính toán.
SH-Đơ n, Mã MH
Ví Dụ: thành tiền = đơn giá * soluong ( trong một hoá đơn )
(Vì đ ây là giai đoạn logic chỉ tính đến đầy đủ và hợp lí chưa nói đến tiện lợi, sau này đến giai đoạn thiết
kế có thể ta lại bổ sung thêm thuộc tính này).
• Loại bỏ các thu ộc tính tích luỹ ( thực chất cũng từ thuộc tính tính toán ) Số lượng đặt
Ví dụ: số hàng tồn kho = Σ nhập = Σ xuấ t
• Thay thế các thuộc tính không đơn bởi các thuộc tính đ ơn.
• Bước 3: Tìm các phụ thuộc hàm có trong danh sách nói trên.
SH-Đơn
Việc xác định các phụ thuộc hàm thực chất phải dựa vào ý nghĩa trên thự c tế.
Mã MH
• Rà từng cặp thuộc tính trong những danh sách trên, hoặc máy móc và đơn giản hơn là lập bảng 2 chiều.
• Tìm các phụ thuộc hàm vế phả i không đơn ( gồm nhiều thuộc tính) SH-NCC
Ngày ĐH
• Bước 4: Chuẩn hoá: có 2 phương pháp Mô tả MH Đv tính Đơ n giá
• PP1 Phân rã: Đ/c NCC
Tên NCC
Ban đầu ta coi tất cả các thuộc tính nằm trong một quan hệ r ồi tiến hành phân rã quan hệ này...
i) Dạng 1NF: Tách nhóm các thu ộc tính lặp Vậy lập được 4 quan hệ
o Phần còn lại có thể tạo thành một quan hệ, tìm khoá cho nó MATHANG (ma - MH, Mota MH, ĐV tinh, Đơn gia)
o Phần tách ra + khoá trên lập thành quan hệ khác. Tìm khoá NGCCAP (SH- NCC, Ten- NCC, ĐC - NCC)
ii) Dạng 2NF: Loại bỏ phụ thu ộc hàm bộ phận vào khoá bằng cách tách ra cộng với bộ phậ n của khoá ĐONHG (SH -Đơn, Ngày ĐH, SH - NCC)
nói trên (thông thường khoá là bộ phận nói trên) để tạ o ra các quan hệ mới. Dòng ĐH (SH - Đơn, Mã MH, Số lượng đặt)
iii) Dạng 3NF: Loại bỏ phụ thuộc hàm không khoá bằ ng cách tách những phụ thuộc hàm không có khoá Trong sơ đồ thực thể liên kết mô hình:
tham gia, tách ra + thuộc tính ở vế trái (khoá). Hay nói khác đi là tách các nhóm thuộc tính phụ thu ộc Dòng đơn
hàm vào thuộc tính không phả i là khoá, nhóm tách ra là một quan hệ có khóa mới.
VD:
Danh sách các thuộc tính Dạng 1NF Dạng 2NF Dạng 3NF Đơn hàng
SH- Đơn SH- Đơn SH- Đ ơn SH- Đ ơn
Mặt hàng
SH-NCC SH-NCC SH-NCC SH-NCC
Ngày-ĐH Người CCấp
Tên-NCC Tên-NCC Tên-NCC
Đ/C-NCC Đ/C-NCC Đ/C-NCC
• Bước 5: Lặp lại các bước từ 1 -4 trên các danh sách xuất phát khác...
Ngày-ĐH Ngày-ĐH Ngày-ĐH SH-NCC
Nếu cùng 1 kiểu thực thể, từ các danh sách xuất phát khác nhau có các quan hệ danh sách thu ộc tính khác nhau.
Mã-MH Tên-NCC
Gộp lạ i: khi gộp lạ i có thể xu ất hiện phụ thu ộc hàm bắ c cầ u, khi gộp xong phả i tiếp tục cho chuẩn hoá quan hệ
Mô tả -MH SH- Đơn SH- Đ ơn Đ/C-NCC
vừa gộp lại.
Đơn vị tính Mã-MH Mã-MH
Ví dụ:
Đơn giá Mô tả -MH Số lượng đặt SH- Đ ơn
Đơn hàng (SH - Đơn, SH - Khách hàng, Ngày ĐH)
Số lượng đ ặt Đơn vị tính Má-MH
Từ phiếu giao hàng Đơn hàng (SH - Đơn, Tình trạng đơn, Đ/c giao hàng)
Thành tiền Đơn giá Số lượng đặt
Mã-MH
Gộp lại, nghiên cứu các phụ thuộc hàm nảy sinh bên trong.
Tổng cộng Số lượng đặt Mô tả -MH
Giả sử mỗi khách hàng chỉ có 1 địa chỉ giao hàng duy nhấ t, khi ấy có
Đơn vị tính Mã-MH
SH - khách hàng → Đ/c giao hàng
Đơn giá Mô tả -MH
Chu ẩn hoá để được Đơn hàng (SH - Đơn, SH - khách hàng, ngày Đh, tình trạng đơn)
Đơn vị tính
Khách hàng (Sh - khách hàng, Đ/c giao hàng)
Đơn giá
* Kết luậ n:
• PP2: Phương pháp Tổng hợp A Phân tích hệ thống chứ c năng:
i) Lậ p một đồ thị có hướng gọ i là đồ thị phụ thuộc hàm:
+ BPC chức năng (tình)
B
o Mỗi thu ộc tính là một nút
+ BLD lu ồng dữ liệu ( động)
o Mỗi một nhóm thuộc tính là vế trái của 1 phụ thuộc hàm cũng là nút
Phân tích hệ thống dữ liệu:
o Có 1 phụ thuộc hàm A → B thì ta vẽ 1 cung A đến B.
BCD:
ii) Loại bỏ các cung khép kín ( loại các phụ thuộc hàm không trự c tiếp).
+ Mô hình thự c thể liên k ết
+ Mô hình quan hệ :
CA
iii) Dùng các hình ch ữ nhật để khoanh vùng:
- Phân rã
Mỗi nút trong (có con) lấy làm khoá gộp cùng với các con củ a nó lập thành 1 quan hệ.
- Tổng hợp

http://www.ebook.edu.vn
Page 43 of 70 Page 44 of 70
Sau đó so sánh các phương pháp để xem có sai sót gì không? Chương 7 Thiết kế t ổng thể và thiết kế giao diện
Chỉ giữ lại nhữ ng liên k ết 1 - nhiều cầ n đ ể làm các đ ường truy nhậ p vì các liên k ết nhiều - nhiều được tách ra,
các liên kết 1 - 1 ít sử dụng. Mở đầu : Ta xem lại 4 bước của thiết kế có cấu trúc

Bài t ập chương 6 What,How?
6.1 So sánh Phương pháp xây dựng lược đ ồ cấu trúc dữ liệu bằng mô hình thự c thể liên k ết và mô hình quan hệ. Bằ ng cách gì
Mô tả hệ
Mô tả hệ
6.2 Liên kết 1-1 xuất hiện trong các trường hợp nào? Cho ví dụ Với phương
thống mới làm
thống cũ làm
6.3 Liên kết nhiều- nhiều (N-N) đ ược xử lý như thế nào trong mô hình thự c thể liên kết E-R. tiện gì
việc như thế
việc như thế
6.4 Liên kết 1-nhiều (1-N) thường gặ p trong các tr ường hợp nào?. Cho ví dụ ở đâu
Mức vật lý nào?
nào?
6.5 Hãy thự c hành xây dựng các mô hình thự c thể liên k ết E-R trong các hệ thống cho ở bài tập chương 4 (4.3). ai
(1)
6.6 Thu ộc tính khoá, thuộc tính k ết nối của mỗi thực thể được xác đ ịnh như thế nào? khi nào
( 4)
(3)
Mức logic
Mô tả hệ
(2) Mô tả hệ + Nổ i bậ t bản
thống mới làm
thống cũ làm chất ( nh ững sai
gì?
gì? lầ m về bản
chất)
What?
+ Mở đường
cho s ự sáng tạo
và tối ưu hoá
1. Đại cương về g iai đoạn thiết kế :
+ Dẽ trao đổi
Xu ất phát: mô tả logic của hệ thống mới
với ng ười dùng
- BPC (phân rã chứ c năng - mô tả tĩnh)
- BLD (mô tả động đặt trong mối liên quan về dữ liệu đối với nhau) đã phân mức
- BCD cấu trúc dữ liệu : Thông tin / liên kết
Quan hệ giữa các thự c thể và các thuộc tính
Nhiệm vụ giai đoạ n này là Chuyển biểu đ ồ ở mứ c logic → mứ c Vật lí
- Biện pháp
- Phương tiện
- Cách cài đ ặt.....
Các bước :
+ Thiế t kế tổng thể: - Phân định ranh giới phần thực hiện bởi Máy Tính và thủ công
- Phân định các hệ thống con MT (khu vực trong biểu đ ồ luồng dữ liệu đ ược xử lí bằng
MT)
+ Thiế t kế giao diện : (thiết kế đầu ra và đ ầu vào) thường thiết k ế đầu ra trước rồi thiết kế đầu vào
+ Thiế t kế các kiểm soát: - Các vấ n đ ề về bả o mật
- Vấn đề về bảo vệ
+ Thiế t kế các tệp (khi thiết kế logic BCD chỉ quan tâm: đủ ? không trùng lặp?
- Tiện
- Nhanh khi truy nhậ p
(Từ mô hình lí tưởng → cài đặt thực tế)
+ Thiế t kế về chương trình
Có nhiều phương thức sử dụ ng MT: - Tậ p trung hay phân tán ?
- Các hình thứ c xử lí theo mẻ hay theo kiểu trực tuyến?
- Phân định MT/ thủ công
- Phân định hệ thống con MT
2. Phân định hệ t hống MT và hệ thống thủ công
BLD ở một mức nào đó, kết quả vẫn BLD đ ó có thêm ranh giới giữa MT và thủ công, trên hình vẽ phân đ ịnh
bằ ng các đ ường nét đ ứt đoạn...., có thể các vùng không liên thông.
Ví dụ trong biểu đồ ta nhìn thấ y dáng điệu sau

Thủ công
Máy tính

Máy Máy
Hoặc tính tính
Thủ công

http://www.ebook.edu.vn
Page 45 of 70 Page 46 of 70
a) Đối với các ch ức năng xử lý Nếu kho dữ liệu khi chuyển sang thự c hiện bằ ng Máy tính, nó biến thành các kiểu thự c thể, liên k ết và sau đó
+ Dồn về hẳ n một bên các chức năng thự c hiện bằng máy tính, điều đó khá dễ khi cài đặ t nó là các file dữ liệu, các cơ sở dữ liệu cần phải so sánh lại với biểu đ ồ cấ u trúc đã có phả i có mặt
+ Nếu trong trường hợp các chứ c năng không hẳn về 1 bên ta tiếp tụ c phân rã nhỏ đi sao cho sau khi phân rã trong BCD
được tiếp sự phân biệt rõ ràng giữa MT và thủ công Kho dữ liệu nếu thự c hiện bằ ng thủ công: chẳ ng hạn hồ sơ tài liệu, thì cần loại ra khỏi BCD.
Ví dụ: Trong hệ thống cung ứng vật tư, giao diện giữa người cung ứng vật tư và khách hàng có những việc thực Đôi khi ta bu ộc phải thêm 1 thực thể hay 1 liên kết vào BCD để thuận tiện cho việc cài đặt (Chẳng hạ n bảng
hiện tự động hoá bằ ng máy tính, tuy nhiên có những việc thực hiện thuần tuý bằng thủ công mà không thể thay giá, catalo cung cấp, Số hiệu đơn hàng v. v...)
thế bằng máy tính đưọc. Chứ c nă ng đối chiếu cũng tương tự như vậ y. Bởi vậy các chứ c năng đó được phân rã c) Chọn lựa phương th ức và sử dụng máy tính: Các phương thức thể hiện đối với hệ thống có thể là hệ thống
tách thành các chứ c nă ng chi tiết hơn đ ể có thể tách r ời các phầ n MT/TC mở, hệ thống trự c tuyến.
Một số chú ý: Ví dụ: Kiểm tra kho hàng tu ần, hàng ngày và bấ t cứ lí do nào
1. Việc phân đ ịnh các chức năng MT/TC đ ôi khi dẫn đến sự nhầ m lẫ n giũa hệ thống thông tin và hệ tác nghiệp. 3. Phân định các hệ thống con MT
Thực chất ta đang xét MT/TC ngay trong hệ thống thông tin Hệ thống con thực chất là 1 bộ riêng lẻ chương trình
2. Trong một chức năng đôi khi có nhữ ng phần vừa máy tính vừa thủ công, cái khó là làm sao ta có thể tách
HT
chúng ra được mà vẫn giữ nguyên được hình dáng biểu đồ của hệ thống.
3. Việc tách phần MT/TC nhằm gợi ý cho người thiết kế chú ý đến thiết kế giao diện người dùng tại biên giới
MT/TC
4. Đối với các hệ thống dùng phương thứ c trực tuyến thì phần làm bằng máy tính sẽ là chủ yếu. Phầ n thự c hiện
thủ công chỉ mang tính theo dõi kiểm tra HTcon 1 HTcon 2 HTcon n
........

Hợp đồng CC MH cung cấp Ng cung cấp
người ........
cT1
cung cấ p
3.1 3.2
mới
chọn thoả thuận
người HĐ cung ........
cT1
cung cấp cấp
người cung
cấp đ ược
y/c cung cấp
chọn ........
cT1
Th ương
lương
HĐ mới về
TT
Nguyên tắc phân định không nhấ t thiết chỉ căn cứ vào chứ c năng thuần tuý

Y/c về
người cung
chào
Các că n cứ để phân địmh:
TT ccấp hàng cấ p
(1) Theo thực thể: gom tụm nhữ ng chứ c năng xung quanh 1 kiểu thực thể hay (tệp) 1 nhóm kiểu thực thể ( tập
hợp tệp)
N g cung cấp
VD hệ thống con khách hàng
hệ thống con kho vậ t tư
(2) Theo giao dịch: là thông tin về k inh doanh khi xuất hiện sẽ khởi động 1 loạ t chứ c nă ng đ ể cập nhậ t thông tin
HĐ cung cấp N g ccấp MH Ng cung cấp
VD Đơn hàng là 1 trong nhữ ng giao dịch
Gom các chức năng được khởi đ ộng bởi giao dịch đ ó vào 1 nhóm, dựa vào phương pháp lan truyền đối với các
luồng dữ liệu xuất phát từ thông tin vào khởi động bằng sự giao dịch
3.1.2 3.1.3 3.2.2 3.2.3 (3) Theo thông tin biến đổi:
xđịnh các đưa ra các chi ghi nhận ng ghi nhậ n Nếu nhận thấ y trong BLD có 1 khu vực tậ p trung xử lí thông tin chủ yếu (Central) thì gom nhữ ng chứ c nă ng
HĐ còn hạ n tiết về ng ccấp ccấ p mới HĐ mới này lại "nhấ c lên" kéo theo nhữ ng gì liên quan.
VD Tính lương:
Khi cầ n tính Lương sẽ kéo theo nhữ ng đầu vào: cấp bậc, thâm niên..., đ ồng thời đối với đầu ra sẽ bảng lương
Người cung cấp đ ược chọn chi tiết, bả ng tổng hợp lương...
(4) Gộp theo tính thiết th ực : chẳ ng hạn
3 .1.1 3.2.1
+ Cấu trúc kinh doanh của cơ quan
Chào HĐ mới
tìm ccấ p thương lượng
+ Vị trí cơ sở
hàng
thích hợp ccấ p mới
+ Sự tồn tạ i củ a phần cứ ng
+ Trình độ đội ngũ củ a cán bộ nhân viên thừa hành
+ Trách nhiệm công tác (thường là quyền ưu tiên xâm nhập vào dữ liệu) (private)
Y/c về TT Người cung cấp
4. Thiết kế c hi tiế t về các thủ t ục người dùng và các giao diệ n
Thương lượng HĐ
bán hàng
a) Chức năng thủ công: có nhiều loại
- Không liên quan đến MT
b) Đối với các kho dữ liệu - Có máy tính trợ giúp: + batch
+ On - line
- Có nhữ ng chứ c năng thủ công mới xuất hiện để phục vụ MT: "ăn theo" sự xuất hiện MT

http://www.ebook.edu.vn
Page 47 of 70 Page 48 of 70
+ Mã hoá thông tin thu nhậ p - N ội dung đơn giản, rõ ràng, chính xác
+ Kiểm soát và sửa chữa thông tin Tóm lại:
+ Nhập thông tin Thiết kế giao diện là một trong nhữ ng phần thiết yếu của hệ thống để hệ thống trình bày một phầ n các thông tin
+ Kiểm tra tài liệu xu ất mà người sử dụng cần biết. Bởi vậ y mục tiêu củ a nó cần được người thiết kế tiến hành một cách hết sức cẩ n
+ Phân phối tài lliệu xu ất thận. Các yêu cầu chính cầ n được xem xét :
• Loại thiết bị phương tiện giao diện đ ược sử dụng
Yêu cầu: chứ c năng thủ công
- Đáp ứng đ òi hỏi hệ thống • Thiết kế hội thoạ i người dùng - hệ thống
• Bản chất củ a dữ liệu và phương cách mã hoá dữ liệu
- Thông tin chính xác
- D ễ dùng, dễ hiểu • Các yêu cầu về kỹ thuật đánh giá dữ liệu
- Gõ phím ít nhất ngắn gọn đ ủ ý • Thiết lập định dạ ng màn hình và các báo cáo.
- N ội dung phải làm (không gian, thời gian)
- Yêu cầ u năng suấ t (qualification) Bài t ập chương 7
- Cách xử lí các sai sót gặp phải 7.1 Hãy thiết k ế giao diện cho chương trình cập nhậ t dữ liệu khi có độc giả yêu cầu mượn sách trong hệ thống
b) Thiết kế các tài liệu xuấ t thư viện.
Xuất dữ liệu theo các phương tiện: 72. Đối hệ thống tuyển sinh vào các trường đại học hãy phân định hệ thống máy tính và thủ công cho hợp lý và
- Giấy logic
- Màn hình 7.3 Phân định hệ thống quản lý sả n xu ất của xí nghiệp thành các hệ thống con: Nhân sự, vật tư, lương, kế toán,
- Đĩ a kế hoạch, tiếp thị
- v. v ... 7.4 Phân định hệ thống kinh doanh tiền tệ tại ngân hàng với các chức năng: Tín dụng, tiết kiệm, k ế toán ngân
Phương thức xuất: - Lập tứ c hàng.
- Trì hoãn 7.5 Thiết kế dữ liệu đầu vào của hệ thống:
Tài liệu Xuất ra gồm Quả n lý nhân sự của trường đại học
- Tài liệu có cấu trúc (thông thường là thừa) Hoá đơn thanh toán và các phiếu xuất nhập của hệ thống kinh doanh .
- Thông tin tu ỳ tiện (theo kiểu may - đo) trả lời nhu cầ u (inquery), loại tài liệu phổ cập, như ng loạ i này không Hồ sơ bệnh án trong các bệnh viện.
định dạng. Trong trường hợp này yêu cầu người dùng phải hiểu đ ược ngôn ngữ thế hệ 4 trong việc hỏi đáp 7.6 Thiết kế tổng thể thực hiện các nhiệm vụ gì ?
(Nếu không phải dùng 1 trung tâm "phiên dịch" làm trung gian cho người dùng và hệ thống) 7.7 Thế nào là hệ thống con ? Có phả i mọi hệ thống đều phải phân định thành các hệ thống con? Cho ví dụ
- Yêu cầ u đồi với tài liệu xu ất phải đủ, chính xác (kiểm tra không nhập nhằng), dễ hiểu, dễ đọc minh hoạ
Có 2 hình thứ c in ra: Khung in sẵ n/ không có khung in sẵ n
- Đầu (Heading)
Trình bày:
- Thân (bao gồm nhữ ng nội dung cơ bả n, gom nhóm có mối liên hệ logic với nhau)
- Cuối
c) Thiết kế các màn hình và đ ơn chọn:
Mục đích sử dụng màn hình là đối thoại: đặc điểm của đối thoại là
- Vào / Ra gầ n nhau
- Thông tin thường tối thiểu (Cần đâu lấy đ ấy, không đưa sẵn)
Yêu cầu thiết kế - Sáng sủa (dễ nhìn, dễ đ ọc)
- Lệnh phải rành mạ ch (muốn gì? Làm gì?)
Hình thứ c đối thoại trên màn hình : Thiết kế màn hình liên quan đến hình thức, định dạng, thiết lập, trình bày
các thông tin trên màn hình. Bước dầ u tiên của thiết kế là phân tích đối thoại giữa người dùng và máy tính. Việc
phân tích này đòi hỏi cần xác định nhóm logíc của đối thoạ i liên quan đến các hành vi đơn giản chẳng hạn như
các yêu cầu người dùng hoặc hiển thị chi tiết về dữ liệu. Các dạng hội thoại thường được đề cập
+ Câu lệnh, câu nhắ c
+ Đơn chọn (Menu) : Ngày nay người ta dùng đơn chọn phân cấ p, nên chú ý lối thoát củ a mỗi cấp. Kết hợp với
đơn chọn là các hộp chiếu sáng để tăng tính hấp dẫn
+ Điền mẫu
+ Sử dụng các biểu tượng (Icon) để tăng tính trự c quan
d) Thiết kế cái vào
1 ) Chọn phương thức thu nhậ p thông tin: - On-line
- Trì hoãn (đưa qua thời gian, cậ p nhậ t sau)
- Từ xa
2) Xác định khuôn mẫu thu nhập thông tin
Mẫu có 2 kiểu - Khung (để đ iền)
- Câu hỏi (câu hỏi đ óng: trả lời xác định trước, câu hỏi mở: gợi ý)
Yêu cầu mẫu - Thuận tiện cho người điều tra
- Thu ận tịện mã hoá
- Thu ận tiện người gõ phím

http://www.ebook.edu.vn
Page 49 of 70 Page 50 of 70
được về tầm quan tr ọng củ a mối nguy hiểm và giúp cho họ quyết đ ịnh được tầm mức kiểm soát cầ n
Chương 8 Thi ết kế các kiểm soát
thự c hiện.
1. Giới thiệu
b) Thiết k ế các kiểm soát cần thiết: Sau khi đã nắm chắ c được mứ c độ thiệt hại phát sinh từ đ iểm hở, nhà thiết
Ở một số giai đ oạ n trong quá trình phát triển của hệ thống bao giờ cũng cần tiến hành các kiểm tra cầ n thiết đ ể
kế phải quyết định các kiểm soát vật lý để ngă n cản hoặ c làm giảm thiểu thiệt hại này.
đảm bảo việc thực hiện đúng đắn cho hệ thống dự định.
c) Phân tích các nguy cơ thất thoát d ữ liệu: bao gồm việc phát hiện các điểm hơ thường là các chỗ vào ra như
Việc kiểm soát hệ thống nhằ m tránh một số nguy cơ:
các file, màn hình, phân tích các đ e dọa từ chỗ hở như: phá hoại, lấy cắp gây sự lãng phí, làm sai lệch thông tin.
• Sai lỗi do đó phải tiến hành kiểm tra các thông tin thu nhậ p.
d) Các mức bảo mậ t:
• Sự cố kỹ thuật do vậy phả i tiến hành bảo vệ (an toàn).
• Bảo mật vậ t lí. Khoá, báo động
• Ý đồ xấu do đ ó phả i tiến hành bảo mật
• Nhận dạng nhân sự
• Rủi ro về môi tr ường: cháy, bão lụt.
• Mật khẩu
Ba khía cạnh cơ bản củ a hệ thống cầ n được bảo vệ bằ ng cách kiểm soát đó là:
• Tạo mật mã: biến đổi dữ liệu từ dạ ng nhận thứ c được sang dạng mã. Phương pháp này tốn kém khó bả o
• Độ chính xác: phải kiểm tra xem các giao tác đang được tiến hành có được thự c hiện chính xác hay
trì như ng phù hợp cho việc truyền dữ liệu và giải mã.
không và các thông tin được giữ trong cơ sở dữ liệu củ a công ty có đúng đắ n không.
• Bảo mật bằ ng gọi lại
• Độ an toàn: có một yêu cầ u bao trùm về việc gìn giữ tài sả n của công ty, để đảm bảo r ằng không xả y ra
e) Phân biệt riêng tư (Privacy)
mất mát dù cố ý hay vô tình, dù do chểnh mảng hay r ủi ro.
Phân biệt quyền truy nhập khác nhau đối với người dùng và cho phép uỷ quyền
• Độ riêng tư: cũng có nhu cầu kiểm tra xem các quyền của cá nhân và công ty khác có được bảo vệ
Biện pháp:
không. Có lẽ khía cạnh quan trọng nhất của vấn đề này là đảm bảo rằ ng hệ thống dự k iến sẽ tuân thủ
- Dùng tên mỗi người làm tiền tố cho mọi đ ối tượng
những hạn chế do Luậ t bảo vệ dữ liệu áp đ ặt.
Cài đặt (Sequel):
2. Nghiên cứu việc kiểm tra các thông tin thu nhập hay xuất ra
2 thủ tụ c : Giao quyền (Grant của Sequel)
• Mục đ ích: bảo đả m tính xác thực củ a thông tin
Rút quyền (Revoke của Sequel)
• Yêu cầu: Mọi thông tin xuất ra hay nhập vàođều phải qua kiểm tra
+ Giao quyền Grant
• Nơi kiểm tra:
Đối tượng: Dữ liệu quyền là + Đọc (Read)
o Nơi thu nhậ p
+ Chèn (Insert)
o Trung tâm máy tính / nơi phân phát
+ Loại bỏ ( Delete)
• Nội dung kiểm tra: phát hiện lỗi và sửa lỗi
+ Điều chỉnh giá tr ị thuộc tính (Update)
• Hình thức kiểm tra: + Thêm thuộc tính (Expand)
o Tay (thủ công): đầ y đủ / không đ ầy đủ + Loại tệp (DROP)
o Máy(tự đ ộng): trực tiếp / gián tiếp, tham khả o các thông tin khác. + Tạo tệp chỉ dẫn (Index)
• Thứ tự kiểm tra: Kiểm tra trực tiếp trước, gián tiếp sau. Chương trình : Quyền là RUN (chạy)
o Trực tiếp: Sự có mặt Dạ ng chung lệnh Grant:
Khuôn dạ ng GRANT ON TO [WITH GRANT OPTION] {được u ỷ
Kiểu quyền cho người khác}
Miền giá trị Để chạy GRANT đưa thêm và CDL các quan hệ
o Gián tiếp: Kiểm tra 1 thông tin khi mà các thông tin dùng cho vi ệc kiểm tra đó đã được kiểm tra. - Quyền: (người cho, người nhận, tên quan hệ, Read, Insert, Delete, Expand, Drop (có/ không), Index, Update,
o Kiểm tra tự động: kiểm tra sự ràng bu ộc toàn vẹn (integrity constrainst) Option (có/ không)).
2. Cách giai đoạn tiếp cận kỹ t huật phân tích các kiểm soát Cậ p nhật: Tất cả , Không có gì, 1 số
a) Xác định các đ iể m hở trong hệ thống: Điểm hở là điểm mà tại đ ó thông tin củ a hệ thống có tiềm năng bị + Cập nhật (...) các thuộc tính đựơc cậ p nhậ t
thâm nhậ p bởi nhữ ng người trong hoặc ngoài tổ chứ c. Điều này không chỉ nói tới dạng đầu ra, như đơn mua + Chạy chương trình: Quyền thực hiện chơng trình
hàng và bảng kiểm kê, mà còn nói tới mọi thông tin bên trong công ty mà nếu bị dùng sai thì có thể làm cho tài Ví dụ: Sử dụng
sả n công ty chịu rủi ro. Mỗi khi xác định được điểm hở, cần phải tiến hành ba hoạt động sau: Giáp: Grant read insert on hoá đơn to ất with Grant option
• Xác định kiểu đe doạ từ chỗ hở: Các kiểu đe doạ này bao gồm từ các hành động cố ý như ăn cắ p hoặc Ất: Grant read insert on hoá đơn to Bính with Grant option
phá hoại cho tới các nguy cơ mấ t mát tài sản và ảnh hưởng tới công việc kinh doanh của công ty, chẳng Giáp: Grant read insert on hoá đơn toBính with Grant option
hạn như các quyết định quả n lý tồi. Mức độ đe doạ dưới dạ ng thiệt hạ i tiềm năng cho hệ thống cũ ng cần
Read*, Insert*
được xem xét và tính toán. Ất
Giáp
Ất
G iáp
• Đánh giá các đe doạ: mứ c độ cao, thấp, vừa. Đe doạ cao là mối đ e doạ lớn đến hệ thống có thể bị tổn
thất nghiêm tr ọng nếu tình huống xấ u nhấ t xu ất hiện. Vừa có nghĩa là hệ thống có thể bị thất thoát trong
những trường hợp tồi nhấ t như ng vẫ n có thể chịu đựng đ ược mà không ảnh hưởng đ ến nền kinh doanh. Read, insert
Thấp có nghĩa là hệ thống có thể dự kiến được mối đe doạ và chu ẩn bị đ ược một số phương tiện để ngă n
cản. Read*
• Xác định tình trạng đe doạ: Sau khi thấ y được các mối đ e doạ có thể có, nhóm kiểm tra có thể kiểm tra Bính
Read*
Bính
lạ i xem những đe doạ này xu ất hiện như thế nào. Điều này bao gồm việc dùng mô hình DFD, theo dõi
ngược lại đ iểm hở, rà soát các hoàn cả nh được biểu thị bởi từ ng quá trình và lỗi tiềm nă ng từ mỗi dòng Dấu * là quyền trao trự c tiếp cho người sử dụng.
dữ liệu. Giai đ oạn này của việc phân tích điều khiển đ òi hỏi rấ t nhiều trí tưởng tượng và óc sáng tạ o. - Rút quyền REVOKE
Một khía cạ nh khác cần kiểm tra tại giai đoạn này này là xác suấ t xuất hiện tình huống đe doạ. Thông REVOKE on < đối tượng> from
tin này, cùng với các chi tiết tr ước đ ây về “mức độ đe doạ” có thể làm cho nhóm kiểm soát quyết đ ịnh Ví dụ : Giáp: Revoke Read, insert on hoa don from ất


http://www.ebook.edu.vn
Page 51 of 70 Page 52 of 70
Các trường hợp khúc mắ c Chương 9 Thiết kế các file dữ li ệu
AT
+ N nguồn cho1 quyền 1. Đại cương
a) Thiết kế d ữ liệu phải dựa vào:
GIAP - Biểu đồ cấu trúc dữ liệu BCD như mô hình quan hệ, mô hình thự c thể liên kết E-R, dựa vào biểu đồ luồng dữ
DINH
liệu trong đó đặc biệt lưu tâm đến kho dữ liệu.
+Uỷ quyền vòng quanh - H ệ Quả n trị CSDL có sẵn.
GIÁP → ẤT → ĐINH → BÍNH - Khi thiết kế các file phả i đả m bảo sao cho các dữ liệu phải đủ, không trùng lặp, việc truy cậ p đ ến các file dữ
BINH liệu phải thuậ n tiện, tốc độ nhanh.
⇒ Cầ n thêm thông tin
- Mỗi hệ quả n trị CSDL có ngôn ngữ đ ịnh nghĩa dữ liệu.
Gán cho mỗi quyền 1 "con dấu" (thự c chất giá trị ghi nhậ n thời điểm)
* Quy tắc rút quyền: N ếu A bị rút quyền mà A đã uỷ quyền cho B thì B cũng bị rút quyền nếu B không bị nơi
khác uỷ quyền vào thời đ iểm trước khiA nhận đ ược quyền đ ó. N gười dùng HỆ QTCSDL
F ile
Ví dụ:
a) Ất rút quyền Đinh ở thời đ iểm 20 MAU Tuy nhiên khi cài đặt cụ thể để cho tiện lợi ta có thể bổ xung thêm một số thuộc tính tính toán, lặp lại một số
AT
10 20 thuộc tính, ghép một số thự c thể thành một file....
50
b) File : Người dùng phải biết tổ chứ c file của mình, đương nhiên có hệ qu ản lí file dầu sao nó cũng chỉ giúp
qu ản lí file chứ không phải quản lí CSDL.
GIAP DINH
Fox, Access cũ ng mới chỉ là hệ quản lí file.
Nếu có máy tính lí tưởng (tốc độ I /O tương ứ ng CPU) thì không cần phải làm gì chỉ từ thự c thể và liên k ết thì ta
15
BINH 40 KY xây dựng được các các file. Vấ n đ ề làm sao đ ể truy nhậ p các file nhanh và thuận tiện.
b) Loại: Giáp - Ất
Chú ý: Nhiều khi đ ã đạ t chu ẩn 3 NF như ng để nhanh tiện, 3 NF có thể bị phá vỡ.
Ất - Bính
2. Phương pháp thực hiện:
Bính - Ất
Từ BCD đ ể nhanh và thuận tiện ta thự c hiện các bước sau:
20
Ất - Đinh
- Thêm những thu ộc tính tình huống (thường là tính toán đ ược, tích luỹ được)
- Gộp các kiểu thự c thể, kiểu liên kết vào 1 file (có thể dư thừa) để bớt số lần truy nhập, tách thành nhiều file vì
10 không phải bao giờ cũng dùng hết các kiểu thự c thể liên k ết trong một lần truy nhậ p.
GIAP AT B INH
- Lặp lại các thuộc tính từ file khác.
- Lập các file chỉ dẫ n (Index) để truy nhập được nhanh, că n cứ vào xử lí (nhu cầu sử dụ ng).
3. Đưa thêm các thuộc tính tình huố ng và lặp lại các thuộc tính từ các file khác:
40
Các thu ộc tính tình huống là các thuộc tính tính toán hoặc các thuộc tính tích luỹ:
30
Ví dụ:
4. Nghiên cứu khả năng gián đoạn chương trình và s ự phục hồi DINH Thành tiền = số lượng * đơn giá
Tính toán:
a) Các gián đoạn chương trình
Tổng hợp đồng = ∑ thành tiền
• Nguyên nhân:
Tích lũy Số dư tiết kiện, lượng hàng tồn kho, số dư tài khoản.
o Hỏng phầ n cứng
Nhiều khi ta phải lậ p những file tình huống và chấ p nhậ n sự dư thừa.
o Giá mang tệp có sự cố
4. Nghiên cứu các đường truy nhập
o Môi trường
Mỗi một đường truy cậ p gắ n liền với chức năng xử lí khi ta thấ y có yêu cầ u truy nhập bằng cách xem lại BLD.
o Hệ điều hành
Mỗi xử lí ta cầ n chỉ ra các vấ n đề sau:
o Nhầ m lẫn thao tác
- Truy nhập file nào ?
o Lậ p trình sai
- Sử dụng khoá nào ?
• Hậu quả:
- Tra cứu gì ?
o Mất thì giờ
- Tầ n số truy nhậ p
o Mất thông tin
Nếu khoá và tra cứu trong cùng 1 file ta nói là truy cậ p trự c tiếp. Còn các trường hợp còn lạ i nói chung là truy
b) Cài đặ t các thủ tụ c phục hồi
cậ p gián tiếp. Việc truy cậ p gián tiếp thông quan đường truy cậ p bằng cách lầ n theo các mối liên kết 1 – nhiều.
• Chương trình theo mẻ ( mất thời gian)
Ví dụ:
• Chương trình trự c tuyến (on – line): phục hồi
Xét xử lí: Kiểm tra sử dụng vật tư ta có một phầ n biểu đồ BLD sau đây:
Nguyên tắc phục hồi sao lụ c:
Khi chạ y chương trình, bình thường định kì ghi lạ i 1 số biến mốc quan tr ọng.
Phân xưởng Sử dụng Vật tư
Khi gián đoán: Khởi động lại chương trình với giá tr ị biến mốc gần nhất.

Bài t ập chương 8
8.1 Nêu vai trò củ a việc thiết k ế kiểm soát và bảo mật hệ thống
8.2 Có thể tránh được mọi sai sót và rủi ro đối với hệ thống không? Cách lựa chọn và khắ c phụ c như thế nào?
8.3 Hãy chỉ ra nguyên tắ c phân quyền và u ỷ quyền đối với hệ thống Kiểm tra sử
dụng vật tư
Tương ứ ng ta có biểu đồ BCD sau:

http://www.ebook.edu.vn
Page 53 of 70 Page 54 of 70
5. Chuyển mô hình thực thể liên kết (hay mô hình quan hệ ) t hành các file
Sử dụ ng
Nguyên tắc: nói chung mỗi 1 kiểu thự c thể liên k ết thành 1 file (thêm thuộc tính tình hu ống)
Khi cần có thể phân rã một thực thể thành nhữ ng cụm thự c thể hay dùng đối với nhữ ng quan hệ quá lớn. Ngược
Klượng 5000
Phân xưởng lại có thể gộp các thực thể thành 1 file để hạ n chế nhữ ng đ ường truy cập gián tiếp, tất nhiên nó sẽ phá vỡ tính
Vật tư chất chuẩn hoá.
S H-PX
Klượng 100 Các phương pháp truy cập để lậ p file chỉ dẫn:
M ã vật tư
Klượng 2000 - Tuần tự
N gày
- Tr ực tiếp
S ố lượng SD
SH-PX
Mã vật tư
Số lượng PX - Hàm tr ực tiếp: mỗi giá trị củ a khoá là 1 địa chỉ ( hay gây sự đụ ng độ và giải quyết bằng móc nối ra vùng tràn).
Đơn giá
Ngày lập PX - Tuần tự có chỉ dẫn: các phần tử đặt liên tiếp trên giá mang, có tổ chức, các chỉ dẫn đ ể truy nhập trự c tiếp.
Nơi SX
- Móc nối (pointer): ở bộ nhớ ngoài, các phầ n tử k ế tiếp không liền kề, các phầ n tử tự do cũng móc nối với
Hãy xét 3 yêu cầu truy nhậ p tương ứ ng các câu hỏi sau: nhau.
A - Tìm Soluong PX của 1 PX cho biết SH-PX Hạ n chế: phả i tổ chức trên nền có sẵ n do đ ó chỉ đối chiếu tương đối....
B - Tìm đ ơn giá củ a các vật tư sử dụng bởi 1 PX biết SH-PX. Lậ p file chỉ dẫn căn cứ vào đường truy nhập:
C - Tìm soluong PX của các PX đ ã sử dụng 1 vậ t tư đã cho, biết mã VT Trở lại ví dụ trên
Mỗi yêu cầu tạo ra 1 đ ường truy nhập gồm nhiều bước:
Tệp chỉ dẫn Tệp chỉ dẫ n
Tệp
- File gì?
Khoá:
- Tên đường truy nhậ p (A, B, C) Phân xưởng Khoá:
Sử dụ ng
SH-PX
- Bước số mấy? SH-PX
- Tra cứu gì?
- T ầ n số
Tệp chỉ dẫn T ệp vật tư
Yêu cầu A: Tệp chỉ dẫn
Khoá:
Thực hiện 1 bước: A/1 truy nhập vào file “Phân xưởng” Mã VT
Mã VT
Khoá: SH - PX
Tra cứu soluong PX Chú ý: Các đường truy nhập thông qua
Tần số : (50 lần / ngày) - Thu ộc tính k ết nối
Yêu cầu B thực hiện 2 bước: - Mối liên kết 1 - nhiều không được vật lí hoá trong mô hình quan hệ (chỉ trong mô hình mạ ng và phân cấp).
* B/1
Truy cậ p từ file “sử dụng” Bài t ập chương 9
Với khoá SH-PX 9.1 Khi thiết k ế các file dữ liệu ta dựa vào biểu đồ nào. Các că n cứ nào cho ta xác đ ịnh các thuộc tính của file:
Tra cứu mã VT Tên file, Tên thuộc tính, các khoá và thuộc tính k ết nối..
Tần số 1 50 lần/ ngày, mỗi lần 50 bản ghi (5000/100, trung bình một phân xưởng sử dụ ng 50 lần) 9.2 Thiết kế các file trên hệ quản trị cơ sở dữ liệu như FOX, ACCESS có phải là thiết k ế mô hình thực thể liên
kết E-R không? Tạ i sao.
* B/2
Truy cậ p từ file “Vật tư” 9.3 Các đ ường truy cậ p vào file dựa vào liên kết nào của mô hình thự c thể liên kết E-R?
9.4 Tạ i sao khi thiết kế các file đ ôi khi người ta phá vỡ chuẩn hoá 3NF? Điều đó có gây nên những lỗi cấm
Khoá: mã VT
Tra cứu: đơn giá không? Cho ví dụ minh hoạ.
Tần số 7 500 lầ n/ ngày = (1500 × 50) 9.5 Mụ c đích của file chỉ dẫn đ ể làm gì? Các k ỹ thu ật xây dựng file chỉ dẫn. Khi xây dự ng các file chỉ dẫn ta
chịu thêm chi phí gì (những nhược điểm của nó)
Yêu cầu C
9.6 Thiết kế file dữ liệu và lựa chọn phần mềm là nhiệm vụ củ a người phân tích thiết kế hay người lậ p trình
* C/1
9.7 Thiết kế các file dữ liệu cho hệ thống:
Truy cậ p file “sử dụng”
Hệ thống tuyển sinh
-
Khoá: mã VT
Hệ thống quản lý học tập
-
Tra cứu SH-PX
Hệ thống quản lý thư viện
-
Tần suất 20 lần/ ngày, mỗi lầ n 2,5 bản ghi (=5000/2000).
Hệ thống kinh doanh các thiết bị máy tính
-
* Cơ / 2
Hệ thống quản lý khách sạ n
-
Truy cậ p từ file “Phân xưởng”
Hệ thống quản lý xe máy (có lưu lạ i chủ cũ sử dụng)
-
Khoá: SH-PX
Tra cứu số lượng PX C1
Tần số 5 0 lần / ngày (=2,5 × 20) B1
Sử dụ ng B2

Klượng 5000
Phân xưởng
Vật tư
A1
Klượng 100
Klượng 2000
C/2
http://www.ebook.edu.vn
Page 55 of 70 Page 56 of 70
o Mức trên viết CT bằng ngôn ngữ LT có xen thêm ngôn ngữ pseudo code thay cho lời gọi sau
Chương 10. Thiết kế chương trình
này như vậy tại 1 bước nào đ ó mỗi module đ ã được đặ c tả
10. 1. Đại cương thiết kế c hương trình
o LT có cấ u trúc mịn dần như ng không có chỉ r õ phương pháp mịn dầ n như thế nào không có
Thiết kế chi tiết bao gồm các thiết kế:
hướng dẫn từ mức này xuống mứ c kia
• Giao diện
• Thiết kế có cấu trúc
• Kiểm soát
o Phân định module về logic
• Tệp (File CSDL)
o Chỉ mô tả như nhữ ng cái vào/ ra, chuyển giao dữ liệu, chứ nội dung chưa được đề cập.
• Chương trình.
o Có hướng dẫn các phân định và ý nghĩa củ a module
Như vây thiết kế các module chương trình là công việc chính của giai đoạ n thiết kế chi tiết. Trong kết quả phân
10.3. Công cụ để diễn t ả cấu trúc CT ( lược đồ cấu trúc (LCT))
tích thiết kế đến nay ta đã có BLD củ a hệ thống diễn tả các chứ c nă ng xử lý logic của hệ thống đồng thời liên
Lược đ ồ cấu trúc: LCT là công cụ ở đây hết sức thô sơ, thô sơ một cách cố tình để tr ừu tượng hoá nhằm đ i tới
quan thừa kế dữ liệu, còn chương trình là liên quan điều khiển và cơ sở dữ liệu đã thiết kế ở chương 9
cách viết các chương trình cụ thể và chi tiết hơn
Ngoài ra các chức năng khác như sau cũng cần được thể hiện trong thiết kế chương trình :
a) Biểu diễn các module
• Chức năng đối thoại
Module đ ược biểu diễn bằng hình chữ nhật trên có ghi nhãn là tên module.
• Chức năng xử lí lỗi
• Chức năng xử lí vào/ ra Tên module
• Chức năng tra cứu CSDL
• Chức năng Module đ iều hành Trường hợp đặ c biệt module đ ã có sẵ n ta biểu diễn thêm hai đường gạch dọc
Chú ý rằ ng trong phầ n này ta quan tâm thiết kế nội dung chương trình mà không phải viết chương trình cụ thể,
Tên module có
vì nhiệm vụ này là của người lập trình viên. Người lập trình khi có bản thiết kế trong tay không nhất thiết phải
sẵ n
hiểu cả hệ thống mà lậ p trình theo thiết k ế được giao.
Nội dung chủ yếu trong giai đ oạ n này b) Kết nố i các module: thể h iện bằng lời gọ i.
Xác định cấu trúc tổng quát A gọi B, B thực hiện chức nă ng của mình r ồi quay về A ở vị trí sau lời gọi
- Phân định các Module CT
Tổng A
- Xác định mối liên quan giữa các Module đó (thông qua lời gọi và các thông tin trao đổi)
quát
- Đặ c tả các Module chương trình
- G ộp các Module thành chương trình (Module tả i)
- Thiết k ế các mẫ u thử (Test CT, chú ý đ ây cũng là việc của người thiết k ế)
10. 2. Module chương trình B
a) Định ngh ĩa: Module chương trình có thể hiểu dưới các dạng sau
• 1 Chương trình con: Dạ ng Procedure, Function, Subroutine.... c) Thông tin chuyển giao giữa các module:
• 1 cụm lệnh trong chương trình Các module chuyển giao bằ ng dữ liệu và đ iều khiển
• hoặc những ngôn ngữ dùng có UNIT, CLASS, OBJECT... Dữ liệu chuyển giao kí hiệu mũi tên và đầu tròn r ỗng
b) Các thuộc tính của mô đun chương trình
Tóm lại 1 Module CT có 4 thu ộc tính cơ bả n
• Vào: thông tin từ CT gọi nó, Ra: Thông tin trả lại cho CT gọi nó Nhữ ng thông tin điều khiển (không là đối tượng để xử lí mà dùng trong quá trình đ iều khiển thự c hiện chương
Đặc trưng ngoài
• Chứ c năng hàm biến đổi từ vào → ra trình). Kí hiệu mũi tên và đ ầu tròn đặc
• Cơ chế: Phương thứ c cụ thể để thự c hiện chức nă ng trên
Đặc trưng trong
• Dữ liệu cục bộ: chỗ nào nhớ, dữ liệu dùng riêng cho nó
d) Một số trường h ợp đặc biệt
Đặ c trư ng ngoài: Các module gọi nó chỉ cầ n biết đặ c trư ng này
A
• Chọn lựa gọi B hay C
Đặ c trư ng trong thể hiện sự cài đặt củ a Module
Việc tách đặc trưng ngoài và đặc trưng trong đ ể tạo độc lập cho sự cài đặ t module đối với nhữ ng module ngoài
nó.
Các loạ i chương trình thường có trong hệ thống qu ản lý:
B B
• Chương trình đơn chọn (menu program)
• Chương trình nhập dữ liệu (data entry program) A
• Lặp A gọi B nhiều lần
• Chương trình biên tập kiểm tra dữ liệu vào (edit program)
• Chương trình cậ p nhậ t dữ liệu (update program)
• Chương trình hiển thị, tra cứu (display or inquiry program)
• Chương trình tính toán (compute program) B B
• Chương trình in (print program)
VD
c) Thiết kế cấu trúc
Note: Nhận xét nhữ ng module phía trên là module điều khiển càng đ i xuống tính chất điều khiển giảm dầ n, thực
Thiết k ế có cấ u trúc là phương pháp tiến hành phân định các module theo kiểu trên xuống và làm mịn dần từng
sự xử lí, biến đ ổi thông tin
bước
Nếu triển khai thêm xuống dưới sẽ xu ất hiện nhữ ng module chỉ chế biến thông tin và được gọi từ nhiều module
Phản ánh LT có cấ u trúc, tuy nhiên có khác biệt
khác.
• Trong LT có cấu trúc
Dưới "chụm vào"
Trên "xoè ra "
o Hướng tới các phương tiện của ngôn ngữ lập trình (mịn dầ n)
http://www.ebook.edu.vn
Page 57 of 70 Page 58 of 70
10. 4. Chất lượng của lược đồ cấu trúc (LCT)
Một trong những nguyên tắ c cơ bản của việc thiết k ế có cấu trúc đ ó là từ một hệ thống lớn ta phân thành từ ng gọi D qua
gọi B
module có thể quả n lý đ ược. Tuy nhiên, điều quan tr ọng là việc chia nhỏ nên thực hiện theo một cách mà các X và Y
module đó thể đ ộc lậ p với nhau. Các module này có thể tương tác (coupling) hoặc là cố kết (cohention) với C
A
nhau.
a) Có s ự tương tác (coupling):
Một trong nhữ ng phạm vi chất lượng thiết k ế là sự tương tác, tức là độ phụ thuộc giữa hai module với nhau.
Đối tượng cần bàn ở đây là sự tương tác tối thiểu, tức là tạ o một module có đ ộ đ ộc lậ p có thể đ ược. Độ tương Y
X
tác thấp giữa các module chỉ ra sự phân chia tốt trong hệ thống và các module có thể đạt được theo một trong
ba cách sau:
• Lược bỏ những mối quan hệ không cầ n thiết.
• Giảm bớt các quan hệ cầ n thiết. D
B
• Bỏ đi các mối quan hệ lỏng lẻo cần thiết.
Một trong nhữ ng điểm chủ yếu của sự tương tác thấp là không có một module nào lo lắng về bất kỳ những chi
C và D tương tác bình
A và B tương tác bình
tiết cấu tạo bên trong nó. Các module này có các chức năng và sự xuất hiện các chứ c năng bên trong nó như
thường với nhau, như ng giao
một hộp đen. thường với nhau, như ng
tiếp với nhau qua dữ liệu X
không có gì để nói về nhau
Tóm lại, sự tương tác thấ p nhằ m thoã mãn:
và Y
• Sự kết nối giữa hai module càng ít càng tốt, sự thay đổi trong module này không làm ả nh hưởng đ ến
module kia. Hình 4.3
Hình 4.2
• Khi ta mu ốn thay đổi trong một module thì đ ộ r ủi ro rấ t thấp cần thay đổi module khác
Trong hình 4.2 A gọi tới B như ng A không truy cậ p bất cứ điều gì tới B và cũ ng không nhận được bấ t cứ đ iều
• Khi quản lý một module, ta không lo lắ ng về những chi tiết bên trong của các module khác; tức là ta
gì từ B. Trường hợp này đ ánh dấ u một điểm zero trong tỉ lệ tương tác. A gọi là tương tác tới B khi và chỉ k hi A
muốn hệ thống đ ơn giản và dễ hiểu.
là tên củ a B. (Như thế k hi B thay đổi tên thì A cũng sẽ thay đổi theo).
10.4.1. Các nguyên t ắc của s ự t ương tác:
10.4.2.1 Tương tác dữ liệu:
Thực ra, làm giả m sự tương tác giữa các module tức là làm giả m đi sự k ết nối phứ c tạ p giữa hai module. Các
Trong hình 4.3 biểu diễn rộng hơn trong số các kiểu tương tác thông thường, tương tác bình thường cũng có
nguyên tắ c làm giảm sự tương tác gồm:
nghĩa là tương tác dữ liệu.
• Tạo các sự k ết nối hẹp.
Hai module gọi là tương tác dữ liệu nếu chúng giao tiếp với nhau bằng các tham số, mỗi tham số là một thầ n
• Tạo các sự k ết nối tr ực tiếp.
phần trong mẫ u dữ liệu. Dữ liệu tương tác là sự giao tiếp cầ n thiết giữa nhiều module. Khi nhiều module phải
• Tạo các sự k ết nối cụ c bộ ( toàn cục). giao tiếp với nhau thì dữ liệu tướng tác là không thể tránh khỏi và dữ liệu tương tác này không làm ả nh hưởng
• Tạo các sự k ết nối rõ ràng. đến các module miễn là nó đ ược tối thiểu hoá. Ví dụ trong hình 4.4 có tấ t cả bốn mẩu dữ liệu tương tác gồm:
• Tạo các sự k ết nối mềm dẻo. tổng số mượn, lãi suất, thời hạ n, lãi suất hoàn tr ả là cầ n thiết.
10.4.1.1 Các s ự kết nố i hẹp: Mặc khác, các thông tin phụ tr ội khác không cần như thêm vào tên khách hàng làm tăng thêm độ phứ c tạp,
Độ r ộng về sự giao tiếp giữa hai module là có nhiều k ết nối cầ n thiết liên kết giữa hai module đó. Một sự tương không dùng để tính toán tiền trả nợ.
tác hẹp giữa hai module (là tốt) là một cặp module chỉ có một mẩ u dữ liệu kết nối với nhau duy nhất, và ngược Tương tác dữ liệu thể hiện tấ t cả các đặc tính tốt nhất củ a sự tương tác. N ếu như ta giao tiếp giữa các module
lại nếu có nhiều mẩu dữ liệu kết nối giữa hai module là không tốt. với nhau bằng những thông tin không cầ n thiết thì sự tương tác trở nên bị thu hẹp lạ i. T ương tác dữ liệu cũng có
10.4.1.2 Các kết nố i trực tiếp: nghĩa là khi giao tiếp giữa hai module muốn gì được nấ y, hay là các đoạn mã tương tác dữ liệu được thể hiện
Giao tiếp giữa hai module là dễ nhận biết nhau nếu một người nào đó lĩnh hội được nó một cách trực tiếp mà dọc theo các module gọi và các module chu ẩn bị các module khác. Có hai điều cầ n chú ý trong sự tương tác dữ
không cần tham khảo tới nhiều mẫu dữ liệu khác nhau khi tiếp xúc lần đầu. Chẳng hạ n, một module nói về chi liệu:
tiết của một khách hàng nào đó (module CUST-DETAILS) mà đã đ ược đ ịnh nghĩa gồm có các mẫ u tin như: tên • Với sự tương tác dữ liệu càng nhỏ là càng tốt.
khách hang (CUST-NAME), số tài khoản khách hàng (CUST-ACCOUNT-NUM), địa chỉ k hách hang (CUST-
• Với sự tương tác dữ liệu, trong trường hợp có nhiều module tương tác với nhau, thì những thông tin dư
ADDRESS), bản thanh toán của khách hang (CUST-BALANCE), thì lúc đó ta dễ nhận biết chúng giao tiếp với
thừa (không rõ ràng) sẽ làm cho sự tương tác kém hiệu quả và vi phạ m đến năm nguyên lý của sự tướng
thế giới bên ngoài bằng mẫu dữ liệu nào, có lẽ qua tr ường mẫu tin địa chỉ k hách hang (CUST-ADDRESS).
ở trên.
10.4.1.3. Các sự g iao tiếp cục bộ (toàn cục): Chơi cờ
Định giá tài sản
Nếu tất cả các thông tin giao tiếp yêu cầu đ ể hiểu biết về kết nối giữa hai module là chính nó, thì các thông tin
đó được gọi là cục bộ. Thông tin về kết nối toàn cụ c là xuyên qua toàn mẫu dữ liệu. Trong tr ường hợp này,
k ỳ hạ n
thông tin về sự kết nối giữa hai module có lẽ có hàng trăm cách móc nối khác nhau từ module đang gọi hoặ c là
module đ ã gọi. nước đi
10.4.1.4. Các sự k ết nố i rõ ràng:
ván cờ mới
Sự kết nối rõ ràng giữa hai module là không có lặp lại, không có tính tối nghĩa. Ví dụ có một đ oạn trình hợp lãi su ất lãi suấ t hoàn trả
ngữ module A giao tiếp với module B bằng cách thay đổi nội dung trong đ oạn trình B, điều này là sự k ết nối
ván mới
không rõ ràng.
10.4.1.5. Sự kết nối m ềm dẻo: tổng số đã mượn
Bả o trì một hệ thống máy tính thường bao gồm nhiều thay đổi các liên k ết trong số các module trong hệ thống.
10.4.2. Tương tác bình thường:
Tính toán tiền tr ả vay mượn
Hai module, A và B gọi là tương tác bình thường nếu như A gọi được B và ngược lại B gọi được A, tấ t cả các
Thực hiện nước đi
thông tin truy cậ p giữa chúng là các tham số được gọi chính chúng. Tất nhiên, đ ây là mô tả trường hợp bình
thường trong sơ đ ồ có cấu trúc. Hình vẽ 4.2 và 4.3 mô tả tr ường hợp trên
Hình 4.4 Hình 4.6
http://www.ebook.edu.vn
Page 59 of 70 Page 60 of 70

10.4.2.2 Tương tác stamp Tương tác đ iều khiển: module này chuyển 1 thông tin đ iều khiển cho 1 module khác (cờ,...) (khi gửi 1
Thông thường hai module đ ược gọi là tương tác stamp nếu như module này tương tác tới module khác nhờ vào thông tin đ iều khiển thực chất module cấp trên đã biết nội dung module cấp dưới như vậ y vi phạm
dữ liệu k ết nối chung, dữ liệu kết nối này có đ ầy đủ tính cấu trúc bên trong nó. Ví dụ: dữ liệu kết nối có thể là nguyên tắc "che dấu").
một bản ghi khách hàng gồm có nhiều tr ường, hình 4.5 thể hiện sự tương tác stamp. Cần thì vẫn phải dùng tương tác này song tránh nếu được (hạ n chế)
Trong hình 4.6 có ba tham số: bàn cờ, nước đi, ván cờ mới, tấ t cả có đầ y đủ tính cấ u trúc, vì vậy mà chúng thể • Tương tác dữ liệu: trao đ ổi dữ liệu cho nhau (cần chấp nhận tương tác này, tuy nhiên chọn tương tác này
hiện sự tương tác stamp. Sự tương tác này sảy ra khi các dữ liệu cấ u trúc lựa chọn có tính chấ t tự nhiên tới các càng đ ơn giả n càng tốt: chuyển giao qua các phân tích chuẩ n: danh sách tham số)
ứng dụng và không có tính mật mờ. Chúng ta hãy xem kỹ trong hình 4.6, sự định nghĩa nước đi của bàn cờ. Khi b) Sự cố kết (Cohension): Sự gắ n bó nề mặ t logic các phần trong nội bộ của module càng cao càng tốt (mỗi
có sự tương tác quanh co thì nên dùng sự tương tác dữ liệu hơn là dùng sự tương tác stamp. module chỉ nên giao 1 nhiệm vụ logic, đừng giao nhữ ng nhiện vụ phân tán)
Mặc dù, khi người thiết kế giỏi cảm thấ y dùng sự tương tác stamp là tốt như ng người thiết k ế kém hơn thì cho c) Hình thái: Trên xoè ra → thể hiện sự tinh tế
rằng tương tác stamp là không tốt cho cùng một hệ thống, cho nên có hai khuyến nghị đ ược nên ra đây cho
Dưới chụm vào → thể hiện?
tương tác stamp:
Ở mỗi điểm xoè ra chỉ nên 7 ± 2
• Đừng bao giờ truy cậ p tới các bản ghi có quá nhiều tr ường, tới các module mà chỉ một hoặ c hai trường
Có 2 khái niệm
trong số các trường đ ó. Xem hình 4.7 mô tả ba module tương tác stamp với nhau
• Phạm vi đ iều kiện của 1 module: Module đó cùng với những module phụ thuộc (được gọi)
Bả n ghi khách hàng thuê gồm có các trường: số bằ ng, thành phần câu lạc bộ Marlin, số câu lạc bộ Marlin, xăng
• Phạm vi ả nh hưởng củ a 1 quyết định: là mọi module (chịu ảnh hưởng) có sử dụng kết quả quyết định đó
đã sử dụ ng, loại xe hơi, số dặm đi đ ược, số ngày sử dụng... Mặc dù, module tính toán tiền thuê cơ sở chỉ yêu
cầ u ba trường cuối cùng, khi nó nhận tất cả các thông tin về k hách hàng thuê. Bất kỳ sự thay đổi nào trong bản VD
- Chẳng hạn trong B có 1 quyết định q1 mà kết quả của nó AEF thì phạm vi ảnh hưởng:
ghi về khách hàng thuê, hoặ c là khuôn mẫ u hoặc là cấu trúc bản ghi, sẽ làm ảnh hưởng tới tất cả các module
tham tr ỏ tới nó, ngay cả các module không tham tr ỏ tới các trường thay đ ổi. AEF
Phạm vi điều kiển của A là A, B, C
Như ví dụ đơn giản trên nhìn vào hình vẽ 4.7 khi mà trường số câu lạc bộ Marlin thay đổi về khuôn dạng, thì cả
• Một thiết kế tốt thì:
hai module tính toán tiền thuê cơ sở, module tính toán tiền phải trả cho loại ga sẽ phải thay đổi theo, hoặ c là tối
o Phạm vi ảnh hưởng nằ m trong phạ m vi điều khiển
thiểu biên dịch lại mặ c dù các module đó không tham trỏ tới các thành phầ n của câu lạc Merlin.
• Nếu như ta mu ốn gói dữ liệu thành bó thì dùng sự tương tác stamp rất có hiệu quả . o Các quyết định có miền ảnh hưởng càng bé càng tốt
10.5. Cách thức chuyển BLD thành LCT:
10.4.2.3 Tương tác điề u khiển
Thực chất chuyển BLD của hệ thống con thành BLD công đoạ n (Job) ở mứ c bé nhất
Hai module đ ược gọi là tương tác đ iều khiển, nếu như module này truy cậ p tới module kia thông một mả nh
Có 2 phương thứ c định hướng cho việc chuyển BLD thành LCT
thông tin kết nối và mả nh thông tin k ết nối đó lại tham gia vào sự điểu khiển logic của một module khác nữa.
• Phương thứ c theo biến đổi (Transform analysis)
Hình 4.2.3 thể hiện hai module tương tác điều khiển với nhau.
• Phương thứ c theo thao tác (Transaction analysis)
Lấy các bản ghi khách Hai phương thứ c này không đối lậ p và có thể kết hợp với nhau
hàng Ở đ ây chúng ta chỉ đưa ra nhữ ng gợi ý , định hướng cho nhà phân tích thiết k ế
a) Phương thức theo biến đổi: Dựa theo sự phát hiện trung tâm biến đổi thông tin chủ (tính toán, k ết xuất)
Trung tâm như vậ y: có tính chất
nhữ ng gì bản ghi bản ghi • Các phần còn lại: sẽ bị cắt rời không còn liên kết được với nhau sau khi ta cắ t đ i trung tâm biến đổi nếu
làm cờ chủ chuyển đi "xách" trung tâm biến đổi lên sẽ k éo theo phần còn lại
dự ng lên
• Thượng lưu: lu ồng thông tin vào
Điều khiển vào/ra hệ • Hạ lưu: lu ồng thông tin ra
thống Có 5 bước thực hiện
(1) Dõi theo luồng dữ liệu vào (thượng lưu) vượt qua các chứ c năng biến đ ổi thông tin sơ bộ cho đ ến khi dữ
Hình 4.2.3 Hai module tương tác điều khiển
liệu được biến đổi trừu tượng nhất hoặc đ ến lúc không xem nó là dữ liệu vào được nữa thì chúng ta ngắ t (đánh
Giá trị làm cho cờ dựng lên để chỉ ra rằng hệ thống đang được điều khiển đ ọc các bản ghi vào ra. Chẳ ng hạn dấ u) luồng vào từ vị trí đ ó
khi cờ có giá trị bằ ng 1 có nghĩa là lấy bản ghi chủ kế tiếp, khi cờ bằ ng 2 thự c hiện việc duy chuyển bả n ghi kế (2) Xác định nguồn dữ liệu ra, đ i ngược dòng vượt qua các chức năng chế biến dạng thông tin cho đ ến khi
tiếp, khi cờ bằ ng 3 thự c hiện cả hai bước trên, khi giá trị bằ ng 4 có nghĩa là điều khiển hệ thống in các header... không xem đ ược đ ó là dữ liệu ra, thì dừng lại và đánh dấu...
Trong hình 4.2.3, module lấ y các bản ghi khách hàng quyết định một các rõ ràng đ ến các thành phầ n điều khiển (3) Căn cứ vào các điểm đánh dấu khoanh vùng để cô lập trung tâm biến đổi
vào ra của hệ thống. Để mà một module gọi thực hiện một quyết định thì nó phả i tính logic của module bị gọi Ví dụ :
tổ chứ c như thế nào. Chẳng hạn, để chọn đúng giá tr ị dựng cờ, thì module lấy các bản ghi khách hàng phải biết x1 x2 x3
tính logic của hệ thống đ iều khiển vào ra. Khi hệ thống có nhiều module tương tác với nhau thì sự tương tác Nguồn 1 A B C x4
điều khiển không con thích hợp nữa, vì nó thường chỉ r a sự hiện diện của các module khác làm quan hệ trong H
Q1 Q3
hệ thống trở nên r ối rắm và khó khăn cho việc thiết k ế hệ thống. S1
10.4.3 Tương tác chung (common coupling) G J K
Hai module được gọi là tương tác chung nếu chúng đ ều tham tr ỏ đến vùng dữ liệu toàn cụ c giống nhau
y1 y2 y3 y4 Q2
a) Nguyên tắc việc lựa chọn sự tương tác F I Q4 S2
Nguồn 2 E
D
• Chọn sự tương tác càng lỏng lẻo càng tốt
L
• Chọn sự tương tác càng đ ơn giả n càng tốt
Do sau này hệ thống sẽ phải sửa chữa đỡ "Rút giây động rừng" (xấ u nhất) Ngu ồn 2
(4) Vẽ 2 mứ c cao nhất trong LCT
S3
• Tương tác nội dung: Module này can thiệp vào nội dung của module khác Mứ c 1 là 1 modun chính
Mứ c 2 tiếp theo gồm 3 modun
1 modun vào cho mỗi luồng dữ liệu vào (trái)

http://www.ebook.edu.vn
Page 61 of 70 Page 62 of 70
1 modun ra cho mỗi luồng dữ liệu ra (phải) (4) Triển khai các module xu ống mức thấp
Chính
và 1 modun thông tin biến đổi (giữa) Các mứ c thấ p hơn có thể phối hợp theo cả hai phương pháp
x4 S1
Quay lạ i Ví dụ trên + Phân tích theo biến đ ổi chính
+ Phân tích theo các giao tác (phụ trợ)
S1
Y4
Chính
Lấy X4 Lấ y Y4 Tạo S1 Trao S1
(5) Triển khai mỗi module (vào, ra, biến đ ổi) ở mức trên thành mứ c thấp hơn làm xuất hiện dầ n các module
tương ứ ng với chức năng xử lí trong BLD Lấy giao Chuyển sang In danh sách
Ví dụ tác hợp lệ dạng mới mới
Lấ y X4 Tạo S1 Trao S1


Lấy giao Kiểm tra sự
C
Lấy X3 Tạo S2
Q3 Q4 Trao S3 hợp lệ
tác

(H) (I)
Lấ y X2 B
Kiểm tra K1 Kiểm tra K2 Kiểm tra K.. Kiểm tra Kn

Lấy X1 A
b) Phân tích theo thao tác (giao d ịch): [Transaction Analysis] Đ ó là các thông tin mà khi xuấ t hiện thì nó khởi
động một loạ t các chứ c năng trong BLD. Một giao tác bao gồm: Kiểm tra chữ Kiểm tra số Kiểm tra mã đ /c
• Các sự kiện trong môi trường hệ thống (event)
• Tác nhân kích thích (stimulus)
• Các hành động (activity)
• Các phản ứ ng, đáp ứ ng của hệ thống (response) Viết các lỗi
• Những kết quả, ảnh hưởng của giao tác (effect) phát hiện
VD: Đơn hàng đến khởi động một loạt các chứ c nă ng; đ ặc điểm là luôn có một chứ c năng phân loại thông tin
giao dịch
c) Cấu trúc lại hệ thống:
⊕ Xem lại toàn bộ hệ thống xem có phù hợp với các yêu cầ u đề ra hay không để chỉnh lý k ịp thời
10. 6. Đóng gói thành module tải
Giao Đây là giai đoạn cuối của khâu thiết k ế các module để dẫ n đ ến lậ p trình được. Ta có thể coi LCT là 1 chương
Chức

dịch trình cũng đ ược. Như ng thường chương trình như vậ y lớn quá nên có nhu cầu đóng gói, tải dần từ ng module
năng
vào bộ nhớ trong
phân
Có một vài cách đóng gói

loại
• Đóng gói theo dòng dữ liệu vào (đóng gói theo các phạm vi điều khiển) có hình dáng chẻ dọc lược đồ,
chuyển giao theo ngu ồn dữ liệu hoặc
• Đóng gói chẻ ngang theo mức LCT thường đối với các module lựa chọn.
Các bước thực hiện:
• Đóng gói theo 1 Thư viện CT
(1) Phát hiện 1 chứ c năng xử lí trong BLD: nhận 1 lu ồng dữ liệu vào và cho ra nhiều dữ liệu loại trừ lẫ n nhau
• Đóng theo Module gọi lặ p thường xuyên và ghép chung vào module gọi
(2) Xác định các loại giao tác khác nhau tương ứ ng với các luồng ra củ a chứ c nă ng nói trên và các chứ c năng
Nếu phép chọn buộc phải cắt ra thì nên khả o sát phép chọn cân đối hay không, gộp nhánh được gọi luôn (nhánh
được khởi động từ các giao tác đó
nặ ng thoả điều kiện nằm ngay sau if) vào chương trình con
(3) Vẽ LCT ở 2 mứ c cao nhấ t
Mức 1: 1 module chính
Mức 2: 1 module cho mỗi loại giao tác và các module giao tác này được module chính gọi qua phép chọn. A
A
Cũ ng có thể thêm các module lấy các thông tin vào/ra
VD B
B E G
Module chính E G

C
C F H
F H

D
D
Lấy giao tác Đưa kết quả ra
Giao tác 1 Giao tác 2 Giao tác 3


http://www.ebook.edu.vn
Page 63 of 70 Page 64 of 70
Dãy Fibônacy: F(n +2) = F(n +1) + F(n)
A
- Phương pháp thương: Lấ y 2 số A, B rất lớn
A
xi +1 = A * xi - B * q , q : thương số của phép chia.
Như vậ y ta xem xi +1 là số dư của phép chia A* xi với B. Dãy này, ngẫu nhiên và tuần hoàn
B D
- Chọn ngẫu nhiên (chữ , chữ pha số)
3. Mẫu thử đa dạng, phong phú và đủ lớn
b) Trình bày mẫu th ử:
B C
- Mẫu thử có thể đ ược trình bày theo bả ng có dạ ng sau
C
Kết quả mong đ ợi Sai lệch thự c tế
Mẫ u thử (1) Kết quả thu được (2) Nhậ n xét
(dự đoán) (3) giữa (2) và (3)
Đặ c tả các module: D
d2 dn k1 k2 kn k1 k2 kn % %
Đặ c tả các module nhằm đề cậ p đ ến nội dung chi tiết củ a từng module bằ ng một ngôn ngữ giải thuậ t nào đ ó 1
chẳng hạn
• Sơ đồ khối (flowchart)
• Ngôn ngữ giả trình (Pseudo code). -Mẫ u thử có thể sinh bằ ng các "bộ sinh" tự động bằng cách chỉ ra công thứ c sinh
Dựa trên đặc tả này người xây dựng chương trình sẽ mã hoá thành các chương trình ứng dụng một cách dễ c) Các cách th ử chương trình bằng mẫu th ử
dàng. Phương pháp và k ỹ thu ật đặc tả các module được đề cập đến trong các môn học trước: Tin học đại cương, Thử tính đúng đắ n.
-
cấ u trúc dữ liệu và giả i thuậ t, Kỹ thuậ t lập trình, Công nghệ phần mềm... So k ết quả thu được với k ết quả chờ đợi
-
10.7. Lập các mẫu thử (test) Nếu trong quá trình phứ c tạp, yêu cầ u chương trình in các trị trung gian.
-
Người thiết kế hệ thống sau khi thiết kế các module còn có trách nhiệm thiết kế và đưa ra các mẫu thử nhằm Kiểm tra các giá trị trung gian.
-
đảm bả o tính khách quan. Các mẫu thử này chính là các yêu cầ u người lập trình phải đảm bả o thực hiện đúng Kiểm tra vệt chương trình.
-
các chứ c năng và yêu cầu khái quát củ a hệ thống cũng như các yêu cầu chi tiết của từng module chương trình. Thử hiệu năng: các mẫu thử, lớn, phải cho 1 thời gian để thự c hiện
-
Test : -Từng chương trình
-Toàn bộ hệ thống Bài t ập chương 10
1. Từ biểu đồ luồng dữ liệu hãy xây dự ng lược đ ồ cấu trúc chương trình cho hệ thống :
Phân tích viên Tính lương
hệ thống Check out cho khách
Giao dịch mượn trả sách
2. Thông tin bàn giao giữa các module là gì, chỉ r a các nguyên tắc cụ thể
Thiết kế
3. Trong các hệ thống hệ quả n trị CSDL các tương tác giữa các module có xảy ra hay không? Cách khắc phục
Mẫu
4. Các phương pháp thử đánh giá hệ thống ở một số đặc tính sau
Mẫ u thử
Module + Đúng đắ n và ổn định của module chương trình
Kết quả
+ Tính thời gian thự c hiện
Xây dựng
+ Độ phứ c tạp
chương trình
+ Tính thân thiện
+ Tính dễ sủ a chữa
Người lập trình
+ Tính mở
viên
.....
Hiện nay "test" gần như là biện pháp duy nhất đ ể kiểm tra chương trình. Về lý thuyết chúng ta đã biết là có các Hãy bàn luận về các tính chất trên để làm rõ các nguyên tắ c cơ bản khi thiết k ế
phương pháp chứ ng minh sự đúng đắ n, độ phức tạp, thời gian thự c hiện và không gian lưu tr ữ, cũng như tính
hiệu qu ả của chương trình nhưng các công cụ này hiện chưa khả thi về ứ ng dụng. Như Diskjstra đã phát biểu:
"Mẫu thử chỉ chứng minh sự có mặ t của lỗi chứ không chứng minh được s ự vắng mặt của lỗi "
a) Các loại mẫu thử
1. Loại mẫu thử hoàn chỉnh / không hoàn chỉnh
Mẫu thử hoàn chỉnh bả o đ ảm dự kiến mọi trường hợp có mặt trong chương trình. Mẫu thử không hoàn chỉnh
khi ta chỉ cần kiểm tra các đ iểm mốc quan trọng, còn các phần thứ yếu, không quan trọng có thể cho phép bỏ
qua không ảnh hưởng sai lệch đến tính chất của hệ thống cũ ng như từ ng module riêng lẻ
2. Loại mẫu thử Ngẫu nhiên / không ngẫu nhiên.
Trước tiên ta nên thử k hông ngẫ u nhiên, sau đ ó tiến hành nhữ ng mẫu thử ngẫu nhiên. Có nhiều cách sinh các
mẫu ngẫu nhiên; thường sinh theo luậ t xác suất Baux hoặ c phương pháp Von Newman
Ví dụ: Lấy dữ liệu 4 con số đặ t là x0
Sau đó lấy 4 con số ở giữa củ a bình phương x0 (x02 ) đặt là x1 .
Cứ tiếp tụ c như vậ y với các xi
Chẳng hạn x0 = 1147
x0 2 = 1315609 x1 = 3 156
x1 2 = 98012763 x2 =0127

http://www.ebook.edu.vn
Page 65 of 70 Page 66 of 70
e. Đặc trưng của các tệp
Chương 11. Lập trình - Chạy thử - Bảo trì
e1. Đặ c trư ng chung
1. Lập trình
e2. Cấu trúc tệp
a. Thành lập tổ lập trình
e3. Các tệp chỉ dẫn
Tổ lập trình là một nhóm tham gia việc viết các Môdul và được lắp ghép thành hệ thống. Việc thiết kế hệ thống
f. Đặc tr ưng của các đầu ra
càng chi tiết bao nhiêu và mang tính hệ thống cao sẽ giúp cho việc thự c hiện cài đặt và phát triển hệ thống hoàn
f1. Đặc trưng chung
thiện bấ y nhiêu.
f2. Cấu trúc lúc trình bày
- Một chương trình ứ ng dụng trung bình có từ 8000 đ ến 15.000 câu lệnh và trung bình người ta có thể viết đ ược
g. Hướng dẫn cho các nhân viên điều hành hệ thống
30 câu lệnh 1 ngày.
4. Bảo trì hệ thống
- Từ cơ sở trên tạo nhóm lập trình bao gồm bao nhiêu người trong khoả ng thời gian bao lâu.
- Song song với quy trình kiểm tra thì ta phải tiến hành bả o trì hệ thống.
b. Chọn ngôn ngữ lập trình
+ Sửa các lỗi
- N hững ngôn ngữ mang tính hệ thống viết được ra môi tr ường thường dùng là C, C++, Pascal và môi trường
+ Điều chỉnh theo yêu cầu mới
chuyên dùng: Cobol, Fox, Access, VB, Lotus Notes. Môi trường điển hình hiện nay là: HQT CSDL
+ Cả i thiện hiệu năng của hệ thống. Muốn vậ y ta phải hiểu được chương trình từ nhữ ng tài liệu để lại,
(ORACLE).
phải lần ngược dấu vết khi phát hiện lỗi.
c. Cài đặt các tệp, biết các đoạn chương trình chung
- Bả o trì gồm 4 mức:
d. Soạn thả o chương trình cho từng đơn vị xử lý
+ Mức 0: Giới hạn trong chương trình
- Yêu cầ u đối với các chương trình:
+ Mức 1: Bả o trì mứ c vật lý: liên quan đến phần cứng
+ Vào ra phải đúng đắ n
+ Mức 2: Mức truy nhập tổ chứ c
+ Dễ đọc, dễ hiểu để còn bảo trì
+ Mức 3: Mức quan niệm, khái niệm hay logic
+ Dễ sửa, dễ nâng cấp
- Các loại bảo trì:
+ Chạy phải nhanh, tiết kiệm bộ nhớ có hiệu quả không gian, thời gian.
+ Bảo trì sửa chữa: 17% đến 20%
+ Tối ưu hoá về mã: thể hiện ở thời gian và chỗ chiếm bộ nhớ.
+ Bảo trì thích ứ ng: 18% đến 25%
2. Chạy thử v à ghép nối
+ Bả o trì hoàn thiện: cải tiến hệ thống để nó chạ y tốt hơn, ổn định hơn, nhanh hơn... chiếm từ 5 0% đ ến
Chạ y thử và ghép nối để cho ra một mẫu thử hệ thống
60%.
3. Thành lập các tài liệu hướng dẫn sử dụng
Tóm lại chu trình phát triển của hệ thống truyền thông như sau:
Tài liệu hướng dẫn đóng vai trò quan trọng với người sử dụ ng
a. Đại cương
Mục đích củ a tài liệu là để trao đổi, liên lạ c. Nhà phân tích tham gia phát triển hệ thống cầ n trao đổi với một số Khảo sát
người trước, trong và sau tiến trình phân tích và thiết kế đã được thảo luậ n ở đ ây. Thông tin thu được cần phả i
được ghi lại theo khuôn dạ ng làm thu ận tiện cho việc thâm nhậ p và tìm kiếm. Kết quả của hoạ t động phân tích
và các ý tưởng được xem xét trong giai đoạn thiết k ế (cả những ý tưởng đ ược chấ p thuận cũng như bị loại bỏ)
đều cần được thâu tóm dưới dạng văn bản nào đó, trước hết để giúp làm đầy đủ tiến trình phát triển rồi thứ nữa
Bảo trì và phát Phân tích
để hỗ trợ cho việc chạy và bảo trì hệ thống khi nó đ i vào hoạt đ ộng.
triển
Về cơ bản có hai khuôn dạng tài liệu. Chúng liên quan tới hai nhóm người tham gia trong việc phát triển, và
các nhu cầu thông tin khác nhau:
+ Ng ười dùng. (Thuật ngữ được dùng ở đây bao hàm cả nhà qu ản lý, người chủ và người vậ n hành hệ
thống). Tài liệu cho những người này phải được chuẩn bị một cách chính thứ c bởi nhóm phát triển (một số
trong họ cũng chính là người dùng). Tài liệu này được xem như một phần của việc bàn giao hệ thống. Trong
Cài đặ t Thiết kế
phương pháp luậ n Systemscraft, các tài liệu bàn giao bao gồm
Đặ c tả yêu cầ u nghiệp vụ
Đặ c tả thiết kế hệ thống
Tài liệu cho người dùng
Hướng dẫ n vận hành Xây dựng
+ Ng ười phát triển. (Thuật ngữ đ ược dùng ở đây bao hàm cả nhà phân tích, người thiết kế, người làm
bả n mẫu, người lậ p trình, người quản lý dự án, chuyên gia CSDL... đã tham gia vào tiến trình phát triển. Ta
cũ ng có thể kể cả một số người dùng có tham gia nhiều vào phát triển hệ thống) Tài liệu cho nhữ ng người này
trong suốt thời kỳ nghiên cứu. Các tài liệu này thường được gọi là Hồ s ơ giấy tờ làm việc.
b. Các h ướng dẫn chung
b1. Phầ n cứng và phần mềm ứng dụng.
b2. Hướng dẫn về các phương thức khai báo
b3. Về các người sử dụng
b4. Các hướng dẫn dùng khác
c. Giới thiệu chương trình, trình tự khai thác
c1. Danh sách các chương trình
c2. Mô tả chi tiết
c3. Trình tự khai thác
d. Đặc trưng của các đầu vào: đ ưa ra các mẫu

http://www.ebook.edu.vn
Page 67 of 70 Page 68 of 70
25. Chứ c năng sơ cấ p là gì? Trong BLD, chứ c nă ng sơ cấp đòi hỏi điều gì mà thành phầ n khác không nhất thiết
Câu hỏ i ôn tập
1. Trình bày các bước chạy thử và test hệ thống phải có?
2. Có thể á p dụng phương pháp luận PTTK hệ thống thông tin cho các bài toán kỹ thuậ t được không? Có áp 26. Anh chị có nhận xét gì khi học xong môn PTTK hệ thống thông tin (ngắ n gọn, gạch đầu dòng)
dụng cho các dự án xã hội được không?
3. Tại sao nói phân tích thiết kế hệ thống là một công việc cự c k ỳ quan trọng trong quá trình xây dựng hệ
thông tin quản lý. Anh chị hiểu như thế nào câu nói “Sự lãng phí, rủi ro trên giấ y còn hơn xảy ra trong thự c
tiễn“
4. Nhữ ng công cụ diễn tả xử lý. Sự khác nhau giữa biểu đ ồ phân rã chức nă ng (BPC) và biểu đồ luồng dữ liệu
(BLD). Chúng có mối quan hệ với nhau như thế nào
5. Vòng đời củ a sản phẩm phầ n mềm tin học quản lý là gì? Giai đoạn nào quan trọng nhấ t.
6. Các điều tối k ỵ ( sai cơ bả n dễ phát hiện) khi vẽ BLD, BPC.
7. Nhữ ng thành phầ n cấu thành BLD, thành phần nào sử dụng nhãn là đ ộng từ? vì sao? Nhữ ng thành phần nào
sử dụ ng nhãn là danh từ? Tại sao? Có hệ thống nào mà BLD không có tác nhân ngoài không? Tại sao? Số
tác nhân ngoài tối đa là bao nhiêu?
8. Tại sao cần các thể hiện khác của biểu đồ luồng dữ liệu? Chúng có thể là nhữ ng cái gì? Các công thức, quy
định, thủ tục dùng đ ể làm gì?
9. Mối quan hệ giữa mô hình thự c thể liên k ết và mô hình CSDL quan hệ. Phân biệt thự c thể và kiểu thực thể,
liên k ết và kiểu liên kết, thuộc tính và giá tr ị thể hiện của thu ộc tính? Cho các thí dụ minh hoạ.
10. Vai trò củ a phụ thuộc hàm (PTH) trong phân tích dữ liệu? PTH sơ đẳ ng, bộ phậ n, phụ thuộc hàm tr ực tiếp,
bắc cầu. Ý nghĩa của với việc chuẩn hoá dữ liệu.
11. Tại sao phải khảo sát hệ thống hiện trạ ng tr ước khi tiến hành phân tích và thiết k ế hệ thống mới.
12. Xây dự ng Mô hình thự c thể liên k ết của các hệ thống phổ biến sau:
QL Thư viện
QL Kết quả học tập
QL Khách sạ n
QL Nhân sự
QL Tuyển sinh
QL Vật tư
QL Kinh doanh
QL Xe máy
QL Dịch vụ nhà cho thuê
13. Sự khác nhau cơ bả n khi thành lập biểu đồ cấu trúc dữ liệu (BCD) theo mô hình thự c thể liên k ết và mô
hình quan hệ.
14. Phân định ranh giới hệ thống phần thự c hiện bằ ng máy tính và thủ công để làm gì. Cách chủ đạo của
phương pháp này.
15. Kỹ thuậ t chính khi thu thậ p thông tin và các bước thực hiện của nó.
16. Mã hoá dữ liệu: Các phương pháp mã cơ bả n , phương pháp nào coi là tốt nhất.. Hãy mã hoá sinh viên bằng
số thẻ, xác định mã này
17. Điểm hở là gì. Tại sao cần nghiên cứu các điểm hở và các phương pháp bả o mậ t thông tin. Mậ t khẩu và mật
mã khác nhau thế nào? Quyền ưu tiên là gì trong PTTK.
18. Biểu đồ cấ u trúc dữ liệu (BCD) dạng mô hình thự c thể liên k ết E-R có liên quan đến các bả ng dữ liệu trong
FOXPRO và ACCESS như thế nào, chúng có thay thế được nhau không?
19. Thiết kế FILE dựa vào những phần gì tr ước đ ó ? Các bước của một đường truy cập FILE đối với mỗi yêu
cầu là gì? Diễn giải các bước đ ối với các yêu cầu khi truy cập các hệ Thư viện (SACH, ĐOCGIA,
MUONTRA), hệ khách sạ n (PHONG, KHACH, CHECK_IN_OUT), vv...
20. Module chương trình là gì? Các thuộc tính cơ bả n củ a một module. Đặ c trư ng trong và đ ặc trưng ngoài.
21. Phân biệt các biểu đồ sau (rấ t hay nhầm):
a. Biểu đồ BPC
b. Giao diện MENU hệ thống
c. Sơ đ ồ tổ chứ c
d. Lược đồ cấu trúc chương trình
22. Chấ t lượng của một LCT.
23. Tại sao nói rằng thiết kế mẫu thử là nhiệm vụ của người PTTK hệ thống, Các tiêu chuẩn của mẫu thử cần
đạt được.
24. Tại sao luồng dữ liệu vào/ ra từ k ho dữ liệu đôi khi không có tên?


http://www.ebook.edu.vn
Page 69 of 70 Page 70 of 70
Đề thi vào lớp 10 môn Toán |  Đáp án đề thi tốt nghiệp |  Đề thi Đại học |  Đề thi thử đại học môn Hóa |  Mẫu đơn xin việc |  Bài tiểu luận mẫu |  Ôn thi cao học 2014 |  Nghiên cứu khoa học |  Lập kế hoạch kinh doanh |  Bảng cân đối kế toán |  Đề thi chứng chỉ Tin học |  Tư tưởng Hồ Chí Minh |  Đề thi chứng chỉ Tiếng anh
Theo dõi chúng tôi
Đồng bộ tài khoản