Cho một ví dụ về lược đồ dfd vật lý?

Cho một ví dụ về lược đồ dfd vật lý?

DFD vật lý vs DFD hợp lý

Để hiểu sự khác biệt giữa DFD vật lý và logic, chúng ta cần biết DFD là gì. DFD là viết tắt của sơ đồ luồng dữ liệu và nó giúp thể hiện đồ họa luồng dữ liệu trong một tổ chức, đặc biệt là hệ thống thông tin của nó. DFD cho phép người dùng biết nơi thông tin đến, nơi nó đi vào bên trong tổ chức và cuối cùng nó rời khỏi tổ chức như thế nào. DFD không cung cấp thông tin về việc xử lý thông tin diễn ra tuần tự hay nếu nó được xử lý theo kiểu song song. Có hai loại DFD được gọi là DFD vật lý và logic. Mặc dù cả hai đều phục vụ cùng một mục đích đại diện cho luồng dữ liệu, có một số khác biệt giữa hai mục đích sẽ được thảo luận trong bài viết này.

Bất kỳ DFD nào cũng bắt đầu với một DFD tổng quan mô tả một cách ngắn gọn hệ thống sẽ được thiết kế. Một sơ đồ luồng dữ liệu hợp lý, như tên cho thấy tập trung vào doanh nghiệp và cho biết về các sự kiện diễn ra trong một doanh nghiệp và dữ liệu được tạo từ mỗi sự kiện đó. Mặt khác, một DFD vật lý quan tâm nhiều hơn đến cách thức dòng thông tin được thể hiện. Đó là một cách thông thường để sử dụng DFD để thể hiện luồng dữ liệu logic và xử lý dữ liệu. Tuy nhiên, thật khôn ngoan khi phát triển DFD hợp lý sau khi lần đầu tiên phát triển DFD vật lý phản ánh tất cả những người trong tổ chức thực hiện các hoạt động khác nhau và cách dữ liệu chảy giữa tất cả những người này.

Sự khác biệt giữa DFD vật lý và DFD logic?

Mặc dù không có sự hạn chế nào đối với nhà phát triển để mô tả cách hệ thống được xây dựng trong trường hợp DFD logic, nhưng cần phải chỉ ra cách hệ thống được xây dựng. Có một số tính năng nhất định của DFD logic làm cho nó trở nên phổ biến trong các tổ chức. DFD logic giúp giao tiếp dễ dàng hơn cho các nhân viên của một tổ chức, dẫn đến các hệ thống ổn định hơn, cho phép các nhà phân tích hiểu rõ hơn về hệ thống, linh hoạt và dễ bảo trì và cho phép người dùng dễ dàng loại bỏ các dư thừa. Mặt khác, DFD vật lý rõ ràng về sự phân chia giữa các quy trình thủ công và tự động, đưa ra mô tả chi tiết về các quy trình, xác định các kho lưu trữ dữ liệu tạm thời và thêm nhiều điều khiển để làm cho hệ thống hiệu quả và đơn giản hơn.

