wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Quiz về quy trình ICONIX

Total questions: 118

Worksheet time: 1hrs 9mins

Name
Class
Date
1.

ICONIX Process tập trung vào giai đoạn nào trong vòng đời phát triển phần mềm?

a)

Lập kế hoạch dự án

b)

Kiểm thử phần mềm

c)

Phân tích và thiết kế

d)

Quản lý dự án

2.

ICONIX Process là phương pháp tiếp cận nào?

a)

Phương pháp tối giản nhưng hoạt động

b)

Phương pháp nhanh chóng

c)

Phương pháp tuần tự

d)

Phương pháp xoắn ốc

3.

Yêu cầu chức năng trả lời cho câu hỏi nào?

a)

Làm thế nào để thiết kế hệ thống?

b)

Hệ thống được triển khai như thế nào?

c)

Hệ thống có thể làm gì?

d)

Ai sẽ là người sử dụng hệ thống?

4.

Bốn sơ đồ chính sử dụng trong quy trình ICONIX là sơ đồ nào?

a)

Use case, robustness, state và class diagrams

b)

Use case, robustness, sequence và class diagrams

c)

Use case, component, sequence và class diagrams

d)

Use case, robustness, domain model và class diagrams

5.

Quy trình ICONIX phù hợp với những loại dự án nào?

a)

Dự án chỉ tập trung vào kết quả là chương trình

b)

Các dự án quy mô vừa và nhỏ, trong đó các yêu cầu tương đối rõ ràng và ổn định

c)

Dự án cần nhiều tài liệu chi tiết

d)

Dự án chỉ tập trung vào kết quả là mã nguồn

6.

Đối với quy trình ICONIX, bước nào là quan trọng nhất để đảm bảo yêu cầu và thiết kế đồng nhất với nhau?

a)

Kiểm thử tích hợp

b)

Viết mã nguồn

c)

Đánh giá thiết kế sơ bộ (PDR)

d)

Kiểm thử đơn vị

7.

Trong quy trình ICONIX, hoạt động nào giúp làm rõ và loại bỏ sự mơ hồ trong yêu cầu hệ thống?

a)

Kiểm thử đơn vị

b)

Vẽ sơ đồ lớp

c)

Viết mã nguồn

d)

Phân tích độ bền (robustness analysis)

8.

Việc sử dụng sơ đồ trình tự (sequence diagram) trong quy trình ICONIX nhằm mục đích gì?

a)

Để xác định các yêu cầu không chức năng

b)

Để phân tích tính bảo mật của hệ thống

c)

Để phân tích tính khả thi của dự án

d)

Để phân bổ hành vi cho các lớp đối tượng

9.

Trong quy trình ICONIX, tại sao cần thực hiện đánh giá thiết kế sơ bộ (Preliminary Design Review)?

4 lines
10.

Trong quy trình ICONIX, tại sao cần thực hiện đánh giá thiết kế sơ bộ (Preliminary Design Review)?

a)

Để xác định tất cả các lỗi trong mã nguồn

b)

Để đảm bảo mô hình miền và use case khớp nhau

c)

Để kiểm thử toàn bộ hệ thống

d)

Để kiểm tra tính chính xác của mô hình dữ liệu

11.

Khi cần liên kết giữa các use case và các đối tượng trong hệ thống, ta sử dụng sơ đồ nào trong quy trình ICONIX?

a)

Sơ đồ miền (domain model)

b)

Sơ đồ trình tự (sequence diagram)

c)

Sơ đồ use case

d)

Sơ đồ độ bền (robustness diagram)

12.

Thông tin nào trong sơ đồ trình tự được dùng để bổ sung vào sơ đồ lớp?

a)

Thông điệp

b)

Đối tượng thực thể

c)

Đối tượng biên

d)

Tác nhân

13.

Khi cần kiểm tra việc tích hợp hệ thống dựa trên các use case trong ICONIX Process, ta nên bắt đầu từ đâu?

a)

Kiểm tra kịch bản chính và các kịch bản thay thế

b)

Kiểm tra giao diện người dùng

c)

Viết mã nguồn cho tất cả các chức năng

d)

Kiểm tra cơ sở dữ liệu

14.

Ta cần làm gì để đảm bảo rằng quá trình phân tích trong quy trình ICONIX tạo ra thiết kế có thể thực hiện được?

a)

Kiểm thử toàn bộ hệ thống

b)

Phát triển sơ đồ lớp

c)

Viết mã nguồn ngay lập tức

d)

Thực hiện phân tích độ bền (robustness analysis) để xác định các đối tượng cần thiết

15.

Mục tiêu chính của buổi đánh giá thiết kế quan trọng (CDR) là gì?

a)

Đánh giá các yêu cầu hệ thống

b)

Kiểm thử mã nguồn

c)

Xác định các sơ đồ lớp

d)

Kiểm tra tính nhất quán giữa thiết kế và yêu cầu

16.

Trong quá trình phát triển phần mềm, nếu có sự thay đổi về yêu cầu, bước nào trong ICONIX Process có thể giúp thích ứng với thay đổi đó?

a)

Kiểm thử toàn bộ hệ thống

b)

Thay đổi mô hình lớp

c)

Viết mã nguồn mới

d)

Cập nhật sơ đồ trình tự và thiết kế chi tiết

17.

Quy trình ICONIX bao gồm bao nhiêu sơ đồ UML cốt lõi?

a)

14

b)

6

18.

Câu hỏi chính mà quy trình ICONIX muốn trả lời là gì?

a)

Làm thế nào để lập trình hướng đối tượng

b)

Làm thế nào để đi từ người dùng đến sản phẩm

c)

