com/drive/folders/1-cwFMtTnGSKhKyZba_vPYQw3OKGi5eek Ok nhá xin nhẹ con 10 Câu 1. So sánh ưu và nhược điểm của hai phương pháp luận: Phát triển phần mềm hướng cấu trúc và phát triển phần mềm hướng đối tượng? 3 Câu 2. Trình bày các nguyên tắc cơ bản của mô hình hóa hướng đối tượng: Sự trừu tượng hoá, tính đóng gói, tính module hóa, sự phân cấp. Cho ví dụ ? 4 Câu 3. Trình bày các khái niệm cơ bản trong kỹ thuật hướng đối tượng: Đối tượng, lớp đối tượng, gói, kế thừa, đa hình. Cho ví dụ ? 5 Câu 4. Trình bày các mục đích sử dụng khác nhau của UML? Các phần tử mô hình trong UML ? 6 Câu 5. Trình bày ý nghĩa và mục đích sử dụng của các loại biểu đồ trong UML ? Cơ sở nào để xác định được các loại biểu đồ đó ? 7 Câu 6. Phân biệt mô hình tĩnh và mô hình động trong UML ? 10 Câu 7. Mục đích của hoạt động mô hình hóa nghiệp vụ là gì ? Cho ví dụ ? 11 Câu 8. Đặc tả bổ sung và từ điển thuật ngữ là gì ? Trình bày nội dung và mục đích sử dụng của chúng ? 12 Câu 9. Mục đích của hoạt động phân tích và thiết kế là gì ? 13 Câu 10. Kiến trúc phần mềm là gì ? Trình bày kiến trúc khung nhìn 4+1 và mẫu kiến trúc phân tầng ? 13 Câu 11. Biểu đồ ca sử dụng là gì ? Phân biệt hai quan hệ include, extend trong biểu đồ ca sử dụng ? 14 Câu 12. Mục đích của hoạt động phân tích ca sử dụng là gì ? Các sản phẩm của pha phân tích hướng đối tượng ? 15 Câu 13. Các biểu đồ tương tác được tạo ra như thế nào trong phân tích ca sử dụng ? Phân biệt biểu đồ tuần tự và biểu đồ cộng tác ? 15 Câu 14. Lớp phân tích là gì ? Trình bày vai trò và cách xác định các kiểu mở rộng (stereotypes) của lớp phân tích: Lớp biên, lớp điều khiển và lớp thực thể ? 16 Câu 15. Phân biệt các dạng quan hệ trong biểu đồ lớp: Associations, generalization, aggregation, composition, dependency. Mục đích của việc xác định các phần tử thiết kế là gì ? 17 Câu 17. Hệ thống con là gì ? Hệ thống con dùng để làm gì ? Phân biệt hệ thống con và gói ? Cách xác định các hệ thống con ? 18 Câu 18. Cơ chế phân tích trong thiết kế hướng đối tượng dùng để làm gì ? Tại sao cần phân loại các cơ chế phân tích ? 18 Câu 19. Mục đích của thiết kế các ca sử dụng, các lớp, các hệ thống con và cơ sở dữ liệu là gì ? Các lớp được làm mịn bằng cách nào trong pha thiết kế hướng đối tượng ? 18 Câu 20. Trình bày cách xác định và vẽ mô hình miền nghiệp vụ ? 19 Câu 21. Trình bày cách xác định và vẽ biểu đồ ca sử dụng ? 19 Câu 22. Trình bày cách xác định và vẽ biểu đồ tuần tự ? 20 Câu 23. Trình bày cách xác định và vẽ biểu đồ lớp chi tiết ? 21 Câu 24. Trình bày cách xác định và vẽ biểu đồ hoạt động ? 21 Câu 25. Ý nghĩa của việc đóng gói sự tương tác giữa các hệ thống con là gì ? 22 Câu 26: Nêu các bước trong Phân tích hướng đối tượng? Có những loại biểu đồ nào dùng trong pha phân tích hướng đối tượng? 22 Câu 27 : Các mô hình : Thác nước , bản mẫu, xoắn ốc 22 Bài tập 29 Câu 1. So sánh ưu và nhược điểm của hai phương pháp luận: Phát triển phần mềm hướng cấu trúc và phát triển phần mềm hướng đối tượng? *Phát triển phần mềm hướng cấu trúc Đặc trưng của phương pháp hướng cấu trúc là phân chia chương trình chính thành nhiều chương trình con, mỗi chương trình con nhằm đến thực hiện một công việc xác định. Thiết kế dựa trên 2 hướng: hướng dữ liệu hoặc hướng hành động. Ưu điểm: - Đặc trưng của phương pháp hướng cấu trúc là phân chia chương trình chính thành nhiều chương trình con, mỗi chương trình con nhằm đến thực hiện một công việc xác định. - Thiết kế dựa trên 2 hướng: hướng dữ liệu hoặc hướng hành động. - Tư duy phân tích thiết kế rõ ràng, chương trình sáng sủa dễ hiểu. Nhược điểm - Không hỗ trợ việc sử dụng lại - Không phù hợp cho phát triển các phần mềm lớn. - Khó quản lý, dễ gây ra lỗi trong quá trình phân tích, khó kiểm thử và bảo trì. - Không mô hình hoá được các yêu cầu hệ thống phi chức năng *Phát triển phần mềm hướng đối tượng Phương pháp hướng đối tượng tập trung vào cả hai khía cạnh của hệ thống là dữ liệu và hành động bằng cách ánh xạ các thành phần của bài toán vào các đối tượng ngoài đời thực. Ưu điểm - phương pháp hướng đối tượng tập trung vào cả hai khía cạnh của hệ thống là dữ liệu và hành động. - Hỗ trợ sử dụng lại mã nguồn - Phù hợp với các hệ thống lớn B. nhược điểm - Tốc độ chậm - phức tạp → Khó cho người mới bắt đầu 2. Trình bày các nguyên tắc cơ bản của mô hình hóa hướng đối tượng: Sự trừu tượng hoá, tính đóng gói, tính module hóa, sự phân cấp. Cho ví dụ ? - Trừu tượng hóa (abstraction): Trong phương pháp hướng đối tượng, các thực thể phần mềm được mô hình hóa dưới dạng các đối tượng. Các đối tượng này được trừu tượng hóa ở mức cao hơn dựa trên thuộc tính và phương thức mô tả đối tưCâu ợng để tạo thành các lớp (ví dụ bản thiết kế nhà là lớp, ngôi nhà được xây dựng dựa trên bản thiết kế là đối tượng). Các lớp cũng sẽ được trừu tượng hóa ở mức cao hơn nữa để tạo thành một sơ đồ các lớp được kế thừa lẫn nhau. Trong phương pháp hướng đối tượng có thể tồn tại những lớp không có đối tượng tương ứng được gọi là lớp trừu tượng. Như vậy, nguyên tắc cơ bản để xây dựng các khái niệm trong hướng đối tượng là sự trừu tượng hóa theo các mức độ khác nhau. Ví dụ: - Sự trừu tượng có thể được hiểu đơn giản như sau: +) Giả sử, kiến trúc để xây dựng 1 chiếc xe sẽ bao gồm: Bánh xe, yên xe, thắng. +) Như vậy, những mô hình xe máy, xe đạp, xe hơi cũng được gọi là xe khi chúng thỏa mãn những yếu tố mà kiến trúc một chiếc xe quy định. Diễn giải lại điều ở trên bằng hình ảnh để thấy rõ điều đó: +) Qua biểu đồ này chúng ta thầy rằng, khi chiếc xe đạp, xe máy, xe hơi kế thừa mô hình xe. Nó sẽ phải định nghĩa 3 phương thức trừu tượng là banhxe(), yenxe(), thangxe(). Dù rằng ở mỗi thể loại xe đều có những đặc thù riêng biệt. - Tính đóng gói (encapsulation): Các đối tượng có thể có những phương thức hoặc thuộc tính riêng biệt (kiểu private) mà các đối tượng khác không thể sử dụng được một cách trực tiếp. Tất cả mọi thao tác truy xuất vào thành phần dữ liệu từ đối tượng này qua đối tượng khác phải được thực hiện bởi các phương thức (method) của chính đối tượng chứa dữ liệu. Dựa trên nguyên tắc ẩn giấu thông tin này, cài đặt của các đối tượng sẽ hoàn toàn độc lập với các đối tượng khác, các lớp độc lập với nhau và cao hơn nữa là cài đặt của hệ thống hoàn toàn độc lập với người sử dụng cũng như các hệ thống khác sử dụng kết quả của nó. VD: lớp HinhChuNhat có các thuộc tính chieudai, chieurong, phạm vi truy cập là private, có các phương thức set và get. Các lớp khác không thể trực tiếp thay đổi các giá trị chieudai, chieurong của nó, nhưng có thể thay đổi chúng thông qua phương thức set và get. - Tính module hóa(modularity): là sự phân rã về mặt vật lý hoặc logic một hệ thống lớn và phức tạp thành các thành phần quản lý được. Phân rã hệ thống thành các hệ thống con. Các hệ thống con này được phát triển độc lập và có thể tương tác được với nhau VD: Hệ thống đăng ký môn học ở các trường đại học phân thành 3 phần độc lập sau: hệ thống thanh toán tiền, hệ thống quản lý sinh viên, và hệ thống cung cấp danh sách các môn học. - Tính phân cấp(hierarchy): Là dạng phân cấp theo các mức độ trừu tượng từ cao đến thấp thành các cấu trúc cây. VD: Phân cấp ra thành các lớp cha, lớp con, lớp con lại là lớp cha của các lớp khác. Trình bày các khái niệm cơ bản trong kỹ thuật hướng đối tượng: Đối tượng, lớp đối tượng, gói, kế thừa, đa hình. Cho ví dụ ? - Đối tượng (object): Một đối tượng biểu diễn một thực thể vật lý, một thực thể khái niệm hoặc một thực thể phần mềm. Có thể định nghĩa một đối tượng là một khái niệm, sự trừu tượng hoặc một vật với giới hạn rõ ràng và có ý nghĩa với một ứng dụng cụ thể Ví dụ: Là con người thì chúng ta sẽ có các trạng thái như: màu da, màu mắt, màu tóc, chiều cao, cân nặng, … có các hành vi như: ăn, uống, làm việc, . ⇒ con người là 1 đối tượng. - Lớp (Class): Là mô tả của một nhóm đối tượng có chung các thuộc tính, hành vi và các mối quan hệ. Như vậy, một đối tượng là thể hiện của một lớp và một lớp là một định nghĩa trừu tượng của đối tượng. VD: Lớp Student sẽ bao gồm một tập hợp các sinh viên của một lớp học, Lớp Mammals sẽ bao gồm một tập hợp các động vật có vú trên thế giới, … - Thành phần (component): là một phần của hệ thống hoạt động độc lập và giữ một chức năng nhất định trong hệ thống. VD: Hệ thống con thanh toán trong hệ thống đăng ký môn học cho sinh viên. - Gói (package): là một cách tổ chức các thành phần, phần tử trong hệ thống thành các nhóm có chức năng liên với nhau. Nhiều gói có thể được kết hợp với nhau để trở thành một hệ thống con (subsystem). VD: Một hệ thống đăng ký học được phân thành các gói: giao diện, gói các lớp cơ bản, … - Kế thừa: Trong phương pháp hướng đối tượng, một lớp có thể sử dụng lại các thuộc tính và phương thức của một hoặc nhiều lớp khác. Kiểu quan hệ này gọi là quan hệ kế thừa, được xây dựng dựa trên mối quan hệ kế thừa trong bài toán thực tế. VD: Lớp Người gồm các thuộc tính: tên, ngày sinh, quê quán, giới tính; Lớp Nhân Viên có quan hệ kế thừa từ lớp Người sẽ có tất cả các thuộc tính trên và bổ sung thêm các thuộc tính mới gồm: chức vụ, lương.
So sánh ưu và nhược điểm của hai phương pháp phát triển phần mềm: Hướng cấu trúc và Hướng đối tượng
Tài liệu nghiên cứu Phân tích thiết kế hệ thống thông tin kma, tổng hợp lý thuyết và thực hành, cung cấp kiến thức chuyên sâu về .
Phí lưu trữ
30 PointMục lục chi tiết
THÔNG TIN CHI TIẾT
Trường học: Trường Đại Học
Chuyên ngành: Phát Triển Phần Mềm
Đề tài: So Sánh Phương Pháp Phát Triển Phần Mềm Hướng Cấu Trúc và Hướng Đối Tượng
Loại tài liệu: bài tập
Tài liệu "So sánh Phương Pháp Phát Triển Phần Mềm Hướng Cấu Trúc và Hướng Đối Tượng" cung cấp cái nhìn sâu sắc về hai phương pháp phát triển phần mềm phổ biến, giúp người đọc hiểu rõ hơn về ưu nhược điểm của từng phương pháp. Bài viết không chỉ phân tích cách tiếp cận cấu trúc và đối tượng mà còn chỉ ra những lợi ích mà mỗi phương pháp mang lại trong việc tối ưu hóa quy trình phát triển phần mềm. Đặc biệt, tài liệu này rất hữu ích cho các nhà phát triển và quản lý dự án, giúp họ lựa chọn phương pháp phù hợp nhất cho dự án của mình.
Để mở rộng thêm kiến thức về lĩnh vực này, bạn có thể tham khảo tài liệu Luận văn thạc sĩ chuyển ngôn ngữ trong biểu diễn yêu cầu phần mềm, nơi cung cấp cái nhìn sâu sắc về cách chuyển ngôn ngữ trong yêu cầu phần mềm. Ngoài ra, tài liệu Xây dựng phần mềm quản lý quán cà phê đoài dương cao bằng đồ án tốt nghiệp đại học cũng sẽ giúp bạn hiểu rõ hơn về ứng dụng thực tiễn của các phương pháp phát triển phần mềm trong các dự án cụ thể. Những tài liệu này sẽ là cơ hội tuyệt vời để bạn khám phá sâu hơn về các khía cạnh khác nhau của phát triển phần mềm.
Trích đoạn nội dung tài liệu
Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