wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

BTPM Part 1

Total questions: 59

Worksheet time: 44mins

Name
Class
Date
1.

Thành phần nào KHÔNG thuộc định nghĩa đầy đủ của phần mềm theo McDermid?

a)

Mã nguồn và mã đối tượng

b)

Tài liệu (đặc tả, thiết kế, kiểm thử, hướng dẫn)

c)

Thủ tục vận hành

d)

Máy chủ vật lý và cơ sở hạ tầng mạng

2.

Theo chuẩn IEEE 1219, bảo trì phần mềm là gì?

a)

Phát triển hoàn toàn hệ thống mới từ đầu

b)

Sửa đổi sản phẩm sau khi phát hành để hiệu chỉnh lỗi, cải thiện hiệu năng hoặc thích ứng với môi trường mới

c)

Chỉ bao gồm việc sửa lỗi (bug fixing)

d)

Toàn bộ hoạt động từ lúc bắt đầu dự án đến khi kết thúc

3.

Yêu cầu thay đổi nào phát sinh từ nhu cầu làm cho phần mềm chạy trên hệ điều hành mới?

a)

Thay đổi hiệu chỉnh

b)

Thay đổi thích ứng

c)

Thay đổi hoàn thiện

d)

Thay đổi dự phòng

4.

Hoạt động nào giúp "làm thuận tiện công việc bảo trì tương lai"?

a)

Sửa lỗi khẩn cấp

b)

Cấu trúc lại (refactor) code và cập nhật tài liệu

c)

Chỉ nâng cấp phần cứng

d)

Giảm thiếu tương tác với người dùng

5.

Loại yêu cầu thay đổi nào bắt nguồn từ việc mở rộng chức năng hiện có của hệ thống?

a)

Thay đổi hiệu chỉnh

b)

Thay đổi thích ứng

c)

Thay đổi hoàn thiện

d)

Thay đổi dự phòng

6.

Yếu tố nào sau đây là một trở ngại chính cho việc thay đổi phần mềm?

a)

Chất lượng hệ thống hiện hành quá tốt

b)

Có đầy đủ tài liệu cập nhật

c)

Thiếu bảo trì viên được đào tạo và có kỹ năng

d)

Người dùng luôn nhiệt tình đón nhận thay đổi

7.

Yếu tố nhân sự nào ảnh hưởng lớn đến bảo trì do việc hầu hết hệ thống được bảo trì bởi người không phải tác giả gốc?

a)

Thực tiễn làm việc

b)

Sự thành thạo về lĩnh vực

c)

Tốc độ thay thế nhân viên

d)

Mức lương

8.

Việc "hiểu chương trình" (program comprehension) chiếm khoảng bao nhiêu phần trăm công sức bảo trì?

a)

10%

b)

30%

c)

50%

d)

70%

9.

Chi phí sửa lỗi (fixing bugs) cao nhất ở giai đoạn nào trong chu kỳ sống phần mềm?

a)

Phân tích và đặc tả yêu cầu.

b)

Thiết kế.

c)

Lập trình.

d)

Vận hành và bảo trì.

10.

Tại sao việc phân loại các yêu cầu thay đổi (hiệu chỉnh, thích ứng, hoàn thiện, dự phòng) lại quan trọng, mặc dù chúng thường đan xen trong thực tế?

a)

Để tăng số lượng công việc cho nhóm bảo trì

b)

Để xác định và ưu tiên giải quyết các yêu cầu một cách hiệu quả hơn

c)

Để có thể bỏ qua một số loại yêu cầu

d)

Chỉ để phục vụ cho mục đích báo cáo, không ảnh hưởng đến thực thi

11.

Mối quan hệ "Sản phẩm/Môi trường" trong khung làm việc bảo trì được hiểu là:

a)

Môi trường được tạo ra bởi sản phẩm phần mềm.

b)

Sản phẩm phần mềm tồn tại độc lập, không chịu tác động từ môi trường.

c)

Sản phẩm phần mềm phải "kế thừa" những thay đổi trong môi trường điều hành và tổ chức.

d)

Môi trường chỉ ảnh hưởng đến nhân sự, không ảnh hưởng đến sản phẩm.

12.

Tại sao các hệ thống "già" (legacy) lại là trở ngại lớn cho việc thay đổi?

a)

Vì chúng quá phức tạp, việc thay đổi là không thể

b)

Vì chúng thường có chất lượng kém sau nhiều lần sửa chữa, cấu trúc phức tạp, tài liệu thiếu.