Làm thế nào để sử dụng được hết các loại sơ đồ UML

d)

Làm thế nào để có thể đi từ use case đến mã nguồn

19.

Quy trình ICONIX giúp thu hẹp khoảng cách giữa lý thuyết và thực tế như thế nào?

a)

Phát triển hệ thống dựa trên mô hình UML đầy đủ

b)

Liên kết các use case với các đối tượng trong hệ thống

c)

Chuyển đổi nhanh từ yêu cầu thành mã nguồn mà không qua phân tích

d)

Tập trung vào thiết kế trực tiếp từ mã nguồn

20.

Sự khác biệt chính giữa yêu cầu chức năng và yêu cầu hành vi trong quy trình ICONIX là gì?

a)

Yêu cầu chức năng miêu tả cách hệ thống hoạt động, còn yêu cầu hành vi miêu tả giao diện người dùng

b)

Yêu cầu chức năng mô tả những gì hệ thống cần làm, còn yêu cầu hành vi mô tả cách hệ thống và người dùng tương tác

c)

Yêu cầu chức năng mô tả chi tiết các lớp đối tượng, còn yêu cầu hành vi mô tả dữ liệu hệ thống

d)

Cả hai đều là các bước đầu tiên của quá trình phân tích hệ thống

21.

Làm thế nào để một sơ đồ độ bền giúp liên kết use case với mô hình đối tượng?

a)

Tạo ra các đối tượng giao diện (GUI)

b)

Xác định các đối tượng miền và các thông điệp truyền giữa chúng

c)

Liệt kê tất cả các yêu cầu chức năng

d)

Xác định các lỗi tiềm ẩn trong thiết kế

22.

Sau khi hoàn thành giai đoạn phân tích và thiết kế sơ bộ, nếu phát hiện sự khác biệt giữa use case và sơ đồ lớp, ta sẽ xử lý như thế nào?

a)

Bỏ qua sự khác biệt

b)

Thực hiện kiểm thử đơn vị

c)

Cập nhật sơ đồ lớp và use case để đảm bảo chúng khớp với nhau

d)

Kiểm tra mã nguồn

23.

ơ đồ lớp, ta sẽ xử lý như thế nào?

a)

Bỏ qua sự khác biệt

b)

Thực hiện kiểm thử đơn vị

c)

Cập nhật sơ đồ lớp và use case để đảm bảo chúng khớp với nhau

d)

Kiểm tra mã nguồn

24.

Khi thực hiện sơ đồ trình tự, điều gì cần được xem xét đầu tiên để đảm bảo thiết kế đúng?

a)

Các yêu cầu phi chức năng

b)

Sơ đồ lớp

c)

Các bảng cơ sở dữ liệu

d)

Các đối tượng biên và thực thể từ sơ đồ độ bền

25.

Khi nào ta cần thực hiện đánh giá thiết kế chi tiết (Critical Design Review) trong quy trình ICONIX ?

a)

Trước khi thiết kế sơ đồ lớp

b)

Sau khi kiểm thử đơn vị

c)

Sau khi viết mã nguồn

d)

Sau khi hoàn thành sơ đồ trình tự và cập nhật mô hình tĩnh

26.

Tại sao quy trình ICONIX được coi là phù hợp với các dự án theo phương pháp phát triển Agile?

a)

Nó cho phép lặp lại và phản hồi nhanh chóng dựa trên từng use case

b)

Nó tập trung vào việc phát triển toàn bộ hệ thống ngay từ đầu

c)

Nó yêu cầu một kế hoạch chi tiết và nghiêm ngặt từ đầu đến cuối

d)

Nó không cần mô hình hóa các yêu cầu

27.

Việc điều chỉnh mô hình miền trong ICONIX xảy ra khi nào?

a)

Sau khi kiểm thử tích hợp

b)

Trong quá trình kiểm thử đơn vị

c)

Chỉ sau khi viết mã

d)

Khi phát hiện các đối tượng mới trong quá trình thiết kế

28.

Quy trình ICONIX cố gắng giải quyết vấn đề gì trước đây?

a)

Thiếu mô tả chức năng của mã nguồn

b)

Thiếu tài liệu mô tả hệ thống

c)

Thiếu sự chi tiết trong các mô hình

d)

Cồng kềnh và nhiều thứ không cần thiết trong dự án thực tế

29.

Trong quy trình ICONIX, các yêu cầu hành vi được mô tả như thế nào?

a)

Thông qua các bảng cơ sở dữ liệu

b)

Thông qua use case mô tả cách người dùng và hệ thống tương tác

c)

Thông qua mô hình lớp

d)

Thông qua mô hình dữ liệu

30.

Khi cần kiểm tra việc tích hợp hệ thống dựa trên các use case trong ICONIX Process, ta nên bắt đầu từ đâu?

a)

Kiểm tra cơ sở dữ liệu

b)

Viết mã nguồn cho tất cả các chức năng

31.

Khi cần kiểm tra việc tích hợp hệ thống dựa trên các use case trong ICONIX Process, ta nên bắt đầu từ đâu?

a)

Kiểm tra cơ sở dữ liệu

b)

Viết mã nguồn cho tất cả các chức năng

c)

Kiểm tra kịch bản chính và các kịch bản thay thế

d)

Kiểm tra giao diện người dùng

32.

Trong quy trình ICONIX, các yêu cầu hành vi được mô tả như thế nào?

a)

Thông qua mô hình dữ liệu

b)

Thông qua mô hình lớp

c)

Thông qua use case mô tả cách người dùng và hệ thống tương tác

d)

Thông qua các bảng cơ sở dữ liệu

33.

Trong quá trình kiểm thử đơn vị, các bài kiểm thử được viết dựa trên:

