Nội dung tóm tắt
Tài liệu này trình bày tổng quan chi tiết về phân tích yêu cầu phần mềm (YCPM) và quy trình thiết kế, xây dựng phần mềm (TKXDPM). Nội dung bắt đầu với việc định nghĩa các khái niệm cơ bản trong công nghệ phần mềm như yêu cầu phần mềm, thiết kế, xây dựng, kiểm thử, bảo trì, quản lý cấu hình, quản trị công nghệ phần mềm, quy trình công nghệ phần mềm, công cụ, phương pháp và chất lượng phần mềm, thường trích dẫn các định nghĩa từ IEEE. Tài liệu cũng đi sâu vào các phương pháp tiếp cận thiết kế phần mềm như hướng quy trình, hướng dữ liệu và hướng kiến trúc. Một phần quan trọng khác là phân loại phần mềm theo ứng dụng (hệ thống, thời gian thực, quản lý, khoa học, nhúng, AI) và giới thiệu các quy trình phát triển phần mềm chính, bao gồm mô hình thác nước với các đặc điểm và hạn chế, mô hình phát triển tiến hóa, phát triển hướng tái sử dụng, mô hình xoắn ốc tập trung vào quản lý rủi ro, và mô hình lặp (Iterative Model) với các giai đoạn Inception, Elaboration, Construction, Transition cùng các lần lặp. Đặc biệt, tài liệu nhấn mạnh các lưu ý quan trọng về yêu cầu phần mềm, bao gồm định nghĩa của IEEE, tính hai mặt của yêu cầu (từ người dùng và nhà phát triển), sự cần thiết của văn bản hóa và sự tham gia của các bên liên quan. Các mức độ của yêu cầu (yêu cầu công việc, yêu cầu người dùng, yêu cầu chức năng) và các tài liệu tương ứng (tài liệu về khả năng, phạm vi; use case; đặc tả yêu cầu phần mềm - SRS) được phân tích. Cuối cùng, tài liệu đề cập đến các thuộc tính chất lượng của từng yêu cầu (hoàn thiện, chính xác, khả thi, cần thiết, ưu tiên, rõ ràng, kiểm tra được) và của tài liệu đặc tả yêu cầu phần mềm (hoàn thiện, phù hợp, sửa đổi được, theo dõi được), cùng với mô hình quy trình kỹ thuật yêu cầu phần mềm bao gồm phát triển yêu cầu (khai thác, phân tích, đặc tả, kiểm thử) và quản lý yêu cầu (xác định giới hạn, duyệt lại, quản lý thay đổi).