c)

Vì không ai muốn sử dụng chúng nữa nên không cần thiết thay đổi

d)

Vì chúng chạy quá chậm, khó kiểm soát.

13.

Bảo trì dự phòng (Preventive) được coi là "chủ động" hay "bị động"?

a)

Bị động, chờ lỗi xảy ra mới sửa.

b)

Chủ động, tìm kiếm và sửa các vấn đề tiềm ẩn trước khi chúng gây ra lỗi.

c)

Bị động, chỉ làm khi khách hàng yêu cầu.

d)

Chủ động khi biết được các thay đổi của môi trường hoặc pháp luật.

14.

Một lập trình viên khi đọc code của module "Xử lý đơn hàng" thấy rằng có nhiều đoạn code trùng lặp ở 5 nơi khác nhau. Anh ta quyết định tái cấu trúc (refactor), gom chúng vào một hàm duy nhất để dễ quản lý và giảm khả năng sai sót khi cần sửa đổi sau này. Anh ta đang thực hiện loại bảo trì nào?

a)

Bảo trì hiệu chỉnh

b)

Bảo trì hoàn thiện

c)

Bảo trì dự phòng

d)

Bảo trì thích ứng

15.

Điểm yếu lớn nhất của mô hình Hiệu chỉnh nhanh là gì?

a)

Tốc độ xử lý chậm

b)

Thiếu phân tích tác động và quản lý rủi ro

c)

Chi phí triển khai ban đầu cao

d)

Không phù hợp với hệ thống nhỏ

16.

Mô hình lặp và tăng trưởng dựa trên giả định cơ bản nào?

a)

Yêu cầu luôn ổn định và đầy đủ ngay từ đầu.

b)

Yêu cầu chỉ được làm rõ sau nhiều lần lặp và phản hồi.

c)

Tài liệu quan trọng hơn mã nguồn.

d)

Người dùng không cần tham gia vào quá trình.

17.

Chuẩn IEEE 1219 (1998) tổ chức quy trình bảo trì thành mấy giai đoạn chính?

a)

5 giai đoạn

b)

6 giai đoạn

c)

7 giai đoạn

d)

8 giai đoạn

18.

Điều khoản nào sau đây thường KHÔNG xuất hiện trong một hợp đồng bảo trì chuẩn?

a)

Các định nghĩa thuật ngữ.

b)

Phạm vi dịch vụ bảo trì.

c)

Mã nguồn đầy đủ của phần mềm.

d)

Điều khoản về chi phí và thanh toán.

19.

Kiểm thử hồi quy (Regression Testing) nhằm mục đích chính nào?

a)

Phát hiện các lỗi mới trong chức năng vừa thêm.

b)

Đảm bảo thay đổi mới không làm hỏng chức năng hiện có.

c)

Kiểm tra hiệu năng của hệ thống dưới tải cao.

d)

Đánh giá trải nghiệm người dùng.

20.

Kế hoạch bảo trì nên được lập tốt nhất vào thời điểm nào?

a)

Chỉ sau khi phần mềm gặp sự cố đầu tiên.

b)

Trong giai đoạn phát triển phần mềm.

c)

Sau khi hợp đồng bảo trì đã ký kết.

d)

Khi dự án sắp kết thúc.

21.

Thách thức lớn nhất trong giai đoạn "Chuyển tiếp" (Transition) thường là gì?

a)

Chỉ phí mua phần cứng mới

b)

Việc chuyển giao tri thức và kinh nghiệm phi tài liệu (tacit knowledge) về hệ thống.

c)

Đào tạo người dùng về các tính năng cơ bản.

d)

Thay đổi về môi trường hoạt động

22.

Việc lưu giữ dữ liệu và phần mềm cũ sau khi "Ngừng sử dụng" chủ yếu phục vụ mục đích gì?

a)

Để bán lại cho các công ty khác

b)

Để khôi phục trong trường hợp khẩn cấp.

c)

Để giảm tải cho hệ thống lưu trữ hiện tại.

d)

Để sử dụng lại cho các dự án hoàn toàn mới.

23.

Nếu một yêu cầu thay đổi bị từ chối ở giai đoạn "Phân tích", lý do chính thường là gì?

a)

Lập trình viên không muốn làm

b)

Không đủ tài nguyên, vượt quá phạm vi hợp đồng

c)

Người dùng không biết cách sử dụng hệ thống

d)