a)

Sơ đồ lớp

b)

Kịch bản chính từ sơ đồ trình tự

c)

Use case và các controllers từ sơ đồ độ bền

d)

Mô hình miền

34.

Mô hình miền được minh họa như thế nào?

a)

Như một sơ đồ hoạt động (activity diagram).

b)

Như một sơ đồ triển khai (deployment diagram).

c)

Như một sơ đồ trình tự (sequence diagram).

d)

Như một sơ đồ lớp (class diagram) đơn giản với các đường nối giữa các lớp.

35.

Mô hình miền hiển thị loại quan hệ nào giữa các lớp trong miền?

a)

Quan hệ tổng hợp (aggregation) và tổng quát hóa (generalization).

b)

Quan hệ phụ thuộc (dependency relationships).

c)

Quan hệ đồng thời (concurrent relationships).

d)

Quan hệ tuần tự (sequential relationships).

36.

Mô hình miền đại diện cho phần nào của hệ thống?

a)

Phần tĩnh mô tả cấu trúc của hệ thống.

b)

Phần động mô tả hành vi của hệ thống.

c)

Mô tả các trường hợp sử dụng chi tiết.

d)

Chỉ mô tả các giao diện người dùng.

37.

Mô hình miền là cơ sở đầu tiên cho việc xây dựng sơ đồ nào trong quy trình ICONIX?

a)

Sơ đồ trình tự

b)

Sơ đồ use case

c)

Sơ đồ mạnh mẽ

d)

Sơ đồ hoạt động

38.

Tại sao nên bắt đầu với mô hình miền (domain model) trước khi viết use case?

a)

Vì nó giúp ràng buộc use case vào thực tế và hệ thống sẽ được thiết kế.

b)

Vì use case nên được viết trước để định nghĩa chi tiết.

c)
39.

Tại sao nên bắt đầu với mô hình miền (domain model) trước khi viết use case?

a)

Vì nó giúp ràng buộc use case vào thực tế và hệ thống sẽ được thiết kế.

b)

Vì use case nên được viết trước để định nghĩa chi tiết.

c)

Vì use case không liên quan đến mô hình miền.

d)

Vì mô hình miền phức tạp hơn và nên được thực hiện trước.

40.

Tại sao không nên kỳ vọng sơ đồ lớp cuối cùng sẽ khớp chính xác với mô hình miền?

a)

Vì sơ đồ lớp không quan trọng

b)

Vì mô hình miền đơn giản hơn và không chứa các chi tiết thiết kế cụ thể

c)

Vì sơ đồ lớp chỉ là mô hình tạm thời

d)

Vì mô hình miền không liên quan đến sơ đồ lớp

41.

Khi mô hình miền có quá nhiều mối quan hệ giữa các lớp, ta nên làm gì để cải thiện?

a)

Bỏ bớt các lớp

b)

Giữ nguyên và tiếp tục

c)

Thêm nhiều lớp hơn để giải thích

d)

Sử dụng quan hệ tổng quát hóa (generalization) để đơn giản hóa mối quan hệ

42.

Nếu phát hiện mô hình miền thiếu một số đối tượng quan trọng, ta nên làm gì?

a)

Bỏ qua những đối tượng này

b)

Xây dựng lại mô hình từ đầu

c)

Tạo một sơ đồ mới

d)

Cập nhật mô hình miền để bao gồm các đối tượng bị thiếu

43.

Quan hệ "has-a" trong mô hình miền là loại quan hệ gì?

a)

Tổng quát hóa

b)

Tập hợp (aggregation)

c)

Kế thừa

d)

Quan hệ một-nhiều

44.

Nếu phát hiện hai thuật ngữ "Book" và "Books" trong mô hình miền, bước tiếp theo bạn nên làm gì?

a)

Thêm thuộc tính cho cả hai

b)

Xác định và loại bỏ sự trùng lặp, giữ lại một trong hai thuật ngữ

c)

Giữ lại cả hai thuật ngữ

d)

Tạo lớp mới cho mỗi thuật ngữ

45.

Tại sao khi tạo mô hình miền, cần tập trung vào các đối tượng trong thế giới thực?

a)

Vì phần mềm nên được thiết kế sao cho giống với cách thế giới thực hoạt động, và thế giới thực thay đổi ít thường xuyên hơn so với yêu cầu phần mềm.

b)

Vì nó giúp tránh sử dụng quá nhiều tài nguyên trong quá trình phát triển phần mềm.

c)

Vì các đối tượng trong thế giới thực đơn giản hơn các đ

46.

Mối quan hệ nào sau đây là đúng khi nói về các mối quan hệ trong mô hình miền?

a)

Mối quan hệ giữa các lớp không quan trọng trong mô hình miền.

b)

Tất cả các mối quan hệ trong mô hình miền đều là các mối quan hệ tuần tự.

c)

Mối quan hệ tổng quát hóa (is-a) chỉ thể hiện một lớp cha có nhiều lớp con.

d)

Mối quan hệ tổng hợp (has-a) thể hiện một đối tượng sở hữu một đối tượng khác và mối quan hệ tổng quát hóa (is-a) thể hiện sự kế thừa giữa các lớp.

47.

Mục tiêu của phiên tạo mô hình miền ban đầu là gì?

a)

Tạo ra mô hình hoàn chỉnh mà không cần sửa đổi sau này.

b)

Xây dựng một phiên bản sơ bộ để có thể điều chỉnh trong quá trình làm việc.

c)

Tìm ra các lỗi phần mềm trong hệ thống.

d)

Hoàn thiện mô hình miền ngay từ đầu.

48.

