SDLC là viết tắt của Software Development Life Cycle hay còn gọi là Application Development life-cycle, là một quy trình có hệ thống để xây dựng phần mềm nhằm đảm bảo chất lượng và tính đúng đắn của phần mềm được xây dựng. Quy trình SDLC nhằm mục đích sản xuất phần mềm chất lượng cao đáp ứng mong đợi của khách hàng. Việc phát triển hệ thống phải được hoàn thành trong khung thời gian và chi phí đã xác định trước. SDLC bao gồm một kế hoạch chi tiết giải thích cách lập kế hoạch, xây dựng và duy trì phần mềm cụ thể. Mỗi giai đoạn của Vòng đời SDLC đều có quy trình riêng và các sản phẩm cung cấp cho giai đoạn tiếp theo. Show
Tại sao lại là SDLC?Dưới đây là những lý do chính tại sao SDLC lại quan trọng đối với việc phát triển hệ thống phần mềm.
Các giai đoạn của một SDLCQuá trình SDLC được chia thành các bước như bên dưới:
Tiếp theo, hày cùng tìm hiểu về chi tiết về từng Giai đoạn của SDLC. Giai đoạn 1: Thu thập và phân tích yêu cầu“Yêu cầu” là giai đoạn đầu tiên trong quá trình SDLC. Nó được thực hiện bởi các thành viên trong nhóm cấp cao với đầu vào từ tất cả các bên liên quan và các chuyên gia lĩnh vực trong ngành. Lập kế hoạch cho các yêu cầu đảm bảo chất lượng và nhận biết các rủi ro liên quan cũng được thực hiện ở giai đoạn này. Giai đoạn này cho ta một bức tranh rõ ràng hơn về phạm vi của toàn bộ dự án và các vấn đề, cơ hội và chỉ thị được dự đoán trước để kích hoạt dự án. Giai đoạn thu thập yêu cầu cần các team lên yêu cầu chi tiết và chính xác. Điều này giúp các công ty chốt được timeline cần thiết để hoàn thành các công việc của hệ thống đó. Giai đoạn 2: Nghiên cứu khả thiKhi giai đoạn phân tích yêu cầu được hoàn thành, bước SDLC tiếp theo là xác định và lập hồ sơ các nhu cầu phần mềm. Quá trình này được thực hiện với sự trợ giúp của tài liệu 'Đặc điểm kỹ thuật yêu cầu phần mềm' còn được gọi là tài liệu 'SRS' (Software Requirement Specification). Nó bao gồm mọi thứ cần được thiết kế và phát triển trong vòng đời của dự án. Chủ yếu có năm loại kiểm tra tính khả thi:
Giai đoạn 3: Thiết kếTrong giai đoạn thứ ba này, hệ thống và tài liệu thiết kế phần mềm được chuẩn bị theo tài liệu đặc tả yêu cầu, giúp xác định kiến trúc hệ thống tổng thể. Giai đoạn thiết kế này đóng vai trò là đầu vào cho giai đoạn tiếp theo của mô hình. Có hai loại tài liệu thiết kế được phát triển trong giai đoạn này: Thiết kế cấp cao (High-Level Design - HLD)
Thiết kế cấp thấp (Low-Level Design - LLD)
Giai đoạn 4: Mã hóa (Coding)Khi giai đoạn thiết kế hệ thống kết thúc, giai đoạn tiếp theo là mã hóa. Trong giai đoạn này, các nhà phát triển bắt đầu xây dựng toàn bộ hệ thống bằng cách viết mã sử dụng ngôn ngữ lập trình đã chọn. Trong giai đoạn mã hóa, các nhiệm vụ được chia thành các đơn vị hoặc mô-đun và được giao cho các nhà phát triển khác nhau. Đây là giai đoạn dài nhất của quy trình SDLC. Trong giai đoạn này, Nhà phát triển cần tuân theo một số nguyên tắc mã hóa được xác định trước. Họ cũng cần sử dụng các công cụ lập trình như trình biên dịch, trình thông dịch, trình gỡ lỗi để tạo và triển khai mã. Giai đoạn 5: Kiểm thử (Testing)Sau khi phần mềm hoàn tất và được triển khai trong môi trường thử nghiệm. Nhóm kiểm thử bắt đầu kiểm tra chức năng của toàn bộ hệ thống để xác minh rằng toàn bộ ứng dụng hoạt động theo yêu cầu của khách hàng. Trong giai đoạn này, QA và nhóm kiểm tra có thể tìm thấy một số lỗi / khiếm khuyết và sẽ thông báo cho nhà phát triển. Nhóm phát triển sửa lỗi và gửi lại QA để kiểm tra lại. Quá trình này tiếp tục cho đến khi phần mềm không có lỗi, ổn định và hoạt động theo nhu cầu kinh doanh của hệ thống đó. Giai đoạn 6: Cài đặt / Triển khaiKhi giai đoạn kiểm thử phần mềm kết thúc và không còn lỗi hoặc lỗi nào trong hệ thống thì quá trình triển khai cuối cùng sẽ bắt đầu. Dựa trên phản hồi do người quản lý dự án đưa ra, phần mềm cuối cùng được phát hành và kiểm tra các vấn đề triển khai nếu có. Giai đoạn 7: Bảo trìKhi hệ thống được triển khai và khách hàng bắt đầu sử dụng hệ thống đã phát triển, 3 hoạt động sau sẽ diễn ra
Trọng tâm chính của giai đoạn SDLC này là đảm bảo rằng các nhu cầu đó tiếp tục được đáp ứng và hệ thống tiếp tục hoạt động theo thông số kỹ thuật được đề cập trong giai đoạn đầu tiên. Các mô hình SDLC phổ biếnDưới đây là một số mô hình quan trọng nhất của SDLC: Waterfall model - Mô hình thác nước trong SDLCWaterfall là một mô hình SDLC phổ biến rộng rãi. Theo cách tiếp cận này, toàn bộ quá trình phát triển phần mềm được chia thành các giai đoạn khác nhau của SDLC. Trong mô hình SDLC này, kết quả của một giai đoạn đóng vai trò là đầu vào cho giai đoạn tiếp theo. Mô hình SDLC này đòi hỏi nhiều tài liệu, với các giai đoạn trước đó ghi lại những gì cần được thực hiện trong các giai đoạn tiếp theo. Incremental Model - Mô hình gia tăng trong SDLCMô hình gia tăng không phải là một mô hình riêng biệt. Về bản chất nó là một chuỗi các chu kỳ thác nước. Các yêu cầu được chia thành các nhóm khi bắt đầu dự án. Đối với mỗi nhóm, mô hình SDLC được tuân theo để phát triển phần mềm. Quy trình vòng đời SDLC được lặp lại, với mỗi bản phát hành sẽ bổ sung thêm nhiều chức năng cho đến khi đáp ứng tất cả các yêu cầu. Trong phương pháp này, mọi chu kỳ hoạt động như giai đoạn bảo trì cho bản phát hành phần mềm trước đó. Việc sửa đổi đối với mô hình gia tăng cho phép các chu kỳ phát triển chồng chéo lên nhau. Sau đó chu kỳ tiếp theo có thể bắt đầu trước khi chu kỳ trước đó hoàn thành. V-Model trong SDLCTrong loại thử nghiệm và phát triển mô hình SDLC này, các giai đoạn được lập kế hoạch song song. Vì vậy, các giai đoạn xác minh của SDLC ở một bên và giai đoạn xác nhận ở bên còn lại. V-Model tham gia theo giai đoạn Mã hóa. Mô hình Agile trong SDLCPhương pháp Agile là một phương pháp thực hành thúc đẩy sự tương tác liên tục giữa phát triển và kiểm tra trong quá trình SDLC của bất kỳ dự án nào. Trong phương pháp Agile, toàn bộ dự án được chia thành các bản xây dựng nhỏ tăng dần. Tất cả các bản dựng này đều được cung cấp theo nhiều lần lặp lại và mỗi lần lặp lại kéo dài từ một đến ba tuần. Spiral - Mô hình xoắn ốcMô hình xoắn ốc là một mô hình quá trình theo hướng rủi ro (risk-driven process). Mô hình thử nghiệm SDLC này giúp nhóm áp dụng các yếu tố của một hoặc nhiều mô hình quy trình như thác nước, tăng dần, thác nước, v.v. Mô hình này áp dụng các tính năng tốt nhất của mô hình tạo mẫu và mô hình thác nước. Phương pháp xoắn ốc là sự kết hợp giữa tạo mẫu nhanh và tính đồng thời trong các hoạt động thiết kế và phát triển. Big bang - Mô hình vụ nổ lớnMô hình vụ nổ lớn tập trung vào tất cả các loại tài nguyên trong phát triển phần mềm và mã hóa, không có hoặc có rất ít kế hoạch. Các yêu cầu được hiểu và thực hiện khi chúng đến. Mô hình này hoạt động tốt nhất cho các dự án nhỏ với nhóm phát triển quy mô nhỏ hơn đang làm việc cùng nhau. Nó cũng hữu ích cho các dự án phát triển phần mềm học thuật. Đây là một mô hình lý tưởng mà các yêu cầu không xác định hoặc ngày phát hành cuối cùng không được đưa ra. Tóm lược
Tổng hợp việc làm IT - Software trên VietnamWorks |