intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Phân tích thiết kế hướng đối tượng: Chương 3 - Lê Thị Minh Nguyện

Chia sẻ: Phong Phong | Ngày: | Loại File: PDF | Số trang:13

64
lượt xem
5
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Bài giảng Phân tích thiết kế hướng đối tượng: Chương 3 cung cấp cho người học các kiến thức: Giới thiệu Use case, các khái niệm mô hình hóa UC, luồng sự kiện trong UC. Mời các bạn cùng tham khảo nội dung chi tiết.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Phân tích thiết kế hướng đối tượng: Chương 3 - Lê Thị Minh Nguyện

8/30/2017<br /> <br /> Nội dung<br /> 1. Giới thiệu Use case<br /> 2. Các khái niệm mô hình hóa UC<br /> 3. Luồng sự kiện trong UC<br /> <br /> Chương 3.<br /> Mô hình Use Case<br /> GV: Lê Thị Minh Nguyện<br /> Email: nguyenltm@huflit.edu.vn<br /> <br /> Phân tích thiết kế hướng đối tượng<br /> <br /> 1<br /> <br /> 1. Giới thiệu Use case<br /> <br /> Phân tích thiết kế hướng đối tượng<br /> <br /> 2<br /> <br /> 1. Giới thiệu Use case<br /> <br /> MUA<br /> SODA<br /> <br /> Đưa tiền<br /> Lựa sản phẩm<br /> Lấy sản phẩm<br /> <br /> Phân tích thiết kế hướng đối tượng<br /> <br /> 3<br /> <br /> Phân tích thiết kế hướng đối tượng<br /> <br /> 4<br /> <br /> 1<br /> <br /> 8/30/2017<br /> <br /> 1. Giới thiệu Use case<br /> <br /> 1. Giới thiệu Use case<br /> Giả sử tôi quyết định mua một chiếc máy fax mới<br /> Loại máy nào sẽ được chọn đây?<br /> 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?<br /> <br /> Đưa tiền<br /> <br /> Tôi muốn có những tính năng nào?<br /> Tôi muốn dùng bằng giấy thường hay giấy thermal?<br /> Tôi muốn copy bằng cái máy đó?<br /> <br /> Lựa sản phẩm<br /> <br /> Tôi muốn nối nó với máy tính của mình?<br /> Tôi muốn dùng nó vừa làm máy fax vừa làm scanner?<br /> <br /> Không có SP<br /> <br /> 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?<br /> 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<br /> <br /> bản fax gởi tới ?.<br /> Phân tích thiết kế hướng đối tượng<br /> <br /> 5<br /> <br /> 1. Giới thiệu Use case<br /> <br /> Phân tích thiết kế hướng đối tượng<br /> <br /> 6<br /> <br /> 2. Các khái niệm mô hình hóa UC<br /> 2.1. Tác nhân (Actor)<br /> 2.2. Use case-UC<br /> 2.3. Ví dụ xác định Actor và Use case<br /> 2.4. Quan hệ (Relationship)<br /> 2.5. Biểu đồ Use Case (Use case Diagram)<br /> <br /> Giả sử tôi quyết định mua một chiếc máy fax mới<br /> <br /> Loại máy nào sẽ được chọn đây?<br /> 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?<br /> Tôi muốn có những tính năng nào?<br /> Tôi muốn dùng bằng giấy thường hay giấy thermal?<br /> Tôi muốn copy bằng cái máy đó?<br /> Tôi muốn nối nó với máy tính của mình?<br /> Tôi muốn dùng nó vừa làm máy fax vừa làm scanner?<br /> 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?<br /> 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<br /> bản fax gởi tới ?.<br /> Phân tích thiết kế hướng đối tượng<br /> <br /> 7<br /> <br /> Phân tích thiết kế hướng đối tượng<br /> <br /> 8<br /> <br /> 2<br /> <br /> 8/30/2017<br /> <br /> 2.1. Actor<br /> <br /> 2.1. Actor<br /> Tìm kiếm tác nhân của hệ thống<br /> <br /> • Tác nhân (actor) biểu diễn bất cứ thứ gì tương tác<br /> với hệ thống.<br /> • Là đối tượng bên ngoài tương tác với hệ thống theo 3<br /> hình thức:<br /> • Tương tác trao đổi thông tin với hệ thống hoặc sử dụng<br /> chức năng.<br /> • Cung cấp đầu vào hoặc nhận thông tin đầu ra từ hệ thống.<br /> • Không điều khiển hoạt động của hệ thống.<br /> <br /> • Đặt các câu hỏi sau để tìm ra tác nhân:<br /> Nhóm người nào yêu cầu hệ thống làm việc giúp họ?<br /> Nhóm người nào kích hoạt chức năng của hệ thống?<br /> Nhóm người nào sẽ duy trì và quản trị hệ thống hoạt động?<br /> Hệ thống có tương tác với các thiết bị ngoại vi hay phần mềm<br /> nào khác không?<br /> • Hệ thống đang xây dựng tương tác với hệ thống khác nào?<br /> •<br /> •<br /> •<br /> •<br /> <br /> Actor<br /> <br /> • Có thể là người, máy móc hoặc hệ thống khác mà<br /> chúng ta không phải xây dựng<br /> <br /> • Thông tin về tác nhân:<br /> • Tên tác nhân phải mô tả vai trò của tác nhân đó một cách rõ ràng<br /> • Tên nên là danh từ<br /> • Cần mô tả khái quát khả năng của tác nhân đó<br /> <br /> • Ví dụ như các thiết bị ngoại vi, thậm chí là database<br /> KhachHang<br /> 9<br /> <br /> 10<br /> <br /> 2.2. Use Case (UC)<br /> <br /> 2.2. Use Case (UC)<br /> <br /> • Use case (Chức năng): Mô tả chức năng mà hệ thống có<br /> • Mỗi Use-Case biểu diễn cho một chức năng của hệ thống<br /> • Use-Case là một chuỗi bao gồm nhiều hành động<br /> • Mỗi Use-Case có thể mở rộng (extext) thành nhiều Use-Case<br /> khác<br /> • Mỗi Use-Case có thể bao hàm (include) nhiều Use-Case khác<br /> • Use-Case được đặt bên trong phạm vi hệ thống<br /> • Ký hiệu: hình elip + tên Use-Case (động từ)<br /> <br /> Tìm kiếm Use Case của hệ thống<br /> • Xem các yêu cầu chức năng để tìm ra các UC<br /> • Đối với mỗi tác nhân tìm được, đặt các câu hỏi sau để tì ra các Use<br /> case hệ thống.<br /> • Các tác nhân yêu cầu hệ thống thực hiện chức năng nào<br /> • Các công việc chính(đọc, ghi, tạo lập, bãi bỏ, sửa đổi) mà tác nhân đó muốn<br /> HT thực thi?<br /> • Tác nhân đó có tạo ra hay thay đổi dữ liệu gì của HT?<br /> • Tác nhân đó có phải thông báo gì cho HT?<br /> • Tác nhân đó có cần thông tin thông báo gì từ HT?<br /> <br /> • Thông tin về use case:<br /> Use Case<br /> <br /> • Tên của UC nên chỉ rõ kết quả của quá trình tương tác với tác nhân<br /> • Tên nên là động từ<br /> • Mô tả ngắn gọn về mục đích của UC<br /> <br /> Mượn sách<br /> Phân tích thiết kế hướng đối tượng<br /> <br /> 11<br /> <br /> Phân tích thiết kế hướng đối tượng<br /> <br /> 12<br /> <br /> 3<br /> <br /> 8/30/2017<br /> <br /> Những điều nên tránh khi tạo Use Case<br /> <br /> Ranh giới giữa hệ hệ thống và thế giới thực<br /> <br /> • Tạo ra các UC quá nhỏ<br /> <br /> • Hành động quá đơn giản mà chỉ cần mô tả bởi vài dòng<br /> • Tạo ra quá nhiều Use case (hàng chục)<br /> <br /> • Nhóm các Use case liên quan thành một Use case tổng quát<br /> (mức 1)<br /> • Mô tả các Use Case tổng quát ở một sơ đồ khác (mức 2)<br /> • Ví dụ: “Quản lý sách” bao gồm “Nhập sách”, “Xuất sách”, “…”<br /> <br /> • Sử dụng các Use-case quá cụ thể, hoặc làm việc với dữ liệu quá cụ<br /> thể. Ví dụ:<br /> <br /> Subject/System boundary:<br /> Chỉ ra ranh giới (boundary) giữa system và thế giới thực.<br /> Actor thường nằm bên ngoài system, use cases thường<br /> nằm trong system<br /> <br /> • “Tìm sách theo tên” (nên là “Tìm sách”)<br /> • “Nhập Pin vào máy ATM” (nên là “Nhập PIN”)<br /> • “Thêm sách” (nên là “Quản lý sách” bao gồm “Thêm sách”)<br /> Phân tích thiết kế hướng đối tượng<br /> <br /> 13<br /> <br /> Ví dụ: Xác định tác nhân và Use Case<br /> <br /> Phân tích thiết kế hướng đối tượng<br /> <br /> 14<br /> <br /> Ví dụ: Xác định tác nhân và Use Case<br /> <br /> • Xét hệ thống website có các chức năng sau:<br /> • Khách hàng đăng ký tài khoản và mua sản phẩm<br /> • Chủ cửa hàng duyệt các đơn hàng và đăng ký sản phẩm<br /> • Hệ thống website có chức năng xuất báo cáo ra tập tin excel sử dụng phần<br /> mềm MS Excel<br /> • Hệ thống hỗ trợ khách hàng trực tuyến bằng cách trao đổi trực tiếp bằng âm<br /> thanh của micro<br /> • Hệ thống có khả năng giao tiếp với thiết bị đọc mã vạch để phục vụ cho việc<br /> nhập thông tin sản phẩm<br /> • Hệ thống hỗ trợ thanh toán trực tuyến thông qua việc kết nối với Hệ thống<br /> thanh toán Paypal<br /> <br /> Phân tích thiết kế hướng đối tượng<br /> <br /> 15<br /> <br /> Phân tích thiết kế hướng đối tượng<br /> <br /> 16<br /> <br /> 4<br /> <br /> 8/30/2017<br /> <br /> Ví dụ: Xác định tác nhân và Use Case<br /> <br /> Xác định Use Case<br /> <br /> Phân loại Actor<br /> <br /> • Xét hệ thống website có các chức năng sau:<br /> • Khách hàng đăng ký tài khoản và mua sản phẩm<br /> • Chủ cửa hàng duyệt các đơn hàng và đăng ký sản phẩm<br /> • Hệ thống website có chức năng xuất báo cáo ra tập tin excel sử dụng phần<br /> mềm MS Excel<br /> • Hệ thống hỗ trợ khách hàng trực tuyến bằng cách trao đổi trực tiếp bằng âm<br /> thanh của micro<br /> • Hệ thống có khả năng giao tiếp với thiết bị đọc mã vạch để phục vụ cho việc<br /> nhập thông tin sản phẩm<br /> • Hệ thống hỗ trợ thanh toán trực tuyến thông qua việc kết nối với Hệ thống<br /> thanh toán Paypal<br /> <br /> Phân tích thiết kế hướng đối tượng<br /> <br /> Phân tích thiết kế hướng đối tượng<br /> <br /> 17<br /> <br /> Xác định Use Case<br /> <br /> 2.3. Quan hệ (Relationship)<br /> •<br /> •<br /> •<br /> •<br /> <br /> Phân tích thiết kế hướng đối tượng<br /> <br /> 18<br /> <br /> 19<br /> <br /> Association<br /> Include<br /> Extend<br /> Generalization/Specializtion<br /> <br /> Phân tích thiết kế hướng đối tượng<br /> <br /> 20<br /> <br /> 5<br /> <br />
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2