Sơ đồ miền nào dưới đây là đúng?

a)
b)
c)

C.

d)
49.

Sơ đồ miền nào dưới đây là đúng

a)
b)

B.

c)
d)
50.

Mục tiêu chính của mô hình miền là gì?

a)

Để xác định các yêu cầu phi chức năng

b)

Giúp tạo ra một ngôn ngữ chung để truyền đạt thông tin rõ ràng giữa các thành viên dự án

c)

Để thiết kế cơ sở dữ liệu

d)

Để xây dựng mô hình dữ liệu chính xác

51.

Mô hình miền khác gì so với bảng thuật ngữ dự án (project glossary)?

a)

Mô hình miền chỉ sử dụng trong giai đoạn kiểm thử dự án.

b)

Mô hình miền chỉ chứa thông tin về các lớp (classes) trong dự án.

c)

Mô hình miền là một biểu đồ được minh họa, hiển thị mối quan hệ giữa các thuật ngữ.

d)

Mô hình miền không có mối quan hệ với bảng thuật ngữ dự án

52.

Trong mô hình miền, tại sao không nên nhầm lẫn giữa đối tượng và bảng cơ sở dữ liệu?

(a)  

53.

Trong mô hình miền, tại sao không nên nhầm lẫn giữa đối tượng và bảng cơ sở dữ liệu?

a)

Vì bảng cơ sở dữ liệu chứa nhiều khóa ngoài

b)

Vì các đối tượng phức tạp hơn bảng dữ liệu

c)

Vì bảng cơ sở dữ liệu không có quan hệ với các đối tượng

d)

Vì đối tượng đại diện cho một thể hiện duy nhất, trong khi bảng cơ sở dữ liệu đại diện cho một tập hợp

54.

Lý do nên bắt đầu với mô hình miền thay vì use case là gì?

a)

Vì use case không cần phải rõ ràng ngay từ đầu

b)

Để tiết kiệm thời gian

c)

Vì mô hình miền dễ thực hiện hơn

d)

Để đảm bảo use case được viết trong bối cảnh của mô hình đối tượng và tránh sự mơ hồ

55.

Vai trò của mô hình miền trong quá trình phát triển hệ thống là gì?

a)

Để đảm bảo giao tiếp rõ ràng, nhất quán giữa các thành viên dự án

b)

Để mô hình hóa cơ sở dữ liệu

c)

Để kiểm thử hệ thống

d)

Để tối ưu hóa mã nguồn

56.

Lợi ích của việc tổ chức mô hình miền dựa trên các trừu tượng trong thế giới thực là gì?

a)

Giúp giảm bớt tài liệu yêu cầu.

b)

Làm cho mô hình khó thay đổi hơn khi yêu cầu thay đổi.

c)

Giúp tăng tốc độ triển khai hệ thống.

d)

Giúp mô hình bền vững hơn trước những thay đổi của yêu cầu phần mềm.

57.

Điểm khác biệt chính giữa một đối tượng và một bảng cơ sở dữ liệu là gì?

a)

Một đối tượng đại diện cho một tập hợp các bản ghi, trong khi bảng đại diện cho một bản ghi duy nhất.

b)

Một đối tượng luôn chứa nhiều thuộc tính hơn bảng cơ sở dữ liệu.

c)

Bảng cơ sở dữ liệu không liên quan gì đến đối tượng trong mô hình miền.

d)

Một đối tượng đại diện cho một thể hiện đơn lẻ, trong khi bảng cơ sở dữ liệu đại diện cho một tập hợp các bản ghi.

58.

Mô hình miền (domain model) trong quy trình ICONIX là gì?

a)

Là "từ điển" thuật ngữ trong dự án

b)

Là sơ đồ quy trình nghiệp vụ

c)

Là một bảng dữ liệu quan hệ

59.

Mô hình miền (domain model) trong quy trình ICONIX là gì?

a)

Là "từ điển" thuật ngữ trong dự án

b)

Là sơ đồ quy trình nghiệp vụ

c)

Là một bảng dữ liệu quan hệ

d)

Là một bản thiết kế cơ sở dữ liệu

60.

Ý nghĩa của các mối quan hệ "has-a" và "is-a" trong mô hình miền là gì?

a)

Chúng chỉ áp dụng cho các lớp giao diện (interfaces).

b)

Chúng không có trong mô hình miền.

c)

Chúng mô tả cách các lớp chứa các lớp khác và các lớp được kế thừa.

d)

Chúng là các mối quan hệ giữa các thuộc tính của lớp.

61.

Mối quan hệ nào dưới đây là ví dụ về quan hệ "is-a"?

a)

Quyển Sách có Mục Lục

b)

Mục Đơn Hàng thuộc Giỏ Hàng

c)

Con Mèo là một Loài Động Vật

d)

Người Dùng có Tài Khoản

62.

Quá trình nào giúp phát hiện các đối tượng bị thiếu trong mô hình miền sau khi phiên tạo mô hình ban đầu hoàn thành?

a)

Kiểm thử hệ thống.

b)

Phân tích mã nguồn.

c)

Triển khai hệ thống.

d)

Phân tích use case và sơ đồ độ bền (robustness diagrams).

63.

Sơ đồ miền nào dưới đây là đúng?

4 lines
64.

Nguyên tắc nào đúng khi nói về quan hệ giữa các đối tượng trong mô hình miền?

a)

Không sử dụng quan hệ tổng quát hóa (is-a) và tổng hợp (has-a)

b)

Chỉ sử dụng các quan hệ tuần tự để kết nối các đối tượng

c)

Tránh sử dụng bất kỳ quan hệ nào để giữ mô hình đơn giản.

d)

