Một số câu hỏi và đáp án môn UML (sưu tầm từ tài liệu của TS. Dương Kiều Hoa – Tôn Thất Hoà An) 1. Một số tập hợp dữ liệu phức tạp nhất định khi được trình bày bằng đồ thị sẽ truyền tải đến người đọc nhiều thông tin hơn so với các dữ liệu thô? Đáp: Đúng 2. Mô hình giúp chúng ta tổ chức, trình bày trực quan, thấu hiểu và tạo nên các hệ thống phức tạp. Đáp: Đúng 3. Ưu điểm lớn nhất của mô hình hướng đối tượng là tính tái sử dụng (Reusable)? Đáp: Đúng. 4. UML (Unifield Modeling Language) là gì? Đáp: Ngôn ngữ mô hình hóa thống nhất – UML là một ngôn ngữ để biểu diễn mô hình theo hướng đối tượng. 5. Điểm khác nhau cơ bản giữa phương pháp (method) và một ngôn ngữ mô hình hoá (modeling language) là gì? Đáp: Điểm khác nhau cơ bản giữa một phương pháp và một ngôn ngữ mô hình hoá là ngôn ngữ mô hình hoá không có một tiến trình (process) hay các câu lệnh (instruction) mô tả những công việc người sử dụng cần làm mà nó bao gồm các ký hiệu – những biểu tượng được dùng trong mô hình – và một tập các quy tắc chỉ cách sử dụng chúng. 6. UML có công cụ nào giúp nắm bắt các yêu cầu của khách hàng (người sử dụng)? Đáp: Use Case 7.Một biểu đồ trong UML có bao chứa các hướng nhìn khác nhau. Đáp: Sai, một hướng nhìn bao gồm một loại các biểu đồ khác nhau 8. Hãy liệt kê các thành phần chủ yếu của ngôn ngữ UML Đáp: Hướng nhìn( View), Biểu đồ (Diagram), Phần tử mô hình, Cơ chế chung. 9. UML có công cụ nào phục vụ cho giai đoạn thử nghiệm đơn vị (Unit Testing)? Đáp: Biểu đồ lớp và đặc tả lớp 10. UML có công cụ nào phục vụ cho giai đoạn thử nghiệm hệ thống (System Testing)? Đáp: Use case Diagram 11. UML tạo nền tảng cho việc giao tiếp giữa khách hàng, nhà phân tích, nhà thiết kế và lập trình viên. Đáp: Đúng
12. Một tác nhân (Actor) trong một Use Case luôn là một con người Đáp: Sai, tác nhân là một người hoặc một vật nào đó tương tác với hệ thống. 13. Hệ thống khác cũng có thể đóng vai trò tác nhân trong một Use Case? Đáp: Đúng 14. Mỗi hệ thống chỉ có một Use Case? Đáp: Sai 15. Biểu đồ Use case mô tả chức năng hệ thống? Đáp: Đúng 16. Khi tạo dựng mô hình, cần sử dụng các khái niệm của chính phạm vi vấn đề để mô hình dễ hiểu và dễ giao tiếp. Đáp: Đúng 17. Các lớp chỉ thể hiện cấu trúc thông tin? Đáp: sai, các lớp không phải chỉ thể hiện cấu trúc thông tin mà còn mô tả cả hành vi. 18. Các khái niệm then chốt thường sẽ trở thành các lớp trong mô hình phân tích? Đáp: Đúng 19. Thường các danh từ trong các lời phát biểu bài toán sẽ là ứng cử viên để chuyển thành lớp và đối tượng? Đáp: Đúng 20. Quan hệ kết hợp (Association) giữa các lớp định nghĩa các mối liên quan có thể tồn tại giữa các đối tượng? Đáp: Đúng, ví dụ một mối quan hệ kết hợp là một sự nối kết giữa các lớp, có nghĩa là sự nối kết giữa các đối tượng của các lớp này. 21. Kết tập biểu thị rằng quan hệ giữa các lớp dựa trên nền tảng của nguyên tắc "một tổng thể được tạo thành bởi các bộ phận" Đáp: Đúng, nó được sử dụng khi chúng ta muốn tạo nên một thực thể mới bằng cách tập hợp các thực thể tồn tại với nhau 22. Khái quát hoá được sử dụng để tạo các lớp con? Đáp: Sai, khái quát hoá là quá trình bắt đầu từ một lớp chuyên biệt và khiến nó ngày càng mang tính khái quát cao hơn (lớp cha)
23. Chuyên biệt hoá bổ sung thêm chi tiết và đặc tả cho lớp kết quả? Đáp: Đúng, chuyên biệt hoá là quá trình tinh chế một lớp thành những lớp chuyên biệt hơn (lớp con) 24. Thế nào là một vòng lặp? Đáp: Một chuổi sự kiện có thể được nhắc đi, nhắc lại vô số lần được gọi là vòng lặp (loop). 25. Mô hình động chính là mô hình đối tượng cộng thêm phần ứng xử động của hệ thống Đáp: Đúng 26. Các sự kiện độc lập cũng có thể là các sự kiện song song Đáp: Đúng 27. Một đối tượng không nhất thiết phải có trạng thái. Đáp: Sai, mọi đối tượng đều có trạng thái 28. Một lớp có thể có trạng thái ban đầu và trạng thái kết thúc. Đáp: Sai, một đối tượng có thể có trạng thái ban đầu và trạng thái kết thúc. 29. Một vòng đời (chu trình) vòng lặp của đối tượng không có trạng thái khởi tạo cũng không có trạng thái kết thúc Đáp: Đúng, đối tượng được coi là đã luôn luôn tồn tại ở đây và sẽ còn mãi mãi tiếp tục tồn tại.
6.13. Phần câu hỏi Hỏi: Thế nào là một vòng lặp? Đáp: Một chuổi sự kiện có thể được nhắc đi, nhắc lại vô số lần được gọi là vòng lặp (loop). Hỏi: Mô hình động chính là mô hình đối tượng cộng thêm phần ứng xử động của hệ thống Đáp: Đúng Hỏi: Các sự kiện độc lập cũng có thể là các sự kiện song song Đáp: Đúng Hỏi: Một đối tượng không nhất thiết phải có trạng thái. Đáp: Sai, mọi đối tượng đều có trạng thái Hỏi: Một lớp có thể có trạng thái ban đầu và trạng thái kết thúc. Đáp: Sai, một đối tượng có thể có trạng thái ban đầu và trạng thái kết thúc. Hỏi: Một vòng đời (chu trình) vòng lặp của đối tượng không có trạng thái khởi tạo cũng không có trạng thái kết thúc Đáp: Đúng, đối tượng được coi là đã luôn luôn tồn tại ở đây và sẽ còn mãi mãi tiếp tục tồn tại. ↓
1.5. Phần câu hỏi Hỏi: Một số tập hợp dữ liệu phức tạp nhất định khi được trình bày bằng đồ thị sẽ truyền tải đến người đọc nhiều thông tin hơn so với các dữ liệu thô? Đáp: Đúng Hỏi: Mô hình giúp chúng ta tổ chức, trình bày trực quan, thấu hiểu và tạo nên các hệ thống phức tạp. Đáp: Đúng Hỏi: Ưu điểm lớn nhất của mô hình hướng đối tượng là tính tái sử dụng (Reusable)? Đáp: Đúng.
2.4. Phần câu hỏi Hỏi: UML (Unifield Modeling Language) là gì? Đáp: Ngôn ngữ mô hình hóa thống nhất – UML là một ngôn ngữ để biểu diễn mô hình theo hướng đối tượng. Hỏi: Điểm khác nhau cơ bản giữa phương pháp (method) và một ngôn ngữ mô hình hoá (modeling language) là gì? Đáp: Điểm khác nhau cơ bản giữa một phương pháp và một ngôn ngữ mô hình hoá là ngôn ngữ mô hình hoá không có một tiến trình (process) hay các câu lệnh (instruction) mô tả những công việc người sử dụng cần làm mà nó bao gồm các ký hiệu – những biểu tượng được dùng trong mô hình – và một tập các quy tắc chỉ cách sử dụng chúng
3.11. Phần câu hỏi Hỏi: UML có công cụ nào giúp nắm bắt các yêu cầu của khách hàng (người sử dụng)? Đáp: Use Case Hỏi: Một biểu đồ trong UML có bao chứa các hướng nhìn khác nhau. Đáp: Sai, một hướng nhìn bao gồm một loại các biểu đồ khác nhau Hỏi: Hãy liệt kê các thành phần chủ yếu của ngôn ngữ UML Đáp: Hướng nhìn( View), Biểu đồ (Diagram), Phần tử mô hình, Cơ chế chung. Hỏi: UML có công cụ nào phục vụ cho giai đoạn thử nghiệm đơn vị (Unit Testing)? Đáp: Biểu đồ lớp và đặc tả lớp Hỏi: UML có công cụ nào phục vụ cho giai đoạn thử nghiệm hệ thống (System Testing)? Đáp: Use case Diagram Hỏi: UML tạo nền tảng cho việc giao tiếp giữa khách hàng, nhà phân tích, nhà thiết kế và lập trình viên. Đáp: Đúng
4.12. Phần câu hỏi Hỏi: Một tác nhân (Actor) trong một Use Case luôn là một con người Đáp: Sai, tác nhân là một người hoặc một vật nào đó tương tác với hệ thống. Hỏi: Hệ thống khác cũng có thể đóng vai trò tác nhân trong một Use Case? Đáp: Đúng Hỏi: Mỗi hệ thống chỉ có một Use Case? Đáp: Sai Hỏi: Biểu đồ Use case mô tả chức năng hệ thống? Đáp: Đúng
5.12. Phần câu hỏi Hỏi: Khi tạo dựng mô hình, cần sử dụng các khái niệm của chính phạm vi vấn đề để mô hình dễ hiểu và dễ giao tiếp. Đáp: Đúng Hỏi: Các lớp chỉ thể hiện cấu trúc thông tin? Đáp: sai, các lớp không phải chỉ thể hiện cấu trúc thông tin mà còn mô tả cả hành vi. Hỏi: Các khái niệm then chốt thường sẽ trở thành các lớp trong mô hình phân tích? Đáp: Đúng Hỏi: Thường các danh từ trong các lời phát biểu bài toán sẽ là ứng cử viên để chuyển thành lớp và đối tượng? Đáp: Đúng Hỏi: Quan hệ kết hợp (Association) giữa các lớp định nghĩa các mối liên quan có thể tồn tại giữa các đối tượng? Đáp: Đúng, ví dụ một mối quan hệ kết hợp là một sự nối kết giữa các lớp, có nghĩa là sự nối kết giữa các đối tượng của các lớp này. Hỏi: Kết tập biểu thị rằng quan hệ giữa các lớp dựa trên nền tảng của nguyên tắc "một tổng thể được tạo thành bởi các bộ phận" Đáp: Đúng, nó được sử dụng khi chúng ta muốn tạo nên một thực thể mới bằng cách tập hợp các thực thể tồn tại với nhau Hỏi: Khái quát hoá được sử dụng để tạo các lớp con? Đáp: Sai, khái quát hoá là quá trình bắt đầu từ một lớp chuyên biệt và khiến nó ngày càng mang tính khái quát cao hơn (lớp cha) Hỏi: Chuyên biệt hoá bổ sung thêm chi tiết và đặc tả cho lớp kết qủa?
Đáp: Đúng, chuyên biệt hoá là quá trình tinh chế một lớp thành những lớp chuyên biệt hơn (lớp con) ↓