Về sơ đồ luồng dữ liệu

- Xác định tập hợp các đối tượng cần mã hóa Xác định các xử lý tra cứu cần thực hiện

2.4.2. Sơ đồ luồng dữ liệu (DFD).

Sơ đồ luồng dữ liệu: Biểu diễn mối quan hệ thông tin bên trong cũng như bên ngoài.

Các định nghĩa và các ký pháp.

Sổ nợ

Luồng dữ liệu (Data flow): Dòng các dữ liệu di chuyển từ vị trí này đến vị trí khác trong hệ thống. Tên luồng dữ liệu là một mệnh đề danh từ như phiếu đã kiểm tra, hóa đơn đã duyệt,…vv.

Kho dữ liệu (Data store): Nơi lưu trữ các dữ liệu. Tên kho dữ liệu là một mệnh đề danh từ như sổ nợ, sổ xe vào, sổ nhập,…vv.

Tiến trình (Process): Một công việc hoặc một hành động có tác động lên các dữ liệu làm cho nó thay đổi, di chuyển hoặc được phân phối tới các đối tượng khác. Tên tiến trình có thể là tên chức năng của bộ phận thực hiện tiến trình đó. Nó là một mệnh đề gồm động từ (có hoặc không có bổ ngữ).

Tác nhân (Actor): Đối tượng bên ngoài có liên hệ thông tin với hệ thống. Tên tác nhân là một mệnh đề danh từ như khách hàng, nhà cung cấp,…vv.

Một số quy tắc xây dựng sơ đồ luồng dữ liệu Đối với tiển trình:

GVHD: Th.S Trịnh Phú Cường SV: Nguyễn Thị Thắm– Khóa 11B 1.0 Tên tiến trình Tên tác nhân

Tên luồng dữ liệu Kho dữ liệu

- Không một tiến trình nào chỉ có cái ra (output) mà không có cái vào (input). Nếu một đối tượng chỉ có cái ra thì nó chỉ có thể là tác nhân nguồn.

- Không một tiến trình nào chỉ có cái vào (input) mà không có cái ra (output). Nếu một đối tượng chỉ có cái vào thì nó chỉ có thể là tác nhân đích.

- Cái vào của một tiến trình phải khác với cái ra của nó. Dữ liệu qua một tiến trình phải có sự thay đổi. Nếu không thì tiến trình đó là không cần thiết.

Đối với kho dữ liệu:

- Dữ liệu không thể di chuyển từ một kho này đến một kho khác, nó phải qua xử lý.

- Không thể di chuyển dữ liệu trực tiếp từ một tác nhân tới một kho dữ liệu mà phải qua xử lý.

- Không thể di chuyển dữ liệu từ một kho dữ liệu trực tiếp đến một tác nhân mà phải qua xử lý.

Đối với tác nhân: Dữ liệu không thể di chuyển trực tiếp từ một tác nhân này

tới một tác nhân khác mà phải qua xử lý.

Đối với luồng dữ liệu:

- Một luồng dữ liệu phải có hướng chỉ hướng di chuyển của nó. - Một luồng dữ liệu không thể quay lại nơi nó vừa đi ra.

- Một luồng dữ liệu đi vào một kho tức là kho đó được cập nhật. - Một luồng dữ liệu đi ra khỏi một kho tức là kho dữ liệu được đọc.

- Các đối tượng phải có tên duy nhất, tuy nhiên một số tác nhân ngoài và các kho dữ liệu có thể được vẽ lặp lại ở nhiều vị trí khác nhau nhằm tráng các luồng dữ liệu cắt nhau.

Các mức của sơ đồ DFD.

Sơ đồ ngữ cảnh: - Sơ đồ ngữ cảnh CD (Context Diagram): Thể hiện rất

khái quát nội dung chính của hệ thống thông tin. Sơ đồ này không đi vào chi tiết mà mô tả sao cho chỉ cần nhìn một lần là nhận ra nội dung chính của hệ thống. Trong sơ đồ ngữ cảnh có thể bỏ qua kho dữ liệu, bỏ qua các xử lý cập nhật. Sơ đồ ngữ

