Bài giảng Phân tích thiết kế hướng đối tượng - Chương 3: Mô hình Use Case - Lê Thị Minh Nguyện
Nội dung
1. Giới thiệu Use case
2. Các khái niệm mô hình hóa UC
3. Luồng sự kiện trong UC
1. Giới thiệu Use case
Phân tích thiết kế hướng đối tượng 6
Giả sử tôi quyết định mua một chiếc máy fax mới
Loại máy nào sẽ được chọn đây?
Tôi tự hỏi thật chính xác mình muốn làm gì với chiếc máy fax sẽ mua?
Tôi muốn có những tính năng nào?
Tôi muốn dùng bằng giấy thường hay giấy thermal?
Tôi muốn copy bằng cái máy đó?
Tôi muốn nối nó với máy tính của mình?
Tôi muốn dùng nó vừa làm máy fax vừa làm scanner?
Tôi có cần phải gởi fax thật nhanh đến mức độ cần một chức năng chọn số tăng tốc?
Liệu tôi có muốn sử dụng máy fax này để phân biệt giữa một cú điện thoại gọi tới và một
bản fax gởi tới ?.
yến bay có một sân bay khởi hành và sân bay đến, thời điểm khởi hành và thời điểm đến, có thể liên quan đến các chặng dừng tại sân bay. Một điểm dừng chân có một thời điểm đến và thời điểm khởi hành. • Việc đặt vé có thể được hủy bỏ hoặc được xác nhận. Câu hỏi: Xác định mối quan hệ giữa các actor và use case BÀI TẬP TÌM USE CASE Trần Thị Kim Chi 31 Hệ thống đặt vé máy bay Bài tập 2 • A company wants to develop a ticketing and reservation system. This must support advance booking of tickets, cancellation of tickets and change of class of a ticket. All these are handled by a Reservation Clerk. • The system will also have a Web site where users can register themselves and purchase tickets online. They can pay either by using their online banking account or by credit card. Reservations made over the internet can only be cancelled across the counter. The system will also have a querying facility that allows users to check train time-tables, fares and availability of tickets. Phân tích thiết kế hướng đối tượng 32 8/30/2017 9 Ví dụ Phân tích thiết kế hướng đối tượng 33 Ví dụ Phân tích thiết kế hướng đối tượng 34 BÀI TẬP 3: Đăng ký học phần • Là trưởng ban It của trường ĐH KHTN, bạn được yêu cầu phát triển một hệ thống đăng ký học phần mới hệ thống mới cho phép sinh viên đăng ký học phần và xem phiếu điểm từ máy tính cá nhân được kết nối vào mạng nội bộ của trường. Các giảng viên cũng có thể truy cập hệ thống này để đăng ký lớp dạy và nhập điểm cho các môn học. • Trường sẽ giữ lại CSDL sẵn có về danh mục học phần mà trong đó lưu trữ toàn bộ thông tin về học phần. Đây là CSDL quan hệ và có thể truy cập bằng các câu lệnh SQL thông qua các server của trường. Hệ thống mới sẽ đọc các thông tin học phần trên CSDL cũ nhưng sẽ không cập nhập chúng. Phòng đào tạo sẽ tiếp tục duy trì các thông tin học phần thông qua hệ thống khác. Trần Thị Kim Chi 35 • Ở đầu mỗi học kỳ, sinh viên có thể yêu cầu danh sách các học phần được mở trong học kỳ đó. Thông tin về mỗi học phần, ví dụ như là tên giáo sư, khoa, và các môn học phần tiên quyết sẽ được cung cấp để giúp sinh viên chọn lựa. • Hệ thống mới cho phép sinh viên được chọn 4 học phần được mở cho học kỳ tới. Mỗi sinh viên có thể đưa ra hai môn học thay thế trong trường hợp không thể đăng ký theo nguyện vọng chính. Các học phần được mở tối đa là 100 và tối thiểu là 30 sinh viên. Các học phần có ít hơn 30 sinh viên sẽ bị hủy bỏ. • Đầu mỗi học kỳ, sinh viên có một khoảng thời gian để thay đổi các học phần đã đăng ký. Sinh viên chỉ có thể thêm hay hủy các học phần đăng kí trong khoảng thời gian này. Trần Thị Kim Chi 36 BÀI TẬP 3: Đăng ký học phần 8/30/2017 10 • Khi quá trình đăng ký đã hoàn tất cho mỗi sinh viên, hệ thống đăng kí sẽ gửi thông tin tới hệ thống thanh toán (billing system) để sinh viên có thể đóng học phí. Nếu một lớp bị hết chỗ trong quá trình đăng ký, sinh viên sẽ được thông báo về sự thay đổi trước khi xác nhận việc đăng ký học • Ở cuối học kỳ, sinh viên có thể truy cập vào hệ thống để xem phiếu điểm. Vì thông tin về điểm của sinh viên phải được giữ kín, nên hệ thống cần có cơ chế bảo mật để ngăn cản việc truy cập không hợp lệ • Các giảng viên có thể truy cập vào hệ thống để đăng ký những học phần mà họ sẽ dạy. Họ có thể xem danh sách các sinh viên đã đăng ký vào lớp của họ, cũng như nhập điểm sau mỗi khóa học. Trần Thị Kim Chi 37 BÀI TẬP 3: Đăng ký học phần Lập bảng chú giải (Glossary) của ứng dụng Course Registration: • Course (Học phần): Một môn học được dạy trong trường. • Course Offering (Lớp): Một lớp học cụ thể được mở trong mỗi học kỳ cụ thể cùng một học phần cụ thể được mở song song nhiều lớp trong mỗi học kỳ. Thông tin gồm cả ngày học trong tuần và giờ học. • Course Catalog (Danh mục học phần): Danh mục đầy đủ của tất cả các học phần được dạy trong trường. • Faculty: Toàn bộ cán bộ giảng dạy của trường. • Finance System (Hệ thống thanh toán): Hệ thống dùng để xử lý các thông tin thanh toán học phí. Trần Thị Kim Chi 38 BÀI TẬP 3: Đăng ký học phần Lập bảng chú giải (Glossary) của ứng dụng Course Registration: • Grade (Điểm số): Điểm của mỗi sinh viên trong một lớp cụ thể. • Professor (Giáo sư): Người giảng dạy trong trường. • Report Card (Phiếu điểm): Toàn bộ điểm số cho tất cả học phần một sinh viên đã học trong một học kỳ xác định. • Roster (Danh sách sinh viên đăng ký): Tất cả sinh viên đăng ký vào một lớp học cụ thể. • Student (Sinh viên): Người đăng ký học các lớp của trường. • Schedule (Lịch học): Các học phần mà sinh viên đã chọn học trong học kỳ hiện tại. • Transcript (Bản sao học bạ): Bản sao tất cả điểm cho tất cả các học phần của một sinh viên cụ thể được chuyển cho hệ thống thanh toán để hệ thống này lấp hóa đơn cho mỗi sinh viên. Trần Thị Kim Chi 39 BÀI TẬP 3: Đăng ký học phần Bài tập 3: Đăng ký học phần Hệ thống thư việnTrần Thị Kim Chi 40 Nhận diện actor • Người dùng: – Sinh viên (Student) – Giáo sư (Professor) – Nhân viên giáo vụ (Registrar) • Hệ thống khác: – Danh mục học phần (Course Catalog) – Hệ thống thanh toán học phí (Billing System) 8/30/2017 11 Bài tập 3: Đăng ký học phần Hệ thống thư việnTrần Thị Kim Chi 41 Nhận diện Use Case• Chức năng cho mọi actor: – Đăng nhập hệ thống (Login) • Các chức năng sử dụng bởi Student: – Đăng ký học phần (Register for Course) – Xem phiếu điểm (View Report Card) • Các chức năng sử dụng bởi Professor: – Đăng ký môn dạy (Select Courses to Teach) – Nộp điểm (Submit Grades) • Nhiệm vụ của Registrar: – Kết thúc đăng ký (Close Registration) – Cập nhật thông tin giáo sư (Maintain Professor Information) – Cập nhật thông tin sinh viên (Maintain Student Information) Bài tập 1: Đăng ký học phần Hệ thống thư việnTrần Thị Kim Chi 42 View Report Card Student Register for Courses Submit Grades Course Catalog Professor Select Courses to Teach Maintain Student Information Maintain Professor Information Billing System Registrar Close Registration User Login Bài tập 4 Phân tích thiết kế hướng đối tượng 43 Vẽ lược đồ Use case cho một hệ thống quản lý thư viện sách dựa trên các thông tin sau: o Bạn đọc sẽ có các quyền như: gửi ý kiến phản hồi cho thư viện, tìm kiếm tài liệu, quản lý thông tin cá nhân, xem thông tin trả/mượn sách và đăng kí mượn o Các chức năng như quản lý thông tin các nhân, xem thông tin trả/mượn và đăng kí mượn đòi hỏi người dùng phải login vào hệ thống o Khi đăng kí mượn ngoài việc đăng kí mượn trực tiếp thì người dùng còn có thể đăng kí mượn online Bài tập 4 (tt) o Thủ thư sẽ có công việc như nhập mới thông tin sách, đăng kí thông tin cho người dùng, thanh lý sách và chấp nhận/từ chối cho bạn đọc mượn sách o Thủ thư có công việc quản lý thông tin người dùng: thêm, xóa hay chỉnh sửa thông tin Phân tích thiết kế hướng đối tượng 44 8/30/2017 12 Bài tập 5 • Vẽ lược đồ Usecase cho phần mềm luyện thi MOS: o Người dùng sẽ có khả năng đăng kí tài khoản để sử dụng phần mềm để luyện thi MOS o Khi luyện thi MOS, người dùng có quyền luyện thi MOS Word hoặc Excel (trước đó yêu cầu phải login) o Khi luyện thi Word/Excel, người dùng có thể chọn lựa giữa xem thông tin từng câu hỏi, trả lời câu hỏi hay bỏ qua câu hỏi o Admin có quyền quản lý thông tin người dùng và quản lý thông tin cho bộ câu hỏi Phân tích thiết kế hướng đối tượng 45 Luồng sự kiện trong UC • Tài liệu luồng sự kiện (flow of events) mô tả hành vi của UC • Mô tả luồng logic đi qua UC • Mô tả người sử dụng làm gì, hệ thống làm gì • Trong một UC có nhiều luồng sự kiện: luồng chính, luồng phụ • Kịch bản (Scenario) • Một luồng sự kiện trong một hiện thực của UC • Là trình tự hành động cụ thể để mô tả hành vi • Kịch bản đi xuyên suốt UC theo nhánh chính, nhánh phụ, nhánh đặc biệt Phân tích thiết kế hướng đối tượng 46 Xây dựng kịch bản cho luồng sự kiện • Mô tả vắn tắt UC • Mô tả ngắn gọn UC làm gì? • Những ai sử dụng UC? • Nó cho lại kết quả gì? • Tiền điều kiện (pre-condition) • Điều kiện cần thực hiện trước khi UC khởi động • Không phải UC nào cũng có tiền điều kiện • Luồng sự kiện chính và luồng sự kiện rẽ nhánh • Hậu điều kiện (post-condition) Phân tích thiết kế hướng đối tượng 47 Xây dựng kịch bản cho luồng sự kiện Phân tích thiết kế hướng đối tượng 48 Tên use case Cập nhật từ điển môn học Tên Actor Nhân viên phòng đào tạo Tiền điều kiện Nhân viên phải đăng nhập hệ thống Mục đích Cập nhật các môn học trong từ điển môn học Mô tả Sau khi đăng nhập vào hệ thống, nhân viên phòng đào tạo cập nhật thông tin môn học vào biểu mẫu hoặc sửa môn học có sẵn và ghi lại. Hành động tác nhân Phản ứng hệ thống 1. Chọn chức năng cập nhật từ điển môn học 2. Hiển thị biểu mẫu để nhập thông tin về các môn học mới và hiển thị danh sách môn học để chọn môn học tiên quyết cho môn học. 3. Nhập thông tin môn học, chọn môn học tiên quyết, đồng ý nhập mới 4. Cập nhật môn học vào từ điển môn học Luồng sự kiện phụ: sửa thông tin Ngoại lệ: Bước4: nếu thông tin nhập không chính xác thì yêu cầu nhập lại hoặc dừng use case sử dụng. 8/30/2017 13 Xây dựng kịch bản cho luồng sự kiện Phân tích thiết kế hướng đối tượng 49 Tên use case Sửa đổi thông tin môn học Tên Actor Nhân viên phòng đào tạo Tiền điều kiện Nhân viên phải đăng nhập hệ thống Mục đích Sửa các thông tin về một môn học đang tồn tại trong hệ thống Mô tả Tìm đến môn học cần sửa đổi, xóa các thông tin cũ và nhập các thông tin mới về môn học này. Cuối cùng, yêu cầu hệ thống ghi nhận các thông tin mới. Hành động tác nhân Phản ứng hệ thống Luồng sự kiện phụ: sửa thông tin Ngoại lệ: Bước4: nếu thông tin nhập không chính xác thì yêu cầu nhập lại hoặc dừng use case sử dụng. Xây dựng kịch bản cho luồng sự kiện Phân tích thiết kế hướng đối tượng 50 Ngoại lệ: Bước4: Không có môn nào học nào thỏa điều kiện tìm kiếm thì thông báo không tìm được và yêu cầu tìm lại hoặc dừng lại Bước 8: Nếu thông tin sửa không chính xác thì yêu cầu sửa lại hoặc dừng Use case Phân tích thiết kế hướng đối tượng 51
File đính kèm:
- bai_giang_phan_tich_thiet_ke_huong_doi_tuong_chuong_3_mo_hin.pdf