SDLC ko phải là một trong khái niệm new và sẽ rất thân thuộc với phần đông ai thao tác làm việc trong lĩnh vực phát triển phần mềm. SDLC đề cập đến một cách thức luận (methodology) với những quy trình được xác định rõ ràng để tạo thành phần mềm chất lượng cao.

Bạn đang xem: Sdlc là gì

Vậy đúng chuẩn SDLC là gì? bọn họ hãy cùng tìm hiểu về SDLC, các quy mô phổ biến và những kỹ năng quan trọng để làm việc xuất sắc với các quy mô trong nội dung bài viết này.


SDLC là gì?

SDLC là tự viết tắt của Software Development Life Cycle (vòng đời cải cách và phát triển phần mềm). SDLC là một quy trình phạt triển phần mềm với chất lượng tối đa và chi tiêu thấp tuyệt nhất trong thời gian ngắn nhất gồm thể.

SDLC là chia bé dại quy trình phát triển phần mềm thành các giai đoạn, từ ý tưởng phát minh đến triển khai. SDLC được sử dụng sẽ giúp các nhóm cải tiến và phát triển tối ưu hóa quy trình làm việc của họ và khiến cho nó có thể mở rộng mà lại vẫn đảm bảo an toàn chất lượng.

SDLC bao gồm bảy tiến độ chính của vòng đời vạc triển ứng dụng hiện đại. Các quy mô SDLC phổ biến bao hàm mô hình thác nước (waterfall model), quy mô xoắn ốc (spiral model), quy mô Agile cùng một số quy mô khác mà chúng ta cũng có thể tìm thấy trong phần 2 của bài bác viết.

*
Image credit: Javatpoint.com

Lợi ích của SDLC

SDLC hỗ trợ một chiếc nhìn tổng thể và toàn diện về toàn cục hệ thống, tài nguyên, dòng thời hạn và kim chỉ nam của một dự án phầm mềm. Các nhà phân phát triển phần mềm hiểu họ yêu cầu xây dựng phần nhiều gì và tại sao. Các tại sao chính tại sao SDLC là quan trọng để cải cách và phát triển một hệ thống phần mềm:

Sử dụng SDLC có thể dễ dàng giám sát và đo lường sự phát triển và giá cả của khối hệ thống đã phân phát triển.SDLC bức tốc kiểm rà và đo lường và thống kê các dự án đặc trưng hoặc phức tạp.SDLC bao gồm các bước cụ thể và toàn diện.Các reviews thiết kế giúp bảo vệ độ tin cậy và chất lượng của phương án đã phân phát triển.SDLC cung ứng tài liệu mở rộng về hệ thống.Nếu mtv chính của dự án công trình rời đi, mtv mới hoàn toàn có thể tiếp tục nơi họ vẫn dừng lại.SDLC giúp tấn công giá, lập định kỳ và cầu tính các sản được triển khai.SDLC đảm bảo an toàn bàn giao phần mềm đúng đắn và kịp thời cho khách hàng.Cung cấp cho framework cho một tập đúng theo các vận động và sản phẩm tiêu chuẩnCải thiện tốc độ cải tiến và phát triển phần mềm

Các quy trình SDLC

Số lượng quá trình SDLC có thể chuyển đổi tùy theo các công ty, nhưng hầu hết các SDLC bao hàm sáu hoặc bảy giai đoạn.

1. Thu thập và phân tích thông tin (Requirement Analysis)

Giai đoạn này là đi kiếm câu trả lời cho câu hỏi “Các sự việc hiện tại là gì?”.

Giai đoại thứ nhất của SDLC là về việc ra quyết định những gì các bạn sẽ phát triển. Có thể nói quy trình này là đặc trưng bật nhất của cả các bước SDLC. Nếu như khách hàng đang cải tiến và phát triển cho khách hàng hàng, tiến trình này hoàn toàn có thể sẽ bao gồm các cuộc họp để trao đổi về nhu cầu, kim chỉ nam và hy vọng của họ. Nếu bạn đang phạt triển 1 phần mềm nội bộ, các việc tất cả thể bao hàm phân tích thị phần hoặc phân tích kẻ thù cạnh tranh, phỏng vấn người tiêu dùng và kiểm tra những mục tiêu của chúng ta bạn. Ở cấp cao, bạn nên biết những vụ việc bạn đang cố gắng giải quyết và bí quyết giải quyết.

Kết trái của tiến độ Requirement Analysis:

