V – PHA PHÂN TÍCH HƯỚNG ĐỐI TƯỢNG
12. Chuyển thông tin đặt chỗ 13 Đưa ra mã số đặt chỗ
13. Đưa ra mã số đặt chỗ 14. Hoàn tất đặt chỗ
Với scenario thứ hai ta không nhấn mạnh đến trình tự thời gian, vì vậy có thể biểu diễn bằng biểu đồ cộng tác (collaboration diagram) như sau:
Hình 5.20. Biểu đồ cộng tác của scenario xử lý phiếu đánh giá
Cách xây dựng biểu đồ cộng tác cũng được thực hiện gần giống với biểu đồ tuần tự với một vài khác biệt có thể thấy trên hình 5.20. Mối liên hệ giữa các tác nhân biểu diễn bằng các đoạn thẳng. Hướng tác động được biểu diễn bằng mũi tên. Tên tác động được ghi cạnh mũi tên.
Bước 2. Xây dựng biểu đồ lớp chi tiết.
Trong pha phân tích HĐT chúng ta đã xây dựng biểu đồ lớp, trong đó gồm các lớp và các thuộc tính. Trong phần này chúng ta sẽ bổ sung thêm các hàm thành phần của lớp. Thường thì trong biểu đồ lớp người ta biểu diễn lớp thành ba phần: tên lớp, các thuộc tính và các hàm thành phần. Tuy nhiên, ở đây chúng tôi hiệu chỉnh một chút để tiện cho công việc soạn thảo, in ấn: trong biểu đồ chỉ có tên các lớp, còn phần thuộc tính và hàm thành phần sẽ được biểu diễn riêng.
Nếu viết chương trình trong ngôn ngữ C++ ta thấy rằng chưa có kiểu dữ liệu Date, do đó ở đây ta thêm một lớp Date để sử dụng trong các lớp khác.
Bởi vì cách diễn đạt tiếng Anh ngắn hơn, nên từ bước này chúng ta sử dụng tiếng Anh trong mô tả. Tên tiếng Việt các lớp được chuyển như sau: chuyến bay → flight, hành khách → passenger, Báo cáo → report. Hàm thành phần của các lớp có thể phân làm ba loại: hàm trả về thông tin sẽ bắt đầu bằng chữ get, ví dụ trong lớp Date thì hàm getday() sẽ trả về ngày của biến đối tượng, ví dụ d = t.getday() sẽ gán giá trị ngày của biến đối tượng t cho d; hàm gán giá trị cho một biến thành phần của đối tượng bắt đầu bằng từ set, ví dụ setday(10) có nghĩa là đặt day =10; các hàm còn lại thực hiện các công việc khác như hiện lên màn hình, in ấn, xử lý dữ liệu... Hình sau đây là thiết kế chi tiết của các lớp:
147
Nhân viên AG 2. Đưa lại phiếu đánh giá Hành khách