Sử dụng quan hệ tổng quát hóa (is-a) và tổng hợp (has-a) để thể hiện cách các đối tượng liên quan với nhau.

65.

Tại sao việc xây dựng mô hình miền ban đầu chỉ nên kéo dài khoảng 2 giờ?

a)

Vì thời gian giới hạn của dự án

b)

Vì chỉ có các yêu cầu chức năng quan trọng

c)

Vì không cần mô hình lớp chi tiết

d)

Vì mô hình miền sẽ được cập nhật liên tục trong quá trình dự án

66.

Use case là gì trong quy trình ICONIX?

a)

Một sơ đồ thể hiện các mối quan hệ giữa các lớp trong hệ thống.

b)

Một cách có cấu trúc để ghi lại các yêu cầu hành vi của hệ thống.

c)
67.

Use case là gì trong quy trình ICONIX?

a)

Một sơ đồ thể hiện các mối quan hệ giữa các lớp trong hệ thống.

b)

Một cách có cấu trúc để ghi lại các yêu cầu hành vi của hệ thống.

c)

Một công cụ kiểm thử phần mềm tự động.

d)

Một báo cáo tài chính liên quan đến chi phí phát triển.

68.

Use case cung cấp điều gì cho quá trình thiết kế hệ thống?

a)

Một danh sách các công cụ cần sử dụng trong dự án.

b)

Một cách để dự đoán lỗi trong phần mềm.

c)

Một phương pháp để viết tài liệu dự án theo cách tổng quát.

d)

Một nền tảng để thiết kế và ước tính thời gian, công sức một cách đáng tin cậy.

69.

Mục tiêu của use case trong quy trình hướng đối tượng là gì?

a)

Để làm tài liệu trừu tượng về yêu cầu.

b)

Để tạo một tài liệu mô tả toàn bộ quá trình phát triển.

c)

Là bước đầu tiên trong việc thiết kế hướng đối tượng và để nhanh chóng đạt được mã chất lượng cao.

d)

Để xác định chi tiết các cấu trúc dữ liệu trong cơ sở dữ liệu.

70.

Yêu cầu chức năng (functional requirements) thường là gì?

a)

Một sơ đồ thể hiện các đối tượng trong hệ thống.

b)

Một mô hình các trường hợp sử dụng của hệ thống.

c)

Một tập hợp các yêu cầu cao và thấp cấp từ nhiều nguồn, thường được ghi lại liên tiếp trong một tài liệu Word.

d)

Một tài liệu đầy đủ chi tiết về thiết kế hệ thống.

71.

Tại sao không nên thiết kế, lập trình, hoặc ước tính trực tiếp từ tài liệu yêu cầu chức năng (functional specification)?

a)

Vì tài liệu yêu cầu chức năng chỉ dành cho nhóm quản lý.

b)

Vì thiết kế trực tiếp từ tài liệu yêu cầu chức năng giống như chơi trò "chọn số ngẫu nhiên", cần có thêm bước khám phá để làm rõ yêu cầu.

c)

Vì tài liệu yêu cầu chức năng thường có nhiều lỗi.

d)

Vì tài liệu yêu cầu chức năng không liên quan đến quá trình thiết kế phần mềm.

72.

Trong quá trình viết use case, điều gì cần được chú ý nhất?

a)

Xác định yêu cầu phi chức năng

b)

Tạo ra nhiều

73.

Trong quá trình viết use case, điều gì cần được chú ý nhất?

a)

Xác định yêu cầu phi chức năng

b)

Tạo ra nhiều sơ đồ lớp

c)

Sử dụng các thuật ngữ rõ ràng và nhất quán với mô hình miền

d)

Viết mã nguồn trực tiếp từ use case

74.

Khi xây dựng use case, việc tổ chức use case với các tác nhân (actors) có mục đích gì?

a)

Để đảm bảo tính toàn vẹn của hệ thống

b)

Để làm rõ vai trò của từng người dùng và chức năng tương ứng họ thực hiện

c)

Để tối ưu hóa mã nguồn

d)

Để phân tích mô hình dữ liệu

75.

Khi mô hình miền và use case không khớp nhau, bạn nên làm gì?

a)

Kiểm tra lại mô hình dữ liệu

b)

Làm việc lại với khách hàng để thu thập thêm yêu cầu

c)

Cập nhật mô hình miền hoặc use case để đảm bảo sự khớp nhau

d)

Bỏ qua sự không khớp

76.

Khi hệ thống gặp lỗi trong quá trình kiểm thử và không thực hiện đúng theo use case, bước tiếp theo là gì?

a)

Thay đổi yêu cầu ban đầu

b)

Tạo thêm các sơ đồ trạng thái

c)

Chỉnh sửa mã nguồn để phản ánh đúng hành vi trong use case

d)

Xây dựng lại hệ thống từ đầu

77.

Khi phát hiện một đối tượng không được mô tả trong use case nhưng có liên quan đến hệ thống, bạn sẽ làm gì?

a)

Thêm đối tượng vào use case và mô hình miền

b)

Chỉ thay đổi mô hình miền

c)

Xóa bỏ đối tượng

d)

Bỏ qua đối tượng này

78.

Khi viết use case, tại sao cần tránh sử dụng câu bị động?

a)

Để dễ dàng viết mã nguồn

b)

Để đảm bảo rõ ràng ai đang thực hiện hành động và hệ thống phản hồi như thế nào

c)

Để giảm bớt sự phức tạp trong thiết kế

d)

Để mô tả hệ thống theo yêu cầu

79.

Tại sao nên xây dựng mô hình miền ban đầu trước khi viết use case?

a)

Để tránh phải sửa đổi mô hình miền sau khi phân tích use case