GVHD: Th.S Trịnh Phú Cường SV: Nguyễn Thị Thắm– Khóa 11B

cảnh bao gồm:

+ Một tiến trình duy nhất mô tả toàn bộ hệ thống. Tên của tiến trình là tên của hệ thống hoặc tên con của hệ thống.

+ Các tác nhân (bên ngoài hệ thống) có mối quan hệ về thông tin với hệ thống. + Các luồng dữ liệu đi từ tác nhân vào/ra hệ thống.

Sơ đồ mức 0: Phân rã từ ngữ cảnh.

Sơ đồ mức i (i>=1): Phân rã từ mức i-1.

Phân rã DFD: Quá trình phân nhỏ mỗi tiến trình của một DFD thành một DFD mới.

- Bảo đảm sự cân bằng: Mọi luồng dữ liệu vào và ra, các tác nhân ngoài và kho dữ liệu (nếu có) ở mức trước phải được bảo toàn trong sơ đồ mức sau.

Data Flow Diagram là gì? Nếu bạn chưa từng làm quen với Data Flow Diagram (sơ đồ luồng dữ liệu) trước đây, công cụ này có thể khá khó hiểu vì nó bao gồm nhiều cấp độ, ký hiệu khác nhau. Trong bài viết này, chúng tôi sẽ giới thiệu với bạn khái niệm, cách sử dụng và những lợi ích không thể bỏ qua của một Data Flow Diagram đối với doanh nghiệp.

Data Flow Diagram là gì?

Data Flow Diagram, được viết tắt là DFD được dịch là Sơ đồ luồng dữ liệu.

Mọi doanh nghiệp đều được xây dựng dựa trên các hệ thống và quy trình để tối ưu việc vận hành. Có vô số phương pháp để cải thiện tính hiệu quả, và nổi bật trong số đó là Sơ đồ luồng dữ liệu - Data Flow Diagram.

Mô hình DFD sơ đồ hóa dòng chảy của thông tin qua bất kỳ một hệ thống hoặc quá trình nào. DFD sử dụng các ký hiệu như hình chữ nhật, hình tròn, mũi tên, các nhãn văn bản ngắn, nhằm hiển thị dữ liệu đầu vào, đầu ra, điểm lưu trữ và các tuyến di chuyển giữa mỗi trạm tiếp nhận. Cách làm này giúp bạn dễ dàng hình dung được tổng thể quá trình vận hành, xác định những điểm kém hiệu quả và cải thiện hệ thống tốt nhất có thể. 

Các mức độ của sơ đồ luồng dữ liệu cung cấp một bức tranh tổng quan về quy trình đơn giản, cho đến một DFD chuyên sâu, miêu tả cụ thể hơn về cách dữ liệu được xử lý. Do đó, bạn có thể sử dụng DFD cả khi phân tích một hệ thống sẵn có và khi muốn xây dựng một hệ thống mới. DFD có thể được ứng dụng trong mọi lĩnh vực, ví dụ như công nghệ thông tin, phát triển kinh doanh...

“Data Flow Diagram giúp bạn dễ dàng hình dung tổng thể quá trình vận hành, xác định những điểm kém hiệu quả và cải thiện hệ thống tốt nhất có thể”

Các thành phần của Data Flow Diagram là gì?

Một sơ đồ luồng dữ liệu có 4 thành phần: 

-       Quy trình (Process): Quy trình là hoạt động làm thay đổi dữ liệu để tạo thành kết quả đầu ra. Một quy trình có thể được phân tách thành nhiều mức độ chi tiết tốt hơn để thể hiện cách dữ liệu đang được xử lý. 

-       Đơn vị bên ngoài (External Entity): Một hệ thống bên ngoài hệ thống chính và trao đổi thông tin với hệ thống chính. Nó có thể là nhóm người như khách hàng, tổ chức như ngân hàng, bộ phận khác của doanh nghiệp hoặc hệ thống con.

