Giáo trình Phân tích thiết kế hệ thống thông tin - Chương 2: Nghiên cứu hiện trạng của hệ thống thông tin

2.1 Một số vấn đề chung khi nghiên cứu hệ thống

 Trong thực tế gần 75% các hệ thống thông tin lớn và phức tạp đã hoạt động yếu kém, không đạt được mục tiêu đề ra ban đầu. Những yếu kém này thường rơi vào các vấn đề cơ bản sau:

 Sai lầm về thiết kế: không hiểu biết đầy đủ các yêu cầu thông tin của tổ chức. Nhiều chức năng của tổ chức không được đáp ứng. Giao diện người-máy nghèo nàn, khó sử dụng. Cấu trúc rối rắm, phức tạp khó bảo trì và hạn chế công việc phát triển. Chương trình không mềm dẻo. Nguyên nhân của sai lầm này thực chất là do việc phân tích không đầy đủ về hệ thống.

 Sai lầm về dữ liệu: Dữ liệu trong hệ thống không thống nhất, không đầy đủ hoặc không thích hợp cho mục đích của hệ thống, đôi khi còn sai lệch vô nghĩa.

 Hoạt động yếu kém: hệ thống hoạt động không hiệu quả, làm mất nhiều thời gian để bảo trì sửa chữa, chưa đáp ứng chức năng của một hệ hỗ trợ ra quyết định. Không đạt được yêu cầu các chuẩn về thông tin, người dùng không muốn sử dụng.

 Không bảo đảm tính năng hoàn vốn đầu tư: hệ thống hoạt động với chi phí cao, tốn kém nhân lực. Đôi khi không sử dụng hệ thống còn tốt hơn, nhanh hơn.

Những vấn đề trên đã được nghiên cứu và cải thiện từng bước tương ứng với mỗi nguyên nhân gây ra chúng. Cách thức giải quyết các vấn đề trên tập trung vào ba mặt:

 - Nâng cao kỹ năng của các nhà phát triển hệ thống.

 - Không ngừng hoàn thiện và phát triển công nghệ, tăng cường sử dụng các công cụ tiện ích để tự động hoá ngày càng nhiều các hoạt động phát triển,. làm cho hệ thống có tính mở (openning) cao.

 - Hoàn thiện quá trình quản lý các dự án phát triển phần mềm.

 