b)

Để mô tả chi tiết tất cả các tương tác giữa người dùng và hệ thống ngay từ đầu.

c)

Để đảm bảo mô hình miền hoàn chỉnh ngay từ đầu

80.

Theo quy trình ICONIX, tại sao mô hình miền ban đầu thường được coi là không hoàn chỉnh?

a)

Vì không thể bao gồm tất cả các chức năng trong mô hình đầu tiên.

b)

Vì tất cả các yêu cầu đều phải được xác định rõ ràng trước khi bắt đầu xây dựng mô hình miền

c)

Vì mô hình miền ban đầu chỉ là một bản sơ bộ và sẽ được cải thiện dần qua quá trình phân tích use case.

d)

Vì mô hình miền ban đầu không liên quan đến use case.

81.

Hãy tạo một mô hình miền ban đầu cho một hệ thống bán sách trực tuyến. Bạn sẽ chọn những thực thể nào và tại sao?

a)

Chọn tất cả các thực thể có thể xuất hiện trong hệ thống, để không bỏ sót thông tin nào.

b)

Chọn các thực thể liên quan đến hệ thống thanh toán và giao hàng, vì đó là phần quan trọng nhất trong hệ thống bán sách.

c)

Chọn các thực thể như Sách, Tác giả, và Giỏ hàng, vì đây là các thực thể chính của hệ thống bán sách trực tuyến và phù hợp với nhu cầu người dùng.

d)

Chọn các thực thể liên quan đến quản trị hệ thống, vì nó giúp đảm bảo hệ thống vận hành đúng cách.

82.

Viết một đoạn văn bản mô tả một "sunny-day scenario" cho chức năng Đăng nhập trong hệ thống bán hàng trực tuyến, sử dụng cấu trúc "noun-verb-noun".

a)

Người dùng vào trang đăng nhập, kiểm tra thông tin và đăng nhập thành công.

b)

Hệ thống hiển thị màn hình đăng nhập.

c)

Người dùng nhập mật khẩu và đăng nhập thành công.

d)

Người dùng nhập tên đăng nhập và mật khẩu, sau đó nhấn nút Đăng nhập. Hệ thống xác thực thông tin và đăng nhập người dùng.

83.

Use case giúp trả lời câu hỏi nào liên quan đến hệ thống?

4 lines
84.

Use case giúp trả lời câu hỏi nào liên quan đến hệ thống?

a)

Sự phân bổ nguồn lực phát triển trong dự án.

b)

Cách hệ thống lưu trữ dữ liệu trong cơ sở dữ liệu.

c)

Hệ thống sẽ được triển khai như thế nào?

d)

Người dùng của hệ thống đang cố gắng làm gì và trải nghiệm người dùng ra sao?

85.

Vai trò của use case trong việc bổ sung cho yêu cầu chức năng là gì?

a)

Để lập danh sách các lỗi tiềm ẩn trong hệ thống.

b)

Để cung cấp một phương pháp có cấu trúc giúp ghi lại các yêu cầu hành vi, hỗ trợ quá trình thiết kế.

c)

Để thay thế hoàn toàn tài liệu yêu cầu chức năng.

d)

Để xác định các trường hợp thử nghiệm phần mềm.

86.

Trong ngữ cảnh của use case, "rainy-day scenario" là gì?

a)

Một kịch bản mô tả các tính năng hiệu năng của hệ thống.

b)

Một kịch bản mô tả giao diện người dùng.

c)

Một kịch bản mô tả cách hệ thống hoạt động trong các tình huống không mong muốn hoặc khi người dùng sử dụng các tính năng ít phổ biến.

d)

Một kịch bản mô tả cách người dùng sử dụng hệ thống trong điều kiện lý tưởng.

87.

Tại sao việc viết use case nên tập trung vào sự tương tác giữa người dùng và hệ thống?

a)

Để tạo sơ đồ trạng thái

b)

Để mô tả rõ ràng các hành vi cần thiết mà hệ thống phải thực hiện

c)

Để xác định các lỗi trong hệ thống

d)

Để đảm bảo tính an toàn của hệ thống

88.

Tại sao việc viết use case theo cấu trúc "noun-verb-noun" lại quan trọng?

a)

Để dễ dàng mô hình hóa cơ sở dữ liệu

b)

Để viết mã nguồn trực tiếp

c)

Để tạo ra một thiết kế hướng đối tượng dễ dàng từ use case

d)

Để tạo sơ đồ lớp

89.

Nếu phát hiện ra một yêu cầu mới trong quá trình viết use case, bạn sẽ làm gì?

a)

Thay đổi toàn bộ thiết kế hệ thống

b)

Cập nhật use case để bao gồm yêu cầu mới

c)

Bỏ qua yêu cầu này

d)

Viết mã nguồn

90.

Nếu phát hiện ra một yêu cầu mới trong quá trình viết use case, bạn sẽ làm gì?

a)

Thay đổi toàn bộ thiết kế hệ thống

b)

Cập nhật use case để bao gồm yêu cầu mới

c)

Bỏ qua yêu cầu này

d)

Viết mã nguồn cho yêu cầu này

91.

Nếu mô hình miền thay đổi trong quá trình phát triển, điều gì cần thực hiện với use case?

a)

Bỏ qua mô hình miền

b)

Cập nhật use case để phù hợp với mô hình miền mới

c)

Tạo sơ đồ trình tự mới

d)

Thay đổi mô hình lớp

92.

Trong quá trình viết use case, bạn phát hiện hệ thống cần phản hồi khi người dùng nhập sai mật khẩu. Hãy mô tả một "rainy-day scenario" cho tình huống này.

a)

