Tìm hiểu về SDLC – Software development Life cycle

Một trong những kiến thức cần thiết của một kỹ sư kiểm thử phần mềm chuyên nghiệp đó là hiểu biết và nắm rõ SDLC (Software Development Life-cycle/chu kỳ phát triển phần mềm), bởi vì kiểm thử phần mềm (software testing) là 1 phần và liên quan chặt chẽ, mật thiết đến SDLC.

Vòng đời phát triển phần mềm (SDLC – Software Development Life Cycle) là một quá trình theo sau cho một dự án phần mềm, trong một tổ chức phần mềm. Nó bao gồm một kế hoạch chi tiết mô tả làm thế nào để phát triển, duy trì, thay đổi hoặc nâng cấp phần mềm cụ thể.

Quy trình là một trong những yếu tố cực kỳ quan trọng đem lại sự thành công cho các nhà sản xuất phần mềm, nó giúp cho mọi thành viên trong dự án từ người cũ đến người mới, trong hay ngoài công ty đều có thể xử lý đồng bộ công việc tương ứng vị trí của mình thông qua cách thức chung của công ty, hay ít nhất ở cấp độ dự án.

Trong thực tế các công ty xây dựng và phát triển phần mềm tùy theo từng quy mô, hình thức hoạt động mà có thể điều chỉnh gộp tách các giai đoạn tùy theo nhu cầu thực tế của công ty đó. Tuy nhiên để tạo ra một sản phẩm phần mềm sẽ bao gồm các giai đoạn sau:

  1. Pha yêu cầu
  2. Pha đặc tả
  3. Pha thiết kế
  4. Pha lập trình
  5. Pha kiểm thử
  6. Pha triển khai và bảo trì

1. Pha yêu cầu

Ở pha này bộ phận phân tích yêu cầu sẽ đi gặp và trao đổi với khách hàng cũng như làm rõ các chức năng, các yêu cầu mà khách hàng mong muốn xây dựng trong phần mềm của mình. Trong thực tế khi ở pha này các đơn vị phần mềm sẽ có bộ câu hỏi chung dành cho các dự án cũng như câu hỏi riêng cho đặc thù của dự án cần làm.

Đây là pha quan trọng ảnh hưởng đến việc xây dựng và phát triển phần mềm trong thời gian tới do vậy đội ngũ phân tích yêu cầu thường là những người đã có nhiều kinh nghiệm giúp trong quá trình trao đổi với khách hàng sẽ làm rõ và hiểu đúng được các yêu cầu bài toán của khách hàng cũng như thu thập các biểu mẫu thông tin liên quan đến dự án về phục vụ phân tích ở giai đoạn kế tiếp.

2. Pha đặc tả

Đây là pha sẽ được thực hiện sau khi đã ghi nhận các yêu cầu của khách hàng về bộ phận phân tích sẽ thực hiện làm rõ các yêu cầu và hiện thực hóa bằng một tài liệu SRS gọi là “Tài liệu đặc tả“. Đây là tài liệu rất quan trọng đối với qúa trình phát triển phần mềm vì bao gồm tất cả các yêu cầu sản phẩm được thiết kế và phát triển trong suốt vòng đời dự án. Các bộ phận liên quan như lập trình, kiểm thử viên,… sẽ thực hiện công việc dựa trên mô tả các chức năng chi tiết trong tài liệu và nó sẽ trả lời câu hỏi “Phần mềm sẽ làm gì ?“.

3. Pha thiết kế

Ở pha này sau khi căn cứ vào tài liệu đặc tả, bộ phận thiết kế sẽ thiết kế đưa ra giao diện chung cũng như bộ phận lập trình sẽ thiết kế giao diện mức chi tiết theo từng chức năng của phần mềm. Tức là sẽ hiển thực hóa các chức năng trong tài liệu mô tả thành giao diện chức năng phần mềm dạng prototype. Sau đó sử dụng bản khung phần mềm này để trao đổi và thống nhất với khách hàng về giao diện, bố cục. Khi khách hàng đồng ý với thiết kế phần mềm theo prototype đó sẽ mới chuyển sang giai đoạn tiếp theo nếu không sẽ ghi nhận ý kiến đóng góp và thực hiện chỉnh sửa cho đến khi khách hàng đồng thuận với bản prototype phần mềm.

4. Pha lập trình

Trong giai đoạn này SDLC bắt đầu phát triển thực tế và sản phẩm được xây dựng. Pha lập trình là pha hiện thực hóa các chức năng của phần mềm sau khi khách hàng đã thống nhất prototype của phần mềm. Ở pha này các lập trình viên (developer) sẽ lập trình xử lý chức năng, module theo yêu cầu được giao giao sau đó sẽ chuyển cho kiểm thử viên thực hiện kiểm tra các chức năng theo testcase được xây dựng dựa trên tài liệu đặc tả.

Qlybh

5. Pha kiểm thử

Ở pha này, các kiểm thử viên sẽ nhận được các bàn giao chức năng thực hiện từ lập trình viên. Sau đó các kiểm thử viên sẽ thực hiện kiểm tra các chức năng này theo các testcase được xây dựng. Trong quá trình kiểm thử theo testcase nếu có phát sinh lỗi, kiểm thử viên sẽ thực hiện báo bug lỗi để lập trình viên xử lý chức năng đó fix lỗi.

