Bài giảng Các phương pháp phân tích và thiết kế hệ thống hiện đại - Chương 3: Mô hình hóa yêu cầu - Vũ Chí Cường
Nội dung
1. Nghiên cứu sơ bộ
• Mục đích
• Phương pháp tiến hành
• Nội dung báo cáo tổng quan
• Xác lập và hoạch định dự án
2. Mô hình hóa yêu cầu
• Mục đích
• Một số khái niệm
• Các bước tiến hành
Trang 1
Trang 2
Trang 3
Trang 4
Trang 5
Trang 6
Trang 7
Trang 8
Trang 9
Trang 10
Tải về để xem bản đầy đủ
Bạn đang xem 10 trang mẫu của tài liệu "Bài giảng Các phương pháp phân tích và thiết kế hệ thống hiện đại - Chương 3: Mô hình hóa yêu cầu - Vũ Chí Cường", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
Tóm tắt nội dung tài liệu: Bài giảng Các phương pháp phân tích và thiết kế hệ thống hiện đại - Chương 3: Mô hình hóa yêu cầu - Vũ Chí Cường
nh các phạm trù theo các lĩnh vực chức năng hay theo những mức ưu tiên khác nhau để tránh sự lẫn lộn. Có thể phân 2 loại • Những chức năng hiển: cần thực hiện, người sử dụng có thể nhận biết và theo dõi • Những chức năng ẩn: cần thực hiện, người sử dụng không theo dõi được (chức năng kỹ thuật) 03/05/2018 5 Các phương pháp phân tích và thiết kế hệ thống hiện đại Ví dụ: Chức năng bán hàng Quy tắc Chức năng Loại R1.1 Ghi nhận các mặt hàng ở trong giỏ hàng mà khách hàng đã chọn. Hiển R1.2 Tính tổng số tiền bán cho khách hàng đang mua. Hiển R1.3 Nhập các thông tin về các mặt hàng qua mã vạch bằng máy đọc mã vạch hoặc nhập mã sản phẩm phổ biến (UPC: Universal Product Code) trực tiếp từ bàn phím. Hiển R1.4 Cập nhật, trừ bớt số lượng đã bán sau từng phiên bán hàng. Ẩn R1.5 Kết thúc một phiên bán hàng. Ẩn R1.6 Người bán hàng (cashier) phải login để khởi động hệ thống (cho biết tên ID và password) để sử dụng hệ thống. Hiển R1.7 Cung cấp một cơ chế lưu trữ nhất quán, CSDL. Ẩn R1.8 Cung cấp cơ chế trao đổi giữa các tiến trình, trao đổi thông tin giữa các hệ thống với nhau. Ẩn R1.9 Hiển thị các thông tin mô tả và giá bán các mặt hàng để khách hàng có thể theo dõi được. Hiển Các phương pháp phân tích và thiết kế hệ thống hiện đại Ví dụ: Chức năng thanh toán Quy tắc Chức năng Loại R2.1 Thu tiền mặt, nhập số tiền khách đưa và tính số dư phải trả lại cho khách hàng. Hiển R2.2 Thu tiền bằng thẻ tín dụng (Credit), nhập thông tin của thẻ tín dụng của khách qua máy đọc thẻ hoặc nhập trực tiếp từ bàn phím. Hiển R2.3 Thu tiền bằng séc, nhập số hiệu và số tiền của tờ Séc, tính số dư phải trả lại cho khách. Hiển 03/05/2018 6 Các phương pháp phân tích và thiết kế hệ thống hiện đại Các yêu cầu phi chức năng Yêu cầu về giao diện • Giao diện với người dùng (thân thiện) • Giao diện với các hệ thống khác Yêu cầu về thực thi • Giới hạn về không gian, thời gian • Độ tin cậy • Tính bảo mật • Khả năng chịu lỗi Yêu cầu về vận hành • Các ràng buộc vật lý • Mức kỹ năng và khả năng nhân sự • Dễ bảo trì • Các điều kiện về môi trường Yêu cầu về chu kỳ sống • Khả năng bảo trì, mở rộng,... • Giới hạn phát triển, tài nguyên,... Yêu cầu kinh tế • Thời gian, vốn,... Các phương pháp phân tích và thiết kế hệ thống hiện đại Ví dụ: Hệ thống mua bán hàng hóa Thời gian xử lý và trả lời nhanh khi nhập vào mã từng mặt hàng (máy đọc mã vạch, hay từ bàn phím) thì các thông tin về sản phẩm, giá bán phải được hiển thị ngay tức thì (chẳng hạn sau 5 giây). Dễ sử dụng với những giao diện đồ họa thân thiện phù hợp với người bán hàng: như các window và các hộp thoại,... Hệ thống thực hiện trên những hệ điều hành phổ dụng như Microsoft Window XP, 7, 8,... ... 03/05/2018 7 Các phương pháp phân tích và thiết kế hệ thống hiện đại 1. Nghiên cứu sơ bộ Mục đích Phương pháp tiến hành Nội dung báo cáo tổng quan Xác lập và hoạch định dự án • Xác định phạm vi và các hạn chế của dự án • Xác định các mục tiêu và ưu tiên cho dự án • Đề xuất giải pháp thô và chứng tỏ tính khả thi • Dự đoán và đánh giá các nguy cơ có thể xảy ra • Lập kế hoạch triển khai dự án (nhân sự, tài chính, lịch biểu...). Các phương pháp phân tích và thiết kế hệ thống hiện đại Ví dụ Xem case study – Hệ thống đăng ký môn học 03/05/2018 8 Các phương pháp phân tích và thiết kế hệ thống hiện đại 2. Mô hình hóa yêu cầu Mục đích • Hiểu đúng và đầy đủ về hệ thống cần xây dựng Một số khái niệm • Ca sử dụng (use case) • Tác nhân (actor) • Luồng sự kiện Các bước tiến hành 1.Tìm tác nhân 2.Tìm ca sử dụng 3.Mô tả ca sử dụng 4.Sắp thứ tự ưu tiên các ca sử dụng 5.Cấu trúc mô hình ca sử dụng 6.Xây dựng biểu đồ ca sử dụng Các phương pháp phân tích và thiết kế hệ thống hiện đại Một số khái niệm Ca sử dụng (use case) • Ca sử dụng hay trường hợp sử dụng • Mô tả tập các hoạt động của hệ thống theo quan điểm của các tác nhân • Trả lời cho câu hỏi: Hệ thống phải làm cái gì (what?) • Ca sử dụng mô tả một quá trình từ bắt đầu đến khi kết thúc để đạt được một giá trị gia tăng theo yêu cầu của tổ chức, tác nhân,... Tác nhân (actor) Luồng sự kiện 03/05/2018 9 Các phương pháp phân tích và thiết kế hệ thống hiện đại Một số khái niệm Ca sử dụng (use case) Tác nhân (actor) • Tác nhân ngoài • Là những thực thể bên ngoài có tương tác với hệ thống • Tên gọi của tác nhân được mô tả bằng danh từ • Tác nhân trao đổi với hệ thống qua các tương tác, sử dụng dịch vụ của hệ thống (thông điệp) • Một ca sử dụng phải được khởi động bởi 1 hoặc nhiều tác nhân Luồng sự kiện Các phương pháp phân tích và thiết kế hệ thống hiện đại Một số khái niệm Ca sử dụng (use case) Tác nhân (actor) Luồng sự kiện (Flow of events) • Dùng để mô tả chi tiết hơn hành vi của ca sử dụng (người sử dụng làm gì, hệ thống làm gì,...) • Ca sử dụng có nhiều luồng sự kiện (luồng chính, luồng phụ/rẽ nhánh) Kịch bản (scenario) • Chỉ ra luồng sự kiện trong một thể hiện cụ thể của ca sử dụng • Là trình tự hành động cụ thể để mô tả hành vi 03/05/2018 10 Các phương pháp phân tích và thiết kế hệ thống hiện đại Vai trò của ca sử dụng Các phương pháp phân tích và thiết kế hệ thống hiện đại B1. Tìm các tác nhân Trả lời các câu hỏi: • Ai sẽ sử dụng các chức năng chính của hệ thống? • Ai cần sự hỗ trợ của hệ thống để thực hiện các công việc hàng ngày? • Ai quản trị, bảo dưỡng để đảm bảo cho hệ thống hoạt động thường xuyên? • Hệ thống quản lý, sử dụng những thiết bị nào? • Hệ thống cần tương tác với những bộ phận, hệ thống nào khác? • Ai hay cái gì quan tâm đến kết quả xử lý của hệ thống? 03/05/2018 11 Các phương pháp phân tích và thiết kế hệ thống hiện đại Ví dụ Hệ thống đăng ký môn học • Sinh viên • Thầy giáo • Cán bộ phòng đào tạo • Hệ thu học phí Hệ thống mua bán hàng hóa • Khách hàng (Customer) • Người bán hàng (Cashier) • Người quản lý (Manager) • Người quản trị hệ thống (System Administrator) • Bộ phận kiểm duyệt séc và thẻ tín dụng Các phương pháp phân tích và thiết kế hệ thống hiện đại B2. Tìm ca sử dụng Các phương pháp • Phương pháp dựa vào các tác nhân • Phương pháp dựa vào các sự kiện kích hoạt hệ thống hay hệ thống phải trả lời Trả lời các câu hỏi • Nhiệm vụ chính của các tác nhân là gì? • Tác nhân cần phải đọc, ghi, sửa đổi, cập nhật hay lưu giữ thông tin hay không? • Những thay đổi bên ngoài hệ thống tin tác nhân có cần phải thông báo cho hệ thống hay không? • Những tác nhân nào cần được thông báo về những thay đổi của hệ thống? • Hệ thống cần có những đầu vào/ra nào? Từ đầu và đến đâu? 03/05/2018 12 Các phương pháp phân tích và thiết kế hệ thống hiện đại Ví dụ: Hệ thống mua bán hàng hóa • Bán hành, mua hàng (buy items) • Thanh toán (return items, cash out) • Đăng nhập hệ thống (login) • Khởi động (start up) • Đóng hệ thống (shutdown) • Bổ sung người sử dụng (add new users) • Loại bỏ người sử dụng (remove user) Các phương pháp phân tích và thiết kế hệ thống hiện đại B3. Mô tả ca sử dụng Mô tả theo khuôn dạng hoặc kịch bản • Đối với những ca sử dụng đơn giản, có thể mô tả theo các mẫu khuôn dạng đặc tả • Đối với những ca sử dụng phức tạp, có thể mô tả chi tiết thông qua các kịch bản nhằm mô tả những con đường cơ bản (luồng công việc chính). Sau đó mô tả những luồng ngoại lệ/rẽ nhánh Mô tả mô hình ca sử dụng tổng thể • Có thể tổ chức thành từng cụm ca sử dụng gọi là gói ca sử dụng • mô tả tổng quan của các ca sử dụng có thể ở dạng văn bản hay dạng bảng Hình thức hóa mô tả ca sử dụng • Có thể sử dụng các sơ đồ khác như sơ đồ trạng thái, sơ đồ hoạt động, sơ đồ tương tác để biểu diễn trực quan 03/05/2018 13 Các phương pháp phân tích và thiết kế hệ thống hiện đại B3. Mô tả ca sử dụng Khuôn dạng mô tả • Ca sử dụng: Tên của ca sử dụng (bắt đầu bằng động từ) • Các tác nhân: Danh sách các tác nhân liên quan, chỉ rõ tác nhân chính • Mục tiêu: Nêu rõ chức năng hệ thống mà ca sử dụng đảm nhận • Mô tả: Mô tả tóm tắt tiến trình xử lý công việc cần thực hiện • Tiền điều kiện (pre-conditions): Các điều kiện cần thực hiện trước khi ca sử dụng khởi động • Hậu điều kiện (post-conditions): Các điều kiện được thực hiện ngay sau khi ca sử dụng kết thúc • Tham chiếu: Các chức năng, ca sử dụng và những hệ thống liên quan • Yêu cầu đặc biệt: Các yêu cầu phi chức năng của hệ thống Các phương pháp phân tích và thiết kế hệ thống hiện đại Ví dụ: Ca sử dụng Mua, bán hàng Tác nhân: Khách hàng, người bán hàng Mục tiêu: Thực hiện được một giao dịch là mua hàng Mô tả: Khách hàng sau khi đã chọn đủ các mặt hàng cần mua để ở trong giỏ hàng thì đưa hàng đến quầy thu tiền. Người bán hàng lần lượt ghi nhận các mặt hàng trong giỏ hàng của khách và thu tiền. Sau khi thanh toán xong khách hàng được mang số hàng đã mua đi ra khỏi cửa hàng. Tham chiếu tới: R1.1, R1.2, R1.3, R1.6, R1.7, R1.8, R2.1, R2.2, R2.3. Tiền điều kiện: Khách hàng đã quyết định mua những mặt hàng đã bỏ vào giỏ hàng và các mặt hàng mà khách đã chọn đều đã được xác định giá. Hậu điều kiện: Thể hiện giao dịch mua hàng kết thúc. Số lượng tồn kho các loại mặt hàng khách lấy giảm đi tương ứng với lượng hàng khách đã lấy, lượng tiền hệ thống thu được trong ngày tăng lên tương ứng với lượng tiền khách đã trả. Yêu cầu đặc biệt: Thành tiền mỗi loại mặt hàng thanh toán cũng như tổng tiền phải hiện sau 5 giây mỗi khi người bán hàng «Chuyển dòng» hoặc bấm phím «Kết thúc» 03/05/2018 14 Các phương pháp phân tích và thiết kế hệ thống hiện đại Ví dụ: Luồng sự kiện ca rút tiền Luồng chính: 1. Ca sử dụng bắt đầu khi khách hàng đặt thẻ tín dụng vào máy ATM. 2. ATM hiển thị thông báo và chờ khách hàng nhập số PIN 3. Khách hàng nhập PIN 4. ATM khẳng định PIN hợp lệ? Nếu PIN không hợp lệ thì thực hiện luồng nhánh A1 5. ATM hiển thị các lựa chọn: Gửi tiền vào tài khoản Rút tiền Chuyển tiền sang tài khoản khác 6. Khách hàng chọn rút tiền 7. ATM hiển thị câu hỏi số tiền sẽ rút 8. Khách hàng nhập số tiền muốn rút Các phương pháp phân tích và thiết kế hệ thống hiện đại Ví dụ: Luồng sự kiện ca rút tiền Luồng chính (tiếp tục) 9. ATM xác định số dư còn đủ? Nếu không đủ tiền: thực hiện luồng nhánh A2. Nếu phát hiện lỗi khi kiểm tra số dư: thực hiện luồng nhánh A3. 10.ATM trừ số tiền trong tài khoản của khách hàng 11.ATM chuyển tiền cho khách hàng 12.ATM in biên nhận 13.ATM trả lại thẻ tín dụng 14.Ca sử dụng kết thúc. 03/05/2018 15 Các phương pháp phân tích và thiết kế hệ thống hiện đại Ví dụ: Luồng sự kiện ca rút tiền Luồng nhánh A1- Số PIN không hợp lệ: 1. ATM thông báo số PIN không hợp lệ 2. ATM trả lại thẻ tín dụng 3. Kết thúc ca sử dụng. Luồng nhánh A2: không đủ tiền trong tài khoản để rút: 1. ATM thông báo không đủ tiền 2. ATM trả lại thẻ tín dụng 3. Kết thúc ca sử dụng. Luồng lỗi A3: lỗi xảy ra khi kiểm tra số dư không đủ • ATM thông báo lỗi • ATM ghi thông báo này vào tệp chứa lỗi (error log) • ATM trả lại thẻ tín dụng • Kết thúc ca sử dụng. Các phương pháp phân tích và thiết kế hệ thống hiện đại Ví dụ: Kịch bản ca sử dụng Bán hàng Hành động của các tác nhân Hành động của hệ thống 1. Khách hàng sau khi chọn đủ số hàng cần thiết thì đưa hàng đã chọn đến cho quầy thu tiền 2. Người bán ghi nhận từng mặt hàng. Nếu một mặt hàng mua với số lượng nhiều hơn thì người bán nhập số lượng đó vào từ bàn phím. 3. Xác định giá và các thông tin về sản phẩm được hiển thị. 4. Khi đã nhập xong các mặt hàng của khách đã chọn mua thì người bán phải chỉ cho hệ thống biết là đã kết thúc phiên bán hàng bằng cách nhấn phím Enter hoặc nhấn nút “Kết thúc” phiên bán hàng (EndSale). 5. Tính và hiển thị tổng số tiền bán hàng. 6. Người bán thông báo cho khách hàng biết tổng số tiền phải trả. 03/05/2018 16 Các phương pháp phân tích và thiết kế hệ thống hiện đại Ví dụ: Kịch bản ca sử dụng Bán hàng Hành động của các tác nhân Hành động của hệ thống 7. Khách hàng chọn phương thức thanh toán: - Nếu chọn trả tiền mặt: xem tiếp kịch bản con (Sub_scenario) Thanh toán tiền mặt. - Nếu trả bằng thẻ tín dụng: xem kịch bản con Thanh toán bằng thẻ tín dụng. - Nếu trả tiền séc: xem kịch bản con Thanh toán bằng Séc. 8. Hiển thị số tiền dư phải trả cho khách hàng 9. Kết thúc một phiên giao dịch bán hàng. 10. Cập nhật lại các hàng trong cửa hàng. 11. Phát sinh phiếu bán hàng (hóa đơn). 12. Người bán trả tiền thừa và đưa phiếu bán hàng cho khách hàng. 13. Khách hàng ra khỏi cửa hàng với hàng đã thanh toán. Các phương pháp phân tích và thiết kế hệ thống hiện đại Ví dụ: Mô hình tổng quan ca sử dụng 03/05/2018 17 Các phương pháp phân tích và thiết kế hệ thống hiện đại Ví dụ: Mô hình tổng quan ca sử dụng Các tác nhân Khách hàng Các ca sử dụng 3 ca sử dụng: gửi tiền, rút tiền và chuyển tiền Mô tả nội dung Nội dung A. Ca sử dụng gửi tiền Khách hàng có thẻ tín dụng đưa thẻ vào kích hoạt hệ thống. Hệ thống hiện ra cửa sổ cho phép khách hàng nhập vào định danh của mình. Nếu định danh đúng, khách hàng chọn chức năng gửi tiền, nhập vào số tài khoản và số tiền muốn gửi làm kích hoạt máy nhận tiền. Khách hàng đưa số tiền muốn gửi vào máy. Máy nhận hết tiền và trả lại thẻ. B. Ca sử dụng rút tiền Giống như ca sử dụng gửi tiền. Chỉ khác ở chỗ chọn chức năng rút tiền và thay bằng việc đưa tiền vào thì hệ thống đưa tiền ra cho khách. C. Ca sử dụng chuyển tiền Giống như ca sử dụng gửi tiền. Chỉ khác ở chỗ chọn chức năng chuyển tiền là xong, sau đó không cần làm Các phương pháp phân tích và thiết kế hệ thống hiện đại Hình thức hóa ca sử dụng 03/05/2018 18 Các phương pháp phân tích và thiết kế hệ thống hiện đại B4. Sắp thứ tự ưu tiên các ca sử dụng Xác định các ca sử dụng quan trọng nhất, mang ý nghĩa về mặt kiến trúc Xác định thứ tự ca sử dụng sẽ được triển khai ngay (phân tích, thiết kế, thực thi,...) Ví dụ: Trong hệ thống ATM • Rút tiền là ca quan trọng nhất • Chuyển tiền và Gửi tiền ít quan trọng hơn Các phương pháp phân tích và thiết kế hệ thống hiện đại B5. Cấu trúc mô hình ca sử dụng Mục đích • Phân rã hoặc góm nhóm các ca sử dụng • Làm cho mô hình dễ hiểu và dễ làm việc Các bước • Mô tả chức năng chung Ca sử dụng trừu tượng Quan hệ tổng quát hóa • Mô tả mối quan hệ giữa các ca sử dụng Quan hệ mở rộng (>) Quan hệ sử dụng (>) 03/05/2018 19 Các phương pháp phân tích và thiết kế hệ thống hiện đại Ví dụ Các phương pháp phân tích và thiết kế hệ thống hiện đại B6. Xây dựng biểu đồ ca sử dụng Chú ý • Mỗi ca sử dụng luôn được ít nhất một tác nhân kích hoạt • Ca sử dụng cung cấp các thông tin cần thiết cho tác nhân và ngược lại, tác nhân cung cấp dữ liệu đầu vào cho ca sử dụng thực hiện. • Vẽ các tác nhân ngoài ở xung quanh, các ca sử dụng ở trung tâm cùng với các mối quan hệ giữa các ca sử dụng đó • Vẽ đường nối thể hiện tương tác giữa các tác nhân ngoài và các ca sử dụng. 03/05/2018 20 Các phương pháp phân tích và thiết kế hệ thống hiện đại Ví dụ
File đính kèm:
- bai_giang_cac_phuong_phap_phan_tich_va_thiet_ke_he_thong_hie.pdf