Hệ thống chấp nhận mọi đầu vào và cho phép người dùng đăng nhập.

b)

Hệ thống không phản hồi gì và yêu cầu người dùng nhập lại thông tin.

c)

Hệ thống chuyển người dùng đến trang chính.

d)

Hệ thống hiển thị thông báo lỗi "Mật khẩu không đúng" và yêu cầu người dùng nhập lại mật khẩu.

93.

Yếu tố nào sau đây giúp ích đáng kể trong việc xác định use case?

a)

Tạo storyboards và nguyên mẫu (UI mockups, demo chức năng cơ bản).

b)

Viết tài liệu quản lý dự án.

c)

Thực hiện kiểm thử hiệu năng.

d)

Phân tích cấu trúc cơ sở dữ liệu.

94.

Tại sao việc ghi nhận các "rainy-day scenarios" (kịch bản không mong muốn) lại quan trọng khi viết use case?

a)

Vì các kịch bản này giúp xác định những tính năng không cần thiết trong hệ thống.

b)

Vì các kịch bản này không ảnh hưởng đến cách hệ thống hoạt động trong thực tế.

c)

Vì các kịch bản này chỉ hữu ích trong giai đoạn kiểm thử hệ thống.

d)

Vì các kịch bản này cung cấp thông tin về cách hệ thống cần phản hồi khi có lỗi hoặc khi người dùng tương tác với các tính năng ít được sử dụng, đảm bảo hệ thống hoạt động toàn diện và ổn định.

95.

Mục đích chính của use case là gì?

a)

Thể hiện cấu trúc dữ liệu của hệ thống.

b)

Giúp nắm bắt các yêu cầu hành vi của hệ thống để tạo ra thiết kế.

96.

Mục đích chính của use case là gì?

a)

Thể hiện cấu trúc dữ liệu của hệ thống.

b)

Giúp nắm bắt các yêu cầu hành vi của hệ thống để tạo ra thiết kế.

c)

Tạo ra một danh sách các lỗi tiềm ẩn trong hệ thống.

d)

Tìm ra cấu trúc tĩnh của hệ thống

97.

Điều gì làm cho yêu cầu chức năng (functional requirements) trở thành bước đầu tiên trong quá trình thu thập yêu cầu?

a)

Vì yêu cầu chức năng thay thế hoàn toàn các trường hợp sử dụng.

b)

Vì yêu cầu chức năng cung cấp một bản thiết kế chi tiết của hệ thống

c)

Vì yêu cầu chức năng chỉ bao gồm các yêu cầu kỹ thuật.

d)

Vì yêu cầu chức năng là tập hợp các yêu cầu ban đầu từ các bên liên quan, giúp xác định các yêu cầu hành vi cần làm rõ hơn.

98.

Trong quá trình viết use case, nếu người dùng thực hiện một hành động không dự đoán trước, bạn sẽ làm gì?

a)

Bỏ qua yêu cầu hành vi này

b)

Yêu cầu người dùng không thực hiện hành vi đó

c)

Thêm vào "rainy-day scenario" trong use case để mô tả hành vi này

d)

Thay đổi mô hình miền

99.

Điều gì xảy ra với mô hình miền khi các use case được phát triển?

a)

Mô hình miền sẽ giữ nguyên và không thay đổi.

b)

Mô hình miền sẽ được cập nhật và cải thiện liên tục dựa trên thông tin và thay đổi từ use case.

c)

Use case sẽ thay thế hoàn toàn mô hình miền.

d)

Mô hình miền sẽ chỉ được sử dụng lại khi hệ thống hoàn thành.

100.

Khi viết use case, điều gì cần được lưu ý ngoài kịch bản chính (sunny-day scenario)?

a)

Tập trung vào tài liệu kỹ thuật thay vì các tình huống sử dụng thực tế.

b)

Phân tích các kịch bản thay thế (rainy-day scenarios) để mô tả cách hệ thống phản ứng khi xảy ra lỗi hoặc khi người dùng sử dụng các tính năng ít phổ biến.

c)

Chỉ cần tập trung vào kịch bản chính mà không cần các kịch bản khác.

d)

Chỉ viết về cách hệ thống hoạt động trong điều kiện tối ưu.

101.

Ai cần tham gia vào buổi đánh giá yêu cầu?

(a)  

102.

Ai cần tham gia vào buổi đánh giá yêu cầu?

a)

Chỉ đội ngũ phát triển.

b)

Nhóm quản lý dự án.

c)

Đại diện khách hàng, người dùng cuối, nhân viên marketing, và các bên liên quan khác.

d)

Chỉ các lập trình viên.

103.

Lợi ích của việc liên kết use case với mô hình miền là gì?

a)

Loại bỏ các lớp dư thừa trong thiết kế.

b)

Tăng tốc độ phát triển giao diện người dùng.

c)

Giảm độ phức tạp của mã nguồn.

d)

Đảm bảo rằng các mô tả use case phù hợp với các đối tượng trong miền.

104.

Nguyên tắc nào là quan trọng nhất khi xây dựng mô hình miền?

a)

Bao quát ít nhất 80% các khái niệm quan trọng từ miền vấn đề.

b)

Đảm bảo rằng tất cả các đối tượng đều được triển khai chi tiết.

c)

Chỉ sử dụng ngôn ngữ kỹ thuật.

d)

Bao gồm tất cả các khía cạnh kỹ thuật.

105.

Lợi ích của việc sử dụng ngôn ngữ chủ động trong mô tả use case là gì?

a)

Loại bỏ hoàn toàn các yêu cầu chức năng.

b)

Làm cho các yêu cầu rõ ràng hơn và dễ hiểu hơn.