-       Kho dữ liệu (Data Store): Nơi lưu trữ dữ liệu cần thiết sử dụng sau này hay thông tin được tạo ra xuyên suốt cả quá trình. Ví dụ: bảng cơ sở dữ liệu, biểu mẫu thành viên, thống kê hàng hóa...

-       Dòng dữ liệu (Data Flow): Thể hiện bằng mũi tên - là lộ trình dữ liệu di chuyển qua lại giữa các đơn vị bên ngoài, quy trình và kho lưu trữ dữ liệu.

Các bước xây dựng sơ đồ luồng dữ liệu

Khi hiểu Data Flow Diagram là gì, có thể bạn sẽ muốn biết cách lập sơ đồ này. Dưới đây là hướng dẫn cụ thể.

Quy trình thiết kế một DFD có thể được chia thành 5 bước: 

-       Xác định đầu vào, đầu ra chính của hệ thống

Gần như mọi quy trình đều bắt đầu với một nguồn dữ liệu đi vào hệ thống và kết thúc khi dữ liệu đi ra khỏi hệ thống. Toàn bộ phần còn lại của DFD sẽ được xây dựng dựa trên các yếu tố này, vì vậy hãy sớm xác định chúng để có một cái nhìn vĩ mô về hệ thống của bạn.

-       Xây dựng sơ đồ ngữ cảnh

Được gọi là DFD cấp 0, sơ đồ ngữ cảnh thể hiện tổng quan quá trình duy nhất và các kết nối của hệ thống chính với các yếu tố bên ngoài. Khi bạn đã xác định được các đầu vào và đầu ra chính, việc xây dựng sơ đồ ngữ cảnh rất đơn giản. Chỉ cần có một ký hiệu Process ở giữa và vẽ các kết nối của nó với các External Entity.

-       Mở rộng sơ đồ thành DFD cấp 1

Trong DFD cấp 1, quy trình duy nhất ở DFD cấp 0 sẽ được chia nhỏ thành các quy trình con. Lúc này, sơ đồ sẽ cần thêm các luồng dữ liệu và kho dữ liệu để liên kết chúng với nhau.

-       Tiếp tục nâng lên DFD cấp 2+

Bạn tiếp tục chia nhỏ và cụ thể hơn quy trình của DFD cấp 1. Đừng quên bổ sung những thành phần cần thiết để có một bản phân tích chi tiết về hệ thống của mình. Bạn có thể tiếp tục mở rộng tới các DFD cấp cao hơn khi cần thiết. Nhưng thông thường thì phân chia tới DFD cấp 3 là sơ đồ luồng dữ liệu đã đủ chi tiết rồi.

-       Kiểm tra và xác nhận độ chính xác của DFD

Khi bạn đã hoàn thiện sơ đồ luồng dữ liệu của mình, hãy kiểm tra kỹ lại từ đầu tới cuối. Bạn có bỏ sót thành phần cần thiết nào không? Người khác có thể hiểu cách hệ thống hoạt động bằng việc đọc DFD này không? Bạn có thể nhờ quản lý hay đồng nghiệp kiểm tra cùng để đảm bảo DFD đó đã phù hợp. DFD được tạo ra không chỉ để giữ cho riêng mình, mà còn nên được chia sẻ tới sếp của bạn, các thành viên trong nhóm, các bên đối tác - những người có thể cần tham khảo nó.

Trên đây là những chia sẻ về Data Flow Diagram là gì, ý nghĩa và cách xác định. Đôi khi, DFD có thể khá khó lập tùy thuộc vào hệ thống của doanh nghiệp. Tuy nhiên, nó vẫn là một phương pháp hỗ trợ hết sức hữu dụng đối với việc duy trì và cải thiện hệ thống. Chúc các bạn ứng dụng sơ đồ luồng dữ liệu thành công nhé!

Hà Phương