http://www.ebook.edu.vn Tài liệu Phân Tích Thiết Kế Hệ Thống 48 Chương 5 . PHÂN TÍCH DỮ LIỆU VÀ YÊU CẦU CHỨC NĂNG (DATA ANALYSIS AND FUNCTIONAL REQUIREMENTS) I GIỚI THIỆU 1 Hoạt động kiểm tra yêu cầu chức năng Hoạt động kiểm tra yêu cầu chức năng đôi khi còn gọi là lượng giá mô hình (validating the model, data model validation ) nhằm phát hiện sai sót trong mô hình dữ liệu, làm cho mô hình dữ liệu phù hợp với yêu cầu của hệ thống hơn. Kiểm tra yêu cầu chức năng là hoạt động nằm trong giai đoạn thiết kế csdl logic (hình). 2 Phân tích hệ thống thông tin Phân tích hệ thống thông tin có các khía cạnh sau: ¾ Phương pháp tiếp cận từ trên xuống (từ tổng quát đến chi tiết) (top down approach) ¾ Tập trung chú ý vào dữ liệu yêu cầu và mối kết hợp của chúng. ¾ Phân tích hệ thống thông tin tạo điều kiện cho việc dùng lại dữ liệu. 3 Phân tích dữ liệu Ngược lại với phân tích hệ thống thông tin, phân tích dữ liệu chỉ tập trung vào một ứng dụng trong một tổ chức như hệ đơn đặt hàng, hệ công nợ. Lợi ích của phân tích dữ liệu là chi phí và thời gian ước lượng cho dự án là tương đối chính xác. Bất lợi là dữ liệu dùng chung có thể bò trùng lắp. http://www.ebook.edu.vn Tài liệu Phân Tích Thiết Kế Hệ Thống 49 II NGUỒN DỮ LIỆU 1 Các phương pháp thu thập thông tin Dữ liệu yêu cầu và mối tương quan giữa các dữ liệu được thu thập bằng các phương pháp sau: + Phỏng vấn và lắng nghe (interviewing and listening) + Bảng câu hỏi (administering questionnaires) + Quan sát (observing) + Phân tích qui trình (Procedure) và tài liệu (màn hình, báo cáo phát sinh của máy tính và Biểu mẫu hiện hữu) 2 Phân tích mẫu biểu CUNG ỨNG VVP QUỐC GIA Văn phòng chính: 1234 Pacific Highway Newtown NSW 2199 ĐT: 81231234 Fax: 81231235 Ngày: 10.07.96 Số đơn hàng: 134277 ĐƯC ĐẠT BỞI GIAO CHO Công ty: Western Stationery Công ty: Western Stationery Người đặt hàng: Tanya Mã khách hàng: W123 Người nhận hàng: Carlo Đòa chỉ: 22B St Georges Tce Đòa chỉ: 862 Welshpool road Thành phố: Perth Bang: WA Thành phố: Kewdale Bang: WA Mã thư tín: 6000 Số ĐT: 8321 3214 Mã thư tính: 6104 Số ĐT: 84331111 Số lượng Mã hàng Đơn vò tính Màu sắc Mô tả Đơn gía Thành tiền 40 A7211 Cái trắng Giấy A4 5.97 238.80 12 B7123 Cái trắng cuộn giấy fax 3.65 43.80 1 A7216 tá cuộn băng keo 2.64 20.64 1 J2312 cái màu be Tủ 268.95 268.95 1 N0002 hộp nâu cuộn nơ 3.27 3.27 Miễn phí giao hàng cho đơn hàng có giá trò trên 50.00 Phí giao hàng: 1.50 Tổng cộng: 575.47 Hoàn trả sản phẩm trong vòng 30 ngày sẽ được hoàn tiền mua hàng Hình 4.2 – Mẫu biểu đơn đặt hàng và tập thực thể / thuộc tính được nhận diện i Tính chất Trước khi phân tích mẫu biểu, ta có nhận xét sau: ¾ tên mẫu biểu có thể giống tên tập thực thể nhưng chúng hoàn toàn khác nhau như: tập thực thể HÓA ĐƠN và mẫu biểu hóa đơn ¾ phân tích mẫu biểu để nhận diện tập thực thể, mối tương quan giữa chúng và thuộc tính của vấn đề. ¾ Một mẫu biểu thường có các thông tin in sẵn mà chúng ta không cần quan tâm trong việc xây dựng mô hình dữ liệu. ¾ mẫu biểu chứa thuộc tính của nhiều tập thực thể. ii Phân tích Từ mẫu đơn đặt hàng ta rút ra những điều sau: 1. Thông tin in sẵn trên đơn đặt hàng: http://www.ebook.edu.vn Tài liệu Phân Tích Thiết Kế Hệ Thống 50 + Tên công ty, đòa chỉ và điện thoại liên hệ + Tên mẫu biểu + Thông tin quảng cáo 2. Số đơn hàng và ngày đơn hàng là các thông tin của một đơn hàng. Vậy ĐƠN HÀNG là một tập thực thể. 3. Phần được đặt bởi là các thông tin về khách hàng đặt hàng. Vậy ta có tập thực thể KHÁCH HÀNG 4. Phần nơi giao hàng là các thông tin về người nhận hàng. Người nhận hàng có thể là người đặt hàng cũng có thể là người khác. Thông tin người mhận hàng chỉ nhằm mục đích mô tả thêm về đơn hàng là hàng giao cho ai mà không có mục đích gì khác chẳng hạn như có bao nhiêu người nhận mặt hàng H vì thế chúng ta đưa chúng vào tập thực thể ĐƠN HÀNG. 5. Thông tin trên phần chi tiết là danh sách các mặt hàng cung ứng. Ta gọi mỗi dòng như vậy là một thực thể của tập thực thể DÒNG ĐƠN HÀNG 6. Cột thành tiền của đơn hàng là giá trò được tính bằng cách nhân đơn giá bán với số lượng, nên thông tin này không cần đưa vào mô hình ER. 7. Những thông tin như đơn vò tính, mã hàng, màu sắc, mô tả, đơn giá là các thuộc tính của mặt hàng vậy MẶT HÀNG là tập thực thể. Như vậy chỉ có thuộc tính số lượng là thuộc tính của tập thực thể DÒNG ĐƠN HÀNG. 8. Bên dưới đơn hàng là chi phí giao hàng và tổng giá trò đơn hàng. Chi phí giao hàng là chi phí của một đơn hành nên chúng là thuộc tính của tập thực thể ĐƠN HÀNG. Tổng giá trò của đơn hàng được tính bằng cách cộng các giá trò trên cột thành tiền và chi phí giao hàng nên chúng không được đưa vào mô hình ER. 9. Thông thường các thông tin trên một mẫu biễu không nhóm chung để diễn tả một thực thể. Trong các trường hợp như vậy đòi hỏi ta phải biết gán thuộc tính thích hợp cho từng thực thể Những thành phần chính của mẫu biểu đơn đặt hàng: o Tập thực thể KHÁCH HÀNG o Tập thực thể ĐƠN HÀNG o Tập thực thể DÒNG ĐƠN HÀNG o Tập thực thể HÀNG o Các vùng tính toán như thành tiền, tổng cộng Từ sự phân tích trên ta có mô hình sau: http://www.ebook.edu.vn Tài liệu Phân Tích Thiết Kế Hệ Thống 51 III KIỂM TRA YÊU CẦU CHỨC NĂNG 1 Nguyên tắc chung ¾ Mỗi bảng trong mô hình cần phải kiểm tra 4 chức năng CRUD (create, retrieve, update, delete/archive) sau: o Thêm mới mẫu tin vào bảng: chú ý trước khi thêm giá trò cho khóa ngoại phải thêm giá trò của khóa chính tương ứng trước (thêm bên một rồi thêm bên nhiều). o Khai thác mẫu tin: khi khai thác ta có thể kết nối thông tin thông qua các vùng (thường khóa chính và khóa ngoại). Kết quả của việc khai thác cho hiện lên màn hình hay in ra báo cáo. o Sửa dữ liệu: trường hợp sửa dữ liệu trên vùng khóa ta phải chú ý ràng buộc phụ thuộc tồn tại o Xóa: lưu rồi xóa. ¾ Mô hình ER dùng để kiểm tra chức năng phải có thuộc tính và khóa ngoại. ¾ Kiểm tra các chức năng nhằm mục đích phát hiện những thiếu sót trong mô hình dữ liệu. 2 Ví dụ: Mô hình dữ liệu trên có các yêu cầu chức năng sau: 1. Thêm đơn hàng mới. 2. Liệt kê đơn hàng và tên công ty đặt đơn hàng đó. 3. Sửa tên khách hàng của một đơn hàng 4. Sao lưu rồi xóa bỏ các đơn hàng có ngày đặt hàng trước một ngày nào đó. 5. In báo cáo các đơn hàng và tên công ty đặt đơn hàng đó theo thứ tự ngày đơn hàng giảm dần. 6. Cho hiện mãhàng, mô tả của các mặt hàng của một khách hàng. http://www.ebook.edu.vn Tài liệu Phân Tích Thiết Kế Hệ Thống 52 ĐƠN HÀNG KHÁCH HÀNG ngày đơn hàng công ty nhận người nhận đòa chỉ nhận thành phố nhận bang nhận mã thư tín nhận chi phí giao hàng số điện thoại nhận mã khách hàng h àng tên công ty tên khách hàng đòa chỉ thành phố bang mã thư tính số điện thoại Hình 4.5 - Mô hình ER và mô hình quan hệ có khóa n g oạ i được đặt bởi đặ t DÒNG ĐƠN HÀNG MẶT HÀNG chứ a thuộc về ke â được kê bởi số đơn hàng số thứ tự số lượng đơn giá bán mã hàng mô tả đơn vò tính màu sắc đơn giá hiện hành ĐƠN HÀNG(số đơn hàng,ngày đơn hàng, công ty nhận,người nhận,đòa chỉ nhận,thành phố nhận, bang nhận,mã thư tín nhận,chi phí giao hàng,số điện thoại nhận, ) DÒNG ĐƠN HÀNG(số đơn hàng,số thứ tự số lượng,đơn giá bán) MẶT HÀNG(mã hàng,mô tả ,đơn vò tính,màu sắc,đơn giá hiện hành) KHÁCH HÀNG(mã khách hàng,tên công ty,tên khách hàng,đòa chỉ,thành phố,bang,mã thư tính,số điện thoại) Chúng ta sẽ lần lượt thực hiện các yêu cầu chức năng trên: 1. Chức năng thêm mới một đơn hàng. Ta lần lượt thêm mới theo thứ tự sau: • Nếu là khách hàng mới thì thêm thông tin về khách hàng vào bảng KHÁCH HÀNG. • Thêm số đơn hàng, ngày đơn hàng, vào bảng ĐƠN HÀNG. • Ở mỗi dòng trên biểu mẫu đơn hàng ta lần lượt thực hiện: o Nếu là mặt hàng mới thì thêm thông tin về mặt hàng vào bảng MẶT HÀNG. o Thêm số đơn hàng, số thứ tự, vào bảng DÒNG ĐƠN HÀNG • Quá trình thêm đơn hàng mới sẽ không có vấn đề khi thứ tự trên được tôn trọng. 2. Chức năng khai thác: • Giả sử dữ liệu đã có đầy đủ. • Để khai thác ĐƠN HÀNG và Tên công ty ta: o Lần lượt khai thác từng mẫu tin trong bảng ĐƠN HÀNG. o Liệt kê các giá trò của các vùng của ĐƠN HÀNG. o ng với mỗi mẫu tin của ĐƠN HÀNG ta sử dụng giá trò vùng Mã khách hàng để tìm mẫu tin có cùng giá trò trên vùng Mã khách hàng trong KHÁCH HÀNG và khai thác Tên công ty. 3. Chức năng sửa: • Trong bảng KHÁCH HÀNG tìm mẫu tin của khách hàng cần sửa và sửa Tên khách hàng 4. Chức năng xóa và sao lưu: http://www.ebook.edu.vn Tài liệu Phân Tích Thiết Kế Hệ Thống 53 • Muốn xóa một mẫu tin của đơn hàng ta phải biết biết đơn hàng nào đã gởi, đơn hàng nào chưa. Mô hình hiện tại không thể hiện điều này. Để đáp ứng yêu cầu chức năng này, đòi hỏi ta phải thêm thuộc tính Đã gởi vào tập thực thể ĐƠN HÀNG. • Lần lượt khai thác các mẫu tin trong bảng ĐƠN HÀNG, chọn mẫu tin có giá trò đúng trên vùng Đã gởi và có Ngày đơn hàng trước ngày cần xóa rồi chép lưu và xóa. 5. Chức năng khai thác: • Lần lượt khai thác các mẫu tin trong ĐƠN HÀNG theo thứ tự Ngày đặt hàng giảm dần. • ng với mỗi mẫu tin trong ĐƠN HÀNG, ta sử dụng giá trò vùng Mã khách hàng để tìm mẫu tin có cùng giá trò Mã khách hàng trong KHÁCH HÀNG và khai thác Tên công ty. • ng với mỗi mẫu tin trong ĐƠN HÀNG, ta sử dụng giá trò vùng Số đơn hàng lần lượt tìm mẫu tin có cùng giá trò Số đơn hàng trong DÒNG ĐƠN HÀNG và khai thác , • và ứng với mỗi mẫu tin trong DÒNG ĐƠN HÀNG, ta sử dụng giá trò vùng mã hàng tìm mẫu tin có cùng giá trò mã hàng trong bảng MẶT HÀNG và khai thác các giá trò các vùng trong bảng MẶT HÀNG. • Kết thúc mỗi đơn hàng tính tổng giá trò của đơn hàng. 6. Chức năng khai thác • Dùng thông tin về khách hàng cần tìm, tìm mẫu tin tương ứng trong bảng KHÁCH HÀNG và khai thác các giá trò của các vùng của mẫu tin này. • Lần lượt khai thác các mẫu tin trong bảng ĐƠN HÀNG chọn mẫu tin có giá trò Mã khách hàng bằng với gía trò mã khách hàng tìm thấy ở bước trên. • ng với mẫu tin của bảng ĐƠN HÀNG được chọn, lần lượt khai thác các mẫu tin của dòng đơn hàng có cùng giá trò mã đơn hàng. • ng với mỗi mẫu tin của DÒNG ĐƠN HÀNG, sử dụng mã hàng để tìm mẫu tin hàng tương ứng trong bảng MẶT HÀNG. • Ứng với mẫu tin của bảng MẶT HÀNG tìm thấy ở bước trên cho hiện giá trò của các vùng mã hàng, mô tả. MÔ HÌNH DỮ LIỆU Biến đổi mô hình ER thành mô hình quan hệ QUAN HỆ TUYỂN CHỌN Hình 3.14 - Yêu cầu chức năng trong các bước phân tích thiết kế dữ liệu dựa vào yêu cầu chức năng để kiểm tra mô hình dữ liệu IV BÀI TẬP 4.1 ĐỒ GỖ THUNG LŨNG ĐƯỜNG ỐNG HÓA ĐƠN BÁN HÀNG Số hóa đơn: 913-A36-01 Ngày hóa đơn: 11-10-2001 Bán cho: Mã khách hàng: 1273 Họ tên: Contemporary Designs Đòa chỉ: 123 Oak Street http://www.ebook.edu.vn Tài liệu Phân Tích Thiết Kế Hệ Thống 54 Thành phố: Keydale Bang:TX Zip:28384 Số điện thoại: 8 565 895 Nhân viên bán hàng: Jenny Mã sản phẩm Mô tả Số lượng Đơn giá Thành tiền M128 Kệ sách 4 200 800 B381 Tủ nhiều ngăn 2 150 300 B210 Bảng 1 500 500 G200 Ghế 8 400 3200 Cộng: 4800 Giảm giá: 5% 240 Tổng cộng: 4560 Hãy phân tích biểu mẫu trên: (a) Xây dựng mô hình ER có đưa vào bản số, tính bắt buộc hay không bắt buộc và tên mối kết hợp theo hai chiều. (b) Diễn tả nội dung mối kết hợp giữa các tập thực thể. (c) Chuyển mô hình ER thành mô hình quan hệ. (d) Kiểm tra chức năng: 1. thêm một hóa đơn mới. 2. In một hóa đơn đã có. V TRẮC NGHIỆM 1) To do fact finding, the analyst does the following A) Interviews personal, prepares questionnaires, observers current system B) Gathers forms and documents currently in use C) Cost-benefit analysis 2) Establishing team standards is part of which step in the data modeling process? A) creating the data model B) validating the model C) planning the project D) determining system requirements E) It is not part of any of the above steps in the data modeling process. oOo . yêu cầu và mối kết hợp của chúng. ¾ Phân tích hệ thống thông tin tạo điều kiện cho việc dùng lại dữ liệu. 3 Phân tích dữ liệu Ngược lại với phân tích hệ thống thông tin, phân tích dữ liệu chỉ. hợp với yêu cầu của hệ thống hơn. Kiểm tra yêu cầu chức năng là hoạt động nằm trong giai đoạn thiết kế csdl logic (hình). 2 Phân tích hệ thống thông tin Phân tích hệ thống thông tin có các. 913-A3 6-0 1 Ngày hóa đơn: 1 1-1 0-2 001 Bán cho: Mã khách hàng: 1273 Họ tên: Contemporary Designs Đòa chỉ: 123 Oak Street http://www.ebook.edu.vn Tài liệu Phân Tích Thiết Kế Hệ Thống 54 Thành