kế hoạch học tập môn "Công nghệ phần mềm", được xây dựng theo hướng hấp dẫn, khoa học và thực tiễn, phù hợp với sinh viên ngành công nghệ thông tin, kỹ thuật máy tính và các ngành liên quan.
Trong thế giới hiện đại, phần mềm không chỉ là công cụ mà còn là hạ tầng điều hành của toàn bộ xã hội số – từ ứng dụng điện thoại, hệ thống ngân hàng, y tế đến điều khiển vệ tinh. Môn học "Công nghệ phần mềm" trang bị cho sinh viên tư duy hệ thống và kỹ năng toàn diện để thiết kế, phát triển, kiểm thử và bảo trì phần mềm quy mô lớn, chất lượng cao.
Không giống các môn lập trình đơn lẻ, môn này hướng đến quy trình phát triển phần mềm một cách bài bản, có tổ chức và chú trọng làm việc nhóm – giúp sinh viên làm quen với môi trường làm việc chuyên nghiệp như trong doanh nghiệp công nghệ thực thụ.
Hiểu quy trình phát triển phần mềm hiện đại (Software Development Life Cycle – SDLC): từ yêu cầu, phân tích, thiết kế, cài đặt, kiểm thử đến bảo trì.
Nắm vững các mô hình phát triển phần mềm: Waterfall, Agile, Scrum, Spiral...
Sử dụng các kỹ thuật phân tích và thiết kế hệ thống: UML, đặc tả chức năng, sơ đồ lớp, luồng dữ liệu...
Quản lý dự án phần mềm: Lập kế hoạch, phân chia công việc, quản lý tiến độ, rủi ro và chi phí.
Làm việc nhóm hiệu quả: Giao tiếp, phối hợp và xử lý xung đột trong nhóm phát triển.
Sử dụng công cụ hỗ trợ phát triển phần mềm: Git, Jira, Trello, IDE, kiểm thử tự động...
Hoàn thành một dự án phần mềm mẫu theo nhóm: Làm sản phẩm có thể triển khai thực tế.
Trước khi học môn này, sinh viên cần có các nền tảng sau:
Lập trình hướng đối tượng (OOP): Để thiết kế phần mềm có cấu trúc rõ ràng và dễ bảo trì.
Cơ sở dữ liệu: Hiểu cách thiết kế, tổ chức dữ liệu sẽ giúp triển khai phần mềm có chức năng lưu trữ.
Phân tích thiết kế hệ thống (nếu có): Giúp dễ tiếp cận phần mô hình hóa và tài liệu hóa hệ thống.
Kỹ năng làm việc nhóm cơ bản: Hỗ trợ khi phân chia và thực hiện dự án nhóm trong môn học.
| Tuần | Nội dung học tập | Ghi chú |
|---|---|---|
| Tuần 1 | Giới thiệu Công nghệ phần mềm, vai trò và thách thức | Bài học định hướng ngành |
| Tuần 2 | Các mô hình phát triển phần mềm: Waterfall, V-Model, Agile, Spiral... | So sánh, phân tích ưu nhược |
| Tuần 3 | Phân tích yêu cầu phần mềm – Kỹ thuật phỏng vấn, use-case | Thu thập và quản lý yêu cầu |
| Tuần 4 | Mô hình hóa phần mềm với UML (sơ đồ lớp, trình tự, trạng thái...) | Dùng công cụ như StarUML, draw.io |
| Tuần 5 | Thiết kế kiến trúc phần mềm – Pattern, module, component | Áp dụng nguyên lý SOLID |
| Tuần 6 | Quản lý cấu hình phần mềm và hệ thống version control (Git) | Thực hành GitHub, GitLab |
| Tuần 7 | Giới thiệu kiểm thử phần mềm – Kiểm thử đơn vị, tích hợp, hệ thống | Áp dụng test case, mock data |
| Tuần 8 | Quản lý dự án phần mềm – Lập kế hoạch, chi phí, rủi ro | Làm quen với Gantt chart |
| Tuần 9 | Agile, Scrum trong thực tế – Sprint, Daily meeting, Scrum board | Mô phỏng nhóm Scrum |
| Tuần 10 | Phân chia nhóm, lên ý tưởng và yêu cầu dự án phần mềm nhóm | Bắt đầu triển khai dự án nhóm |
| Tuần 11 | Thiết kế mô hình hệ thống cho sản phẩm nhóm | Giao nộp sơ đồ UML, cấu trúc thư mục |
| Tuần 12 | Cài đặt, lập trình và kiểm thử từng phần mềm nhóm | Làm việc nhóm, chia vai trò rõ ràng |
| Tuần 13 | Quản lý tiến độ và demo thử sản phẩm | Giảng viên kiểm tra giữa kỳ |
| Tuần 14 | Hoàn thiện tài liệu dự án: yêu cầu, thiết kế, kiểm thử, hướng dẫn sử dụng | Nộp tài liệu tổng hợp |
| Tuần 15 | Báo cáo và trình bày sản phẩm nhóm | Đánh giá cuối kỳ |
Thực hiện được các dự án phần mềm cá nhân hoặc theo nhóm một cách chuyên nghiệp và có tổ chức.
Gia nhập nhóm phát triển phần mềm trong doanh nghiệp: Biết cách làm việc nhóm, viết tài liệu, kiểm thử phần mềm.
Là tiền đề để học sâu về kiểm thử, DevOps hoặc quản lý dự án.
Áp dụng vào đồ án tốt nghiệp hoặc khởi nghiệp công nghệ: Từ ý tưởng đến sản phẩm hoàn thiện.
Môn học Công nghệ phần mềm không dạy bạn cách "code nhanh", mà dạy bạn cách tạo ra phần mềm chất lượng, ổn định, có thể phát triển lâu dài, giống như cách các công ty công nghệ lớn đang làm. Đây là nền tảng để bước vào thế giới phần mềm chuyên nghiệp và phát triển bền vững. Bạn đã sẵn sàng viết nên sản phẩm đầu tay của mình chưa?