doc26 trang | Chuyên mục: Phân Tích Thiết Kế Hệ Thống | Chia sẻ: yen2110 | Lượt xem: 490 | Lượt tải: 0download
Tóm tắt nội dung Giáo trình Phân tích thiết kế hệ thống thông tin - Chương 2: Nghiên cứu hiện trạng của hệ thống thông tin, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
ác định tất cả các chức năng nghiệp vụ ở mức cao nhất của tổ chức và chú ý rằng bất kỳ dự án nào cũng là bộ phận của một hoặc nhiều chức năng cao nhất này.
Ví dụ: Biểu đồ chức năng nghiệp vụ mức cao nhất (dạng công ty) của hệ thống thông tin quản lý đào tạo trong một trường đại học.
Quản lý
Đào tạo
Quản lý
Sinh viên 
Quản lý
Giáo viên 
Quản lý
Môn học
Chú ý: cần phân biệt một BFD với một sơ đồ tổ chức của một cơ quan. Sơ đồ tổ chức của một cơ quan mô tả các bộ phận, các tổ chức hợp thành của cơ quan đó nên cũng có dạng hình cây. Sơ đồ tổ chức thường dùng để mô tả luồng thông tin đi từ bộ phận này đến bộ phận khác trong tổ chức. 
2.8 Mô hình hoá các tiến trình của hệ thống 
Trong quá trình phân tích, một yêu cầu thông tin cần phải được mô tả khi hệ thống vận hành đó là các luồng dữ liệu đi từ vị trí này đến vị trí khác của tổ chức. Hai loại biểu đồ thường được các phương pháp phân tích thiết kế hệ thống sử dụng là sơ đồ ngữ cảnh và các loại biểu đồ luồng dữ liệu. Chúng thể hiện việc chuyển tải, lưu trữ thông tin trong hệ thống, giúp phân tích viên hình dung được các loại thông tin được sử dụng và lưu chuyển như thế nào. 
2.8.1 Sơ đồ ngữ cảnh
a. Các biểu tượng để trình bày tài liệu
Tài liệu lưu trữ
Tài liệu
Điểm công tác ngoài
Điểm công tác trong
CSDL
Luồng dữ liệu 
Sự kiện
Nhiệm vụ hoặc chức năng
b. Sơ đồ ngữ cảnh: là sơ đồ hình học được xây dựng theo điểm công tác nào đó dùng để làm rõ mối quan hệ thông tin giữa các điểm công tác của hệ thống. Điểm trung tâm là điểm đang xét, các điểm công tác khác có liên hệ thông tin với điểm trung tâm sẽ được mô tả bằng mũi tên và ghi chú kèm theo.
Người quản lý kho
Đại lý
Thủ kho
Kế toán
Phân xưởng
Lãnh đạo
Nhà cung cấp 
Phiếu Xuất
Phiếu Xuất/Nhập
Phiếu Xuất/Nhập
Phiếu Xuất/Nhập
Báo cáo 
Phiếu Nhập
Ví dụ: Sơ đồ ngữ cảnh của bài toán "quản lý kho". Điểm trung tâm là Người quản lý kho
2.8.2 Biểu đồ luồng dữ liệu DFD
Biểu đồ luồng dữ liệu (DFD-Data Flow Diagram ) là một sơ đồ hình học nhằm diễn tả các luồng tài liệu thông qua các chức năng của hệ thống. 
a. Những hỗ trợ của DFD
Xác định yêu cầu của người dùng.
Lập kế hoạch và minh hoạ những phương án cho phân tích viên và người dùng xem xét.
Trao đổi giữa những phân tích viên và người dùng trong hệ thống. 
Làm tài liệu đặc tả yêu cầu hình thức và đặc tả thiết kế hệ thống. 
b. Các thành phần của một DFD:
Luồng dữ liệu (Data flow): mô tả dữ liệu di chuyển từ một vị trí này đến một vị trí khác, một DFD được mô tả bởi một mũi tên với tên dữ liệu kèm theo, chiều của mũi tên chỉ hướng di chuyển của dữ liệu. Tên của luồng dữ liệu thể hiện trạng thái logic của thông tin chứ không phải dạng vật lý của nó. 
Người quản lý kho
Đại lý
Phiếu Xuất
Ví dụ: Một luồng dữ liệu là “Phiếu xuất” đi từ tác nhân trong “Người quản lý kho” đến tác nhân ngoài “Đại lý” 
Kho dữ liệu (Data store): là các dữ liệu được lưu giữ tại một nơi nào đó trong hệ thống. Về mặt vật lý, kho dữ liệu là các tập tin dữ liệu trong máy tính hoặc những tập tài liệu được lưu trữ ở văn phòng. Do đó một kho dữ liệu có thể biểu diễn các dữ liệu được lưu trữ ở nhiều vị trí không gian khác nhau, như các thư mục khác nhau, các máy tính khác nhau,... Kho dữ liệu là các dữ liệu được lưu giữ trên giá mang nó, vì vậy người ta thường lấy tên của vật mang nó làm tên của kho dữ liệu. 
Ví dụ: “ Phiếu xuất kho”, “Đơn đặt hàng”
 D Phiếu xuất kho
 Đơn đặt hàng D
Tiến trình (Proccess) hoặc chức năng: là một công việc hoặc một hành động có tác động lên dữ liệu làm cho chúng di chuyển, thay đổi hoặc được phân phối. Chỉ được xem là một tiến trình trong DFD nếu chúng nhận thông tin đầu vào và có thông tin đầu ra.
Làm hoá đơn 
Ví dụ: Tiến trình “Làm hoá đơn” trong hệ thống thông tin “Quản lý Kho hàng” 
	Trong SADT một tiến trình còn được ký hiệu bởi một vòng tròn