Trang 1Câu hỏi - Mô hình hóa qui trình1. Giải thích các khái niệm sau theo ngôn ngữ của bạn: qui trình xử lý (process), dòng dữ liệu (data flow), nơi lưu trữ dữ liệu (data store), thực thể ngoài (external entity). 2. Mỗi một dòng dữ liệu có thể được nối với những thành phần nào (qui trình, nơi lưu trữ dữ liệu, thực thể ngoài)? Giải thích ý nghĩa của việc nối này?3. Hãy cho biết năm qui trình xử lý thông dụng nào thường được nối với các nơi lưu trữ dữ liệu?4. Trình bày nguyên tắc phân mức khi tạo lược đồ dòng dữ liệu (lược đồ DFD)? Nêu ví dụ minh họa nguyên tắc này?5. Trình bày nguyên tắc cân đối khi tạo lược đồ dòng dữ liệu (lược đồ DFD)? Nêu ví dụ minh họa nguyên tắc này?6. Trình bày vai trò của lược đồ dòng dữ liệu (lược đồ DFD)?7. Trình bày sự khác nhau giữa lược đồ DFD vật lý và lược đồ DFD logic? Nêu ví dụ minh họa sự khác nhau này.8. Vẽ và giải thích sự liên hệ giữa bốn lược đồ DFD bao gồm lược đồ DFD vật lý và logic của hệ thống hiện thời và lược đồ DFD vật lý và logic của hệ thống mới.9. Trình bày những nhược điểm của lược đồ DFD.10.Trình bày các công cụ có thể được dùng để mô tả logic xử lý của các qui trình?11.Giải thích sự khác nhau giữa lỗi sai cú pháp (syntax error) và lỗi sai ngữ nghĩa (semantics error) đối với việc tạo lược đồ DFD? Cho biết lỗi sai nào khó tìm và khó sửa? Tại sao?12.Để kiểm tra tính hợp lệ của lược đồ DFD bạn cần phải kiểm tra những gì? Và kiểm tra như thế nào?13.Coi lược đồ ngữ cảnh và DFD mức 0 sau của hệ thống đăng ký môn học tại một trường đại học. Hãy nêu ra những lỗi sai có thể có.Câu hỏi – Mô hình hóa qui trìnhClass RegistrationSystemStudentCourse RequestDepartmentList of CoursesClass ScheduleRoster of ClassesScheduled ClassesPossible Classes0Trang 214. Coi lược đồ DFD sau. Hãy chỉ ra ba lỗi sai trong lược đồ.15.Lược đồ DFD sau mô tả một phần xử lý của hệ thống thông tin quản lý lương. Hãy tìm các lỗi sai trong việc vẽ lược đồ DFD.Câu hỏi – Mô hình hóa qui trìnhDF3DF2DF5DF4List ofCoursesCourseRequestClassScheduleReceiveCourseRequest1Check ForAvailability3ReceiveCourseLists2CourseRequestScheduledClassesTo StudentFrom StudentFrom Department Class RosterPossibleClassesE1E2DF1 DS1 2.0P1DF2DF6 1.0P2Trang 3 16. Lược đồ DFD sau mô tả các quá trình trong hệ thống thông tin quản lý một cửa hàng cho thuê băng video. Hãy chỉ ra các lỗi sai trong việc vẽ lược đồ DFD.Câu hỏi – Mô hình hóa qui trìnhCác khoản khấu trừPhiếu lươngCác khoản khấu trừ 1Tính lương 4In phiếu lươngBưu điệnTiền lương2Tính các khoản khấu trừ Ngày côngNgười quản lý 3Cập nhật lươngLươngKhách hàng1 Xử lý dữ liệu2 Vào tên phim3 Tính tiền thuê5 Kiểm traphim trễ4 In hóa đơn Khách HàngPhimGiá thuêĐịnh mã KHPhimKhách hàngPhimThông tin

Mục đích :

  • Bổ xung khiếm khuyết của mô hình phân rã chức năng bằng việc bổ xung các luồng thông tin nghiệp vụ cần để thực hiện chức năng.
  • Cho ta cái nhìn đầy đủ hơn về các mặt hoạt động của hệ thống
  • Là một trong số các đầu vào cho quá trình thiết kế hệ thống.

Phương pháp : Phương pháp phân tích top-down. Hệ thống được mô tả bởi nhiều DFD ở nhiều mức

2. Định nghĩa

Mô hình luồng dữ liệu (DFD – Data Flow Diagram) là một công cụ mô tả mối quan hệ thông tin giữa các công việc .

Ví dụ: Mô hình luồng dữ liệu của hoạt động bán hàng

Cho một ví dụ về lược đồ dfd vật lý?

3. Các thành phần

3.1. Chức năng (Tiến trình)

– Định nghĩa: Là một hoạt động có liên quan đến sự biến đổi hoặc tác động lên thông tin như tổ chức lại thông tin, bổ sung thông tin hoặc tạo ra thông tin mới. Nếu trong một chức năng không có thông tin mới được sinh ra thì đó chưa phải là chức năng trong DFD.

– Cách đặt tên: Động từ + bổ ngữ.

VD: Chấp nhận nguồn hàng, ghi kho vật liệu…

Cho một ví dụ về lược đồ dfd vật lý?

Chú ý: Các luồng dữ liệu phải chỉ ra được thông tin logic chứ không phải tài liệu vật lý. Các luồng thông tin khác nhau phải có tên gọi khác nhau.

Ví dụ: Luồng dữ liệu biểu hiện việc trả tiền mang tên là “thanh toán” chứ không mang tên là “tiền” hay “sec”.

Bài tập: Xác định luồng dữ liệu của chức năng quản lý khách hàng và chức năng quản lý phương tiện trong hệ thống quản lý bến xe bài tập 1

3.2. Kho dữ liệu

– Định nghĩa: Là nơi biểu diễn thông tin cần cất giữ, để một hoặc nhiều chức năng sử dụng chúng.