Quá trình kiểm thử chức năng, kiểm tra lại, báo bug lỗi, báo cáo sẽ thực hiện đi thực hiện lại cho đến khi các chức năng lập trình đã thực hiện đúng theo tài liệu đặc tả hay yêu cầu của khách hàng.

Sau khi hoàn thiện các chức năng cũng như đạt yêu cầu về kiểm thử, phần mềm sẽ được triển khai thử nghiệm trên môi trường của khách hàng. Nếu có yêu cầu chỉnh sửa đội ngũ phát triển phần mềm sẽ thực hiện bổ sung, sửa lỗi để có thể nghiệm thu phần mềm.

6. Pha triển khai bảo trì

Một khi sản phẩm sau khi được kiểm thử và sẵn sàng triển khai, sản phẩm được phát hành chính thức trên thị trường thích hợp. Đôi khi việc triển khai sản phẩm xảy ra theo từng giai đoạn theo chiến lược kinh doanh của tổ chức đó. Trong quá trình sử dụng phần mềm của khách hàng, công ty phát triển phần mềm sẽ phải hỗ trợ, xử lý lỗi nếu có phát sinh trong quá trình sử dụng. Ở đây có 2 khái niệm cần chú ý đó là:

– Software repair (bảo trì sửa lỗi): Thực hiện chỉnh sửa các lỗi phát sinh trong quá trình sử dụng phần mềm của khách hàng.

– Software update (bảo trì cập nhật)

  • Bảo trì hoàn thiện: Sửa đổi phần mềm theo ý khách hàng
  • Bảo trì thích nghi: Sửa đổi để phần mềm thích nghi với môi trường mới

7. Câu hỏi thường gặp

7.1. Phương pháp Scrum là gì?

Là một khuôn khổ Agile nhẹ có thể được sử dụng bởi các nhà quản lý dự án để kiểm soát tất cả các loại dự án lặp đi lặp lại và gia tăng. Trong Scrum, chủ sở hữu sản phẩm tạo ra một sản phẩm tồn đọng cho phép họ làm việc với nhóm của mình để xác định và ưu tiên chức năng hệ thống. Product backlog là danh sách mọi thứ cần phải hoàn thành để cung cấp một hệ thống phần mềm hoạt động thành công – điều này bao gồm các bản sửa lỗi , tính năng và các yêu cầu phi chức năng. Sau khi sản phẩm tồn đọng được xác định, không có chức năng bổ sung nào có thể được thêm vào ngoại trừ nhóm tương ứng.

7.2. Phương pháp lập trình cực đoan (XP)?

Đây là một cách tiếp cận có kỷ luật tập trung vào tốc độ và phân phối liên tục. Nó thúc đẩy sự tham gia của khách hàng tăng lên, vòng lặp phản hồi nhanh chóng, lập kế hoạch và thử nghiệm liên tục và làm việc theo nhóm chặt chẽ. Phần mềm được phân phối định kỳ – thường là từ một đến ba tuần một lần. Mục tiêu là nâng cao chất lượng phần mềm và khả năng đáp ứng khi đối mặt với các yêu cầu thay đổi của khách hàng.

7.3. Phương pháp Kanban?

Kanba là phương pháp quản lý quy trình làm việc trực quan cho phép các nhóm chủ động quản lý việc tạo ra sản phẩm – nhấn mạnh việc phân phối liên tục – mà không tạo thêm căng thẳng trong vòng đời phát triển phần mềm (SDLC). Nó đã trở nên phổ biến giữa các nhóm cũng thực hành phát triển phần mềm Lean.

Trên đây là nội dung về Agile Scrum là gì? Lợi ích đối với dự án phát triển phần mềm mà ACC cung cấp đến bạn đọc. Trong quá trình tìm hiểu về vấn đề này, nếu có thắc mắc, vui lòng truy cập website https://accgroup.vn/ để được tư vấn, hỗ trợ.

5/5 – (3487 bình chọn)

✅ Dịch vụ thành lập công ty
⭕ ACC cung cấp dịch vụ thành lập công ty/ thành lập doanh nghiệp trọn vẹn chuyên nghiệp đến quý khách hàng toàn quốc

✅ Đăng ký giấy phép kinh doanh
⭐ Thủ tục bắt buộc phải thực hiện để cá nhân, tổ chức được phép tiến hành hoạt động kinh doanh của mình

✅ Dịch vụ ly hôn
⭕ Với nhiều năm kinh nghiệm trong lĩnh vực tư vấn ly hôn, chúng tôi tin tưởng rằng có thể hỗ trợ và giúp đỡ bạn

✅ Dịch vụ kế toán
⭐ Với trình độ chuyên môn rất cao về kế toán và thuế sẽ đảm bảo thực hiện báo cáo đúng quy định pháp luật

✅ Dịch vụ kiểm toán
⭕ Đảm bảo cung cấp chất lượng dịch vụ tốt và đưa ra những giải pháp cho doanh nghiệp để tối ưu hoạt động sản xuất kinh doanh hay các hoạt động khác

✅ Dịch vụ làm hộ chiếu
⭕ Giúp bạn rút ngắn thời gian nhận hộ chiếu, hỗ trợ khách hàng các dịch vụ liên quan và cam kết bảo mật thông tin