Câu 1: UML (Unifield Modeling Language) là gì? Ngôn ngữ mô hình hoá thống nhất – UML là một ngôn ngữ để biểu diễ mô hình thêo hướng đối tượng Câu 2: Đ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á là gì? Đ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 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. Câu 3: Thế nào là biểu đồ tương tác (Interactive Diagram) của UML? Hãy chỉ ra những điểm giống nhau và khác nhau giữa biểu đồ tuần tự (Sequence Diagram) và biểu đồ cộng tác (Collaboration Diagram). Trả lời: Interactive Diagram của UML tức biểu đồ tương tác, bao gồm 2 loại là: Biểu đồ tuần tự (Sequence Diagram) và Biểu đồ cộng tác (Collaboration Diagram). Giống nhau: Dùng mô hình hoá sự tương tác (trao đổi thông điệp) giữa các đối tượng thuộc những lớp khác nhau. Khác nhau: Biểu đồ tuần tự hướng thời gian (TimeOriented) là chủ yếu, trong khi Biểu đồ cộng tác thiên về hướng thông điệp (MessageOriented). Câu 4: Giải thích biểu đồ ca (Use Case Diagram) sau: Trả lời: Đây là biểu đồ ca mô hình hoá một hệ thống thư viện điện tử. Các tác nhân (Actor): Borrower (bạn đọc), Student (sinh viên), Staff (cán bộ cơ quan), Guest (khách ngoài cơ quan), Librarian (thủ thư). Các ca sử dụng (Use Case): Searches (tìm tài liệu), Makes Reservation (giữ chỗ), Removes Reservation (huỷ chỗ đã giữ), Borrows (cho mượn), Returns (nhận tài liệu trả), Renews (gia hạn), Manages Borrower (quản lý bạn đọc), Manages Item (quản lý tài liệu). Quan hệ khái quát hoá: Student, Staff, Guest với Borrower và Librarian với Staff. Quan hệ kết hợp: Borrower với Librarian, Borrower với Searches và Removes Reservation; Librarian với Borrows, Returns, Renews, Manages Borrower và Manages Item. Chú ý quan hệ kết hợp 2 chiều giữa Librarian và Renews (Chức năng Renews có khả năng chủ động gửi thông điệp cho Librarian báo về những trường hợp mượn tài liệu quá hạn). Quan hệ phụ thuộc: Include (gộp) giữa Borrows với Removes Reservation, Extend giữa Searches với Makes Reservation. Sự khác nhau giữa Include và Extend: Borrows luôn luôn cần tới Removes Reservation, trong khi Searches không phải lúc nào cũng dùng Makes Reservation. Câu 5: Xây dựng biểu đồ hoạt động (Activity Diagram) Làm đồ án môn học với các hành động: Chọn đề tài, Liên hệ với thày hướng dẫn, rồi tiến hành 4 công việc đồng thời, xen kẽ nhau là Thu thập tài liệu, Nghiên cứu tài liệu, Lập trình và Soạn đồ án. Khi hoàn thành, cần Liên hệ lại với thày hướng dẫn và chỉ được In đồ án, tiếp theo Ghi đĩa CD và sau đó là Nộp đồ án (kèm CD) sau khi được phép của thày, còn không thì phải sửa lại đồ án.
Câu 1: UML (Unifield Modeling Language) là gì? Ngôn ngữ mơ hình hố thống – UML ngơn ngữ để biểu diễ mơ hình thêo hướng đối tượng Câu 2: Điểm khác phương pháp ( method) và ngơn ngữ mơ hình hố là gì? Điểm khác phương pháp ngơn ngữ mơ hình hố ngơn ngữ mơ hình hố khơng có tiến trình ( process) hay câu lệnh mô tả công việc người sử dụng cần làm mà bao gồm ký hiệu – biểu tượng dùng mơ hình – tập quy tắc cách sử dụng chúng Câu 3: Thế nào là biểu đồ tương tác (Interactive Diagram) UML? Hãy điểm giống và khác biểu đồ (Sequence Diagram) và biểu đồ cộng tác (Collaboration Diagram) Trả lời: - Interactive Diagram UML tức biểu đồ tương tác, bao gồm loại là: Biểu đồ (Sequence Diagram) Biểu đồ cộng tác (Collaboration Diagram) - Giống nhau: Dùng mơ hình hố tương tác (trao đổi thông điệp) đối tượng thuộc lớp khác Khác nhau: Biểu đồ hướng thời gian (Time-Oriented) chủ yếu, Biểu đồ cộng tác thiên hướng thông điệp (Message-Oriented) Câu 4: Giải thích biểu đồ ca (Use Case Diagram) sau: Trả lời: - Đây biểu đồ ca mơ hình hố hệ thống thư viện điện tử - Các tác nhân (Actor): Borrower (bạn đọc), Student (sinh viên), Staff (cán quan), Guest (khách quan), Librarian (thủ thư) - Các ca sử dụng (Use Case): Searches (tìm tài liệu), Makes Reservation (giữ chỗ), Removes Reservation (huỷ chỗ giữ), Borrows (cho mượn), Returns (nhận tài liệu trả), Renews (gia hạn), Manages Borrower (quản lý bạn đọc), Manages Item (quản lý tài liệu) - Quan hệ khái quát hoá: Student, Staff, Guest với Borrower Librarian với Staff - Quan hệ kết hợp: Borrower với Librarian, Borrower với Searches Removes Reservation; Librarian với Borrows, Returns, Renews, Manages Borrower Manages Item Chú ý quan hệ kết hợp chiều Librarian Renews (Chức Renews có khả chủ động gửi thông điệp cho Librarian báo trường hợp mượn tài liệu hạn) - Quan hệ phụ thuộc: Include (gộp) Borrows với Removes Reservation, Extend Searches với Makes Reservation Sự khác Include Extend: Borrows luôn cần tới Removes Reservation, Searches lúc dùng Makes Reservation Câu 5: Xây dựng biểu đồ hoạt động (Activity Diagram) Làm đồ án môn học với hành động: Chọn đề tài, Liên hệ với thày hướng dẫn, tiến hành công việc đồng thời, xen kẽ là Thu thập tài liệu, Nghiên cứu tài liệu, Lập trình và Soạn đồ án Khi hoàn thành, cần Liên hệ lại với thày hướng dẫn và In đồ án, Ghi đĩa CD và sau là Nộp đồ án (kèm CD) sau phép thày, cịn khơng thì phải sửa lại đồ án Trả lời: CÂU 4: TRÌNH BÀY CÁC HƯỚNG NHÌN TRONG UML PHÂN TÍCH CÁC MỐI QUAN HỆ GIỮA CÁC BIỂU ĐỒ (DIAGRAM) VÀ VIỆC HÌNH THÀNH CÁC KHUNG NHÌN (VIEW) CHO VÍ DỤ MINH HỌA UML có tất hướng nhìn sau: - Hướng nhìn Use case (use case view): hướng nhìn khía cạnh chức hệ thống, nhìn từ hướng tác nhân bên ngồi - Hướng nhìn logic (logical view): chức thiết kế bên hệ thống nào, qua khái niệm cấu trúc tĩnh ứng xử động hệ thống - Hướng nhìn thành phần (component view): khía cạnh tổ chức thành phần code - Hướng nhìn song song (concurrency view): tồn song song/ trùng hợp hệ thống, hướng đến vấn đề giao tiếp đồng hóa hệ thống - Hướng nhìn triển khai (deployment view): khía cạnh triển khai hệ thống vào kiến trúc vật l (các máy tính hay trang thiết bị coi trạm công tác) Khi bạn chọn công cụ để vẽ biểu đồ, chọn công cụ tạo điều kiện dễ dàng chuyển từ hướng nhìn sang hướng nhìn khác Ngồi ra, cho mục đích quan sát chức thiết kế nào, công cụ phải tạo điều kiện dễ dàng cho bạn chuyển sang hướng nhìn Use case (để xem chức miêu tả từ phía tác nhân), chuyển sang hướng nhìn triển khai (để xem chức phân bố cấu trúc vật l - Nói cách khác nằm máy tính nào) Ngồi hướng nhìn kể trên, ngành cơng nghiệp phần mềm cịn sử dụng hướng nhìn khác, ví dụ hướng nhìn tĩnh-động, hướng nhìn logic-vật l., quy trình nghiệp vụ (workflow) hướng nhìn khác UML khơng u cầu phải sử dụng hướng nhìn này, hướng nhìn mà nhà thiết kế UML nghĩ tới, nên có khả nhiều công cụ dựa hướng nhìn * MỐI QUAN HỆ GIỮA BIỂU ĐỒ (DIAGRAM) VÀ VIỆC HÌNH THÀNH CÁC KHUNG NHÌN VIEW + Hướng nhìn Use case (Use case View): Hướng nhìn Use case miêu tả chức hệ thống phải cung cấp tác nhân từ bên mong đợi Tác nhân thực thể tương tác với hệ thống; người sử dụng hệ thống khác Hướng nhìn Use case hướng nhìn dành cho khách hàng, nhà thiết kế, nhà phát triển người thử nghiệm; miêu tả qua biểu đồ Use case (use case diagram) bao gồm biểu đồ hoạt động (activity diagram) Cách sử dụng hệ thống nhìn chung miêu tả qua loạt Use case hướng nhìn Use case, nơi Use case lời miêu tả mang tính đặc thù cho tính hệ thống (có nghĩa chức mong đợi) Hướng nhìn Use case mang tính trung tâm, đặt nội dung thúc đẩy phát triển hướng nhìn khác Mục tiêu chung hệ thống cung cấp chức miêu tả hướng nhìn – với vài thuộc tính mang tính phi chức khác – hướng nhìn có ảnh hưởng đến tất hướng nhìn khác Hướng nhìn sử dụng để thẩm tra (verify) hệ thống qua việc thử nghiệm xem hướng nhìn Use case có với mong đợi khách hàng (Hỏi: "Đây có phải thứ bạn muốn") có với hệ thống vừa hồn thành (Hỏi: "Hệ thống có hoạt động đặc tả?”) + Hướng nhìn logic (Logical View): Hướng nhìn logic miêu tả phương thức mà chức hệ thống cung cấp.Chủ yếu sử dụng cho nhà thiết kế nhà phát triển Ngược lại với hướng nhìn Use case, hướng nhìn logic nhìn vào phía bên hệ thống Nó miêu tả kể cấu trúc tĩnh (lớp, đối tượng, quan hệ) tương tác động xảy đối tượng gửi thông điệp cho để cung cấp chức định sẵn Hướng nhìn logic định nghĩa thuộc tính trường tồn (persistency) song song (concurrency), giao diện cấu trúc nội lớp Cấu trúc tĩnh miêu tả biểu đồ lớp (class diagram) biểu đồ đối tượng (object diagram) Q trình mơ hình hóa động miêu tả biểu đồ trạng thái (state diagram), biểu đồ trình tự (sequence diagram), biểu đồ tương tác (collaboration diagram) biểu đồ hoạt động (activity diagram) + Hướng nhìn thành phần (Component View): Là lời miêu tả việc thực thi modul phụ thuộc chúng với Nó thường sử dụng cho nhà phát triển thường bao gồm nhiều biểu đồ thành phần Thành phần modul lệnh thuộc nhiều loại khác nhau, biểu đồ với cấu trúc phụ thuộc chúng Các thông tin bổ sung thành phần, ví dụ vị trí tài nguyên (trách nhiệm thành phần), thông tin quản trị khác, ví dụ báo cáo tiến trình cơng việc bổ sung vào + Hướng nhìn song song (Concurrency View): Hướng nhìn song song nhắm tới chia hệ thống thành qui trình (process) xử lý (processor) Khía cạnh này, vốn thuộc tính phi chức hệ thống, cho phép sử dụng cách hữu hiệu nguồn tài nguyên, thực thi song song, xử lý kiện không đồng từ môi trường Bên cạnh việc chia hệ thống thành tiểu trình thực thi song song, hướng nhìn phải quan tâm đến vấn đề giao tiếp đồng hóa tiểu trình Hướng nhìn song song giành cho nhà phát triển người tích hợp hệ thống, bao gồm biểu đồ động (trạng thái, trình tự, tương tác hoạt động) biểu đồ thực thi (biểu đồ thành phần biểu đồ triển khai) + Hướng nhìn triển khai (Deployment View): Cuối cùng, hướng nhìn triển khai cho sơ đồ triển khai mặt vật l hệ thống, ví dụ máy tính máy móc liên kết chúng với Hướng nhìn triển khai giành cho nhà phát triển, người tích hợp người thử nghiệm hệ thống thể biểu đồ triển khai Hướng nhìn bao gồm ánh xạ thành phần hệ thống vào cấu trúc vật l.; ví dụ chương trình hay đối tượng thực thi máy tính Câu 5: TRÌNH BÀY VÀ PHÂN TÍCH MỐI QUAN HỆ GIỮA CÁC BIỂU ĐỒ UML VÀ Q TRÌNH PHÂN TÍCH, THIẾT KẾ MỘT HỆ THỐNG THƠNG TIN THEO PHƯƠNG PHÁP HƯỚNG ĐỐI TƯỢNG? * TRÌNH BÀY VÀ PHÂN TÍCH MỐI QUAN HỆ GIỮA CÁC BIỂU ĐỒ UML BIỂU ĐỒ (DIAGRAM) Biểu đồ hình vẽ bao gồm ký hiệu phần tử mơ hình hóa xếp để minh họa thành phần cụ thể hay khía cạnh cụ thể hệ thống Một mơ hình hệ thống thường có nhiều loại biểu đồ, loại có nhiều biểu đồ khác Một biểu đồ thành phần hướng nhìn cụ thể; vẽ ra, thường thường xếp vào hướng nhìn Mặt khác, số loại biểu đồ thành phần nhiều hướng nhìn khác nhau, tùy thuộc vào nội dung biểu đồ - Biểu đồ Use case (Use Case Diagram): Một biểu đồ Use case số lượng tác nhân ngoại cảnh mối liên kết chúng Use case mà hệ thống cung cấp (nhìn hình 3.2) Một Use case lời miêu tả chức mà hệ thống cung cấp Lời miêu tả Use case thường văn tài liệu, kèm theo biểu đồ hoạt động Các Use case miêu tả theo hướng nhìn từ ngồi vào tác nhân (hành vi hệ thống theo mong đợi người sử dụng), không miêu tả chức cung cấp hoạt động nội bên hệ thống Các Use case định nghĩa yêu cầu mặt chức hệ thống - Biểu đồ lớp (Class Diagram): Một biểu đồ lớp cấu trúc tĩnh lớp hệ thống (nhìn hình 3.3) Các lớp đại diện cho “vật” xử lý hệ thống Các lớp quan hệ với nhiều dạng thức: liên kết (associated - nối kết với nhau), phụ thuộc (dependent - lớp phụ thuộc vào lớp khác), chuyên biệt hóa (specialized - lớp kết chuyên biệt hóa lớp khác), hay đóng gói ( packaged - hợp với thành đơn vị) Tất mối quan hệ thể biểu đồ lớp, kèm với cấu trúc bên lớp theo khái niệm thuộc tính (attribute) thủ tục (operation) Biểu đồ coi biểu đồ tĩnh theo phương diện cấu trúc miêu tả có hiệu lực thời điểm toàn vòng đời hệ thống Một hệ thống thường có loạt biểu đồ lớp – tất biểu đồ lớp nhập vào biểu đồ lớp tổng thể – lớp tham gia vào nhiều biểu đồ lớp Biểu đồ lớp miêu tả chi tiết chương sau - Biểu đồ đối tượng (Object Diagram): Một biểu đồ đối tượng phiên biểu đồ lớp thường sử dụng ký hiệu biểu đồ lớp Sự khác biệt hai loại biểu đồ nằm chỗ biểu đồ đối tượng loạt đối tượng thực thể lớp, thay lớp Một biểu đồ đối tượng ví dụ biểu đồ lớp, tranh thực tế xảy hệ thống thực thi: tranh mà hệ thống có thời điểm Biểu đồ đối tượng sử dụng chung ký hiệu biểu đồ lớp, trừ hai ngoại lệ: đối tượng viết với tên gạch tất thực thể mối quan hệ Biểu đồ đối tượng khơng quan trọng biểu đồ lớp, chúng sử dụng để ví dụ hóa biểu đồ lớp phức tạp, với thực thể cụ thể mối quan hệ tranh toàn cảnh Một biểu đồ đối tượng thường thường sử dụng làm thành phần biểu đồ cộng tác (collaboration), lối ứng xử động loạt đối tượng - Biểu đồ trạng thái (State Diagram): Một biểu đồ trạng thái thường bổ sung cho lời miêu tả lớp Nó tất trạng thái mà đối tượng lớp có, kiện (event) gây thay đổi trạng thái (hình 3.5) Một kiện xảy đối tượng tự gửi thông điệp đến cho - ví dụ để thơng báo khoảng thời gian xác định qua – số điều kiện thỏa mãn Một thay đổi trạng thái gọi chuyển đổi trạng thái (State Transition) Một chuyển đổi trạng thái có hành động liên quan, xác định điều phải thực chuyển đổi trạng thái diễn Biểu đồ trạng thái không vẽ cho tất lớp, mà riêng cho lớp có số lượng trạng thái định nghĩa rõ ràng hành vi lớp bị ảnh hưởng thay đổi qua trạng thái khác Biểu đồ trạng thái vẽ cho hệ thống tổng thể Biểu đồ trạng thái miêu tả chi tiết chương sau (Mơ hình động) - Biểu đồ trình tự (Sequence Diagram): Một biểu đồ trình tự cộng tác động loạt đối tượng (xem hình 3.6) Khía cạnh quan trọng biểu đồ trình tự thông điệp (message) gửi đối tượng Nó trình tự tương tác đối tượng, điều xảy thời điểm cụ thể trình tự thực thi hệ thống Các biểu đồ trình tự chứa loạt đối tượng biểu diễn đường thẳng đứng Trục thời gian có hướng từ xuống biểu đồ, biểu đồ trao đổi thông điệp đối tượng thời gian trôi qua Các thông điệp biểu diễn đường gạch ngang gắn liền với mũi tên (biểu thị thông điệp) nối liền đường thẳng đứng thể đối tượng Trục thời gian lời nhận xét khác thường đưa vào phần lề biểu đồ - Biểu đồ cộng tác (Collaboration Diagram): Một biểu đồ cộng tác cộng tác động, giống biểu đồ trình tự Thường người ta chọn dùng biểu đồ trình tự dùng biểu đồ cộng tác Bên cạnh việc thể trao đổi thông điệp (được gọi tương tác), biểu đồ cộng tác đối tượng quan hệ chúng (nhiều gọi ngữ cảnh) Việc nên sử dụng biểu đồ trình tự hay biểu đồ cộng tác thường định theo nguyên tắc chung sau: Nếu thời gian hay trình tự yếu tố quan trọng cần phải nhấn mạnh chọn biểu đ Câu 6: Q TRÌNH PHÂN TÍCH, THIẾT KẾ MỘT HỆ THỐNG THƠNG TIN THEO PHƯƠNG PHÁP HƯỚNG ĐỐI TƯỢNG Sử dụng UML để PTTKHT cần thực bước sau: Bước 1: Xác định tác nhân (actor), trường hợp sử dụng (use case), mối quan hệ trường hợp sử dụng, từ xây dựng biểu đồ trường hợp sử dụng Bước 2: Mơ tả thuộc tính phương pháp cho lớp Bước 3: Xác định lớp đối tượng, mối quan hệ chúng để xây dựng biểu đồ lớp, từ xây dựng biểu đồ đối tượng Bước 4: Xác định thủ tục từ trường hợp sử dụng, từ xây dựng biểu đồ trình tự biểu đồ hợp tác Bước 5: Xác định ứng xử đối tượng thông qua biểu đồ Bước 6: Xác định kiến trúc hệ thống cách xác định thành phần hệ thống, xây dựng biểu đồ thành phần biểu đồ triển khai Câu 7: TRÌNH BÀY MỤC TIÊU MƠ HÌNH USE CASE VÀ MỐI QUAN HỆ CỦA NĨ VỚI QUY TRÌNH PHÂN TÍCH VÀ THIẾT KẾ (ANALYSIS & DESIGN WORKFLOW) Mục tiêu yếu Use Case là: - Để định mô tả yêu cầu mặt chức hệ thống, kết rút từ thỏa thuận khách hàng (và/hoặc người sử dụng cuối) nhóm phát triển phần mềm - Để tạo nên lời mô tả rõ ràng quán việc hệ thống cần phải làm gì, để mơ hình sử dụng qn suốt tồn q trình phát triển, sử dụng làm công cụ giao tiếp cho tất người phát triển nên yêu cầu này, để tạo nên tảng cho việc tạo nên mơ hình thiết kế cung cấp chức yêu cầu - Để tạo nên tảng cho bước thử nghiệm hệ thống, đảm bảo hệ thống thỏa mãn yêu cầu người sử dụng đưa Trong thực tế thường để trả lời câu hỏi: Liệu hệ thống cuối có thực chức mà khởi đầu khách hàng đề nghị? - Để cung cấp khả theo dõi yêu cầu mặt chức chuyển thành lớp cụ thể thủ tục cụ thể hệ thống - Để đơn giản hóa việc thay đổi mở rộng hệ thống qua việc thay đổi mở rộng mơ hình Use Case, sau theo dõi riêng Use Case bị thay đổi hiệu ứng chúng thiết kế hệ thống xây dựng hệ thống Mối quan hệ Use case với quy trình phân tích thiết kế: …………………………………………… Có ba loại quan hệ Use Case: Quan hệ mở rộng, quan hệ sử dụng quan hệ tạo nhóm Quan hệ mở rộng quan hệ sử dụng hai dạng khác tính thừa kế Quan hệ tạo nhóm phương cách để đặt nhiều Use Case chung với vào gói Quan hệ mở rộng • Trong object ClassA có chứa (trong phần thuộc tính) object ClassB • ObjectX ClassA bị hủy ObjectY ClassB (bên ObjectX) khơng thể cịn tồn • Chú ý : • B phận whole A • A chết tất B chết • B chết khơng ảnh hưởng đến A • Bản số Whole A 1, nghĩa B thuộc A Câu 9: Hãy liệt kê tất loại lược đồ UML Trình bày ý nghĩa mục đích sử dụng loại lược đồ tùy chọn số loại lược đồ Câu 10: Mơ hình gì? Tại phải mơ hình hố? Ví dụ: Mơ hình dạng trừu tượng hố hệ thống thực Nói cách khác, mơ hình hình ảnh thực tốn mà xét, diễn tả mức độ trừu tượng hố đó, theo quan điểm thể hình thức ( văn bảng, biểu đồ, đồ thị, cơng thức,…) Mục đích mơ hình hố: - Mơ hình hố giúp hiểu thực trừu tượng, tổng quát hoá khái niệm sử để giảm thiểu độ phức tạp hệ thống Qua mơ hình biết hệ thống gồm gì? Và chúng hoạt động - Mơ hình giúp quan sát hệ thống vốn có thực - phải có ta mong muốn Mơ hình cho phép ta đặc tả cấu trúc hành vi hệ thống để hoàn chỉnh Mơ hình hố nhằm tạo khn mẫu hướng dẫn cách xây dựng hệ thống , - cho phép thử nghiệm, mô thực theo mô hình Mơ hình sở để trao đổi, ghi lại định dã thực nhóm tham gia dự án phát triển phần mềm Câu 11: Trình bày mơ hình thác nước? Câu 12:Hướng nhìn gì? UML bao gồm hướng nhìn nào? Giải thích ? Hướng nhìn rea khía cạnh khác hệ thống cần phải mơ hình hố Một hướng nhìn khơng phải vẽ, mà trừu tượng hoá bao gồm loạt biểu đồ khác Khung nhìn UC: - Khung nhìn hình thành từ giai đoạn phân tích u cầu sử dụng để điều khiển thúc đẩy phần việc cịn lại thiết kế Nó mơ tả hành vi hệ thống theo cách nhìn khách hàng, phân tích viên kỹ sư kiểm tra , thử nghiệm Khung nhìn UC chứa tác nhân, UC, Biểu đồ UC hệ thống Chúng bao gồm vài biểu đồ trình tự, biểu đồ cộng tác gói Khung nhìn UC tập trung vào mức độ cao hệ thống làm, không quan tâm đến hệ thống làm Khung nhìn thiết kế:(khung nhìn logic) - Khung nhìn logic biểu diễn tổ chức lớp có ý nghĩa quan hệ chúng với Khung nhìn tập trung vào hệ thống cài đặt hành vi UC - Nó bao gồm lớp, biểu đồ lớp, biểu đồ đối tượng, biểu đồ tương tác, biểu đồ biến đổi trạng thái gói Khung nhìn thực thi: ( khung nhìn thành phần) - Khung nhìn bao gồm : thành phần, biểu đồ thành phần gói Khung nhìn triển khai: - Khung nhìn tập trung vào phân bổ vật lý tài nguyên phân bổ nhiệm vụ tài nguyên Khung nhìn triển khai liên quan đến triểu khai vật lý hệ thống Khung nhìn bao gồm tiến trình, xử lý thiết bị mạng vav kết nối vật lý chúng Khung nhìn tiến trình: Biễu diễn phân tách luồng thực chương trình, đồng luồng, phân bổ đối tượng lớp cho luồng thực khác - Khung nhìn tiến trình tập trung vào nhiệm vụ tương tranh tương tác với hệ thống đa nhiệm Câu 13: So sánh UC view Logic View Câu 14: Liệt kê bước phát triển phần mềm hướng đối tượng sử dụng UML Bước 1: Giai đoạn nghiên cứu sơ bộ: UML sử dụng biểu đồ Use case để nêu bật mối quan hệ giao tiếp với hệ thống Qua phương pháp mơ hình hố Use case, tác nhân bên ngồi quan tâm đến hệ thống mơ hình hố song song với chức mà họ địi hỏi từ phía hệ thống Bước 2: Giai đoạn phân tích: Sau nhà phân tích nhận biết lớp thành phần mơ mối quan hệ chúng với nhau, lớp mối quan hệ miêu tả cơng cụ biểu đồ lớp UML Bước 3: Giai đoạn thiết kế: Kết giai đoạn phân tích mở rộng thành giải pháp kỹ thuật, lớp bổ sung để tạo thành hạ tàng sở kỹ thuật, giai đoạn thiết kế đưa kết đặc tả chi tiết cho giai đoạn xây dựng hệ thống Bước 4: Giai đoạn xây dựng: Các lớp giai đoạn thiết kế biến thành dòng code cụ thể ngơn ngữ lập trình hướng đối tượng cụ thể Bước 5: Thử nghiệm: giai đoạn sử dụng nhiều loại biểu đồ UML khác làm tảng cho cơng việc Bước 6: Thực hiện, triển khai: Trong giai đoạn này, hệ thống vừa phát triển triển khai cho phía người dùng Bước 7:Bảo trì, nâng cấp: Tuỳ theo biến đơi mơi trường sử dụng, hệ thống trở nên lỗi thời hay cần phải sửa đổi nâng cấp để sử dụng Câu 15: Tiến trình RUP gì? Giải thích Câu 16: Trình bày tiến trình 10 bước? Câu 17: Trình bày phân biệt dạng quan hệ biểu đồ lớp -Phụ thuộc( denpendency) : Phụ thuộc quan hệ kết nối lớp , quan hệ chiều, lớp phụ thuộc vào lớp khác - Quan hệ kết hợp( association) Là kết nối ngữ nghĩa hai lớp Khi có quan hệ kết hợp, lớp gửi thơng điệp đến lớp khác biểu đồ tương tác Kết hợp chiều hay hai chiều - Khái quát hố( generalization): Tiến trình khó khăn, địi hỏi khả trừu tượng cao để có phân cấp tối ưu Cây lớp không phát triền từ gốc mà hình thành từ thuộc giới thực Khái quát hoá gộp thành phần chung lớp để hình thành lớp tổng quát gọi lớp cha Câu 18: Trình bày khái niệm hướng đối tượng: lớp, đối tượng, gói, thành phần, kế thừa, cho ví dụ: • Lớp: mơ tả nhóm đối tượng có tính chất giống nhau, có chung hành vi ứng xử, có mối liên quan với đối tượng lớp khác có chung ngữ nghĩa hệ thống Ví dụ: lớp SinhVien, HocSinh, KhachHang • Đối tượng: khái niệm , trừu tượng hoá hay vật có nghĩa tốn khảo sát Đối tượng thực thể hệ thống, CSDL xác định thơng qua định danh chúng Ví dụ : SV1: SinhVien Họten= vanminh Tuoi = 30 • … Gói: nhóm phần tử mơ hình gồm lớp , mối quan hệ gói nhỏ VD: gói A • Thành phần: thành phần biểu diễn vật lý mã nguồn, tệp nhị phân q trình phát triển hệ thống • Kế thừa: chế biểu diễn tính tương tự lớp, đơn giản hoá định nghĩa lớp tương tự từ lớp khác định nghĩa Miêu tả tổng qt hố, đặc biệt hố, tạo thuộc tính phương thức chung cho lớp phân cấp Câu 19: Phân biệt biểu đồ tuần tự, biểu đồ cộng tác - Biểu đồ biểu đồ tương tác theo trật tự thời gian giao tiếp thông điệp đối tượng Biểu đồ cộng tác luồng kiện sinh kịch bảng UC Biểu đồ cộng tác tập trung nhiều vào quan hệ đối tượng, vào tổ chức cấu trúc đối tượng nhận hay gửi thơng điệp Khác nhau: biểu đồ trình tự tập trung vàoo luồng điều khiển đối tượng, biểu đồ cộng tác thị luồng liệu đối tượng Câu 20: Biểu đồ UC gì? Vai trò biểu đồ UC xác định yêu cầu khách hàng? Mơ hình UC UML mơ tả hay nhiều biểu đồ UC Các biểu đồ UC công cụ mạnh để thu thập yêu cầu hệ thống, chúng hiển thị UC , làm dễ dàng giao tiếp phân tích viên hệ thống, người sử dụng phân tích viên hệ thống với khách hàng Biểu đồ UC quan hệ UC tác nhân, thông thường phải tạo vài biêu đò UC cho hệ thống Vai trò biểu đồ UC xác định yêu cầu khách hàng - HÌnh thành định mơ tả yêu cầu chức hệ thống, kết thoả thuận khách hàng người phát triển hệ thống phần mềm Cho phép mô tả rõ ràng quán hệ thống làm, cho mô hình có khả sử dụng xun suốt q trình phát triển Cung cấp sở để kiểm tra, thử nghiệm hệ thống Cho khả dễ thay đổi hay mở rộng yêu cầu hệ thống Câu 21: UC gì? Các phương pháp để tìm UC? Ca sử dụng mô tả tập hoạt động hệ thống theo quan điểm tác nhân Nó mơ tả yêu cầu hệ thống trả lời cho câu hỏi: Hệ thống phải làm gì? Ca sử dụng mơ tả q trình từ bắt đầu kết thúc, gồm dãy thao tác , giao dịch cần thiết để sản sinh theo u cầu tổ chức, cá nhân; Có phương pháp hỗ trợ giúp ta xác định ca sử dụng 1: Phưong pháp thứ dựa vào tác nhân: a Xác nhận tác nhân liên quan đến hệ thống đến tổ chức, nghĩa tìm xác định tác nhân NSD hay hệ thống khác tương tác với hệ thống cần xây dựng b Với tác nhân,tìm tiến trình ( chức ) khởi đầu,hay giúp tác nhân thực hiện,giao tiếp/tương tác với hệ thống phương pháp thứ hai để tìm cách sử dụng dựa vào kiện a xác định kiện bên ngồi có tác động đến hệ thống hay hệ thống phải trả lời b tìm mối liên quan kiện cách sử dụng Tương tự trên,hãy trả lời câu hỏi sau để tìm cách sử dụng 1.nhiệm vụ tác nhân gì? 2.tác nhân cần phải đọc, ghi,sửa đổi,cập nhật,hay lưu trữ thơng tin hay khơng? 3.những thay đổi bên ngồi hệ thống tác nhân có cần phải thơng báo cho hệ thống hay không? 4.những tác nhân cần thông báo thay đổi hệ thống? 5.Hệ thống cần có đầu vào/ra nào? Từ đâu đến đâu ? Câu 15 : tác nhân gì? Các phương pháp tìm tác nhân ? Tác nhân : thực thể bên ngồi có tương tác với hệ thống, bao gồm người,vật,thiết bị hay hệ thống khác có trao đổi thơng tin với hệ thống.Nói cách khác,tác nhân đại diện cho người hay phận tổ chức mong muốn nhận thông tin ( liệu ) câu trả lời từ cách sử dụng tương ứng phương pháp tìm kiếm tác nhân : Một kỹ thuật hỗ trợ để xác định tác nhân dựa câu trả lời câu hỏi sau: -Ai sử dụng chức hệ thống? -Ai cần hỗ trợ hệ thống để thực công việc ngày? -Ai quản trị,bảo dưỡng để đảm bảo cho hệ thống hoạt động thường xuyên? -Hệ thống quản lý,sử dụng thiết bị nào? -Hệ thống cần tương tác với phận,hệ thống khác? -Ai hay quan tâm đến kết qủa xử lí hệ thống? Câu 16 : Phân biệt qua hệ biểu đồ use case -Quan hệ cho phép UC sử dụng chức UC khác.Quan hệ thường sử dụng để mơ hình hố vài chức sử dụng lại , dùng chung cho hai hay nhiều UC - Quan hệ cho phép uc mở rộng tuỳ ý chức UC khác cấp Nó điều kiện UC mở rộng UC khác (mở rộng gộp vài hành vi UC tổng quát để sử dụng lại).Nó tương tự qua hệ ở chỗ hai quan hệ tách phần chức chung UC mới,đó UC trừu tượng Câu 17: Biểu đồ trạng thái dung để làm gì? Biểu đồ trạng thái bao gồm thông tin trạng thái khác đối tượng, thể đối tượng chuyển đổi từ trạng thái sang trạng thái khác nào,hành vi đối tượng trạng thái sao.Biểu đồ trạng thái chu kì sống đối tượng, từ tạo đến bị phá huỷ Nó cịn cho biết kiện ( thông điệp nhận nhận được,kết thúc khoảng thời gian,điều kiện thành true ) tác động lên trạng thái nào.Biểu đồ giải pháp tốt để mơ hình hố hành động lớp Câu 18: Phân biệt kiểu lớp: Lớp thực thể, lớp biên, lớp điều khiển, lớp trừu tượng Lớp biên: (Boundary class) lớp nằm biên hệ thống phần giới cịn lại Chúng biểu mẫu , báo cáo, giao diện với phần cứng máy in, …và giao diện với hệ thống khác - Ký hiệu( tự biết) Lớp biên cho phép tác nhân tương tác với hệ thống Lớp thực thể ( entity class): lưu trữ thông tin mà ghi vào nhớ ngồi Ký hiệu ( tự biết) Lớp điều khiển ( control class) : lớp điều khiển có trách nhiệm điều phối hoạt động lớp khác Thông thường UC có lớp điều khiển để điều khiển trình tự kiện Ký hiệu: Lớp trừu tượng : lớp khơng ( đối tượng) cụ thể hệ thống thực, dùng cho việc mô tả đặc điểm chung lớp Một lớp trừu tượng thường chứa thao tác trưù tượng, thao tác có tiêu đề mà khơng có cài đặt Câu 19: Biểu đồ lớp gì? Phân loại lớp UML Biểu đồ lớp mô tả quan sát tĩnh hệ thống thông qua lớp mối quan hệ chúng Nó sử dụng để hiển thị lớp gói lớp mối quan hệ chúng Biểu đồ lớp giúp người phát triển phần mềm quan sát lập kế hoạch cấu trúc hệ thống trước lập trình Nó đảm bảo hệ thống thiết kế tốt từ đầu Các loại lớp biểu đồ: Biểu đồ lớp chứa nhiều loại lớp khác nhau, chúng lớp thơng thường, lớp tham số hóa, lớp thực, lớp tiện ích, lớp meta class( siêu lớp) - Lớp tham số: lớp sử dụng để tạo họ lớp khác, - cịn có tên lớp mẫu Lớp thực ( lớp tham số mà đối số có giá trị) Lớp tiện ích( tập hợp thao tác) Siêu lớp( lớp mà thực lớp khơng phải đối tượng Câu 20: Trình bày tốn tắt loại biểu đồ động UML - Biểu đồ trình tự: biẻu đồ tương tác theo trật tự thời gian cảu giao tiếp thông điệp đối tượng, biểu đồ đọc từ đỉnh xuống đáy Mỗi UC có nhiều luồng liệu, biểu đồ trình tự biểu diễn luồng liệu Đọc biểu đồ - trình tự cách quan sát đối tượng thông điệp Biểu đồ trình tự bao gồm thành phần: Đối tượng, thơng điệp thời gian • Thơng điệp phương tiện giao tiếp đối tượng, biểu diễn biểu đồ hợp tác mũi tên nơi gửi nơi nhận, Kiểu mũi tên loại thơng điệp, có loại thơng điệp: • Đơn: giá trị mặc định thông điệp, phần tử biểu đồ thông điệp chạy • luồng đơn điều khiển Đồng bộ: thuộc tính sử dụng đối tượng gửi thơng điệp chờ đến xử lý • xong Cản trở: đối tượng gửi thơng điệp đến nơi nhận, nơi nhận chưa xử lý đối tượng gửi bãi bỏ • thơng diệpd Hết hạn: đối tượng gửi thông điệp đến đối tượng nhận chờ khoảng thời gian Nếu sau khoảng thời gian chưa xử lý đối tượng gửi bãi • bỏ chúng Dị bộ: đối tượng gửi thơng điệp đến đối tượng nhận, đối tượng gửi tiếp tục làm việc khác khơng quan tâm đến thơng điệp có xử lý hay khơng Biểu đồ cộng tác:Chỉ luồng kiện xuyên qua kịch UC, biểu đồ cộng tác tập trung nhiều vào quan hệ đối tượng, tập trùng vào tổ chức cấu trúc đối tượng gửi hay nhận thông điệp, biểu đồ cộng tác hiển thị luồng liệu Biểu đồ chuyển trạng thái: bao gồm thông tin trạng thái khác đối tượng, thể đối tượng chuyển đổi từ trạng thái sang trạng thái khác nào, Câu 21: Hãy trình bày khái niệm thiết kê theo hướng từ xuống thiết kế theo hướng từ lên Theo bạn, mơi trường làm việc outsourcing thường sử dụng hình thức thiết kế nào? Tại sao? Top-down design: Một phương pháp lập trình chứng hiệu gọi phân hủy từ xuống Thiết kế theo hướng từ xuống trình thiết kế giải pháp cho vấn đề phương pháp phá vỡ cách có hệ thống tồn quy trình cơng việc thành phận cấu thành đạt tới mức chi tiết thấp Bottom-up design: Các thiết kế bắt đầu với chi tiết cụ thể chuyển sang mục tiêu chung Để bắt đầu thiết kế từ lên, nhà phân tích hệ thống kiểm tra tất thành phần có sẵn tiến hành xác định thành phần cần sử dụng để xây dựng hệ thống Trong mơi trường làm việc outsourcing thưởng sử dụng phương pháp thiết kế từ lên Vì đa số dự án có source sẵn nên ta sử dụng lại phát triển lên Câu 22: Hãy trình bày chi tiết quy trình (RUP) Relational Unified Process – Tiến trình hợp phát triển hãng IBM Tiến trình yêu cầu việc phát triển ứng dụng cách chặt chẽ nghiêm ngặt với việc đưa mẫu thực nhanh chóng qua làm việc với khách hàng nhóm dự án, việc lập kế hoạch đưa chức hệ thống cách tích cực Kết đưa ứng dụng đáp ứng yêu cầu người sử dụng giúp cho trình lên kế hoạch thực thi nhanh chóng (phần khái niệm khơng học được) Bao gồm giai đoạn: Inception Tập trung thực cơng việc sau: Business modeling: Hoạt động gồm công việc thu thập thông tin nghiệp vụ từ khách hàng Requirement: Phân tích, thu thập yêu cầu từ khách hàng, tài liệu nhân tố ảnh hưởng tới dự án Analysis and design: Phân tích thiết kế hệ thống, gia đoạn nên bắt đầu triển khai chuẩn bị kết thúc giai đoan Inception sau công tác bussiness modeling requirement đáp ứng phù hợp Elaboration Hoạt động giai đoạn phân tích thiết kế (analysis and design) Áp dụng mơ hình phân tích, mơ hình thiết kế, phân tích đối tượng, lớp,… bước đầu thực phần mềm (implementation) Construction Trong gian đoạn cần thực cơng việc thực (implementation) hệ thống theo cấp, component hay module kiểm tra (test) hệ thống thường xuyên liên tục Transition Giai đoạn bao gôm hoạt động triển khai (deploy) ứng dụng, cấu hình để bàn giao cho khách hàng (config and change management), cung cấp tài liệu hỗ trợ cho người dùng cuối khách hàng Câu 23: Mục đích hoạt động phân tích thiết kế hệ thống gì? Anh chị phân biệt khác hoạt động phân tích hoạt đơng thiết kế hệ thống Nêu sản phẩm pha thiết kế? Mục đichs hoạt đơng phân tích thiết kế hệ thống giups ching ta hiểu rõ yêu cầu đặt ra, xác định giải pháp mô tả chi tiết cho giải pháp, Nó trả lời cho câu hỏi, phần mềm làm gì, làm Sự khác hoạt động phân tích hoạt động thiết kế hệ thống: Hoạt động phân tích dừng lại mức xác định đặc trưng mà hệ thống cần phải xây dựng gì, khái niệm liên quan tìm hướng giải tốn chưa quan tâm đến cách thực xây dựng hệ thống Các sản phầm pha thiết kế biểu đồ tuận tự , biểu đô cộng tác Câu 24: So sánh ưu , nhược điểm phương pháp phát triển phần mềm hướng cấu trúc hướng đối tượng Câu 25: Trình bày khái niệm hướng đối tượng: lớp , đối tượng, gói Thành phần, kế thừa, cho ví dụ Câu 26: Liệt kê biểu đồ UML tập ký hiệu UML cho biểu đồ Câu 27: Liệt kê bước phát triển phần mềm hướng đối tượng sử dụng UML Câu 28: Phân biệt mơ hình tĩnh mơ hình động UML Câu 29: Phân biệt dạng quan hệ biểu đồ lớp : quan hệ khái quát hoá, quan hệ kết hợp, quạn hệ cộng hợp, quan hệ gộp Câu 30: Phân biệt biểu đồ biểu đồ cộng tác Câu 31: Nêu cơng việc cần thiết kể tạo nên mơ hình Use case: - Xác định tác nhân use case Xác định mối quan hệ phân rã biểu đồ use case Biểu diễn use case thông qua kịch Kiểm tra hiệu chỉnh mơ hình Câu 32:Biểu đồ trạng thái dùng để làm Câu 33: Phân biệt khác biểu đồ trạng thái cho use case biểu đồ trạng tháu hệ thống Câu 34: Biểu đồ Use case gì? Vai trị biểu đồ use case xác định yêu cầu khách hàng? Câu 35: Phân biệt mối quan hệ cộng hợp quan hệ gộp Câu 36: Biểu đồ tương tác dùng để làm gì? Các thành phần biểu đồ tương tác Câu37: Một hoạt động biểu đồ hoạt động mơ tả gì? Câu 38: Sự khác sơ đồ sơ đồ cộng tác: Biểu đồ trình tự biểu đồ cộng tác nhằm mục đích mơ tả tương tác đối tượng, hai mơ hình có khác sau: Biểu đồ trình tự làm bật thêm khía cạnh thời gian, cách hiển thị lời gọi phản hồi dọc theo dòng thời gian (dọc) cách hiển thị rõ ràng thời gian kích hoạt đối tượng Các biểu đồ trình tự cho thấy cách đối tượng giao tiếp với theo chuỗi thông điệp thời gian Luồng thời gian khía cạnh dễ thấy biểu đồ này, thơng điệp xếp theo trình tự thời gian dọc tuổi thọ đối tượng liên quan đến tin nhắn báo cáo sơ đồ cộng tác nhằm mục đích hiển thị thông tin liên lạc xảy đối tượng, cách xác định thông điệp lưu thông đối tượng Về bản, chúng bao gồm việc chồng hành động truyền thông sơ đồ đối tượng Khía cạnh thời gian hiển thị đây, cách đánh số tương tác với nhãn Một sơ đồ cộng tác cho thấy tương tác đối tượng lớp theo liên kết (các đường khơng bị đứt đoạn kết nối phần tử tương tác) thông điệp chảy qua liên kết Điều mô tả lúc cấu trúc tĩnh (liên kết nút) hành vi động (thông điệp) hệ thống ... cho ví dụ Câu 26: Liệt kê biểu đồ UML tập ký hiệu UML cho biểu đồ Câu 27: Liệt kê bước phát triển phần mềm hướng đối tượng sử dụng UML Câu 28: Phân biệt mơ hình tĩnh mơ hình động UML Câu 29: Phân... nên lỗi thời hay cần phải sửa đổi nâng cấp để sử dụng Câu 15: Tiến trình RUP gì? Giải thích Câu 16: Trình bày tiến trình 10 bước? Câu 17: Trình bày phân biệt dạng quan hệ biểu đồ lớp -Phụ thuộc(... tập hợp thao tác) Siêu lớp( lớp mà thực lớp khơng phải đối tượng Câu 20: Trình bày tốn tắt loại biểu đồ động UML - Biểu đồ trình tự: biẻu đồ tương tác theo trật tự thời gian cảu giao tiếp thông