BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC CÔNG NGHỆ TP.HCM THỰC HÀNH PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Biên soạn: ThS. Võ Hoàng Khang Website: http://www.vn THỰC HÀNH PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG Ấn bản 2022 MỤC LỤC I MỤC LỤC MỤC LỤC. 2 BÀI 1: HỆ THỐNG QUẢN LÝ THƯ VIỆN. 27 BÀI 2: HỆ THỐNG QUẢN LÝ CỬA HÀNG NƯỚC GIẢI KHÁT.
29 BÀI 3: HỆ THỐNG QUẢN LÝ KHÁCH SẠN. 31 BÀI 4: QUẢN LÝ CHO THUÊ VĂN PHÒNG Ở CAO ỐC. 33 BÀI 5: QUẢN LÝ HỒ SƠ BỆNH ÁN CỦA BỆNH NHÂN. 35 BÀI 6: QUẢN LÝ CÔNG TY DU LỊCH.
37 BÀI 7: QUẢN LÝ NHÂN SỰ. 39 BÀI 8: QUẢN LÝ CUỘC ĐUA XE ĐẠP CÚP TRUYỀN HÌNH TP. 41 TÀI LIỆU THAM KHẢO. 43 II HƯỚNG DẪN HƯỚNG DẪN MÔ TẢ MÔN HỌC Phân tích thiết kế hệ thống là một giai đoạn quan trọng để xây dựng thành công một hệ thống.
Xây dựng một hệ thống được gọi là thành công nếu hệ thống này đáp ứng được các yêu cầu của tổ chức đặt ra, có chu kỳ sống chấp nhận được, và hơn thế nữa có thể phát triển khi hệ thống yêu cầu. Trong thực tế nhiều hệ thống chỉ tồn tại trong một thời gian ngắn và sau đó không còn đáp ứng được nhu cầu của người sử dụng. Một trong những lý do là chưa quan tâm đến giai đoạn phân tích và thiết kế một cách đầy đủ và sâu sắc, để rồi khi tổ chức phát triển thì hệ thống không còn khả năng đáp ứng. Một lý do khác không kém phần quan trọng, là các nhà xây dựng hệ thống không được trang bị một cách đầy đủ các kiến thức và phương pháp cơ bản để có thể tiến hành việc xây dựng một hệ thống.
Nếu phần phân tích thiết kế không hoàn chỉnh và đúng đắn thì sẽ dẫn đến việc cài đặt thất bại. Người học vận dụng được lý thuyết phân tích thiết kế để xây dựng được mô hình dữ liệu quan niệm hay còn gọi là mô hình thực thể kết hợp để xây dựng các đối tượng dữ liệu cơ bản cùng các ký hiệu thích hợp và mô hình hướng đối tượng trong ngôn ngữ UML. Mô hình ERD và UML là 2 mô hình cần thiết và cơ bản để chuyển sang việc tổ chức và cài đặt chương trình quản lý bằng một hệ quản trị cơ sở dữ liệu phù hợp và ngôn ngữ lập trình theo hướng đối tượng. Phương pháp hướng đối tượng giúp chúng ta xử lý các vấn đề phức tạp trong phát triển phần mềm và tạo ra các thế hệ phần mềm có khả năng thích ứng, sử dụng lại bởi tính kế thừa và bền chắc.
Phân tích thiết kế hệ thống là một môn học chính cho các sinh viên chuyên ngành công nghệ thông tin trong các trường đại học và cao đẳng. Đây cũng là một tài liệu tham khảo cần thiết cho những ai quan tâm đến việc phân tích thiết kế hệ thống. Giáo trình thực hành được chia làm 8 bài, mỗi bài đưa ra các ví dụ thực tiễn ở các lĩnh vực trong cuộc sống, những sai lầm có thể xảy ra trong quá trình phân tích thiết kế để phân tích viên khỏi mắc sai sót khi làm việc, giúp cho người đọc thấy được bức tranh toàn cục của hệ thống qua các bước thiết kế. HƯỚNG DẪN III NỘI DUNG MÔN HỌC − Bài 1.
HỆ THỐNG QUẢN LÝ THƯ VIỆN − Bài 2. HỆ THỐNG QUẢN LÝ CỬA HÀNG NƯỚC GIẢI KHÁT − Bài 3. HỆ THỐNG QUẢN LÝ KHÁCH SẠN − Bài 4. QUẢN LÝ CHO THUÊ VĂN PHÒNG Ở CAO ỐC − Bài 5.
QUẢN LÝ HỒ SƠ BỆNH ÁN CỦA BỆNH NHÂN − Bài 6. QUẢN LÝ CÔNG TY DU LỊCH − Bài 7. QUẢN LÝ NHÂN SỰ − Bài 8. QUẢN LÝ CUỘC ĐUA XE ĐẠP CÚP TRUYỀN HÌNH IV HƯỚNG DẪN KIẾN THỨC TIỀN ĐỀ Môn Thực hành phân tích thiết kế hướng đối tượng yêu cầu sinh viên có kiến thức về cơ sở dữ liệu quan hệ, quản trị cơ sở dữ liệu và phân tích thiết kế hệ thống thông tin.
YÊU CẦU MÔN HỌC Học viên vận dụng được lý thuyết phân tích thiết kế để xây dựng được mô hình dữ liệu quan niệm hay còn gọi là mô hình thực thể kết hợp (ERD). Từ mô hình này, người học sẽ vẽ được mô hình lớp (class), từ đó xây dựng các mô hình tương ứng theo yêu cầu đặt ra như: use case, acitivity, sequence…. Sử dụng công cụ để thiết kế mô hình UML phổ biến như Star UML, Astah, Visual Paradigm… Tại các phòng máy thực hành có cài sẵn Star UML, học viên có thể cập nhật phiên bản mới trong quá trình thực hành môn học này. CÁCH TIẾP NHẬN NỘI DUNG MÔN HỌC Để học tốt môn này, học viên cần xem lại kỹ ý nghĩa và cách sử dụng các ký hiệu trong mô hình UML.
Giáo trình này sẽ hướng dẫn cơ bản lại các ký hiệu đó, học viên có thể áp dụng cho các bài tập thực hành theo thứ tự. Sau khi học xong, cần ôn lại bài đã học và làm các bài tập tình huống. Tìm đọc thêm các tài liệu khác liên quan đến bài học và các kiến thức cần thiết trong việc quản lý một hệ thống thông tin. PHƯƠNG PHÁP ĐÁNH GIÁ MÔN HỌC Môn học được đánh giá gồm ba thành phần: − Phần chuyên cần: chiếm 15%, bao gồm đi học đầy đủ các buổi thực hành, đóng góp xây dựng bài.
− Kiểm tra giữa kỳ: chiếm 35%. Hình thức và nội dung đánh giá: SV thực hiện các bài tập trong giờ thực hành và bài kiểm tra giữa kỳ tại phòng thực hành do GV dạy thực HƯỚNG DẪN V hành quy định. GV chấm điểm, giải thích các thắc mắc và công bố công khai sau khi chấm điểm. − Kiểm tra cuối kỳ: chiếm 50%.
Hình thức và nội dung đánh giá: SV thực hiện bài tập kiểm tra cuối kỳ tại phòng thực hành do GV dạy thực hành quy định. GV chấm điểm, giải thích các thắc mắc, sau đó sẽ tổng hợp thành một cột điểm kết thúc môn học và công bố công khai sau khi hoàn thành. VI HƯỚNG DẪN HƯỚNG DẪN SỬ DỤNG STAR UML Học viên có thể download phiên bản mới nhất của Star UML tại website: https://staruml. Với các phần mềm tương tự khác, GV giảng dạy sẽ giới thiệu trong giờ học lý thuyết.
I) Giới thiệu: − Star UML là phần mềm hỗ trợ việc phân tích thiết kế hệ thống thông tin hướng đối tượng. − Nhà sản xuất: MKLab Co, Ltd. − Cài đặt: Xem trong file hướng dẫn hoặc trợ giúp của GV giảng dạy. HƯỚNG DẪN 7 II) Sử dụng: 1) Các ký hiệu và ý nghĩa trong mô hình Use Case (Use Case Diagram): Tên use case là động từ, diễn tả 1 hành động cần thực hiện trong hệ thống.
Tên nên đặt ngắn gọn và rõ nghĩa. Ví dụ: Lập hóa đơn, Rút tiền, Thanh toán… Tên actor là danh từ, biểu diễn loại thực thể đối tượng ngoài hay tổ chức (trong mô hình ERD), các thiết bị có tham gia tương tác trong hệ thống. Ví dụ: Khách hàng, Nhân viên, Ngân hàng, trụ ATM… Mối kết hợp. Chỉ ra mối liên hệ ngữ nghĩa giữa 2 đối tượng.
2 đối tượng trao đổi thông tin qua lại với nhau. Ví dụ: Mối kết hợp có hướng. Chỉ ra mối liên hệ ngữ nghĩa giữa 2 đối tượng. Đối tượng này chuyển thông tin sang đối tượng kia theo chiều mũi tên.
Cần cân nhắc khi dùng ký hiệu này, nếu không rõ chiều di chuyển của dữ liệu, ta nên dùng mối kết hợp vô hướng (Asscociation). Ví dụ: Tổng quát hóa và chuyên biệt hóa. Ví dụ: VIII HƯỚNG DẪN Nhân viên là Tổng quát hóa (lớp Cha), Lễ tân và Phục vụ là Chuyên biệt hóa (lớp Con). Chỉ ra mối liên hệ “Bao gồm”.
Để hoàn thành UseCase A thì phải thực hiện UseCase B và UseCase C (phép AND). UseCase B và C tạo ra nhằm mục đích cho các use case khác kế thừa chức năng. Hạn chế tạo ra các use case quá nhỏ. Ví dụ: HƯỚNG DẪN 9 Chỉ ra mối liên hệ “Mở rộng”.
Trong quá trình thực thi UseCase A, trong một số trường hợp phải thực hiện UseCase B (không bắt buộc). Trong cả 2 trường hợp <<include>> và <<extend>> trên, UseCase A được gọi là Use Case cơ sở (Base Use Case). Ví dụ: X HƯỚNG DẪN Khi mượn sách, nếu đọc giả chưa có thẻ thì có thể gọi chức năng “Cấp Thẻ Thư viện”, nếu thẻ quá hạn thì có thể gọi chức năng “Gia hạn Thẻ Thư viện”, ngược lại thì không gọi các chức năng này (không bắt buộc). Chỉ ra mối liên hệ “Phụ thuộc”.
Hành động này phụ thuộc vào một hành động khác đã thực hiện trước. Khi đọc giả trả sách, NV thư viện sẽ tìm Phiếu mượn sách tương ứng, mở CT_PMS (đã lưu trữ trước đó), nhập vào Ngày trả, Chọn các sách cần trả rồi chọn Tình trạng sách tương ứng (Mất/Rách/Trễ/Bình thường.), cần thiết thì lập Phiếu phạt. Như vậy hành động trả sách phụ thuộc vào dữ liệu mượn sách đã lưu trữ trước đó (CT_PMS). Ta dùng ký hiệu Dependency nối từ ô “Trả sách” sang ô “Nhập CT_PMS” để chỉ ra sự phụ thuộc (Trong trường hợp này, ta sử dụng ký hiệu <<include>> vẫn hợp lý).
Các ký hiệu và ý nghĩa trong mô hình Class (Class Diagram): Ký hiệu Class. Bao gồm các thuộc tính và phương thức (hành vi). R-Click vào class để chọn chức năng cần thực hiện. Add -> Attribute: thêm thuộc tính.
Add -> Operation: thêm phương thức. Để chỉ định thuộc tính định danh (như PK trong ERD), ta chọn isID ở cửa sổ bên phải. XII HƯỚNG DẪN Trong cơ sở dữ liệu quan hệ, như SQL Server, Attribute tương ứng với Field (Thuộc tính), Operation tương ứng với Function (Hàm) hay Stored Procedure (Thủ tục). Ví dụ: Các ký hiệu và có ý nghĩa tương tự bên mô hình Use Case.
Tổng hợp/Tập hợp (Aggregation). Tập hợp là một kiểu liên kết đặc biệt trong đó các đối tượng được lắp ráp hoặc cấu hình với nhau để tạo ra một đối tượng phức tạp hơn. Đây chính là quan hệ Cha-Con trong mô hình ERD. Chú ý: Khi sửa Cha thì Con sửa theo (giá trị của khóa ngoại), xóa Cha thì giá trị của khóa ngoại của Con được thiết lập là NULL hoặc bằng 1 giá trị default (on update cascade on delete set null).
Ví dụ: HƯỚNG DẪN 13 Chú ý cặp bản số đặt ngược lại so với mô hình ERD. Thành phần là một trường hợp kết hợp đặc biệt mô tả mối quan hệ giữa một tổng thể và các bộ phận tồn tại của nó. Nói một cách đơn giản, trong một bố cục, một phần không bao giờ có thể lớn hơn toàn bộ. Ví dụ: Một tòa nhà bao gồm các phòng.
Trong mô hình ERD, thành phần cũng chỉ ra mối quan hệ Cha-Con.