Trắc nghiệm Tin học 10 Kết nối tri thức Bài 34: Nghề phát triển phần mềm - Đề 10
Trắc nghiệm Tin học 10 Kết nối tri thức Bài 34: Nghề phát triển phần mềm - Đề 10 được xây dựng với nhiều câu hỏi chất lượng, sát với nội dung chương trình học, giúp bạn dễ dàng ôn tập và kiểm tra kiến thức hiệu quả. Hãy cùng bắt đầu làm bài tập trắc nghiệm ngay để nâng cao hiểu biết và chuẩn bị tốt cho kỳ thi sắp tới!
Câu 1: Một công ty phần mềm vừa thắng thầu dự án xây dựng hệ thống quản lý cho một trường học. Công việc đầu tiên mà đội dự án cần làm là gặp gỡ ban giám hiệu, giáo viên, và phụ huynh để hiểu rõ nhu cầu, quy trình làm việc hiện tại, và các vấn đề cần giải quyết bằng phần mềm mới. Hoạt động này thuộc công đoạn nào trong quy trình sản xuất phần mềm?
- A. Thiết kế hệ thống
- B. Lập trình
- C. Kiểm thử
- D. Điều tra, khảo sát
Câu 2: Sau khi đã thu thập đủ thông tin từ các bên liên quan, đội dự án cần phân tích các yêu cầu đó để xác định chức năng cụ thể của hệ thống, luồng dữ liệu, và cách hệ thống sẽ tương tác với người dùng. Công đoạn này nhằm mục đích xây dựng một mô hình rõ ràng về "hệ thống sẽ làm gì". Đây là công đoạn nào?
- A. Phân tích hệ thống
- B. Lập trình
- C. Chuyển giao
- D. Bảo trì
Câu 3: Dựa trên kết quả của công đoạn phân tích, đội dự án bắt đầu xây dựng bản thiết kế chi tiết, bao gồm cấu trúc cơ sở dữ liệu, giao diện người dùng (UI), kiến trúc phần mềm, và các thuật toán chính. Bản thiết kế này giống như bản "bản vẽ kỹ thuật" trước khi bắt tay vào xây dựng thực tế. Công đoạn này là gì?
- A. Điều tra, khảo sát
- B. Thiết kế hệ thống
- C. Kiểm thử
- D. Bảo trì
Câu 4: Công đoạn nào trong quy trình sản xuất phần mềm tập trung vào việc viết mã nguồn (code) dựa trên các bản thiết kế chi tiết đã được phê duyệt, chuyển đổi các ý tưởng và cấu trúc thành các dòng lệnh mà máy tính có thể thực thi?
- A. Phân tích hệ thống
- B. Thiết kế hệ thống
- C. Lập trình
- D. Chuyển giao
Câu 5: Sau khi các module phần mềm được viết xong, chúng cần được chạy thử nghiệm để phát hiện lỗi (bugs), kiểm tra xem phần mềm có hoạt động đúng theo yêu cầu đã phân tích và thiết kế hay không, và đảm bảo hiệu năng hoạt động. Công đoạn này được gọi là gì?
- A. Kiểm thử
- B. Điều tra, khảo sát
- C. Thiết kế hệ thống
- D. Lập trình
Câu 6: Khi phần mềm đã hoàn thành kiểm thử và được chấp nhận, nó cần được cài đặt tại môi trường hoạt động của khách hàng, dữ liệu ban đầu cần được nhập hoặc chuyển đổi, và người dùng cuối cần được đào tạo sử dụng. Công đoạn này mang phần mềm đến tay người dùng thực tế.
- A. Lập trình
- B. Kiểm thử
- C. Bảo trì
- D. Chuyển giao
Câu 7: Sau khi phần mềm đã được đưa vào sử dụng, đội phát triển vẫn cần tiếp tục theo dõi, khắc phục các lỗi phát sinh trong quá trình vận hành, cập nhật các tính năng mới theo yêu cầu thay đổi, hoặc nâng cấp để phần mềm hoạt động hiệu quả hơn. Đây là công đoạn cuối cùng và thường xuyên nhất trong vòng đời phần mềm.
- A. Chuyển giao
- B. Bảo trì
- C. Kiểm thử
- D. Thiết kế hệ thống
Câu 8: Hoạt động nào có vai trò điều phối, lên kế hoạch, phân bổ nguồn lực, giám sát tiến độ và quản lý rủi ro cho toàn bộ quá trình sản xuất phần mềm, đảm bảo dự án đi đúng hướng và hoàn thành trong phạm vi ngân sách, thời gian cho phép?
- A. Lập trình
- B. Kiểm thử
- C. Quản trị dự án phần mềm
- D. Bảo trì
Câu 9: Theo em, nhận định nào sau đây mô tả chính xác nhất về bản chất của "phát triển phần mềm"?
- A. Phát triển phần mềm chỉ đơn thuần là viết code.
- B. Phát triển phần mềm là một quá trình tuyến tính, chỉ đi theo một chiều từ đầu đến cuối.
- C. Phát triển phần mềm chỉ bao gồm các công việc kỹ thuật liên quan đến máy tính.
- D. Phát triển phần mềm là một quá trình phức tạp gồm nhiều công đoạn, hoạt động liên quan đến kỹ thuật, quản lý và làm việc với con người, có thể lặp đi lặp lại.
Câu 10: Có ba hoạt động chính thường được nhắc đến trong phát triển phần mềm: Lập trình, Tổ chức phát triển phần mềm, và Quản trị dự án phát triển phần mềm. Hoạt động nào đóng vai trò nền tảng, tạo ra sản phẩm cốt lõi là các dòng mã lệnh?
- A. Lập trình
- B. Tổ chức phát triển phần mềm
- C. Quản trị dự án phát triển phần mềm
- D. Cả ba hoạt động đều có vai trò như nhau
Câu 11: Trong một dự án phát triển phần mềm, vai trò nào đòi hỏi sự hiểu biết sâu sắc về các mô hình quy trình phát triển, kỹ thuật phân tích yêu cầu, thiết kế kiến trúc hệ thống, và thường chịu trách nhiệm về chất lượng tổng thể của sản phẩm?
- A. Lập trình viên
- B. Kỹ sư phần mềm
- C. Người quản trị dự án
- D. Người kiểm thử phần mềm
Câu 12: Một bạn học sinh có khả năng tư duy logic tốt, thích giải quyết vấn đề, và có đức tính cẩn thận, tỉ mỉ. Những tố chất này đặc biệt phù hợp với vai trò nào trong lĩnh vực phát triển phần mềm?
- A. Lập trình viên
- B. Người quản lý sản phẩm (Product Manager)
- C. Chuyên viên tư vấn (Consultant)
- D. Chuyên viên hỗ trợ kỹ thuật (Technical Support)
Câu 13: Để trở thành một Kỹ sư phần mềm chuyên nghiệp, con đường đào tạo phổ biến và bài bản nhất thường là theo học ngành nào ở bậc đại học?
- A. Quản trị kinh doanh
- B. Thiết kế đồ họa
- C. Tin học hoặc Công nghệ thông tin
- D. Marketing
Câu 14: Một nhóm phát triển đang làm việc trên một ứng dụng di động. Công việc của họ liên quan đến việc tạo ra các thành phần hiển thị trên màn hình điện thoại, cách người dùng tương tác với ứng dụng thông qua các nút bấm, cử chỉ. Lĩnh vực phát triển này được gọi là gì?
- A. Phát triển Backend (Server-side)
- B. Phát triển giao diện người dùng (Frontend/UI/UX)
- C. Quản trị cơ sở dữ liệu (Database Administration)
- D. Kiểm thử tự động (Automation Testing)
Câu 15: Bạn muốn xây dựng một website thương mại điện tử phức tạp với nhiều chức năng như giỏ hàng, thanh toán trực tuyến, quản lý đơn hàng. Lĩnh vực phát triển phần mềm nào sẽ là trọng tâm công việc của bạn?
- A. Phát triển ứng dụng di động
- B. Phát triển game
- C. Phát triển ứng dụng trên web
- D. Lập trình nhúng
Câu 16: Tại sao công đoạn Kiểm thử (Testing) lại cần được thực hiện một cách kỹ lưỡng và có hệ thống trong quy trình sản xuất phần mềm?
- A. Để làm tăng thời gian phát triển dự án.
- B. Chỉ để tìm các lỗi nhỏ về giao diện.
- C. Để chứng minh lập trình viên không mắc lỗi.
- D. Để phát hiện và sửa chữa lỗi (bugs), đảm bảo phần mềm hoạt động ổn định, tin cậy và đáp ứng đúng yêu cầu của khách hàng trước khi chuyển giao.
Câu 17: Trong công đoạn Bảo trì (Maintenance), việc cập nhật phần mềm để tương thích với phiên bản hệ điều hành mới hoặc tích hợp với một hệ thống bên ngoài khác thuộc loại bảo trì nào?
- A. Bảo trì sửa lỗi (Corrective Maintenance)
- B. Bảo trì hoàn thiện (Perfective Maintenance)
- C. Bảo trì thích nghi (Adaptive Maintenance)
- D. Bảo trì phòng ngừa (Preventive Maintenance)
Câu 18: Vai trò của tài liệu hóa (documentation) trong các công đoạn Phát triển phần mềm (ví dụ: tài liệu yêu cầu, tài liệu thiết kế kỹ thuật) là gì?
- A. Chỉ là thủ tục hành chính không cần thiết.
- B. Làm chậm tiến độ dự án.
- C. Chỉ hữu ích cho người quản lý dự án.
- D. Giúp các thành viên trong nhóm hiểu rõ về hệ thống, là cơ sở để phát triển, kiểm thử, chuyển giao và bảo trì sau này.
Câu 19: Một Lập trình viên phát hiện ra một lỗi trong mã nguồn mà họ vừa viết ngay trong quá trình lập trình. Hoạt động sửa lỗi này thuộc về công đoạn nào?
- A. Điều tra, khảo sát
- B. Thiết kế hệ thống
- C. Lập trình (bao gồm cả gỡ lỗi cục bộ)
- D. Chuyển giao
Câu 20: Tại sao kỹ năng "làm việc nhóm" lại được coi là một kỹ năng mềm (soft skill) quan trọng đối với người làm nghề phát triển phần mềm?
- A. Vì công việc lập trình rất cô lập và không cần tương tác.
- B. Để có người đổ lỗi khi dự án thất bại.
- C. Chỉ cần thiết cho người quản lý dự án.
- D. Vì phát triển phần mềm thường là công việc tập thể, đòi hỏi sự phối hợp chặt chẽ giữa các thành viên có vai trò khác nhau để hoàn thành mục tiêu chung.
Câu 21: Công ty X đang phát triển một ứng dụng quản lý bán hàng. Họ đã hoàn thành công đoạn Thiết kế và chuẩn bị chuyển sang Lập trình. Tuy nhiên, khách hàng đột ngột thay đổi một số yêu cầu cốt lõi. Theo quy trình phát triển phần mềm, đội dự án nên làm gì tiếp theo?
- A. Quay lại công đoạn Điều tra/Phân tích để cập nhật yêu cầu và điều chỉnh Thiết kế.
- B. Tiếp tục công đoạn Lập trình với thiết kế cũ và bỏ qua yêu cầu mới.
- C. Chuyển thẳng sang công đoạn Kiểm thử.
- D. Ngừng dự án vì khách hàng thay đổi yêu cầu.
Câu 22: Một Kỹ sư phần mềm đang đánh giá các công nghệ và ngôn ngữ lập trình phù hợp nhất để xây dựng một hệ thống xử lý dữ liệu lớn. Công việc này thuộc về công đoạn nào trong quy trình sản xuất phần mềm?
- A. Điều tra, khảo sát
- B. Thiết kế hệ thống (lựa chọn công nghệ, kiến trúc)
- C. Lập trình
- D. Bảo trì
Câu 23: Người Quản trị dự án phần mềm cần có những kỹ năng nào là quan trọng nhất để đảm bảo dự án thành công?
- A. Chỉ cần kỹ năng lập trình giỏi nhất nhóm.
- B. Chỉ cần kỹ năng kiểm thử xuất sắc.
- C. Chỉ cần biết cách sử dụng máy tính cơ bản.
- D. Kỹ năng lập kế hoạch, quản lý thời gian, quản lý ngân sách, quản lý rủi ro và kỹ năng giao tiếp, lãnh đạo nhóm.
Câu 24: Tại sao việc hiểu biết về "cấu trúc dữ liệu và thuật toán" lại là kiến thức nền tảng quan trọng đối với một Lập trình viên?
- A. Vì đó là yêu cầu bắt buộc khi xin việc.
- B. Chỉ cần thiết khi làm game.
- C. Giúp lập trình viên viết mã nguồn hiệu quả, tối ưu về thời gian và bộ nhớ, giải quyết vấn đề một cách logic và có cấu trúc.
- D. Không thực sự cần thiết, chỉ cần biết cú pháp ngôn ngữ.
Câu 25: Khi làm việc ở vị trí Phát triển giao diện người dùng (Frontend/UI/UX), bạn sẽ tập trung chủ yếu vào việc gì?
- A. Thiết kế và xây dựng phần mà người dùng nhìn thấy và tương tác trực tiếp (ví dụ: layout, màu sắc, nút bấm, form nhập liệu).
- B. Quản lý cơ sở dữ liệu và xử lý logic nghiệp vụ ở phía máy chủ.
- C. Kiểm thử bảo mật cho toàn bộ hệ thống.
- D. Lập kế hoạch và quản lý ngân sách dự án.
Câu 26: Công đoạn "Chuyển giao" (Deployment/Transfer) không chỉ bao gồm việc cài đặt phần mềm. Hoạt động quan trọng nào sau đây cũng thường được thực hiện trong công đoạn này?
- A. Viết mã nguồn các chức năng chính.
- B. Đào tạo người dùng cuối và cung cấp tài liệu hướng dẫn sử dụng.
- C. Phân tích yêu cầu chi tiết.
- D. Thiết kế kiến trúc hệ thống.
Câu 27: Một dự án phần mềm đã hoàn thành và đang hoạt động ổn định. Tuy nhiên, khách hàng muốn bổ sung một tính năng mới để tăng khả năng cạnh tranh. Yêu cầu này sẽ được xử lý chủ yếu trong công đoạn nào?
- A. Kiểm thử (chỉ kiểm tra tính năng hiện có)
- B. Chuyển giao (phần mềm đã được chuyển giao)
- C. Thiết kế (chỉ thiết kế ban đầu)
- D. Bảo trì (bổ sung tính năng là một dạng bảo trì hoàn thiện)
Câu 28: Nghề phát triển phần mềm được đánh giá là có cơ hội việc làm rất lớn trong tương lai. Lý do chính cho nhận định này là gì?
- A. Công nghệ thông tin đang suy thoái.
- B. Các công ty không còn cần phần mềm nữa.
- C. Sự phát triển không ngừng của công nghệ và nhu cầu ứng dụng phần mềm trong mọi lĩnh vực đời sống, kinh tế, xã hội.
- D. Chỉ có ít người quan tâm đến lĩnh vực này.
Câu 29: Khi một nhóm phát triển áp dụng phương pháp Agile, các công đoạn như Phân tích, Thiết kế, Lập trình, Kiểm thử có thể không diễn ra một cách tuần tự mà lặp đi lặp lại theo các vòng ngắn (sprint). Điều này thể hiện tính chất nào của phát triển phần mềm?
- A. Tính lặp lại (Iterative)
- B. Tính tuyến tính (Linear)
- C. Tính độc lập (Independent)
- D. Tính ngẫu nhiên (Random)
Câu 30: Ngoài kiến thức chuyên môn về công nghệ, để thành công trong nghề phát triển phần mềm, người làm nghề cần liên tục học hỏi và cập nhật kiến thức mới. Điều này đặc biệt quan trọng vì:
- A. Ngành công nghệ ít thay đổi.
- B. Chỉ cần học một lần là đủ dùng cả đời.
- C. Khách hàng không bao giờ yêu cầu tính năng mới.
- D. Công nghệ thay đổi rất nhanh chóng, các ngôn ngữ, framework, công cụ mới liên tục xuất hiện và cần được nắm bắt để duy trì năng lực cạnh tranh và hiệu quả công việc.