– Cách đặt tên : danh từ + tính từ. Chỉ nội dung dữ liệu trong kho

– Biểu diễn : cặp đường thẳng song song chứa thông tin cần cất giữ

Cho một ví dụ về lược đồ dfd vật lý?

Hoá đơn

Quan hệ giữa kho dữ liệu, chức năng và luồng dữ liệu

Cho một ví dụ về lược đồ dfd vật lý?

Ví dụ: Một người muốn tra cứu một danh sách   xử lý vừa cập nhật lại kinhotừ kho dữ liệu danh sách giá cả (hình a), còn muốn sửa đổi giá cả thì luồng dữ liệu đi từ tiến trình tới kho dữ liệu (hình b). Để biểu thị việc kiểm tra giá cả mặt hàng và sửa đổi các giá không phù hợp thì dùng mũi tên hai chiều để biểu thị luồng dữ liệu từ tiến trình tới kho (hình c).

Cho một ví dụ về lược đồ dfd vật lý?

Bài tập: Xác định kho dữ liệu trong hệ thống quản lý bến xe

3.3. Tác nhân ngoài

– Định nghĩa: Là một người hoặc một nhóm người nằm ngoài hệ thống nhưng chỉ ra giới hạn của hệ thống, định rõ mối quan hệ của hệ thống với thế giới bên ngoài

– Tên : Danh từ

– Biểu diễn : hình chữ nhật

Cho một ví dụ về lược đồ dfd vật lý?

Bài tập: Xác định tác nhân ngoài trong hệ thống quản lý bến xe

3.4. Tác nhân trong

– Là một chức năng hoặc một hệ thống con của hệ thống đang xét nhưng được trình bày ở một trang khác của mô hình.

Mọi sơ đồ luồng dữ liệu đều có thể bao gồm một số trang, thông tin truyền giữa các quá trình trên các trang khác nhau được chỉ ra nhờ kí hiệu này.

– Tên: động từ + bổ ngữ

– Biểu diễn:

Cho một ví dụ về lược đồ dfd vật lý?
Mô hình luồng dữ liệu cho hệ thống quản lý bến xe khách

4. Một số quy tắc vẽ biểu đồ luồng dữ liệu

  • Các luồng dữ liệu vào của một tiến trình cần khác với các luồng dữ liệu ra của nó. Tức là các dữ liệu qua một tiến trình phải có thay đổi. Ngược lại, đi qua nó.
  • Các đối tượng trong một mô hình luồng dữ liệu phải có tên duy nhất: mỗi tiến trình phải có tên duy nhất. Tuy nhiên, vì lí do trình bày cùng một tác nhân trong, tác nhân ngoài và kho dữ liệu có thể được vẽ lặp lại.
  • Các luồng dữ liệu đi vào một tiến trình phải đủ để tạo thành các luồng dữ liệu đi ra.
  • Nói chung tên luồng thông tin vào hoặc ra kho trùng với tên kho vì vậy không cần viết tên luồng. Nhưng khi ghi hoặc lấy tin chỉ tiến hành một phần kho thì lúc đó phải đặt tên cho luồng
  • Không có một tiến trình nào chỉ có cái ra mà không có cái vào. Đối tượng chỉ có cái ra thì có thể là tác nhân ngoài (nguồn)
  • Không một tiến trình nào mà chỉ có cái vào. Một đối tượng chỉ có cái vào thì chỉ có thể là tác nhân ngoài (đích)
  • Không có các trường hợp sau

Cho một ví dụ về lược đồ dfd vật lý?

5. Xây dựng mô hình luồng dữ liệu

a.  Xây dựng mô hình luồng dữ liệu mức khung cảnh (mức 0)

  • Mô hình luồng dữ liệu mức khung cảnh gồm một chức năng duy nhất biểu thị toàn bộ hệ thống đang nghiên cứu, chức năng này được nối với mọi tác nhân ngoài của hệ thống.
  • Các luồng dữ liệu giữa chức năng và tác nhân ngoài chỉ thông tin vào và ra của hệ thống

VD: Mô hình dữ liệu mức khung cảnh của hệ cung ứng vật tư

Cho một ví dụ về lược đồ dfd vật lý?

Mô hình dữ liệu mức khung cảnh của hệ cung ứng vật tư

b. Xây dựng mô hình luồng dữ liệu mức đỉnh (mức 1)

– Với mức đỉnh các tác nhân ngoài của hệ thống ở mức khung cảnh được giữ nguyên với các luồng thông tin vào ra.

