5 phương pháp Agile phổ biến trong phát triển phần mềm

Phương pháp Agile đã dần trở thành một xu hướng mới trong việc phát triển phần mềm trên thế giới. Bài viết này sẽ giới thiệu cho các bạn 5 phương pháp Agile hiện phổ biến nhất hiện nay.  

1. Scrum

Trong số các framework (khung) của phương pháp Agile, Scrum được sử dụng phổ biến nhất. Tuy nhiên, nhiều người vẫn còn nhầm lẫn giữa hai khái niệm này, dù chúng không phải là một.

Đặc trưng của Scrum là tách quá trình phát triển thành từng chu kỳ hoặc giai đoạn, được gọi là “sprint” (chạy nước rút). Các thành viên trong nhóm sẽ chia công việc của mình thành những mục tiêu cần đạt được trong mỗi lần chạy nước rút. Thời gian cho mỗi lần “sprint” diễn ra không quá một tháng, phổ biến nhất là hai tuần.

Nhóm Scrum sẽ theo dõi tiến độ trong các cuộc họp hàng ngày, giới hạn trong 15 phút. Cuối mỗi lần chạy nước rút, họ sẽ tổ chức để nhìn lại, đánh giá và chứng minh công việc, để tiếp tục cải thiện trong tương lai.

Scrum được thiết kế cho nhóm gồm mười thành viên trở xuống. Nó thường được dùng trong việc quản lý phát triển phần mềm, nhưng cũng có thể dùng trong những bối cảnh liên quan đến kinh doanh.

Mô hình của Scrum theo phương pháp Agile (Nguồn: Scrum.org)
Mô hình của Scrum theo phương pháp Agile (Nguồn: Scrum.org)

2. Kaban

Cụm từ Kaban có nguồn gốc từ Nhật Bản. Ý nghĩa của nó ám chỉ đến một khái niệm về thời gian, đó là “sự đúng lúc”.

Trong thực tế, phương pháp Kaban sẽ được thể hiện thông qua một bảng, gọi là bảng Kaban. Nó được chia thành các cột khác nhau, hiển thị mọi luồng của quá trình sản xuất phần mềm. Theo tiến trình phát triển, thông tin trong bảng sẽ liên tục thay đổi. Nếu có một nhiệm vụ mới được thực hiện, sẽ có một “thẻ” (card) mới được tạo ra.

Phương pháp Kaban đòi hỏi sự giao tiếp và minh bạch trong công việc. Mục đích của nó là giúp thành viên trong nhóm có thể biết chính xác quá trình phát triển đang ở giai đoạn nào. Đồng thời, họ có thể nhìn thấy tình trạng của dự án bất cứ lúc nào.

Kaban dùng bảng để cho các thành viên làm việc nhóm (Nguồn: Unsplash)
Kaban dùng bảng để cho các thành viên làm việc nhóm (Nguồn: Unsplash)

3. Extreme Programming

Phương pháp này còn được gọi tắt là XP (lập trình cực đoan). Đây cũng là một framework điển hình của phương pháp Agile. Nó được phát triển bởi Kent Beck, và có thể được điều chỉnh cho phù hợp với từng công ty khác nhau.

Phương pháp này nhấn mạnh các giá trị như Giao tiếp (Communication), Tính đơn giản (Simplicity), Phản hồi (Feedback), Lòng dũng cảm (Courage) và Sự tôn trọng (Respect).

Trong XP, làm việc nhóm là yếu tố cực kỳ quan trọng. Bởi vì khi có vấn đề phát sinh, nó sẽ được giải quyết bởi cả đội ngũ quản lý, nhà phát triển lẫn khách hàng.

XP cũng ưu tiên sự hài lòng của khách hàng lên trên hết. Thế nên, đây cũng là phương pháp mang lại niềm tin cho các nhà phát triển phần mềm. Nó thúc đẩy họ chấp nhận thay đổi theo yêu cầu của khách hàng, ngay cả ở những giai đoạn trễ của quá trình phát triển.

4. Lean Development

Tên gọi Lean xuất phát từ thuật ngữ Lean Manufacturing (Sản xuất tinh gọn) do Toyota tạo ra và áp dụng cho phát triển phần mềm. Phương pháp này cũng là một framework bao gồm các giá trị, nguyên tắc có thể áp dụng cho phương pháp Agile.

Đúng như tên gọi, phương pháp Lean tập trung vào việc phát triển phần mềm tinh gọn. Nó đề cao việc xác định và loại bỏ những yếu tố lãng phí. Từ đó, các nhà phát triển có thể tăng tốc độ phát triển của dự án. Giá trị của sản phảm được tối đa hóa và những thứ thừa thải sẽ được giảm thiểu.

Nó bao gồm 7 nguyên tắc cơ bản là:

  • Xóa bỏ những thứ không quan trọng.
  • Mở rộng việc học hỏi.
  • Quyết định càng trễ càng tốt.
  • Cung cấp càng sớm càng tốt.
  • Trao quyền cho nhóm.
  • Xây dựng toàn vẹn từ bên trong.
  • Tối ưu hóa toàn bộ.
Lean đề cao sự đơn giản trong phát triển phần mềm (Nguồn: Unsplash)
Lean đề cao sự đơn giản trong phát triển phần mềm (Nguồn: Unsplash)

