Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 21 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
21
Dung lượng
203 KB
Nội dung
VIỆN KHOA HỌC VÀ CÔNG NGHỆ VIỆT NAM VIỆN CÔNG NGHỆ THÔNG TIN PHÂNTÍCHTHIẾTKẾHƯỚNGĐỐITƯỢNG PGS.TS Đặng Văn Đức Email: dvduc@ioit.ac.vn Nội dung Tiến trình phát triển phần mềm theo hướngđốitượng Giới thiệu Ngôn ngữ mô hình hóa thống UML Mô hình hóa nghiệp vụ Mô hình hóa trường hợp sử dụng Mô hình hóa tương tác đốitượng Biểu đồ lớp gói Biểu đồ chuyển trạng thái biểu đồ hoạt động Biểu đồ kiến trúc vật lý phát sinh mã trình Mô hình hóa liệu 10 Bài học thực nghiệm Bài - 2/21 Bài Biểu đồ chuyển trạng thái biểu đồ hoạt động Biểu đồ chuyển trạng thái Mô tả chu kỳ tồn đốitượng từ sinh đến bị phá hủy Sử dụng để mô hình hóa khía cạnh động lớp Biểu đồ bao gồm thông tin sau Các trạng thái đốitượng Hành vi đốitượng Sự kiện tác động làm thay đổi trạng thái Thông thường Xây dựng biểu đồ chuyển trạng thái cho vài đốitượng lớp có nhiều hành vi động dự án Không phải dự án sử dụng biểu đồ loại Bài - 4/21 Trạng thái đối tượng? Trạng thái đốitượng kết hoạt động trước đốitượngĐốitượng trạng thác xác định thời điểm Thí dụ Trạng thái xác định giá trị thuộc tính liên kết với đốitượng khác Con người cụ thể lớp Person có trạng thái: Người lao động, Thất nghiệp, Về hưu Hóa đơn mua hàng: Đã toán, chưa toán Xe ô tô: Đang chạy, Đang đứng Thay đổi trạng thái đốitượng Có kiện xảy Thí dụ: toán hóa đơn hàng Bài - 5/21 Biểu đồ trạng thái Thí dụ biểu đồ trạng thái Unpaid Paying Invoice Created Paid Invoice destroyed Sử dụng biểu đồ trạng thái để làm gì? Phântích viên, người thiếtkế người sử dụng hiểu hành vi đốitượng Người phát triển hiểu hành vi đốitượng để cài đặt Bài - 6/21 Biểu đồ trạng thái Các phần tử đồ họa Trạng thái khởi đầu: Khi đốitượng tạo Trạng thái dừng: Khi đốitượng bị phá hủy Trạng thái (State) Quá độ (Transition) Hoạt động Hành động vào Hành động Sự kiện Điều kiện canh Hành động Trạng thái ẩn Bài - 7/21 Biểu đồ trạng thái Các phần tử đồ họa Trạng thái (State) Trạng thái xác định từ khảo sát thuộc tính lớp quan hệ lớp Ký pháp đồ họa StateName Khi đốitượng trạng thái thực vài hoạt động (Activity) Có năm loại thông tin gộp trạng thái Phát sinh báo cáo, Thực tính toán Gửi thông điệp đến đốitượng khác Hoạt động, Hành động vào, Hành động ra, Sự kiện, Lịch sử trạng thái Bài - 8/21 Biểu đồ trạng thái Các phần tử đồ họa Trạng thái (State) Scheduled do/ Check current date entry/ Post flight schedule on Internet Là hành vi xảy đốitượng chuyển vào trạng thái Nó hành vi ngắt Biểu diễn phần tử biểu đồ: Entry Hành động (Exit Action) Là hành vi mà đốitượng thực trạng thái cụ thể Nó hành vi ngắt Biểu diễn phần tử biểu đồ: hay / Hành động vào (Entry Action) do/ Arange alternate flight for customers Hoạt động (Activity) Canceled Là hành vi xảy đốitượng chuyển trạng thái Nó hành vi ngắt Biểu diễn phần tử biểu đồ: Exit In Flight do/ Check current date exit/ Record landing time Bài - 9/21 Biểu đồ trạng thái Các phần tử đồ họa Quá độ (Transition) exit/ Record landing time Land Quá độ chuyển động từ trạng thái sang trạng thái khác Quá độ phản thân Đặc tả độ Sự kiện (Event): nguyên nhân chuyển từ trạng thái sang trạng thái khác Hầu hết độ có kiện Sự kiện có đối số, thí dụ, Remove passenger(name) Điều kiện canh (Guard): xác định kiện xảy ra, thí dụ, Trạng thái máy bay từ Open sang Full chỗ cuối có người mua vé Hành động (Action): hành vi không ngắt được, xảy phần chuyển tiếp State In Flight Event[Guard condition] / Action Landed Pass / Remove passenger Open State Bài - 10 Biểu đồ trạng thái Các phần tử đồ họa Trạng thái ẩn (Nested state) Để giảm nhiều trạng thái biểu đồ ta lồng trạng thái vào trạng thái khác: Substate, Superstate Nếu hai hay nhiều trạng thái có độ -> nhóm chúng thành superstate Thí dụ Biểu đồ biểu đồ biến đổi trạng thái lớp Flight có trạng thái Scheduled, Open, Full Closed Chuyến bay chuyển vào trạng thái Closed 10 phút trước cất cánh, không quan tâm đến trạng thái trước Open hay Full Lịch sử trạng thái (Superstate history) Nhiều có nhu cầu nhớ lại trạng thái vừa trước đốitượng Bổ sung trạng thái khởi đầu siêu trạng thái Sử dụng báo lịch sử lịch sử trạng thái nơi đốitượng vừa qua H Bài - 11/21 Biểu đồ trạng thái với trạng thái ẩn Scheduled Scheduled [ Current date is less than 60 days before flight ] / Set number of passenger to [ Current date is less than 60 days before flight ] / Set number of passenger to Add/Remove passenger Add passenger[ Last seat was sold ] Adding Passengers Full Open Add/Remove passenger Add passenger[ Last seat was sold ] Opened Open Full Remove passenger( PassengerName ) [ 10 before scheduled takeoff ] [ 10 before scheduled takeoff ] Closed Remove passenger( PassengerName ) [ 10 before scheduled takeoff ] Closed Bài - 12 Biểu đồ trạng thái lớp Mô tả quan hệ biểu đồ trạng thái lớp Thí dụ Biểu đồ trạng thái lớp Digital watch Digital_watch inc() mode_button() inc / hours:=hours+1 Display Set hours mode_button do/ Set current time do/ Display hour inc / minutes:=minutes+1 mode_button Set minutes mode_button do/ Display minutes Bài - 13 Biểu đồ hoạt động Biểu đồ hoạt động (Activity diagram) Odell đề xuất cho UML để mô tả luồng công việc tiến trình nghiệp vụ mô hình hóa nghiệp vụ mô tả luồng kiện mô hình hóa hệ thống Sử dụng text trước khó đọc logíc phức tạp, có nhiều rẽ nhánh Biểu đồ hoạt động sử dụng để mô hình hóa khía cạnh động hệ thống bước trình tự hay tương tranh trình tính toán Bài - 14 Biểu đồ hoạt động Hoạt động (Activity) Là bước tiến trình Hành động (Actions) Là bước nhỏ Activity Action xảy Đang vào activity Khi khỏi activity Hành động xảy rời bỏ activity, đánh dấu “Exit” Khi thực activity Hành động vào xảy activity bắt đầu, đánh dấu “Entry” Hành động xảy activity, đánh dấu “do” Khi có kiện đặc biệt xảy Hành động xảy có kiện cụ thể xảy ra, đánh dấu “event” tên kiện Bài - 15 Biểu đồ hoạt động Đốitượng luồng đốitượng (Object flow) Đốitượng thực thể, bị hoạt động luồng sử dụng thay đổi Trong biểu đồ hoạt động: hiển thị đốitượng với trạng thái Liên kết đốitượng với hoạt động thông qua luồng đốitượng Một đốitượng đầu vào cho hoạt động Display fare Ticket [Unconfirmed] Enter credit information [ ] [Approved] Ticket [Purchased] Reserve seat Generate confirmation number Bài - 16 Biểu đồ hoạt động Quá độ (Transition) Chỉ luồng điều khiển từ hoạt động đến hoạt động khác Trường hợp đơn giản Reserve seat Generate confirmation number Đặt giới hạn độ để điều khiển: event hay guard Cancel Cancel Refund credit conditionReserve seat reservation purchase Generate confirmation number [ New reservation Khi có kiện, điều kiện canh ]điều khiển để độ Generate confirmation Reserve seat number xảy ra? Bài - 17 Biểu đồ hoạt động Rẽ nhánh đồng (Synchonization) Đồng cách mô tả hai hay nhiều nhánh flows xảy đồng thời Ngủ dậy Khởi động xe [ Con xăng ] {OR } [ Hết xăng ] Ăn sáng Lái xe Uống cà phê Đi xe buýt, taxi, xe đạp {XOR} Đi học Bài - 18 Biểu đồ hoạt động Làn bơi (Swimlanes) Sử dụng để mô hình hóa luồng công việc tiến trình nghiệp vụ Chỉ có trách nhiệm thực hoạt động Để phân hoạch trạng thái hoạt động vào nhóm Phân tách nhóm biểu đồ bơi Mỗi hoạt động thuộc bơi Quá độ vẽ từ bơi đến bơi khác Mỗi bơi cài đặt hay nhiều lớp Bài - 19 Biểu đồ hoạt động Khách hàng Nhân viên bán hàng Nhân viên kho hàng Yêu cầu mua hàng Xử lý đơn hàng Tiếp tục công việc Nhận hàng Trả tiền b : Bill [Đã toán] O : Order [Đang xử lý] Báo giá Chuyển hàng Gửi hàng O : Order [Đã điền] b : Bill [Chưa toán] Kết thúc mua hàng Swimlane s Bài - 20 Tóm tắt Bài xem xét vấn đề sau Biểu đồ chuyển trạng thái Trạng thái đốitượng Các phần tử đồ họa xây dựng biểu đồ Kỹ thuật xây dựng biểu đồ trạng thái Biểu đồ hoạt động Ứng dụng biểu đồ hoạt động Các phần tử đồ họa xây dựng biểu đồ hoạt động Bài - 21 ... thái đối tượng? Trạng thái đối tượng kết hoạt động trước đối tượng Đối tượng trạng thác xác định thời điểm Thí dụ Trạng thái xác định giá trị thuộc tính liên kết với đối tượng. .. động Đối tượng luồng đối tượng (Object flow) Đối tượng thực thể, bị hoạt động luồng sử dụng thay đổi Trong biểu đồ hoạt động: hiển thị đối tượng với trạng thái Liên kết đối tượng với... Sử dụng biểu đồ trạng thái để làm gì? Phân tích viên, người thiết kế người sử dụng hiểu hành vi đối tượng Người phát triển hiểu hành vi đối tượng để cài đặt Bài - 6/21 Biểu đồ trạng thái