– Hệ thống được phân rã thành các chức năng mức đỉnh là các tiến trình chính bên trong hệ thống theo mô hình phân rã chức năng mức 1.

– Xuất hiện thêm các kho dữ liệu và luồng thông tin trao đổi giữa các chức năng mức đỉnh.

VD: Mô hình luồng dữ liệu mức đỉnh của hệ cung ứng vật tư

Cho một ví dụ về lược đồ dfd vật lý?

Mô hình luồng dữ liệu mức đỉnh của hệ cung ứng vật tư c.Xây dựng mô hình luồng dữ liệu mức dưới đỉnh (mức 2 và dưới 2)

– ở mức này thực hiện phân rã đối với mỗi chức năng của mức đỉnh.

– Khi thực hiện mức phân rã này vẫn phải căn cứ vào mô hình phân rã chức năng để xác định các chức năng con sẽ xuất hiện trong mô hình luồng dữ liệu.

– Việc phân rã có thể tiếp tục cho đến khi đủ số mức cần thiết

– Khi phân rã các chức năng phải đảm bảo tất cả các luồng thông tin vào ra ở chức năng mức cao phải có mặt trong các chức năng mức thấp hơn và ngược lại.

*Chú ý:

– Các kho dữ liệu không xuất hiện ở DFD mức khung cảnh.

– Nên đánh số các chức năng theo sự phân cấp.

– Các kho dữ liệu, các tác nhân ngoài có thể xuất hiện nhiều lần.

– Số mức phụ thuộc vào độ phức tạp của hệ thống.

Ví dụ: Mô hình luồng dữ liệu của hệ thống cung ứng vật tư mức dưới đỉnh của

+ Chức năng 1 (đặt hàng)

Cho một ví dụ về lược đồ dfd vật lý?

Mô hình luồng dữ liệu mức dưới đỉnh của chức năng Đặt hàng

+ Chức năng 2

+ Chức năng 3

6. Chuyển từ mô hình luồng dữ liệu vật lý sang mô hình luồng dữ liệu logic

  • Trong thực tế người ta thấy tạo ra một mô hình DFD cho hệ thống thực dưới dạng vật lý không có lợi:
    • Tốn nhiều thời gian và tiêu tốn nguồn tài nguyên phát triển dự án một cách không cần thiết. Có thể xem quá trình này là việc sao chép công việc của kỹ thuật viên điều tra, sao chép tất cả những gì đang thực hiện hiện tại.
    • Khi tạo ra mô hình thì phải tạo ra những điều chỉnh tượng trưng cho nó, xử lý nó như mô hình logic, kết quả là hệ thống mới chỉ đơn thuần là tin học hoá hệ thống cũ với rất nhiều lỗi mà cái ta cần cuối cùng là mô hình DFD logic.
  • Mô hình logic loại 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 đó.
  • Các yếu tố vật lý cần loại bỏ:
    • Các phương tiện, phương thức: tự động, thủ công, bàn phím, màn hình,..
    • Các giá mang thông tin: các tệp, chứng từ
    • Các chức năng xử lý gắn với các công cụ hay cách thức cài đặt cụ thể
  • Tiến hành các loại bỏ và chỉnh đốn lại cấu trúc.  Loại bỏ: loại bỏ các ngôn từ, hình vẽ biểu diễn các phương tiện, giá mang tin,.. giữ lại các chức năng và nội dung thông tin

* Chú ý:

+ Nên xây dựng mô hình logic cần có bằng cách điều chỉnh mô hình logic thực tại.

+ Không có sự phân chia rõ rệt giữa logic và vật lý. Mô hình càng phân rã ở mức thấp thì càng thêm nhiều yếu tố vật lý.

+ Càng giữ cho mô hình của mình được logic nhiều nhất khi đi sâu vào chi tiết càng tốt.

7. Chuyển từ DFD của hệ thống cũ sang DFD của hệ thống mới.

  • Giai đoạn này có ý nghĩa vô cùng quan trọng ảnh hưởng to lớn đến sự thành công của hệ thống mới.
  • Trong giai đoạn này nhà quản lý và nhà phân tích phải hợp tác chặt chẽ để tìm cách hoà hợp cơ cấu tổ chức, nhận thức được vai trò của máy tính để thay đổi hệ thống cũ.
  • Để chuyển từ DFD của hệ thống cũ sang DFD của hệ thống mới trước tiên phải xác định các mặt yếu kém cần cải tiến, thay đổi trong hệ thống cũ.
  • Các yếu kém chủ yếu do sự thiếu vắng gây ra : thiếu vắng về cơ cấu tổ hoạt động thấp, chi phí hoạt động cao.
  • Xem lại mô hình luồng dữ liệu