c)

Hạn chế số lượng lỗi khi mã hóa.

d)

Giảm thời gian viết tài liệu.

106.

Tại sao việc mời đại diện khách hàng tham gia buổi đánh giá yêu cầu lại quan trọng?

a)

Để tăng cường mối quan hệ giữa khách hàng và nhà phát triển.

b)

Để xác định chi phí thực hiện dự án.

c)

Để đảm bảo rằng yêu cầu hệ thống phản ánh chính xác nhu cầu thực tế của khách hàng.

d)

Để tiết kiệm thời gian hoàn thành dự án.

107.

Điều gì sẽ xảy ra nếu các yêu cầu chức năng bị lẫn vào văn bản mô tả use case?

a)

Đơn giản hóa quá trình kiểm thử.

b)

Gây nhầm lẫn khi phân tích và thiết kế.

c)

Tăng tính rõ ràng của tài liệu.

d)

Tăng tính linh hoạt khi cập nhật yêu cầu.

108.

Khi mô tả các bước trong use case, tại sao cần liên kết các bước này với các đối tượng miền?

4 lines
109.

Khi mô tả các bước trong use case, tại sao cần liên kết các bước này với các đối tượng miền?

a)

Để tăng tính trừu tượng của tài liệu.

b)

Để tránh sử dụng các thuật ngữ không cần thiết.

c)

Để đảm bảo rằng mô hình miền hỗ trợ trực tiếp các yêu cầu của hệ thống

d)

Để giảm bớt số lượng các bước.

110.

Việc sử dụng giao diện người dùng (GUI) giúp cải thiện đặc tả use case như thế nào?

a)

Loại bỏ nhu cầu sử dụng sơ đồ use case.

b)

Làm rõ hành vi của người dùng và phản hồi của hệ thống.

c)

Giảm thời gian phát triển giao diện.

d)

Tăng khả năng tái sử dụng của các yêu cầu chức năng.

111.

Việc xác định các liên kết "is-a" và "has-a" trong mô hình miền có vai trò gì?

a)

Tăng tính chính xác trong việc mô tả các mối quan hệ giữa các đối tượng.

b)

Làm giảm độ phức tạp của hệ thống.

c)

Loại bỏ nhu cầu tạo các lớp đối tượng.

d)

Đảm bảo rằng các yêu cầu được đáp ứng đầy đủ.

112.

Trong buổi đánh giá yêu cầu, tại sao cần tạo nguyên mẫu (prototype) cho giao diện người dùng?

a)

Để xác minh rằng các yêu cầu được thể hiện đúng trong thiết kế giao diện.

b)

Để giảm chi phí phát triển.

c)

Để tăng số lượng các yêu cầu được xử lý.

d)

Để tạo tài liệu thiết kế chi tiết hơn.

113.

Làm thế nào việc truy vết (traceability) các yêu cầu đến các use case giúp ích cho dự án?

a)

Đảm bảo rằng mọi yêu cầu đều được thực hiện và kiểm tra

b)

Giảm nhu cầu kiểm tra hệ thống.

c)

Tăng độ chi tiết của mô hình miền.

d)

Giảm thời gian viết các use case.

114.

Tại sao việc đặt tên rõ ràng cho các đối tượng trong mô hình miền lại quan trọng?

a)

Để tăng tốc độ hoàn thành mô hình.

b)

Để đơn giản hóa tài liệu hóa hệ thống.

c)

Để giúp khách hàng dễ hiểu hơn về các yêu cầu.

d)

Để đảm bảo rằng các lập trình viên hiểu rõ vai trò của từng đối tượng.

115.

Vai trò của việc tạo các nguyên mẫu giao diện (prototypes) trong buổi đánh giá yêu cầu là gì?

a)

Để tập trung vào các yêu cầu trừu tượng hơn.

b)

Để xây dựng các chức năng phức tạp hơn.

c)

Để xác định các hành vi người dùng mà tài liệu chưa nêu rõ.

d)

Để giảm chi phí phát triển phần mềm.

116.

Bạn đang thực hiện đánh giá một use case, nhưng mô tả quá trừu tượng và khó hiểu. Bạn sẽ làm gì để cải thiện tài liệu?

a)

Sử dụng các từ ngữ chuyên môn để làm tăng tính chuyên sâu của tài liệu.

b)

Cụ thể hóa các hành động của người dùng và phản hồi của hệ thống bằng cách sử dụng giọng chủ động

c)

Bỏ qua các phần trừu tượng và tập trung vào giao diện người dùng.

d)

Chuyển đổi toàn bộ văn bản sang dạng bảng biểu.

117.

Trong quá trình đánh giá, khách hàng phàn nàn rằng hệ thống không đáp ứng được yêu cầu của họ, mặc dù yêu cầu đã được phê duyệt trước đó. Bạn sẽ xử lý thế nào?

a)

Chuyển yêu cầu đến nhóm phát triển mà không thay đổi gì.

b)

Loại bỏ ý kiến của khách hàng vì không phù hợp với giai đoạn hiện tại.

c)

Tạm dừng dự án và yêu cầu khách hàng cung cấp yêu cầu mới.

d)

Thực hiện lại buổi đánh giá yêu cầu với khách hàng để tìm ra sự khác biệt và cập nhật tài liệu.

118.

Mục đích của buổi xem xét yêu cầu (requirements review session) là gì?

a)

Để đảm bảo rằng hệ thống được mô tả khớp với các yêu cầu.

b)

Để thiết kế giao diện người dùng cho hệ thống.

c)

Để kiểm tra tính khả thi của các yêu cầu kỹ thuật.

d)

Để đánh giá khả năng mở rộng của hệ thống.