Hệ thống quản lý cấu hình bị lỗi

24.

Khi chuyển toàn bộ hệ thống website thương mại điện tử từ máy chủ vật lý lên nền tảng đám mây AWS, hoạt động bảo trì chính nào sẽ được áp dụng và cần chú ý đặc biệt đến bước nào?

a)

Bảo trì hiệu chỉnh; Chú ý sửa lỗi nhanh

b)

Bảo trì thích ứng; Chú ý lập kế hoạch di dời và vận hành song song

c)

Bảo trì hoàn thiện; Chú ý thêm tính năng mới

d)

Bảo trì dự phòng; Chú ý refactor code

25.

Việc sửa đổi hệ thống COBOL để đọc/ghi đúng định dạng file mới khi chuyển sang hệ thống Java thông qua file text là dạng bảo trì nào?

a)

Bảo trì hiệu chỉnh (sửa lỗi giao diện)

b)

Bảo trì thích ứng (thích ứng với môi trường tích hợp mới)

c)

Bảo trì hoàn thiện (nâng cấp chức năng)

d)

Bảo trì dự phòng (tối ưu hóa code)

26.

Bốn bước chính trong Mô hình Tái sử dụng (Reuse Model) bao gồm những gì?

a)

Phân tích, Thiết kế hệ thống, Cài đặt mã nguồn, Kiểm thử

b)

Nhận dạng, Hiểu thành phần, Hiệu chỉnh, Tích hợp

c)

Lập kế hoạch, Dò tìm dữ liệu, Ngưng sử dụng, Lưu trữ

d)

Tiếp nhận yêu cầu, Đánh giá rủi ro, Phê chuẩn, Thực hiện

27.

Trong quản lý cấu hình (SCM), thuật ngữ "Đường cơ sở" (Baseline) ám chỉ điều gì?

a)

Một phiên bản phần mềm đã được duyệt dùng làm mốc so sánh

b)

Dòng mã lệnh đầu tiên được viết trong chương trình

c)

Bản kế hoạch ngân sách dự kiến ban đầu của dự án

d)

Danh sách toàn bộ nhân sự tham gia dự án từ đầu

28.

Đội bảo trì gặp khó khăn do tài liệu không khớp với mã nguồn. Mô hình phù hợp nhất để tránh điều này là?

a)

Quick-Fix

b)

Lặp và Tăng trưởng

c)

Boehm

d)

Tái sử dụng

29.

Đâu là yếu tố ảnh hưởng đến sự hiểu phần mềm?

a)

Kinh nghiệm bảo trì viên, chất lượng tài liệu, công cụ hỗ trợ

b)

Ngôn ngữ lập trình, hệ điều hành, phần cứng

c)

Quy mô dự án, ngân sách, thời hạn

d)

Số lượng người dùng, tần suất sử dụng, vị trí địa lý

30.

Gia công bảo trì phần mềm thường áp dụng với loại phần mềm nào?

a)

Phần mềm lớn kinh doanh

b)

Phần mềm ít quan trọng

c)

Phần mềm mã nguồn mở

d)

Phần mềm thử nghiệm

31.

Ba thực thể chính trong phép đo bảo trì là gì?

a)

Quy trình, tài nguyên, sản phẩm

b)

Mã nguồn, tài liệu, nhân sự

c)

Thời gian, chi phí, chất lượng

d)

Yêu cầu, thiết kế, kiểm thử

32.

Công thức tính độ phức tạp McCabe là gì?

a)

v(G) = e – n + 2

b)

v(G) = n – e + 2

c)

v(G) = e + n – 2

d)

v(G) = n + e × 2

33.

Tính dễ hiểu của phần mềm thường tỉ lệ nghịch với yếu tố nào?

a)

Độ phức tạp

b)

Kích thước mã nguồn

c)

Tuổi phần mềm

d)

Số người dùng

34.

Yếu tố kỹ thuật nào làm giảm chi phí bảo trì?

a)

Tài liệu chất lượng cao

b)

Mã nguồn phức tạp

c)

Ngôn ngữ cấp thấp

d)

Module phụ thuộc nhiều

35.

Các loại điểm chức năng chính gồm những gì?

a)

EI, EO, EQ, ILF, EIF

b)

LOC, FP, CPLX, QUAL

c)

UI, UX, DB, API

d)

Dev, Test, Ops, Maint

36.

Phân tích tác động dựa vào mã lệnh có nhược điểm gì?

a)

