PHÂN TÍCH VÀ THIẾT KẾ CÁC HỆ THỐNG
Trang 1Phân tích và thiết kế các hệ thống
Xuất bản lần 2
Alan Dennis and Barbara Haley Winson John Wiley & Sons, Inc
Minh họa các hoạt động cụ thể được thực hiện và cách dữ liệu truyền đi giữa các hoạt động đó
Biểu đồ luồng dữ liệu
Một kỹ thuật phổ biến tạo các quy trình mẫu *Các định nghĩa khoá
Các quy trình mẫu có tính logic miêu tả những tiến trình không cho thấy cách quản lý các tiến trình đó
Các tiến trình mẫu thuộc về vật lý học bao gồm tiến trình thực hiện thông tin.
* Các biểu đồ luồng dữ liệu(DFD)
Cách đọc một luồng dữ liệu(DFD)
Trang 2Paitent: Bệnh nhân
Check patient status: Kiểm tra tình trạng bệnh nhân
Find possible appointment: Tìm kiếm sắp xếp các khả năngSchedule appointment: Mục lục sắp xếp
Appointment: Sắp xếp
Cancel appointment: Xoá sắp xếp
Desired appointment: sắp xếp theo yêu cầuPossible appointment: Cã thÓ sắp xếpPaitent name: Tên bệnh nhân
Verified paitent imformation: Xác nhận thông tin về bệnh nhânPaitent information: thông tin về bệnh nhân
Appointment information: sắp xếp thông tin
Availiable appointment: sắp xếp theo các trưòng
Trang 3Các bộ phận cấu thành DFD
Kho dữ liệu
Một tập hợp dữ liệu được lưu trữ ở nơi nào đó
Luồng dữ liệu truyền ra ngoài được phục hồi từ kho dữ liệu Luồng dữ liệu cập nhật hoặc được đưa vào kho dữ liệu
Trang 4- Miêu tả - Ghi chú
Miêu tả các tiến trình nghiệp vụ bằng DFD
-Các tiến trình nghiệp vụ quá phức tạp sẽ được cho thấy trên một biểu đồ luồng dữ liệu đơn lẻ (DFD)
-Sự phân tích là tiến trình miêu tả hệ thống trong một hệ thống cấp bậc của DFD
Trong chi tiết lớn hơn,các biểu đồ con thể hiện một phần của biểu đồ gốc
Định nghĩa khoá
Việc làm cho cân bằng gồm việc đảm bảo thông tin được đưa ra ngay khi mức của một DFD được thể hiện một cách chính xác ở mức DFD tiếp theo
Mối quan hệ giữa các mức DFD
Trang 5Context diagram: biểu đồ tình huống Level 0 diagram: biểu đồ mức 0 Level 1 diagram: biểu đồ mức 1 Level 2 diagram: biểu đồ mức 2
Context diagram: biểu đồ tình huống
Trang 6Data store N: kho dữ liệu
-DFD đầu tiên trong mọi tiến trình công việc
-Chỉ ra những tình huống mà có những tiến trình thích hợp -Chỉ ra toàn bộ tiến trình như là tiến trình mức 0
-Chỉ ra tất cả các tác động bên ngoài mà nhận thông tin hoặc đóng góp thông tin cho hệ thống
Biểu đồ luồng dữ liệu mức 0
-Chỉ ra tất cả các tiến trình chính mà tạo thành hệ thống tổng thể-thành phần bên trong của qui trình 0
-Những chỉ dẫn về các quan hệ qua lại giữa các tiến trình chính với các luồng dữ liệu
-Các chỉ dẫn về các tác động bên ngoài và các qui trình chính tác động qua lại với chúng
-Thêm vào các kho dữ liệu
Biểu đồ luồng dữ liệu mức 1
-Nói chung,một biểu đồ luồng dữ liệu mức 1 được tạo nên để dùng cho mọi tiến trình chính trên biểu đồ mức 0
-Những chỉ dẫn tất cả các qui trình bên trong tạo thành 1 qui trình đơn trên biểu đồ mức 0
-Những chỉ dẫn về cách thông tin truyền từ trên tới mỗi một qui trình trong các qui trình đó.Nếu 1 tiến trình được phân chia ví dụ phân thành 3 qui trình con thì sẽ phân chia 1 cách toàn bộ và hoàn toàn.Phục hồi các tiến trình gốc
Biểu đồ luồng dữ liệu mức 2
-Các chỉ dẫn tất cả các qui trình mà tạo qui trình đơn dựa trên biểu đồ mức 1
-Cho thấy cách thông tin truyền đi tới mỗi một trong các qui trình đó -Các biểu đồ mức 2 có thể không cần cho các tiến trình mức 1
-Việc đánh số chính xác mỗi qui trình giúp người sử dụng hiểu nơi nào tiến trình thích hợp với toàn bộ hệ thống
Sự phân chia và kết hợp luồng dữ liệu
-Sự phân chia luồng dữ liệu cho thấy nơi luồng bị chia thành những phần để sử dụng trong những qui trình riêng biệt.Sự phân chia luồng dữ liệu khong cần chọn lọc hoặc sử dụng tất cả dữ liệu từ luồng dữ liệu gốc
-Khi chúng ta di chuyển tới mức thấp hơn chúng ta sẽ xác định đúng hơn các dòng dữ liệu.Sự kết hợp luồng dữ liệu cho thấy nơi các bộ phận của nó được kết hợp lại để mô tả 1 luồng dữ liệu hoàn chỉnh hơn
Trang 7Luồng dữ liệu có thể thay thế
-Ở đâu một qui trình có thể tạo ra những luồng dữ liệu khác nhau thì đưa đến các điều kiện khác nhau
-Chúng ta chỉ ra cả luồng dữ liệu và sử dụng sự miêu tả tiến trình để giải thích tại sao chúng có thể thay thế
-Luồng dữ liệu có thể thay thế-Tip-thường diễn ra cùng với cấu trúc IF
Your Turn
-Tại điểm này trong qui trình dễ để mất dấu của “Big picture”
-Miêu tả sự khác nhau giữa các luồng dữ liệu các lưu trữ dữ liệu và các qui
Trang 8Bảng quyết định
-trình bày những cách giải quyết những quá trình phức tạp *Cách tạo ra một biểu đồ luồng dữ liệu
Integrating Scenario Descriptions
-Những DFD được bắt đầu cùng với việc xác định những yêu cầu và những công việc
-Thông thường , những DFD kết hợp các công việc lại với nhau -Tên của các công việc này trở thành những tiến trình.
-Những đầu vào và đầu ra trở thành các luồng dữ liệu
-Nguồn dữ liệu đầu vào và đầu ra đơn lẻ kết hợp thành một luồng đơn lẻ
Các bước xây dựng các DFD
- xây dựng sơ đồ tình huống
- tạo ra mỗi đoạn DFD cho mỗi công việc - sắp xếp mỗi đoạn DFD thành biểu đồ mức 0
- phân chia các tiến trình mức 0 thành những tiến trình mức 1 nếu cần, phân chia các tiến trình mức 1 thành những tiến tình mức 2 nếu cần,v v - kết nối các DFD với trình ứng dụng để đảm bảo công việc được hoàn thành và chính xác.
Xây dựng sơ đồ tình huống
* vẽ một tiến trình của toàn bộ hệ thống (tiến trình 0)
* Tìm tất cả các đầu ra và đầu vào đã được liệt kê ở trên đỉnh của các công việc mà bắt nguồn từ bề ngoài của những thực thể, vẽ giống như những luồng dữ liệu
* Vẽ trên thực thể như nguồn hoặc đích của những luồng dữ liệu
Ví dụ về sơ đồ tình huống
Trang 9Tạo ra những đoạn DFD
- Mỗi một công việc đổi thành một đoạn DFD - Số tiến trình giống với số công việc
- Thay đổi tên tiến trình thành một động từ
- Xây dựng các tiến trình từ quan điểm của việc tổ chức hoạt động hệ thống
Tạo ra những đoạn DFD
- Thêm những luồng dữ liệu để chỉ ra những kho dữ liệu thường dùng như là nguồn và đích của dữ liệu
- Sự sắp xếp các vị trí thích hợp + các tiến trình thì ở trung tâm + các dừ liệu đầu vào từ bên trái + các dữ liệu đầu ra ở bên phải
+ các kho dữ liệu ở dưới những tiến trình
Ví dụ một đoạn DFD
Trang 10Tạo ra biểu đồ mức 0
-Kết hợp những đoạn DFD thành một sơ đồ
- Thường là di chuyển từ trên xuống dưới,từ trái sang phải -Giảm tối thiểu những đường gạch ngang
-Lặp đi lặp lại nếu cần
-Những DFD thường được vẽ nhiều lần trước khi hoàn thành ngay cả đối với những người phân tích hệ thống có nhiều kinh nghiệm
Một ví dụ DFD mức 0
Trang 11
Tạo ra biểu đồ mức 1(và thấp hơn)
Mỗi ca sử dụng sử dụng nhiều trong DFD
Danh sách các bước trong ca sử dụng và mô tả trong mức 1 DFD Danh sách dữ liệu vào và dữ liệu ra trong ca sử dụng trở thành luồng
dữ liệu DFD
Bao gồm những nguồn và nơi đến của luồng dữ liệu để xử lý và cất giữ trong DFD
Có thể bao gồm các thực thể bên ngoài cho rõ ràng
Tạo ra những biểu đồ mức 1(và dưới mức 1)
-Mỗi công việc thì trở thành một DFD của chính nó
-Đưa ra những bước đã liệt kê công việc và miêu tả mỗi tiến trình trên DFD mức 1
-Những công việc đầu vào và đầu ra trở thành luồng dữ liệu trên DFD -Kể cả nguồn và đích của những luồng dữ liệu cùng với những tiến trình và những kho dữ liệu mà không có DFD
-Cũng có thể bao gồm bề thực thể bên ngoài
Việc tạo ra những biểu đồ mức 1(và dưới mức 1)
-Những luồng dữ liệu đầu ra hiện trên một DFD con thường được kết hợp lại thành luồng dữ liệu lớn hơn trên biểu đồ gốc
Trang 12-Những luồng dữ liệu đầu vào hiện ra trên DFD gốc thì thường không được kết hợp trên những biểu đồ con
-Khi nào thì những DFD ngừng phân chia?
-Theo lý tưởng,một DFD có ít nhất 3 tiến trình và không nhiều hơn 7 đến 9 tiến trình
Sự xác nhận tính hợp lệ của DFD
-Những lỗi cú pháp
Sự đảm bảo chính xác về cấu trúc của DFD
Đối với mỗi DFD:
Kiểm tra mỗi tiến trình về:
Một tên duy nhất:Là cụm động từ chỉ hành động;số,sự miêu tả Ít nhất một luồng dữ liệu đầu vào
Ít nhất một luồng dữ liệu đầu ra
Những tên của luồng dữ liệu đầu ra thường khác với những luồng dữ liệu đàu vào
Giữa 3 và 7 tiến trình trên DFD
Sự xác nhận tính hợp lệ của DFD
-Đối với mỗi DFD:
+Kiểm tra mỗi luồng dữ liệu về: Một tên duy nhất:Danh từ, sự miêu tả Nối với ít nhất một tiến trình
Chỉ ra trên một mặt duy nhất(không có hai đầu mũi tên) Số lượng dòng kẻ ngang là ít nhất
+Kiểm tra mỗi kho dữ liệu về:
Một tên duy nhất:Danh từ, sự miêu tả Ít nhất một luồng dữ liệu đầu vào Ít nhất một luồng dữ liệu đầu ra +Kiểm tra mỗi thực thể bên ngoài
Một tên duy nhất:Danh từ, sự miêu tả Ít nhất một luồng dữ liệu đầu vào Ít nhất một luồng dữ liệu đầu ra
Sự xác nhận tính hợp lệ của DFD
Trang 13Mỗi luồng dữ liệu, kho dữ liệu, và thực thể toàn bộ ở trên một DFD mức cao hơn thì hiện ra trên một DFD mức thấp hơn mà nó phân chia Những kho dữ liệu và luồng dữ liệu không xuất hiện trên một DFD mức thấp hơn thì không xuất hiện trên DFD gốc của nó.
Sự xác nhận tính hợp lệ của DFD
-Lỗi về ngữ nghĩa- chuyển tên biểu đồ phải đúng về nghĩa
-Đảm bảo sự chính xác mối liên hệ của DFD với những tiến trình giao dịch có thể xảy ra hoặc như mong muốn
-Để xác minh tính chính xác của sự miêu tả này, phải sử dụng +Sự tư duy về sự vật
+Sắp xếp những tiến trình
-Xem xét DFD mức thấp nhất để đảm bảo sự phân chia nhất quán -Xem xét những tên một cách cẩn thận để đảm bảo việc sử dụng nhất quán về các thuật ngữ.
Tổng kết
-Sơ đồ luồng dữ liệu(DFD) là một công cụ quan trọng để biểu diễn sự miêu tả thông thường của những tiến trình giao dịch
-Sử dụng việc ghi chép các tiến trình giao dịch của đầu vào, sự chuyển đổi, đầu ra và là cơ sở cho những mô hình tiến trình
-Suy ra việc sử dụng những tình huống và những tiến trình giao dịch hiên đại là những kỹ năng quan trọng cho người phân tích hệ thống giỏi hơn
Bản quyền © 2003-John Wiley và Sons,Inc
Trang 14-Những thông tin này đã được cấp bản quyền cho John Wiley và Sons, Inc
-Bản quyền đã được ấn định Teo điều 117 của luật về bản quyền của liên bang Mỹ, việc tái bản và dịch lại mà không được sự đồng ý của người sở hữu bản quyền là phạm luật
-Người mua có thể photo lại cho chính họ mà không phải là phân phát hay là bán lại
-Tác giả không chịu trách nhiêm về những lỗi, những thiện hại khi sử dụng chương trình mà lấy những thông tin trong bài này