Chọn đến phần học sinh cần nhanh chóng thông qua mục lục bằng cách click đến phần đó
Câu hỏi mở đầu
Đề bài: Theo em, phát triển phần mềm có phải chỉ là việc viết các đoạn mã lệnh bằng một ngôn ngữ lập trình nào đó để máy tính có thể hiểu và giải quyết một bài toán trong thực tế?
Lời giải:
→ Không. Phát triển phần mềm không chỉ là việc viết mã lệnh (lập trình).
Giải thích: Phát triển phần mềm là một quá trình bao gồm rất nhiều công việc và hoạt động khác nhau như: điều tra khảo sát, phân tích, thiết kế, lập trình, kiểm thử, chuyển giao, bảo trì và quản trị dự án. Lập trình chỉ là một trong nhiều công đoạn của quá trình này.
1. Phát triển phần mềm là gì?
Hoạt động 1 trang 160
Đề bài: Nhiều em mong muốn biết lập trình để làm ra các phần mềm ứng dụng. Vậy em có biết việc sản xuất phần mềm gồm các công đoạn nào không?
Lời giải:
Việc sản xuất phần mềm gồm $7$ công đoạn chính:
| Số thứ tự | Công đoạn | Mô tả ngắn |
|---|---|---|
| 1 | Điều tra khảo sát | Tiếp xúc khách hàng, tìm hiểu yêu cầu, xây dựng hồ sơ yêu cầu. |
| 2 | Phân tích hệ thống | Tạo tài liệu mô tả đầy đủ yêu cầu của phần mềm. |
| 3 | Thiết kế hệ thống | Thiết kế tổng thể, dữ liệu, chức năng, giao diện chi tiết. |
| 4 | Lập trình | Tạo cơ sở dữ liệu, viết mã lệnh thực hiện các chức năng. |
| 5 | Kiểm thử | Phát hiện và loại bỏ các lỗi, kiểm tra kết quả. |
| 6 | Chuyển giao | Cài đặt, khởi tạo dữ liệu, hướng dẫn sử dụng. |
| 7 | Bảo trì | Khắc phục lỗi, nâng cấp tính năng và giao diện. |
→ Bao trùm lên tất cả là Quản trị dự án phần mềm (lập kế hoạch, điều phối, kiểm soát chất lượng,…).
Câu hỏi củng cố mục 1 trang 161
Đề bài: Theo em điều nào là đúng nhất trong các điều sau khi nói về phát triển phần mềm?
A. Phát triển phần mềm là lập trình.
B. Phát triển phần mềm là quá trình gồm nhiều công việc và hoạt động.
C. Phát triển phần mềm là quá trình gồm nhiều công việc và hoạt động, có thể lặp đi lặp lại.
D. Phát triển phần mềm là quản trị dự án phần mềm.
Lời giải:
→ Đáp án đúng: C.
Giải thích từng đáp án:
| Đáp án | Đánh giá | Lý do |
|---|---|---|
| A | ✗ Sai | Lập trình chỉ là một công đoạn trong phát triển phần mềm. |
| B | ✗ Chưa đủ | Đúng nhưng thiếu yếu tố lặp đi lặp lại. |
| C | ✓ Đúng nhất | Phản ánh đầy đủ: quá trình + nhiều công việc + có thể lặp lại (vd: bảo trì là vòng phát triển mới). |
| D | ✗ Sai | Quản trị dự án chỉ là một hoạt động bao trùm. |
2. Kiến thức, kĩ năng của người phát triển phần mềm
Hoạt động 2 trang 161
Đề bài: Theo em, phát biểu “tất cả những người phát triển phần mềm đều có vai trò như nhau” là đúng hay sai?
Lời giải:
→ Sai.
Giải thích: Trong phát triển phần mềm có nhiều vị trí khác nhau, mỗi vị trí có vai trò và yêu cầu khác nhau:
| Vị trí | Vai trò |
|---|---|
| Lập trình viên (Programmer) | Phụ trách viết mã (code) thực hiện các chức năng theo thiết kế. |
| Kĩ sư phần mềm (Software Engineer) | Tổ chức làm phần mềm, phụ trách phân tích, thiết kế hệ thống. |
| Người quản trị dự án (Project Manager) | Tổ chức, lập kế hoạch, điều phối nguồn lực, kiểm soát toàn bộ dự án. |
→ Mỗi vị trí có kiến thức, kĩ năng và tố chất riêng, không thể coi là vai trò như nhau.
Câu hỏi củng cố mục 2 trang 163
Đề bài: Hãy ghép mỗi hoạt động phát triển phần mềm ở cột trái với tố chất ở cột phải cho thích hợp.
| Hoạt động | Tố chất |
|---|---|
| 1) Lập trình (viết code) | a) Cẩn thận, tỉ mỉ |
| 2) Phân tích và thiết kế hệ thống | b) Có khả năng học hỏi, tìm hiểu nghiệp vụ của lĩnh vực ứng dụng |
| 3) Quản trị dự án | c) Có kiến thức toán, thuật toán tốt |
| d) Làm chủ được ngôn ngữ lập trình | |
| e) Hiểu biết công nghệ | |
| g) Có tầm nhìn, kĩ năng tổ chức và điều phối nguồn lực |
Lời giải:
| Hoạt động | Tố chất phù hợp | Giải thích |
|---|---|---|
| 1) Lập trình | a, c, d | Cần cẩn thận tỉ mỉ khi viết code, hiểu biết toán/thuật toán, làm chủ ngôn ngữ lập trình. |
| 2) Phân tích và thiết kế hệ thống | b, e | Cần học hỏi nghiệp vụ của lĩnh vực ứng dụng (vd: kế toán, ngân hàng,…) và hiểu biết về công nghệ. |
| 3) Quản trị dự án | g | Cần tầm nhìn, kĩ năng tổ chức và điều phối nguồn lực để quản lý dự án. |
3. Công việc phát triển phần mềm
Hoạt động 3 trang 163
Đề bài: Em có biết làm thế nào để trở thành người tham gia phát triển phần mềm? Theo em có những cơ hội nghề nghiệp nào cho người phát triển phần mềm?
Lời giải:
Cách trở thành người phát triển phần mềm:
- Bắt đầu với các khoá đào tạo về lập trình tại các trung tâm, trường dạy nghề.
- Học tại các công ty, tập đoàn công nghệ (FPT, Viettel, VNPT,…).
- Theo học bậc đại học, cao đẳng về Tin học/Công nghệ thông tin (nếu muốn trở thành kĩ sư phần mềm).
Một số cơ hội nghề nghiệp:
- Lập trình ứng dụng: Viết chương trình với tác vụ cụ thể.
- Phát triển giao diện người dùng (UI/UX).
- Phát triển ứng dụng web, phần mềm hệ thống, quản trị thông tin.
- Lập trình trí tuệ nhân tạo (AI), máy học (Machine Learning).
- Phát triển game.
- Phát triển ứng dụng di động (Android, iOS).
Câu hỏi củng cố mục 3 trang 164
Đề bài:
1. Em đánh giá thế nào về cơ hội việc làm trong tương lai đối với nghề phát triển phần mềm?
Lời giải:
Cơ hội việc làm trong tương lai rất lớn và đa dạng, vì:
- Nhu cầu nhân lực phát triển phần mềm chiếm tỉ lệ cao nhất trong tuyển dụng ngành Công nghệ thông tin tại Việt Nam.
- Cách mạng công nghiệp 4.0 với các xu hướng AI, IoT, điện toán đám mây, blockchain,… mở ra rất nhiều cơ hội nghề nghiệp mới.
- Phát triển phần mềm cần thiết cho mọi lĩnh vực của đời sống xã hội: kinh tế, giáo dục, y tế, giải trí,…
- Có thể làm việc tại các công ty trong nước, công ty đa quốc gia, hoặc làm việc tự do (freelance), khởi nghiệp riêng.
2. Theo em, người tốt nghiệp các trường đại học về công nghệ thông tin có thể làm những công việc gì? Cho những đơn vị như thế nào?
Lời giải:
Các công việc có thể làm:
- Lập trình viên ở nhiều mảng: web, ứng dụng di động, game, AI,…
- Kĩ sư phần mềm: phân tích, thiết kế hệ thống.
- Người quản trị dự án phần mềm.
- Chuyên viên kiểm thử phần mềm (Tester).
- Chuyên viên DevOps, quản trị hệ thống.
Các đơn vị có thể làm việc:
- Tập đoàn công nghệ trong nước: FPT, Viettel, VNPT, CMC, MISA,…
- Công ty đa quốc gia: Samsung, LG, IBM, Microsoft (chi nhánh Việt Nam),…
- Ngân hàng, công ty viễn thông, cơ quan nhà nước có bộ phận CNTT.
- Startup, công ty tự khởi nghiệp của chính mình.
Luyện tập trang 164
Luyện tập 1 trang 164
Đề bài: Mô tả quy trình phát triển phần mềm.
Lời giải:
Quy trình phát triển phần mềm gồm $7$ công đoạn thực hiện tuần tự (và có thể lặp lại):
- Điều tra khảo sát: Tiếp xúc khách hàng, tìm hiểu yêu cầu, xây dựng hồ sơ yêu cầu hệ thống.
- Phân tích hệ thống: Dựa vào hồ sơ điều tra, tạo tài liệu mô tả đầy đủ yêu cầu phần mềm.
- Thiết kế hệ thống: Đưa ra thiết kế tổng thể, thiết kế dữ liệu, chức năng, giao diện chi tiết.
- Lập trình: Tạo cơ sở dữ liệu, viết mã lệnh thực hiện các chức năng theo thiết kế.
- Kiểm thử: Phát hiện và loại bỏ các lỗi, kiểm tra tính đúng đắn của chương trình.
- Chuyển giao: Cài đặt, khởi tạo dữ liệu, hướng dẫn sử dụng cho khách hàng.
- Bảo trì: Khắc phục lỗi phát sinh, nâng cấp tính năng và giao diện theo nhu cầu.
→ Bao trùm lên toàn bộ là hoạt động Quản trị dự án phần mềm (lập kế hoạch, điều phối nhân sự, tài chính, kiểm soát chất lượng,…).
Luyện tập 2 trang 164
Đề bài: Theo em, để theo học ngành phát triển phần mềm, em cần chuẩn bị tốt những môn học nào?
Lời giải:
Các môn học cần chuẩn bị tốt:
- Tin học: đặc biệt là lập trình, làm quen với các ngôn ngữ như Python, C/C++, Java,…
- Toán học: đại số, logic, hình học, xác suất thống kê — nền tảng cho thuật toán và phân tích.
- Ngoại ngữ (tiếng Anh): đọc tài liệu, cập nhật công nghệ mới (phần lớn tài liệu là tiếng Anh).
- Vật lý: kiến thức nền tảng kỹ thuật, đặc biệt khi làm việc với phần mềm điều khiển, IoT.
- Ngữ văn: kỹ năng diễn đạt, viết tài liệu, giao tiếp với khách hàng và đồng nghiệp.
Luyện tập 3 trang 164
Đề bài: Hãy liệt kê một vài phần mềm ứng dụng mà em biết.
Lời giải:
Một số phần mềm ứng dụng phổ biến:
| Lĩnh vực | Phần mềm |
|---|---|
| Văn phòng | Microsoft Word, Excel, PowerPoint; Google Docs, Sheets, Slides. |
| Trình duyệt web | Google Chrome, Mozilla Firefox, Cốc Cốc, Safari, Microsoft Edge. |
| Học tập, hội họp | Zoom, Google Meet, Microsoft Teams. |
| Mạng xã hội | Facebook, Zalo, Instagram, TikTok. |
| Giải trí | YouTube, Spotify, Netflix, Spotify. |
| Thiết kế đồ hoạ | Adobe Photoshop, Illustrator, AutoCAD. |
| Lập trình | Visual Studio Code, PyCharm, IDLE, Eclipse. |
| Ứng dụng di động | Grab, ShopeeFood, MoMo, ZaloPay. |
Vận dụng trang 164
Vận dụng 1 trang 164
Đề bài: Ở khu vực nơi em sinh sống hay các tỉnh/thành phố lân cận, trường đại học nào đào tạo nghề phát triển phần mềm? Khối thi ngành liên quan đến phát triển phần mềm của trường đó là gì?
Lời giải:
Câu này có tính chất liên hệ địa phương, em tự tìm hiểu theo nơi mình sinh sống. Dưới đây là gợi ý một số trường lớn:
| Trường | Khu vực | Khối thi phổ biến |
|---|---|---|
| Đại học Bách Khoa Hà Nội | Hà Nội | A00, A01 |
| Đại học Công nghệ – ĐHQGHN | Hà Nội | A00, A01 |
| Đại học FPT | Toàn quốc | A00, A01, D01 |
| Đại học Bách Khoa TP.HCM | TP.HCM | A00, A01 |
| Đại học Khoa học Tự nhiên TP.HCM | TP.HCM | A00, A01 |
| Đại học Công nghệ Thông tin (UIT) | TP.HCM | A00, A01 |
Vận dụng 2 trang 164
Đề bài: Ở tỉnh/thành phố nơi em cư trú có Trung tâm dạy nghề phát triển phần mềm nào không? Liệt kê một vài khoá học tiêu biểu mà họ cung cấp. Chia sẻ thông tin em tìm hiểu được với các bạn.
Lời giải:
Câu này yêu cầu em tự tìm hiểu tại địa phương. Một số trung tâm dạy nghề lập trình phổ biến:
- CodeGym, Aptech, NIIT (có nhiều chi nhánh trên cả nước).
- FPT Polytechnic, FPT Aptech.
- Các trung tâm địa phương tại Hà Nội, TP.HCM, Đà Nẵng,…
Các khoá học tiêu biểu thường gặp:
- Lập trình Web (Front-end: HTML/CSS/JavaScript; Back-end: Node.js, PHP, Java).
- Lập trình ứng dụng di động (Android, iOS).
- Lập trình Python, lập trình Java.
- Kiểm thử phần mềm (Tester).
- Trí tuệ nhân tạo, máy học (AI/ML).Vận dụng 3 trang 164
Đề bài: Ở tỉnh/thành phố nơi em cư trú có doanh nghiệp nào chuyên về phát triển phần mềm không? Họ có cung cấp các chương trình đào tạo cho người muốn trở thành người phát triển phần mềm của công ty hay không?
Lời giải:
Câu này cũng cần em tự tìm hiểu theo địa phương. Một số doanh nghiệp lớn về phát triển phần mềm:
- FPT Software (Hà Nội, Đà Nẵng, TP.HCM, Quy Nhơn,…).
- Viettel Software, VNPT IT, CMC, MISA, NashTech, KMS Technology,…
- Các startup, công ty nhỏ trong lĩnh vực CNTT.
Các chương trình đào tạo mà các công ty thường cung cấp:
- Chương trình thực tập (Internship) cho sinh viên năm cuối.
- Đào tạo nội bộ (Fresher Program) cho sinh viên mới ra trường.
- Các khoá đào tạo công nghệ ngắn hạn (vd: FPT Software Academy).
- Đào tạo theo dự án thực tế, có lương + có chứng chỉ.

Thầy Phạm Thành Danh
(Người kiểm duyệt, ra đề)
Chức vụ: Trưởng ban biên soạn môn Tin Học THPT
Trình độ: Cử nhân Sư phạm Tin học, Chứng chỉ hạng II, Chứng chỉ Tin học, Ngoại ngữ B1
Kinh nghiệm: 8+ năm kinh nghiệm tại Trường THPT Thuận Hóa