Kết quả của quy trình này là tài liệu đặc tả yêu thương cầu ứng dụng (Software Requirements Specification giỏi SRS), vào vai trò là điểm mở đầu cho giai đoạn cải cách và phát triển tiếp theo. Điều quan trọng cần xem xét là tiến độ đặc tả và phân tích yêu ước chỉ triệu tập vào gần như gì hệ thống phần mềm nên làm cho chứ chưa hẳn vào phương pháp nó nên được thực hiện; nghĩa là, các chi tiết triển khai không được phép ảnh hưởng đến giai đoạn này. Yêu ước phần mềm có thể được chia thành hai loại: yêu thương cầu tác dụng và yêu mong phi chức năng, và SRS cần bao hàm cả hai loại yêu cầu này.

*

Giai đoạn này là đi kiếm câu trả lời cho câu hỏi “Chúng ta mong gì? “

Thông thường, chúng ta thực hiện quá trình lập kế hoạch sau khoản thời gian phân tích yêu cầu sau khi bạn đã sở hữu đầy đủ tài liệu và chọn hồ hết gì phải phát triển. Trong tiến trình SDLC vật dụng hai này chúng ta cần xác minh một số yếu ớt tố:

Ai sẽ lãnh đạo dự ánKết quả đầu ra output hoặc triển khai dự kiếnSố lượng những developer quan trọng cho dự ánDự án sẽ mất khoảng chừng bao nhiêu thời gianNgân sách cần thiết cho dự ánMọi lưu ý đến về dự án cụ thể khác

Kết trái của tiến độ lập kế hoạch:

Kết quả áp ra output của quy trình tiến độ lập kế hoạch gồm những: kế hoạch dự án, thời gian thực hiện đưa ra tiết, ước tính ngân sách và các yêu cầu download sắm. Các tài liệu trong quy trình này thường xuyên bao gồm:

Project Management PlanProject Charter (điều lệ) document

3. Kiến thiết (Designing)

Giai đoạn này họ đi tra cứu câu trả lời cho thắc mắc “Làm cụ nào chúng xây được những gì chúng ta muốn? “

Giai đoạn thứ ba của SDLC triệu tập vào việc xây dựng phần mềm mà các bạn sẽ phát triển, bao gồm:

Kiến trúc: bạn sử dụng ngữ điệu lập trình nào nhằm xây dựng sản phẩm của mình? Các cách thức tốt duy nhất trong ngành mà nhiều người đang xây dựng là gì? Cũng bao hàm các câu hỏi liên quan đến việc sử dụng các mẫu.Giao diện bạn dùng: Bạn mong muốn đợi người tiêu dùng tiềm năng sẽ can dự với sản phẩm như thế nào? Làm thế nào các bạn sẽ làm mang đến điều đó dễ ợt hơn cho họ?Nền tảng: thành phầm của bạn sẽ chạy trên nền tảng gì? Trong tiến độ này, một nhà cải cách và phát triển trò đùa sẽ từ hỏi họ vẫn xuất phiên bản bảng điều khiển và tinh chỉnh nào, trong khi một nhà phát triển thiết bị di động sẽ quyết định xem họ sẽ khởi tạo ứng dụng đến Apple, apk hay cả hai.Lập trình: bạn đã tra cứu ra ngữ điệu lập trình, cơ mà bây giờ các bạn sẽ làm núm nào để vượt qua những thách thức lập trình trong quá trình phát triển?Liên kết: thành phầm của các bạn sẽ phải giao tiếp với hầu như nội dung nào? Một máy chủ trung tâm? những ứng dụng khác? Làm thay nào vấn đề đó sẽ xảy ra?Bảo mật: bạn sẽ bảo vệ sản phẩm của bản thân mình như nắm nào trước những nguy cơ tiềm ẩn tiềm ẩn? các bạn có đề nghị tuân theo những yêu cầu bảo mật thông tin nhất định không? bạn có được truy cập vào thông tin người dùng nhạy cảm yêu cầu được đảm bảo không?

Việc xây đắp này tương tự như việc tổng hợp các phương án loài kiến ​​trúc và thi công nội thất của một ngôi nhà mới trước khi chúng ta xây dựng nó.

Kết quả của giai đoạn thiết kế:

Vào cuối quy trình này, tài liệu xây dựng (Software thiết kế Document – SDD) được hoàn thành. SDD sẽ được xem xét bởi tất cả các bên liên quan (stackholders) và dựa trên những thông số khác biệt như đánh giá rủi ro, tính lâu dài hơn của phầm mềm, các mô-đun thiết kế, tinh giảm về giá thành và thời gian, phương pháp thiết kế rất tốt được lựa chọn cho sản phẩm…

*
Ví dụ về ngôn từ tài liệu SDD