Làm hoá đơn
Tác nhân ngoài (extenal entity): Tác nhân ngoài còn được gọi là đối tác, là một cá nhân hoặc một tổ chức ở bên ngoài lĩnh vực nghiên cứu của hệ thống, có thể hiểu tác nhân ngoài như là điểm công tác ngoài. Nghĩa là nơi thu nhận, nơi phát sinh thông tin nhưng không phải là nơi lưu trũ chúng. Tác nhân ngoài là phần sống còn của hệ thống, bởi vì chúng là nguồn cung cấp thông tin cho hệ thống và là nguyên nhân kích hoạt hệ thống. 
Nhà cung cấp
Phiếu nhập
Ví dụ: một luồng dữ liệu là “Phiếu nhập” đến một tác nhân ngoài là “Nhà cung cấp”.
Tác nhân trong (intenal entity): tương tự như điểm công tác trong. Nghĩa là, có thể là nơi thu nhận, nơi phát sinh và nơi lưu trữ và xử lý thông tin.
Thủ kho
Phiếu nhập/xuất
Ví dụ: một luồng dữ liệu là “Phiếu xuất/nhập” đến một tác nhân trong là “Thủ kho”
c. Các chú ý khi xây dựng một DFD
Để xây dựng một DFD người ta dựa vào biểu đồ chức năng nghiệp vụ và sơ đồ ngữ cảnh. Sử dụng BFD để xác định các tiến trình theo từng mức cho DFD. Bởi vì BFD được thực hiện phân rã thành các mức nên nó dùng để chỉ ra các mức tương ứng trong DFD. Sử dụng sơ đồ ngữ cảnh để nhận dạng ra được các luồng dữ liệu vào và ra hệ thống, các tác nhân ngoài của hệ thống. Tuy nhiên đê kiểm tra tính đúng đắn của các thành phẩm trong một DFD cần phải dựa vào các đặc trưng dưới đây. 
Tiến trình:
- Không một tiến trình nào chỉ có cái vào mà không có cái ra. Nếu một đối tượng nào đó mà chỉ có cái vào thì đó có thể là một tác nhân (đích-thu nhận thông tin).
- Không một tiến trình nào chỉ có cái ra mà không có cái vào. Nếu một đối tượng nào đó mà chỉ có cái ra thì đó có thể là một tác nhân (nguồn-phát sinh thông tin).
- Cái vào của một tiến trình phải khác với cái ra của tiến trình đó. 
- Tên một tiến trình phải là một mệnh đề chỉ hành động.
Kho dữ liệu:
- Tên một kho dữ liệu phải là một mệnh đề danh từ.
- Dữ liệu không thể di chuyển trực tiếp từ một kho dữ liệu này đến một kho dữ liệu khác.
- Không thể di chuyển trực tiếp dữ liệu từ một tác nhân đến một kho dữ liệu.
- Không thể di chuyển trực tiếp dữ liệu từ một kho dữ liệu đến một tác nhân.
Tác nhân:
- Tên một tác nhân phải là một mệnh đề danh từ.
- Dữ liệu không thể di chuyển trực tiếp từ một tác nhân này đến một tác nhân khác.
Luồng dữ liệu:
- Tên một luồng dữ liệu phải là một mệnh đề danh từ.
- Một luồng dữ liệu chỉ có một hướng chỉ hướng di chuyển của dữ liệu.
- Một luồng dữ liệu không thể quay lui nơi nó vừa đi khỏi.
- Một luồng dữ liệu đi vào một kho có nghĩa là kho được cập nhật dữ liệu. 
- Một luồng dữ liệu đi ra khỏi một kho có nghĩa là kho dữ liệu được đọc. 
2.8.3 Kỹ thuật phân mức
	Căn cứ vào việc phân rã chức năng của một BFD, chúng ta có thể mô tả một DFD theo nhiều mức khác nhau. Mỗi mức được thể hiện trong một hoặc nhiều trang. 
