Trắc nghiệm Công nghệ Phần mềm Bài: MÔ HÌNH TIẾN HÓA là một trong những đề thi thuộc Chương 3: CÁC MÔ HÌNH VÒNG ĐỜI PHẦN MỀM trong học phần Công nghệ Phần mềm chuyên ngành Công Nghệ Thông Tin cấp độ Đại học. Đây là phần kiến thức quan trọng, giới thiệu một nhóm các mô hình vòng đời phần mềm linh hoạt, cho phép phần mềm phát triển và thay đổi theo thời gian, phù hợp với các yêu cầu không ổn định hoặc chưa rõ ràng ngay từ đầu.
Trong bài học này, người học cần nắm vững các nội dung cốt lõi như: định nghĩa và đặc điểm của các mô hình tiến hóa (ví dụ: Incremental, Spiral), sự khác biệt với mô hình tuần tự (Waterfall), lợi ích của việc phát triển lặp đi lặp lại và tăng dần, tầm quan trọng của phản hồi người dùng, và những thách thức khi áp dụng. Việc hiểu rõ mô hình tiến hóa sẽ giúp sinh viên lựa chọn phương pháp phát triển phù hợp với từng loại dự án, đặc biệt là những dự án có tính không chắc chắn cao.
Hãy cùng Dethitracnghiem.vn tìm hiểu về đề thi này và tham gia làm kiểm tra ngay lập tức!
Trắc nghiệm Công nghệ Phần mềm Bài: MÔ HÌNH TIẾN HÓA
Câu 1.Mô hình Tiến hóa (Evolutionary Model) trong phát triển phần mềm là gì?
A. Một mô hình tuần tự, từng pha hoàn thành mới chuyển sang pha tiếp theo.
B. Một mô hình không có kế hoạch, chỉ tập trung vào sửa lỗi.
C. Một mô hình chỉ dùng để phát triển các hệ thống nhúng.
D. Một nhóm các mô hình phát triển phần mềm mà sản phẩm được xây dựng theo các phiên bản tăng dần và lặp lại, phát triển theo thời gian.
Câu 2.Đặc điểm nổi bật nhất của các mô hình Tiến hóa là gì?
A. Yêu cầu phải cố định ngay từ đầu.
B. Không có sự tương tác với khách hàng.
C. Chỉ có một lần kiểm thử ở cuối dự án.
D. Có tính lặp đi lặp lại (iterative) và tăng dần (incremental), cho phép phản hồi và điều chỉnh.
Câu 3.Lợi ích chính của việc áp dụng mô hình Tiến hóa là gì?
A. Giảm chi phí phát triển ban đầu.
B. Giảm sự cần thiết của tài liệu.
C. Tăng tốc độ viết mã.
D. Khả năng thích nghi tốt với yêu cầu thay đổi, giảm rủi ro và nhận được phản hồi sớm từ người dùng.
Câu 4.Mô hình nào sau đây được coi là một dạng của mô hình Tiến hóa?
A. Mô hình Big Bang.
B. Mô hình Xây sửa.
C. Mô hình Thác nước.
D. Mô hình Lặp và Tăng (Iterative and Incremental Model).
Câu 5.Trong mô hình Tiến hóa, các phiên bản phần mềm được phát triển theo từng “vòng lặp” hoặc “giai đoạn tăng dần”. Mỗi vòng lặp thường bao gồm những hoạt động gì?
A. Chỉ viết code.
B. Chỉ kiểm thử.
C. Chỉ triển khai.
D. Phân tích, thiết kế, cài đặt và kiểm thử một phần chức năng.
Câu 6.Phản hồi từ người dùng (User Feedback) có vai trò quan trọng như thế nào trong mô hình Tiến hóa?
A. Không quan trọng, vì yêu cầu đã cố định.
B. Chỉ để đánh giá hiệu suất của lập trình viên.
C. Chỉ để tìm lỗi sau khi sản phẩm hoàn thành.
D. Là yếu tố then chốt để điều chỉnh và cải tiến sản phẩm qua từng vòng lặp.
Câu 7.Mô hình Tiến hóa đặc biệt phù hợp với loại dự án nào?
A. Dự án có yêu cầu ổn định và rõ ràng ngay từ đầu.
B. Dự án rất nhỏ, không có yêu cầu phức tạp.
C. Dự án không có bất kỳ rủi ro nào.
D. Dự án có yêu cầu không rõ ràng, thay đổi thường xuyên, hoặc có tính không chắc chắn cao.
Câu 8.Một nhược điểm tiềm tàng của mô hình Tiến hóa là gì?
A. Không thể thay đổi yêu cầu.
B. Thời gian phát triển quá dài.
C. Sản phẩm không được thử nghiệm.
D. Có thể dẫn đến “phạm vi trượt” (scope creep) nếu không quản lý chặt chẽ.
Câu 9.Trong mô hình Tiến hóa, phiên bản “khởi đầu” của sản phẩm (Initial Increment) thường bao gồm các chức năng gì?
A. Tất cả các chức năng.
B. Các chức năng phức tạp nhất.
C. Các chức năng khó triển khai nhất.
D. Các chức năng cốt lõi hoặc quan trọng nhất, mang lại giá trị sớm cho người dùng.
Câu 10.Mô hình nào sau đây được gọi là “Mô hình Xoắn ốc” (Spiral Model) và cũng thuộc nhóm mô hình Tiến hóa?
A. Mô hình chỉ có một vòng lặp.
B. Mô hình không có quản lý rủi ro.
C. Mô hình chỉ tập trung vào kiểm thử.
D. Mô hình kết hợp yếu tố lặp lại của tiến hóa với kiểm soát rủi ro của mô hình tuần tự.
Câu 11.Một lợi ích kinh tế của mô hình Tiến hóa là gì?
A. Tăng chi phí phát triển ban đầu.
B. Làm cho dự án phức tạp hơn.
C. Kéo dài thời gian ra thị trường.
D. Giảm rủi ro về đầu tư lớn vào một sản phẩm không đáp ứng nhu cầu, do có thể điều chỉnh sớm.
Câu 12.Phát biểu nào sau đây **không đúng** về mô hình Tiến hóa?
A. Nó tập trung vào việc giao sản phẩm sớm.
B. Nó linh hoạt với sự thay đổi.
C. Nó khuyến khích sự tương tác với khách hàng.
D. Nó là một mô hình “một lần đi qua” (one-pass), không có sự lặp lại.
Câu 13.Khi áp dụng mô hình Tiến hóa, việc “quản lý cấu hình” (Configuration Management) trở nên đặc biệt quan trọng vì lý do gì?
A. Để làm cho mã nguồn phức tạp hơn.
B. Để giảm số lượng tài liệu.
C. Để chỉ kiểm tra hiệu suất.
D. Để theo dõi và quản lý các phiên bản khác nhau của sản phẩm được phát triển qua từng vòng lặp.
Câu 14.Trong mô hình Tiến hóa, các rủi ro của dự án thường được xử lý như thế nào?
A. Bỏ qua hoàn toàn.
B. Chỉ xử lý ở giai đoạn cuối.
C. Chỉ xử lý bởi quản lý dự án.
D. Được nhận diện, phân tích và giảm thiểu liên tục qua từng vòng lặp.
Câu 15.Mô hình nào sau đây là một ví dụ điển hình của mô hình Tiến hóa, đặc biệt phổ biến trong phương pháp Agile?
A. Mô hình Thác nước.
B. Mô hình Big Bang.
C. Mô hình Xây sửa.
D. Scrum.
Câu 16.Điểm khác biệt chính giữa mô hình Tiến hóa và mô hình Thác nước là gì?
A. Tiến hóa không có pha kiểm thử.
B. Thác nước linh hoạt hơn Tiến hóa.
C. Tiến hóa không cần tài liệu.
D. Tiến hóa cho phép các pha lặp lại và song song, trong khi Thác nước là tuần tự nghiêm ngặt.
Câu 17.Nếu một dự án không có yêu cầu cố định ngay từ đầu, và có khả năng thay đổi liên tục, mô hình Tiến hóa sẽ là lựa chọn phù hợp hơn vì điều gì?
A. Nó yêu cầu ít người hơn.
B. Nó có thể bỏ qua yêu cầu thay đổi.
C. Nó làm cho dự án rẻ hơn.
D. Khả năng thích nghi cao của nó giúp dễ dàng điều chỉnh sản phẩm theo yêu cầu mới.
Câu 18.Mục tiêu của việc giao các “phiên bản tăng dần” (incremental releases) cho người dùng trong mô hình Tiến hóa là gì?
A. Để tìm tất cả các lỗi cùng một lúc.
B. Để làm cho sản phẩm lớn hơn.
C. Để trì hoãn việc ra mắt sản phẩm.
D. Để nhận được phản hồi sớm, xác nhận giá trị, và cho phép người dùng bắt đầu sử dụng một phần của hệ thống.
Câu 19.Thách thức trong việc quản lý các ranh giới (boundaries) của từng phiên bản tăng dần trong mô hình Tiến hóa là gì?
A. Không có gì khó khăn.
B. Các phiên bản luôn độc lập.
C. Người dùng không cần quan tâm.
D. Đảm bảo mỗi phiên bản có đủ chức năng để mang lại giá trị, nhưng không quá lớn để quản lý.
Câu 20.Mô hình Tiến hóa có thể giúp giảm thiểu “nợ kỹ thuật” (technical debt) như thế nào?
A. Bằng cách không bao giờ sửa lỗi.
B. Bằng cách thêm nhiều tính năng cùng lúc.
C. Bằng cách trì hoãn việc cải tiến.
D. Bằng cách thường xuyên xem xét, điều chỉnh và tái cấu trúc mã nguồn qua từng vòng lặp.
Câu 21.Trong mô hình Tiến hóa, “Kiểm thử hồi quy” (Regression Testing) đóng vai trò quan trọng vì sao?
A. Chỉ để kiểm thử các tính năng mới.
B. Để tìm lỗi trong các phiên bản cũ.
C. Để xác định tốc độ của hệ thống.
D. Để đảm bảo rằng các thay đổi hoặc bổ sung trong phiên bản mới không làm hỏng các chức năng đã có.
Câu 22.Mô hình nào sau đây **không** được coi là một mô hình Tiến hóa thuần túy, mặc dù có các yếu tố lặp lại?
A. Mô hình Incremental.
B. Mô hình Spiral.
C. Agile.
D. Mô hình Thác nước (Waterfall).
Câu 23.Sự “linh hoạt” (flexibility) của mô hình Tiến hóa được thể hiện rõ nhất ở khả năng nào?
A. Khả năng thay đổi ngôn ngữ lập trình bất cứ lúc nào.
B. Khả năng tự động viết code.
C. Khả năng bỏ qua các yêu cầu.
D. Khả năng thay đổi kế hoạch và hướng phát triển dựa trên phản hồi và bài học kinh nghiệm.
Câu 24.Mô hình Tiến hóa thường yêu cầu mức độ giao tiếp (communication) giữa nhóm phát triển và khách hàng như thế nào?
A. Rất ít giao tiếp.
B. Chỉ giao tiếp qua email.
C. Chỉ giao tiếp khi có lỗi.
D. Giao tiếp thường xuyên và chặt chẽ để thu thập phản hồi và điều chỉnh yêu cầu.
Câu 25.Khi một dự án áp dụng mô hình Tiến hóa, “thời gian ra thị trường” (Time-to-Market) có thể được hưởng lợi như thế nào?
A. Kéo dài hơn, vì phải làm nhiều vòng lặp.
B. Không bị ảnh hưởng.
C. Luôn chậm hơn so với Thác nước.
D. Có thể nhanh hơn, vì các phiên bản cốt lõi hoặc quan trọng có thể được phát hành sớm, mang lại giá trị cho người dùng và thu hút doanh thu.