4. Cải cách và phát triển (Development)

Đã cho lúc “Tạo gần như gì chúng ta muốn”.

Giai đoạn trở nên tân tiến là giai đoạn mà cácdeveloper thực thụ viết code với xây dựng vận dụng theo các tài liệu kiến tạo và các thông số kỹ thuật kỹ thuật đang vạch ra, sử dụng ngôn từ lập trình cùng framework đã có được chọn. Những developer đang tuân theo mọi cơ chế viết code của chúng ta và sử dụng các công cụ không giống nhau như trình biên dịch, trình gỡ lỗi với trình thông dịch. Các nhiệm vụ được chia thành các đơn vị chức năng hoặc mô-đun với được phân bổ cho những nhà cách tân và phát triển cụ thể.

Kết trái của quy trình tiến độ phát triển: các triệu chứng năng của ứng dụng mà chúng ta cần xây dựng

5. Kiểm demo (Testing)

Liệu “Chúng ta đạt được những gì chúng ta muốn chưa? “

Khi code hoàn tất, quy trình kiểm tra bắt đầu và các mô-đun được reviews và khám nghiệm để tránh bất kỳ lỗi nào. ứng dụng đã xây dựng được xem như xét trọn vẹn trong quy trình này và bất kỳ vấn đề làm sao được tra cứu thấy phần lớn được giao cho các developers sửa chữa, cụ đổi.

Kiểm tra lại và soát sổ hồi quy được tiến hành cho tới khi phần mềm đúng như kế hoạch của người sử dụng. Tester thường tham khảo tài liệu SRS để bảo vệ phần mềm tương xứng với tiêu chuẩn chỉnh của người tiêu dùng hay yêu cầu.

Kết quả của quá trình kiểm thử:

Sản phẩm hoàn thành hơn sau những lỗi được chỉnh sửa hoặc những yêu cầu còn thiếu được phạt triểnTesting reportUser Acceptant Test

6. Thực hiện (Deployment)

“Hãy bước đầu sử dụng phần lớn gì bọn họ đã xây dựng”

Ở tiến độ này, kim chỉ nam là triển khai ứng dụng tới môi trường production để người dùng có thể ban đầu sử dụng. Tuy nhiên, nhiều doanh nghiệp chọn triển khai phần mềm qua các môi trường triển khai khác biệt như môi trường thiên nhiên thử nghiệm (testing) hoặc môi trường thiên nhiên dàn dựng (staging).

Điều này mang đến phép ngẫu nhiên bên tương quan nào hoàn toàn có thể trải nghiệm ứng dụng một cách bình yên trước khi gửi ra thực hiện chính thức. Sát bên đó, điều này có thể chấp nhận được mọi không đúng sót ở đầu cuối được phân phát hiện cùng chỉnh sửa trước khi phát hành.

Kết trái của giai đoạn triển khai:

Giai đoạn Ttriển khai xong xuôi khi ứng dụng đã được gửi vào chuyển động thành công với thỏa mãn toàn bộ các yêu cầu marketing và kỹ thuật thông qua việc lưu ý và cam kết tên của các bên liên quan trong Implementation Report (báo cáo triển khai), và Maintenance Manual (Sổ tay Bảo trì) đã có giao đến mhóm duy trì phần mềm, Training Manual (tài liệu đào tạo) đã có được chuyển cho trainer / user cùng Tài liệu hướng dẫn áp dụng đã được chuyển đến bạn sử dụng.

7. Bảo trì

“Hãy duy trì cho thành phầm của họ ổn định”

Sau khi thực thi một thành phầm trên môi trường production, việc duy trì sản phẩm đã bắt đầu. Trong quy trình này ngẫu nhiên vấn đề nào xuất hiện cần được khắc phục hoặc bất kỳ cải tiến như thế nào cần thực hiện sẽ được reviews và triển khai. Trong một số trong những trường hợp, quy trình SDLC có thể lặp lại từ đầu (phát triển tính năng mới, đổi khác lớn vào phần mềm..)

Kết quả của tiến độ bảo trì:

Một số kết quả của giai đoạn duy trì là hệ thống vận động một cách tác dụng nhất, ứng dụng được cập nhật khi cần thiết và được tăng cấp khi gồm yêu cầu.

Các phương pháp SDLC

Có nhiều mô hình (hay phương pháp) vòng đời cách tân và phát triển phần mềm không giống nhau được vận dụng trong thừa trình cách tân và phát triển phần mềm. Mỗi mô hình quy trình theo đúng một chuỗi các bước duy nhất cho kiểu của nó để bảo đảm an toàn sự thành công xuất sắc trong thừa trình cách tân và phát triển phần mềm. Họ hãy cùng điểm sang một số phương pháp phổ biến:

Mô hình thác nước (Waterfall)

Mô hình thác nước là mô hình lâu lăm nhất trong toàn bộ các phương thức SDLC. Nó con đường tính và dễ dàng và đơn giản và yêu thương cầu những nhóm phạt triển xong xuôi một tiến trình của dự án trước khi đưa sang giai đoạn tiếp theo.

Mỗi quá trình có một chiến lược dự án lẻ tẻ và lấy thông tin từ quy trình tiến độ trước để tránh những vấn đề giống như (nếu gặp phải). Mặc dù nhiên, nó dễ bị trì hoãn và hoàn toàn có thể dẫn đến những vấn đề phệ phát sinh cho những nhóm cải tiến và phát triển dù chỉ với những chi tiết nhỏ dại chưa triển khai xong trong một quá trình nào đó.

*
Image credit: plutora.com

Phương pháp Agile

Phương pháp agile ưu tiên các chu kỳ phân phát hành nhanh và liên tục, sử dụng các thay đổi nhỏ dại nhưng ngày càng tăng giữa các phiên bản phát hành. Điều này dẫn đến những lần lặp lại và các thử nghiệm hơn so cùng với các mô hình khác. Về khía cạnh lý thuyết, quy mô này giúp các nhóm giải quyết các vấn đề bé dại khi bọn chúng phát sinh gắng vì loại trừ chúng cho đến các giai đoạn tinh vi hơn của một dự án.

Hạn chế của mô hình này là quá chú ý vào can hệ với khách hàng hàng có thể dẫn dự án đi sai phía trong một vài trường hợp.

*
Image credite: softwaretestinghelp.com

Phương pháp tái diễn (Iterative)

Phương pháp lặp đi lặp lại liên quan đến việc hối hả tạo ra một phiên phiên bản của ứng dụng và sau đó cách tân nó lặp đi lặp lại trong những phiên bạn dạng tiếp theo. Chúng ta cũng có thể phát triển các phiên bạn dạng trước khi chúng ta nhận được sản phẩm hoàn thiện. Điều đó làm cho cho phương pháp này hơi khó khăn để vén ra trong SDLC, tuy vậy nó vẫn là 1 trong lựa lựa chọn ưu tiên cho các nhóm nhỏ, cải cách và phát triển nhanh.

Phương pháp này có vẻ tương tự như Agile, nhưng nó tất cả một vài ba điểm không giống biệt. Đầu tiên, phương pháp lặp lại không liên quan đến khách hàng bên phía ngoài trong những giai đoạn không giống nhau. Không tính ra, phạm vi của những lần lặp lại là cụ định, giống như như những yêu cầu trong mô hình thác nước.

*
Image credit: plutora.com

Phương pháp hình chữ V (V-shaped)

Phương pháp luận này tương tự như như quy mô thác nước; nó biểu hiện sự dựa vào của từng tiến trình trong SDLC của bạn. Sự khác hoàn toàn chính là bọn chúng được màn biểu diễn dưới mẫu thiết kế chữ V chứ chưa hẳn là quy mô tuyến tính. Mọi quy trình tiến độ dẫn cho việc xúc tiến – triển khai – sản phẩm ứng dụng mà chúng ta đang thao tác làm việc dẫn mang lại nhánh thứ nhất của V. Triển khai là một giai đoạn phẳng ngắn sinh sống phía dưới, trước lúc dẫn cho kiểm tra, xác minh và duy trì liên tục bên trên nhánh bên đó của chữ V.

Phương pháp luận này chuyển động tốt cho các dự án yên cầu nhiều sự kiểm soát và điều hành và có những yêu mong được xác định ví dụ và không thay đổi.

*
Image credit: plutora.com

Phương pháp xoắn ốc (spiral)

Phương pháp tiếp cận Xoắn ốc (spiral) rất có thể là phương thức phức tạp nhất trong những các phương thức SDLC tuy thế cũng là cách thức linh hoạt nhất. Hãy tưởng tượng một hình xoắn ốc lặp lại trong những số đó mỗi vòng lặp thay mặt cho một quy trình của dự án công trình của bạn. Trong phương thức xoắn ốc, chưa hẳn mọi dự án đều có số vòng lặp tương đương nhau. Khi ban đầu mỗi vòng lặp hoặc giai đoạn, nhóm buộc phải xem xét lại các phương châm và rủi ro của dự án, trở nên tân tiến phiên bản tiếp theo của sản phẩm, tiếp đến xem xét và lập chiến lược cho quy trình tiếp theo. Phương thức xoắn ốc thậm chí rất có thể xác định rằng cách tiếp cận Waterfall hoặc Agile là quan trọng cho các vòng lặp nỗ lực thể.