. Mức 0: còn gọi là mức bối cảnh, chỉ gồm một DFD, trong đó chỉ có một chức năng duy nhất (chức năng tổng quát của hệ thống) trao đổi các luồng thông tin với các đối tác. Tên của trang mức 0 là tên của hệ thống.
. Mức 1: còn gọi là mức đỉnh, cũng chỉ gồm một DFD, và các mức 2,3,4,... mỗi mức gồm nhiều DFD được thành lập như sau:
Cứ mỗi chức năng ở mức trên, ta thành lập một DFD ở mức dưới, gọi là biểu DFD định nghĩa chức năng đó theo cách sau:
Phân rã chức năng đó thành nhiều chức năng con;
Vẽ lại các luồng dữ liệu vào và ra chức năng trên, nhưng bây giờ phải vào hoặc ra chức năng con thích hợp;
Nghiên cứu các quan hệ về dữ liệu giữa các chức năng con, nhờ đố bổ sung các luồng dữ liệu nội bộ hoặc các kho dữ liệu nội bộ. 
Các chức năng được đánh số theo ký pháp chấm để tiên theo dõi vệt triển khai từ trên xuống.
Tổng quát, có thể định nghĩa một cách quy nạp biểu đồ luồng dữ liệu các mức như sau: 
Biểu đồ luồng dữ liệu mức n là biểu đồ luồng dữ liệu nhận được từ việc phân rã một tiến trình thuộc biểu đồ luồng dữ liệu mức n-1. 
Như vậy biểu đồ luồng dữ liệu ở mỗi mức là tập hợp các DFD ở mức đó.
Biểu đồ phân rã mức 0
0
3.0
2.0
1.0
3.1
3.2
2.3
2.2
2.1
2.2.2
2.2.3
2.2.1
1.0
2.1
Biểu đồ phân rã mức 2
Biểu đồ phân rã mức 1
Các mức trong quá trình phân rã biểu đồ luồng dữ liệu 
mức 0
Ví dụ: Xét hệ thống thông tin “Quản lý tín dụng” có BFD như sau:
Xử lý nợ trả trong hạn
Xác định kỳ hạn trả
Xử lý nợ trả ngoài hạn
Thu nợ
Trả lời đơn
Cho vay
Duyệt vay
Nhận đơn
Quản lý
tín dụng
Hãy xây dựng các DFD của các mức được phân rã từ BFD đã cho.
. Mức 0: chức năng tổng quát của hệ thống là: “Quản lý tín dụng”. Tác nhân của hệ thống là “Khách vay”. Ta có DFD ở mức bối cảnh như sau:
Quản lý tín dụng
Khách vay
Đơn vay
Nợ hoàn trả
Trả lời đơn vay
DFD ở mức 0 (mức bối cảnh)
. Mức 1: chức năng ở mức 0 được phân rã thành 2 chức năng con là “Cho vay” và “Thu nợ”. Ngoài ba luồng dữ liệu đã có ở chức năng 0 phải được bảo toàn, thì ta thấy luồng dữ liệu trao đổi giữa hai chức năng “Cho vay” và “Thu nợ” không trực tiếp mà phải thông qua một kho dữ liệu đó là “Sổ nợ”. Ta có DFD mức đỉnh như hình dưới đây.
. Mức 2: chức năng “Cho vay” ở mức 1 được phân rã thành 3 chức năng con là “Nhận đơn”, “Duyệt vay” và “Trả lời đơn”; chức năng “Thu nợ” ở mức 1 được phân rã thành 3 chức năng con là “Xác định kỳ hạn trả”, “Xử lý nợ trả trong hạn” và “Xử lý nợ trả ngoài hạn”. Để bảo toàn các luồng dữ liệu vào/ra và thêm các luồng dữ liệu nội bộ ta thành lập được hai DFD định nghĩa cho hai chức năng 1 và 2 như sau:
1.Cho vay
Khách vay
Đơn vay
Nợ hoàn trả
Trả lời đơn vay
DFD ở mức 1 (mức đỉnh)
2. Thu nợ
 Sổ nợ
1.1 Nhận đơn
Khách vay
Đơn vay
Đáp ứng vay
Từ chối vay
DFD ở mức 2 (định nghĩa chức năng 1: Chovay)
 Sổ nợ
1.3 Trả lời đơn
1.2 Duyệt vay
Đơn đã kiểm tra 
Đơn đã duyệt
Khách vay
2.1 Xác định kỳ hạn trả
2.2 Xử lý nợ trả trong hạn
2.3 Xử lý nợ trả ngoài hạn
 Sổ nợ
Nợ trả ngoài hạn
Nợ trả trong hạn
Nợ hoàn trả 
DFD ở mức 2 (định nghĩa chức năng 2: Thu nợ)
Chú ý: 
- Quá trình phân rã thành các mức không thể kéo dài mãi mà phải dừng sau một số mức. Ta quyết định dừng việc phân rã khi có những biểu hiện sau:
	. Các chức năng được phân rã cuối cùng khá đơn giản
	. Nếu phân rã tiếp sẽ vượt ra ngoài câu hỏi “Làm gì?” và bắt đầu sang câu hỏi “Làm như thế nào?”
- Số mức vào khoảng 7±2 (tuỳ thuộc hệ thống là đơn giản hoặc phức tạp)

File đính kèm:

  • docgiao_trinh_phan_tich_thiet_ke_he_thong_thong_tin_chuong_2_ng.doc