5. Crystal

Đây thực ra là một nhóm các phương pháp Agile gọi chung là Crystal (Pha lê). Chúng bao gồm các biến thể như: Crystal Clear (tối đa một nhóm 8 người), Crystal Yellow (tối đa một nhóm 10 đến 20 người), Crystal Orange (tối đa một nhóm 20 đến 50 người), Crystal Red (dành cho các nhóm lớn từ 50 đến 1000 người).

Phương pháp Crystal tập trung vào các nguyên tắc như: Con người (People), Interactions (Sự tương tác), Community (Cộng đồng), Skills (Kỹ năng), Talent (Tài năng) và Communication (Giao tiếp). Mục đích của Crystal là đưa ra một quy trình phát triển phần mềm tốt nhất có thể. Theo đó, vấn đề cốt lõi phải là sự tương tác và cộng sinh giữa những người liên quan đến dự án.

Người sáng lập ra Crystal là Alistair Cockburn. Theo ông, nó là “là một nhóm các phương pháp phát triển phần mềm, hoạt động bằng sức mạnh của con người, cực kỳ nhẹ và co giãn để phù hợp”. Về cơ bản, Cockburn tin rằng chính tài năng và cách tương tác giữa các thành viên trong nhóm sẽ mang lại lợi ích cho cả dự án.

Tóm lại, có nhiều cách tiếp cận khác nhau theo phương pháp Agile. Mỗi cách tiếp cận lại có những đặc điểm khác nhau. Hy vọng qua bài viết, các bạn đã biết được những phương pháp Agile phổ biến, để có thể vận dụng vào công việc của mình.

Tham khảo: Xpand-it.com

Nếu bạn quan tâm, hãy xem các vị trí đang tuyển dụng của Got It tại: bit.ly/gotit-hanoi và đọc thêm về quy trình tuyển dụng tại đây.

https://d1iv5z3ivlqga1.cloudfront.net/wp-content/uploads/2021/04/29235048/1_QAG9RXQyyMAY7i9OYo84FA.png
Got It Vietnam
February 22, 2021
Share this post to:
Tags:
0 Comments
Inline Feedbacks
View all comments
Các bài viết liên quan
Visual Studio Code là gì? Lợi thế từ việc sử dụng Visual Studio Code

Visual Studio Code là gì? Lợi thế từ việc sử dụng Visual Studio Code

Visual Studio Code là gì mà khiến cộng đồng IT Việt yêu thích đến vậy? Trình soạn thảo code này sẽ giúp bạn xây dựng ứng dụng web và cloud như thế nào? Hãy cùng Got It tìm hiểu Visual Studio Code ngay hôm nay nhé! Mục lục1. Visual Studio Code là gì?2. Phân biệt […]
Hướng dẫn cách sử dụng Visual Studio Code căn bản

Hướng dẫn cách sử dụng Visual Studio Code căn bản

Nhanh, gọn nhẹ, đa năng và hoạt động mạnh mẽ trên đa nền tảng là những ưu điểm nổi trội của trình soạn thảo VS Code. Cách sử dụng Visual Studio Code cơ bản sẽ được hướng dẫn cụ thể trong bài viết dưới đây. Mục lụcVisual Studio Code là gì và dành cho ai?Phiên […]
Hướng dẫn cách format code Visual Studio Code với Prettier

Hướng dẫn cách format code Visual Studio Code với Prettier

Việc định dạng mã sao cho thống nhất là một thử thách khó khăn đối với đa phần lập trình viên. Prettier chính là công cụ format code của Visual Studio Code giúp bạn duy trì sự nhất quán trong toàn bộ cơ sở mã của nhóm. Cùng tìm hiểu cách dùng Prettier để format […]
Cách sử dụng phím tắt sắp xếp code trong Visual Studio Code

Cách sử dụng phím tắt sắp xếp code trong Visual Studio Code

Chỉ với một vài thao tác đơn giản với phím tắt sắp xếp code trong Visual Studio Code, bạn đã có thể tạo ra một đoạn mã đẹp mắt, ngay ngắn và dễ đọc. Cùng tìm hiểu về cách sử dụng phím tắt này và khám phá thêm một vài phím tắt hữu ích khách […]
5 phương pháp Agile phổ biến trong phát triển phần mềm

5 phương pháp Agile phổ biến trong phát triển phần mềm

Phương pháp Agile đã dần trở thành một xu hướng mới trong việc phát triển phần mềm trên thế giới. Bài viết này sẽ giới thiệu cho các bạn 5 phương pháp Agile hiện phổ biến nhất hiện nay.   Mục lục1. Scrum2. Kaban3. Extreme Programming4. Lean Development5. Crystal 1. Scrum Trong số các framework […]
Thiết kế kiến trúc phần mềm và những vấn đề cơ bản

Thiết kế kiến trúc phần mềm và những vấn đề cơ bản

Thiết kế kiến trúc phần mềm là một trong những yêu cầu quan trọng đối với mỗi lập trình viên. Nếu bạn đang muốn tìm hiểu về lĩnh vực trên, thì hãy bắt đầu từ những vấn đề cơ bản sau đây. Mục lục1. Thiết kế kiến trúc phần mềm là gì?2. Một số quy […]