Bởi bởi vì nó khôn xiết năng cồn và linh hoạt, việc phối hợp Spiral vào một trong những SDLC hoàn toàn có thể là một thách thức. Bạn phải biết rõ ai phụ trách từng dự án, cách khẳng định số lượng vòng lặp và giai đoạn nào cần được lặp lại.

*
Image: techreceptives.com

Phương pháp Big Bang

Mô hình Big Bang cực kỳ linh hoạt và không theo đúng một các bước hoặc thủ tục nghiêm ngặt. Nó thậm chí là còn không tồn tại kế hoạch đưa ra tiết. Big Bang yếu đuối được áp dụng để cách tân và phát triển các ý tưởng phát minh rộng khi người sử dụng hoặc khách hàng không chắc chắn những gì chúng ta muốn.

Đầu ra của phương pháp này rất có thể gần hơn hoặc xa so với đa số gì người tiêu dùng mong muốn. quy mô này chỉ được sử dụng cho các dự án nhỏ. Không có đội phân tách và không có thử nghiệm chấp thuận nào được thực hiện, cùng đây có thể là một tại sao dẫn đến việc thất bại của dự án.

DevOps

DevOps là phương pháp mới nhất. DevOps mang lại sự phối hợp giữa cải cách và phát triển (Dev) và quản lý (Ops) ở tất cả các quy trình tiến độ của các bước SDLC. Sự hợp tác và ký kết và chia sẻ trách nhiệm này giúp bảo đảm rằng sản phẩm được phân phát triển quản lý và vận hành tốt trong quá trình phát triển.

Trong quy mô DevOps, các nhóm Nhà phát triển và vận hành làm việc cùng nhau ngặt nghèo để đẩy nhanh sự đổi mới và thực hiện các chức năng và sản phẩm phần mềm rất tốt hơn, an toàn và đáng tin cậy hơn. Update cho các sản phẩm là nhỏ tuổi nhưng thường xuyên. Kỷ luật, phản hồi liên tiếp và cải tiến quy trình cũng như tự động hóa những quy trình phạt triển bằng tay thủ công là tất cả các điểm nổi bật của quy mô DevOps.

Các developer phải phát triển kỹ năng gì để triển khai việc tốt với SDLC?

Các phương thức SDLC có một điểm kiểu như nhau: làm việc theo nhóm. Để làm việc xuất sắc với bất kỳ mô hình SDLC nào, các bạn có các kỹ năng mềm sau:

Giao tiếp – các nhà cải cách và phát triển phải tiếp xúc với đồng minh và các bên tương quan mọi lúc. Họ cần có kỹ năng tiếp xúc bằng những phương thức khác nhau.Hợp tác – có tác dụng việc đơn côi không chuyển động trong một dự án ứng dụng lớn. Từng thành viên trong đội phải có chức năng đồng cỗ hóa những nỗ lực của họ với các đồng nghiệp của họ.Tính linh hoạt – Các phương thức luận phân phát triển ứng dụng như Agile và DevOps đều hướng đến khả năng ưng ý ứng với linh hoạt. Các bạn phải có chức năng xoay sở với bất kỳ thay đổi bất ngờ đột ngột nào về hướng của dự án trong những khi vẫn triệu tập vào mục tiêu cuối cùng.Chú ý đến chi tiết – Lỗi của developer hoàn toàn có thể làm tăng thời gian của vòng đời cải cách và phát triển phần mềm. Thậm chí tệ hơn, một không đúng sót hoặc sự đo lường và thống kê quá mức có thể dẫn cho sản phẩm sau cùng không ổn định định.

Xem thêm: "Hold" Là Gì? Nghĩa Của Từ Hold Trong Tiếng Việt Nghĩa Của Từ Hold

Ý thức bảo mật – cùng với sự gia tăng của tù túng mạng, hầu hết các nhóm ứng dụng hiện áp dụng cách tiếp cận ưu tiên bảo mật để cải cách và phát triển phần mềm. Mọi người trong nhóm phải xem xét về bảo mật và quyền riêng rẽ tư dữ liệu khi triển khai ngay cả những chuyển đổi có vẻ nhỏ nhất.

Nếu bạn có sự kết hợp tương xứng giữa kỹ năng kỹ thuật và năng lực mềm, chúng ta cũng có thể phát triển khỏe mạnh trong một môi trường thiên nhiên với những mồ hình SDLC phù hợp