+ Nếu thiếu vắng thì bổ xung

+ Nếu thừa thì loại bỏ

+ Nếu thay đổi bắt đầu từ mức đỉnh

  • Khoanh vùng vùng sẽ được thay đổi
  • Giữ nguyên các luồng vào và luồng ra của vùng
  • Xác định chức năng tổng quát của vùng
  • Xoá bỏ mô hình luồng dữ liệu bên trong vùng được khoanh, lập lại các chức năng từ mức thấp nhất.
  • Thành lập kho dữ liệu và luồng dữ liệu cần thiết.
  • Sửa lại mô hình phân rã chức năng theo mô hình luồng dữ liệu.
  • Kiểm tra lại các mô hình dữ liệu điều chỉnh lại cho hợp lý.

Ví dụ: Hệ cung ứng vật tư

– Nhược điểm : thiếu kho hàng thông dụng

+ Tốc độ chậm vì có khâu đối chiếu thủ công

+ Theo dõi thực hiện đơn hàng còn nhiều sai sót

+ Lãng phí do đối chiếu thủ công

-Sửa mô hình luồng dữ liệu

+ Bổ xung : Kho chứa vật tư

+ Sửa lại DFD của hệ thống

8. Hoàn chỉnh mô hình DFD

Khi đã hoàn thành sơ đồ luồng dữ liệu cần kiểm tra về tính đầy đủ và nhất quán của nó. Phải làm cho sơ đồ đơn giản, chính xác và logic nhất có thể được.

Có thể xảy ra các tình huống sau nên tránh:

– Hiệu ứng mặt trời bừng sáng : Một chức năng có quá nhiều dòng vào ra. Khắc phục : Gom nhóm hoặc phân rã tiếp một số chức năng chưa hợp lý. VD:

– Thông tin đi qua một chức năng mà không bị thay đổi

VD :

Cho một ví dụ về lược đồ dfd vật lý?

Khắc phục xoá bỏ chức năng không biến đổi thông tin.

Xuất hiện một chức năng có các chức năng con không có liên quan về dữ liệu (không có dòng thông tin nội bộ gắn với nhau hoặc không sử dụng kho dữ liệu chung) => Phân bố sơ đồ phân rã chức năng chưa hợp lý cần xem xét lại.

Ví dụ

Cho một ví dụ về lược đồ dfd vật lý?

Chú ý khi thay đổi mô hình luồng dữ liệu thì phải sửa lại mô hình phân rã chức năng cho phù hợp.

Tác dụng

– Xác định nhu cầu thông tin ở mỗi chức năng

– Cho một thiết kế sơ bộ về thực hiện chức năng

– Là phương tiện giao tiếp giữa người phân tích thiết kế và người sử dụng

– Luôn có hai mức diễn tả vật lý và lôgíc. Mức vật lý trả lời câu hỏi như thế nào, mức lôgíc trả lời câu hỏi làm gì.

9.Phân mức

– Sơ đồ luồng dữ liệu đầy đủ của hệ thống là rất phức tạp không thể xếp gọn trong một trang => Cần dùng tới kỹ thuật phân rã sơ đồ theo một số mức.

– Các mức được đánh số thứ tự, mức cao nhất (mức khung cảnh) là 0 sau đó đến mức đỉnh 1, các mức dưới đỉnh 2,3,…

Mức 0: Tên chức năng là tên toàn bộ hệ thống.

Mức 1: Mỗi chức năng được gắn với một số và sẽ được mang tiếp theo với các chỉ số chỉ mức phụ thuộc, xem như một cách đặt tên theo số cho từng chức năng con của nó. Bắt đầu ở mức 1 mới có các kho dữ liệu.

VD:

Cho một ví dụ về lược đồ dfd vật lý?

10. Hạn chế của mô hình luồng dữ liệu

– Không chỉ ra được yếu tố thời gian (Ví dụ:Thông tin chuyển từ tiến trình này sang tiến trình khác hết bao nhiêu thời gian)

– Không xác định được trật tự thực hiện các chức năng.

– Không chỉ ra được yếu tố định lượng đối với dữ liệu có liên quan (tối đa và tối thiểu những thông tin là cơ bản trong quá trình phân tích)