Phân tích thiết kế hướng đối tượng Bài 4 – 5/13Phát hiện các đối tượng/lớp Đầu vào : Biểu đồ ca sử dụng và biểu đồ lớp lĩnh vực Đầu ra : Biểu đồ lớp của từng ca sử dụng Có 3 loại l
Trang 1Gv: Vũ Thị Dương Email: duongvt01@gmail.com
KHOA CÔNG NGHỆ THÔNG TIN
Trường Đại học công nghiệp Hà Nội
PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG
Trang 2Nội dung chi tiết
1. Các khái niệm hướng đối tượng
2. Tổng quan về ngôn ngữ mô hình hóa UML
3. Mô hình hóa yêu cầu (biểu đồ ca sử dụng)
5. Mô hình hóa hành vi( biểu đồ tương tác, trạng thái)
6. Biểu đồ kiến trúc vật lý và phát sinh mã trình
7. Mô hình hóa dữ liệu
Trang 3Mô hình hóa lĩnh vực, Biểu
đồ lớp và gói
Bài 4.2
Trang 4Mục đích
Cách 1: Xây dựng lớp lĩnh vực mà không xem tới ứng dụng
Trên một lĩnh vực có thể có nhiều ứng dụng
Ví dụ
Hàng không (quản lý bay, quản lý tiếp đất, quản lý ngoại hối )
Phát hiện ra tính đặc thù của mỗi ứng dụng cụ thể Kết quả: Biểu đồ lớp cho mỗi ca sử dụng
Trang 5Phân tích thiết kế hướng đối tượng Bài 4 – 5/13
Phát hiện các đối tượng/lớp
Đầu vào : Biểu đồ ca sử dụng và biểu đồ lớp lĩnh vực
Đầu ra : Biểu đồ lớp của từng ca sử dụng
Có 3 loại lớp tham gia ca sử dụng:
Lớp biên (boundary) hay lớp đối thoại:
Lớp điều khiển (control)
Lớp thực thể (entity) là lớp nghiệp vụ
EntityClass BoundaryClass ControlClass
Trang 6Stereotype của lớp
Boundary (Lớp biên)
Dành cho lớp nằm trên biên hệ thống với thế giới còn lại
Chúng có thể là form, report, giao diện với phần cứng như máy in, scanner
Khảo sát biểu đồ UC để tìm kiếm lớp biên
Entity (lớp thực thể)
Control (Lớp điều khiển)
Form
Actor Use Case
Boundary class
Actor1 Boundaryclass Actor2
Use Case
Trang 7Phân tích thiết kế hướng đối tượng Bài 4 - 7/13
Stereotype của lớp
Boundary
Entity
Lớp thực thể là lớp lưu trữ thông tin sẽ ghi vào bộ
nhớ ngoài
Tìm chúng trong luồng sự kiện và biểu đồ tương tác,
biểu đồ lớp khái niệm
Thông thường phải tạo ra bảng CSDL cho lớp loại này
Mỗi thuộc tính của lớp thực thể sẽ là trường trong bảng CSDL
Control
Có trách nhiệm điều phối hoạt động của các lớp khác
Thông thường mỗi UC có một lớp điều khiển
Nó không thực hiện chức năng nghiệp vụ nào
Các lớp điều khiển khác: điều khiển sự kiện liên quan
đến an ninh và liên quan đến giao dịch CSDL
Người sử dụng tự tạo ra stereotype mới
EntityClass
ControlClass BoundaryClass
Trang 8Xây dựng biểu đồ lớp
Phát hiện và bổ sung các thuộc tính, thao tác cho từng lớp tham gia các ca sử dụng
Lớp thực thể: Tạm thời chỉ có thuộc tính
Lớp điều khiển: Chỉ có các thao tác Các thao tác này diễn tả logic của ứng dụng, các quy tắc nghiệp vụ, hành vi hệ thống
Lớp biên: có cả thuộc tính và thao tác
Thuộc tính diễn tả các trường thu thập thông tin hay xuất kết quả
Các thao tác biểu diễn những hành động mà người dùng thực hiện trên màn hình giao diện
Thêm liên kết cho các lớp
Thêm các thao tác cho lớp thực thể.
Thao tác trong lớp thực thể biểu diễn những hành động mà lớp này đáp ứng khi nhận được thông điệp từ lớp điều khiển
(còn nữa)
Trang 9Chú ý xây dựng biểu đồ lớp
Lớp biên chỉ được nối với các lớp điều kiển hay với các lớp biên khác
Lớp thực thể chỉ được nối với các lớp điều khiển hay lớp
thực thể khác Liên kết với các lớp điều khiển luôn là 1
chiều (từ điều khiển đến thực thể)
Lớp điều khiển được phép truy cập tới mọi loại lớp bao
gồm các lớp điều khiển khác
Thêm các đối tác vào biểu đồ theo nguyên tắc: Mỗi đối tác chỉ được nối với một hay một số lớp biên
Thêm các thao tác cho các lớp thực thể
Phân tích thiết kế hướng đối tượng Bài 4 - 9/13
Trang 10Thí dụ: Chọn môn giảng
Dựa vào kịch bản đặc tả Chọn môn học để giảng
I. Mô tả tóm tắt:
1. Tên ca sử dụng: chọn môn để giảng
2. Mục đích: Giúp thầy giáo xác định môn mà mình sẽ giảng trong
học kỳ
3. Tóm lược: Thầy giáo chọn học kỳ rồi sau đó có thể thêm, xem, in
các môn và kết thúc
II. Mô tả kịch bản
1. Kịch bản chính
Ca sử dụng bắt đầu khi thầy giáo đăng nhập hệ thống hợp lệ và nhắc
thầy giáo chọn học kỳ này hay học kỳ sau, thầy chọn học kỳ , hệ thống nhắc thầy chọn việc: Thêm, bỏ,xem,in ra
2. Kịch bản con
Thêm một lớp giảng (còn nữa)
Trang 11Phân tích thiết kế hướng đối tượng Bài 4 – 11/13
Thí dụ: Chọn môn giảng
Kịch bản con thêm một lớp giảng
Hệ thống hiển thị màn hình các môn học trong học kỳ, gồm tên,
mã số môn học Thầy giáo nhập tên môn học các lớp giảng với
môn đã chọn Thầy giáo chọn 1 lớp giảng Hệ thống kết nỗi thầy với lớp giảng đã chọn Ca sử dụng bắt đầu lại
Dựa vào kịch bản đặc tả ta phát hiện các lớp:
Lớp Thực thể: Lấy từ biểu đồ lớp lĩnh vực: Lớp giảng, môn học, thầy giáo
Lớp Biên : W_thầy: Màn hình chính giao tiếp với đối tác
thầy giáo
W_Lớp giảng và W_Lịch giảng là các màn hình phụ dùng tương ứng với thêm/bớt lớp giảng và in/xem lịch giảng
Lớp điều khiển : QLLớpthầy
Trang 12Ví dụ
Trang 13Phân tích thiết kế hướng đối tượng Bài 4 - 13/13
Tóm tắt
Bài này đã xem xét các vấn đề sau
Lý do xây dựng biểu đồ lớp cho các ca sử dụng
Các loại lớp trong 1 ca sử dụng
Nguyên tắc xây dựng biểu đồ lớp
Cách thiết lập biểu đồ lớp tham gia ca sử dụng
Trang 14Bài tập
Xây dựng biểu đồ lớp tham gia ca sử dụng: Đăng
ký môn học, duy trì thông tin môn học
Xây dựng biểu đồ lớp tham gia ca sử dụng trong
hệ thống ATM