Tốn thời gian, cần chi tiết thực thi, phạm vi giới hạn

b)

Không chính xác, khó áp dụng, không hỗ trợ UML

c)

Chỉ dùng được cho ngôn ngữ C, không hỗ trợ OOP

d)

Yêu cầu tài liệu đầy đủ, không cần mã nguồn

37.

Phép đo LOC bị hạn chế vì lý do nào sau đây?

a)

Không có chuẩn chung, phụ thuộc ngôn ngữ, không phản ánh chất lượng

b)

Khó đếm chính xác, không áp dụng được cho mã nguồn đóng

c)

Chỉ đo được mã nguồn, không đo được tài liệu

d)

Tốn nhiều thời gian tính toán, khó tự động hóa

38.

Độ phức tạp McCabe cao (>10) cho thấy điều gì?

a)

Chương trình khó hiểu và khó bảo trì, cần xem xét tái cấu trúc

b)

Chương trình có nhiều chức năng, cần thêm nhân sự

c)

Chương trình chạy chậm, cần tối ưu hiệu năng

d)

Chương trình dễ kiểm thử, ít lỗi tiềm ẩn

39.

Một phần mềm có 3 EI đơn giản, 2 EO trung bình, 1 ILF phức tạp. Điểm chức năng thô (UFP) là bao nhiêu?

a)

34

b)

40

c)

45

d)

50

40.

Khi ước lượng chi phí bảo trì bằng FP, nếu tổng hệ số kỹ thuật (ΣFi) = 45, điểm chức năng năng điều chỉnh (AFP) được tính bằng công thức nào?

a)

AFP = UFP × (0.65 + 0.01 × 45)

b)

AFP = UFP × (0.65 + 45)

c)

AFP = UFP × 45

d)

AFP = UFP / (0.65 + 0.01 × 45)

41.

Ý nghĩa của "dòng mã lệnh delta" trong đo lường kích thước/thước bảo trì là gì?

a)

Là tổng số dòng lệnh của chương trình sau khi bảo trì xong

b)

Là số dòng lệnh được thêm vào hoặc được hiệu chỉnh trong quá trình bảo trì

c)

Là số dòng lệnh bị xóa bỏ khỏi chương trình gốc ban đầu

d)

Là số dòng lệnh chú thích được viết thêm để giải thích code

42.

Dự án có 100 điểm chức năng (FP). Sử dụng ngôn ngữ Java (trung bình 55 LOC/FP). Hãy ước lượng kích thước phần mềm theo dòng lệnh (LOC)?

a)

550 LOC

b)

5500 LOC

c)

55000 LOC

d)

1000 LOC

43.

Loại bảo trì nào tập trung vào việc sửa các lỗi (defects) trong phần mềm?

a)

Bảo trì thích ứng

b)

Bảo trì hoàn thiện

c)

Bảo trì hiệu chỉnh

d)

Bảo trì dự phòng

44.

Theo nghiên cứu được trích dẫn, chi phí bảo trì phần mềm chiếm khoảng bao nhiêu phần trăm tổng chi phí vòng đời?

a)

10%

b)

20%

c)

40%

d)

60%

45.

"Hiệu ứng gợn sóng" (Ripple Effect) trong bảo trì phần mềm là gì?

a)

Chỉ phí bảo trì tăng theo cấp số nhân

b)

Ảnh hưởng của một thay đổi ở nơi này lên các phần khác của hệ thống

c)

Hiệu quả tăng dần theo thời gian khi hệ thống được tối ưu

d)

Sự lan truyền lỗi từ người dùng này sang người dùng khác

46.

Trong so sánh với phát triển mới, bảo trì phần mềm đòi hỏi tư duy nào?

a)

Chỉ "nhìn lại" (look back)

b)

Chỉ "nhìn tới" (look ahead)

c)

Vừa "nhìn lại" vừa "nhìn tới"

d)

Tập trung hoàn toàn vào công nghệ mới

47.

Việc "vá lỗi" (patching) khẩn cấp thường dẫn đến hậu quả gì?

a)

Làm giảm vĩnh viễn độ phức tạp của chương trình

b)

Có thể làm tăng độ phức tạp và gây ra các hiệu ứng gợn sóng không lường trước

c)

Giúp hệ thống chạy nhanh hơn gấp đôi

d)

Loại bỏ hoàn toàn nhu cầu bảo trì trong tương lai

48.

Theo McDermid, thành phần của phần mềm bao gồm những gì?

a)

Chỉ mã nguồn (source code).

b)

Mã nguồn và mã đối tượng.

c)

Mã nguồn, mã đối tượng, tài liệu và các thủ tục vận hành.

d)

Chương trình và cơ sở dữ liệu

49.

Trong khung làm việc của bảo trì phần mềm, "Môi trường tổ chức" bao gồm yếu tố nào?

a)

Hệ điều hành và trình biên dịch.

b)

Phần cứng máy tính.

c)

Các quy tắc nghiệp vụ và chính sách của chính phủ.

d)

Các công cụ kiểm thử tự động.

50.

Lý do sâu xa nào khiến "sức cỉa người sử dụng" trở thành một yếu tố cản trở thay đổi phần mềm?

a)

Người dùng không biết sử dụng máy tính.

b)

Người dùng sợ thay đổi vì đã quen với hệ thống cũ.

c)

Người dùng luôn đòi hỏi thay đổi quá nhiều.

d)

Người dùng là các lập trình viên.

51.

Một lập trình viên nhận thấy đoạn mã xử lý chuỗi trong hệ thống quá rối rắm và khó hiểu, mặc dù nó vẫn chạy đúng. Anh ta quyết định viết lại đoạn mã đó cho sạch sẽ và dễ đọc hơn (Refactoring). Đây là loại bảo trì gì?

a)

Bảo trì hiệu chỉnh

b)

Bảo trì hoàn thiện

c)

Bảo trì dự phòng

d)

Bảo trì thích ứng

52.

Trọng tâm chính của mô hình Boehm (1983) là gì?

a)

Tự động hóa kiểm thử

b)

Phân tích kinh tế và quyết định quản lý

c)

Tái sử dụng thành phần phần mềm

d)

Cập nhật tài liệu liên tục

53.

Yếu tố cốt lõi của Mô hình Tái sử dụng (Reuse Model) là gì?

a)

Hợp đồng bảo trì chi tiết

b)

Kho chứa (repository) các thành phần và tài liệu

c)

Quy trình kiểm thử tự động

d)

Đội ngũ Help Desk chuyên nghiệp

54.

Giai đoạn "Phân tích" trong mô hình IEEE 1219 KHÔNG bao gồm việc gì?

a)

Nghiên cứu phạm vi và tính khả thi của thay đổi.

b)

Lập kế hoạch sơ bộ cho thiết kế, cài đặt, kiểm thử.

c)

Trực tiếp lập trình sửa lỗi.

d)

Phân tích chi phí và lợi ích.

55.

Thành phần nào thường KHÔNG có trong Ban Kiểm soát Cấu hình (CCB)?

a)

Đại diện khách hàng.

b)

Đại diện tổ chức bảo trì.

c)

Lập trình viên thực thi chính.

d)

Đại diện người dùng cuối.

56.

Công việc "Thẩm tra" (Verification) trong hoạt động "Phân tích vấn đề và sự thay đổi" nhằm mục đích gì?

a)

Lập kế hoạch dự án chi tiết.

b)

Xác nhận rằng vấn đề được báo cáo là có thật và có thể tái hiện.

c)

Phê duyệt ngân sách cho thay đổi.

d)

Viết tài liệu hướng dẫn sử dụng mới.

57.

Việc định nghĩa rõ ràng các thuật ngữ như "lỗi nghiêm trọng" hay "thời gian phản hồi" trong hợp đồng nhằm mục đích gì?

a)

Làm cho hợp đồng trông chuyên nghiệp hơn

b)

Tránh hiểu lầm và tranh chấp về nghĩa vụ và trách nhiệm giữa các bên.

c)

Giới hạn quyền lợi của khách hàng.

d)

Kéo dài thời gian thực hiện dịch vụ.

58.

Theo ISO/IEC/IEEE 14764, việc "Lập các thủ tục cho yêu cầu thay đổi" thuộc về hoạt động nào?

a)

Phân tích vấn đề và sự thay đổi.

b)

Thực thi sự thay đổi.

c)

Thực thi quy trình.

d)

Di dời.

59.

Sự khác biệt cốt lõi giữa "Thực thi sự thay đổi" trong bảo trì và "Phát triển mới" là gì?

a)

Bảo trì không cần phân tích hoặc thiết kế.

b)

Bảo trì phải làm việc trong các ràng buộc của hệ thống hiện có.

c)

Phát triển mới không cần kiểm thử.

d)

Bảo trì luôn sử dụng ngôn ngữ lập trình khác.