Dự án Agile

GS John Vu03/05/2026 13:00
Dự án Agile

Thay đổi yêu cầu là một trong những vấn đề chính trong hầu hết các dự án phần mềm.

Để giảm thiểu vấn đề này, tổ phát triển phần mềm phải hội tụ vào làm việc với người dùng để phát triển yêu cầu rõ ràng và chính xác. Tuy nhiên, khi người dùng không biết họ muốn gì, hay thường đổi ý thì tổ phát triển có thể chấp thuận cách tiếp cận gia tăng bằng việc xác định điều người dùng có thể giải thích được vào lúc đó rồi ưu tiên hoá chúng thành nhiều bản đưa ra với bản họ đã biết được thực hiện trước nhất.

Cách tiếp cận này được gọi là “Cách tiếp cận Agile” bao gồm nhiều cách phát triển phần mềm. Một trong những cách phổ biến nhất là “Scrum”, chia hoạt động phát triển thành nhiều nỗ lực nhỏ, từng nỗ lực kéo dài từ 2 tới 4 tuần có tên là “Sprint- Nước rút”. Với từng nước rút, nhu cầu của người dùng được ưu tiên hoá thành “Tồn đọng nước rút- Sprint backlog” (Yêu cầu đối với một nước rút đặc biệt) nơi tổ có thể tập trung vào làm việc về nhu cầu của người dùng mà không phải lo lắng về các yêu cầu khác. Bằng việc xây dựng tăng dần phần mềm tương ứng theo ưu tiên của người dùng, tổ tiếp tục chuyển giao phần mềm làm việc thoả mãn cho người dùng thay vì chuyển giao mọi thứ một lần như với vòng đời thác đổ. Bằng việc đưa ra một mảnh phần mềm mỗi lúc, người dùng không phải chờ đợi lâu mà có thể dùng vài tính năng mỗi vài tuần và có thể đo được tiến bộ của tổ tương ứng. Với từng việc đưa ra, tổ cũng suy nghĩ về điều gì có tác dụng và điều gì không và tiếp tục cải tiến cách họ làm việc cùng nhau.

Trước khi dự án mau lẹ bắt đầu, cả tổ phát triển và người dùng phải đồng ý về cách qui trình này sẽ được thực hiện. Vai trò, trách nhiệm và đảm nhiệm phải được xác định và phân công để đảm bảo rằng người quản lí, người dùng và tổ dự án hiểu họ được giả định làm gì. Theo cách tiếp cận mau lẹ, trao đổi là yếu tố quan trọng nhất cho nên người dùng phải phân công ai đó làm việc cùng tổ dự án để phối hợp các yêu cầu và ưu tiên trên cơ sở hàng ngày. Đại diện này làm việc cùng “Thầy Scrum” của tổ dự án để xácđịnh “tồn đọng” cho từng nước rút Sprint. Đại diện của người dùng cũng phải có khả năng trả lời nhanh chóng mọi câu hỏi đặt ra cho tổ và lập ưu tiên mới, nếu cần. Nếu với bất kì lí do nào, người dùng bận rộn và không thể tham gia được vào giao tiếp hàng ngày với tổ, tính mau lẹ sẽ KHÔNG có tác dụng.

Thầy Scrum chịu trách nhiệm cho mọi dự án trong việc phối hợp các hoạt động với người dùng, đảm bảo rằng mọi người đều tuân theo qui trình agile tương ứng với vai trò, trách nhiệm của họ và thúc đẩy công việc tổ trong các thành viên tổ. Như đã đăng trước đây trong blog của tôi, cách tiếp cận Agile có tác dụng tốt cho các dự án nhỏ (4 tới 10 người) và mọi người trong tổ đều phải nhận được việc đào tạo agile để cho họ có thể làm việc tương ứng. Tuy nhiên, xung đột giữa mọi người trong tổ có xảy ra. Chính công việc của Thầy Scrum là giải quyết những vấn đề này nhanh chóng và hiệu quả. Thầy Scrum phải có kĩ năng giải quyết xung đột tổ bởi vì với cách làm mau lẹ, thời gian là cốt yếu (2 tới 4 tuần cho từng nước rút), cho dù với một người “khó làm việc”, toàn tổ cũng có thể bị tác động. Thầy Scrum cũng làm việc để loại bỏ bất kì chướng ngại nào được báo cáo trong cuộc họp hàng ngày và bảo vệ tổ khỏi bất kì việc ngắt quãng nào từ bên ngoài bởi vì công việc mau lẹ là rất dồn dập.

Có vài công cụ thương mại sẵn có trên thị trường cho dự án mau lẹ nhưng có những phương án như phần mềm nguồn mở nữa. Tôi thích dùng ba công cụ “tự do” này:

Wiki: Công cụ này có thể được cả người dùng và tổ dự án dùng để trao đổi và cộng tác trên mọi vấn đề có liên quan tới dự án.

Geeklog: Dùng công cụ này các thành viên dự án có thể thảo luận vấn đề lẫn với nhau. Công cụ này sẽ có giá trị cho các thành viên dự án để thảo luận về các vấn đề có liên quan tới các dự án khác nhau.

CVS: Nó là công cụ cấu hình nguồn mở để kiểm soát phiên bản  đưa ra.

Bugzilla: Project team can use this tool to track defects and take various reports on defects.

English version

Agile project

Requirements change is one of the major problems in most software projects. To minimize this problem, software development team must focus on working with users to develop a clear and concise requirements. However, when users do not know what they want, or often change their minds then the development team may want to adopt an incremental approach by determine what users can explain at that time then prioritize them into several releases with the one that they clearly know is to be implemented first.

This approach is called “The Agile approach” which consists several ways of develop software. One of the most popular way is “Scrum” , which divides the development activities into several small efforts, each lasts about 2 to 4 weeks called “Sprint”. For each sprint, the user’s needs are prioritized into a “Sprint backlog” (Requirements for a particular Sprint) where the team can concentrate to work on those user’s needs without have to worry about other requirements. By incrementally build software according to user’s priority, the team continue to deliver working software that satisfy users rather than deliver everything all at once as with the waterfall life cycle. By release one piece of software at a time, users do not have to wait a long time but can use several features every few weeks and can measure the team’s progress accordingly. For each release, the team also can reflect on what is working and what is not and continue to improve the way they work together.

Before the agile project begins, both development team and users must agree on how the process will be executed. Roles, responsibilities and accountability must be defined and assigned to make sure that manager, users, and the project team understand what they are supposed to do. In agile approach, communication is the most important factor so users must assign someone to work with the project team to coordinate the requirements and the priority on a daily basis. The representative works with the “Scrum Master” of the project team to define the “backlog” for each Sprint. The user’s representative must be able to quickly answer all questions to the team and set new priorities, if needed. If for whatever reason, users are so busy and cannot participate in the daily interface with the team, agile will NOT work.

The Scrum Master is responsible for all project coordinating activities with the users, make sure that everyone follows the agile process according to their roles, responsibilities and promote teamwork among team members. As previously posted in my blog, Agile approach works well for small projects (4 to 10 people) and everyone on the team must receive agile training so they can work accordingly. However, conflicts between people on the team do happen. It is the job of the Scrum Master to resolve these issues quickly and efficiently. The Scrum Master must have the skills to deal with team conflict because with agile, time is critical (2 to 4 weeks for each Sprint), even with one “difficult to get along” person, the entire team could be impacted. The Scrum Master must also works to remove any obstacle reported during the daily meeting and protect the team from any disruptive from outside because the agile work is very intensive.

There are several commercial tools available in the market for agile project but there are alternatives such as open source software. I like to use these “Free” tools:

Wiki: This tool can be used by both users and the teams to communicate and collaborate all the project related issues.

Geeklog: Using this tool project member can discuss issues with one another. This tool will be valuable for the project members to discuss on various projects related issues.

CVS: It is an open source configuration tools to control release version.

Bugzilla: Project team can use this tool to track defects and take various reports on defects.

 


Gửi bình luận
(0) Bình luận
1

Làm việc hay không làm việc

Tuần trước tôi nhận được một email: “Dường như là thầy đang khuyến khích sinh viên đi làm trong khi vẫn đang học đại học nhưng bố mẹ em bảo em rằng em phải tập trung vào học tập vì họ có thể chăm lo cho em. Đi làm sẽ làm phân tán học tập của em và em KHÔNG nên làm hai điều đồng thời thì sẽ không thành công trong cái nào. Thầy nghĩ thế nào?”
2

Phần mềm mã nguồn mở

Phần mềm “nguồn mở” là phần mềm được viết theo cách mã nguồn để mở, sẵn có cho mọi người dùng, thay đổi, cải tiến và tự do phân phối lại nó.
3

Nghề nghiệp và việc làm

"Em hiểu rằng giáo dục đại học là quan trọng nhưng em vẫn bị lẫn lộn về chọn lựa của em khi kết thúc giáo dục bậc đại học rồi đi làm cùng việc làm như mọi người có sáu tháng đào tạo lập trình..."
4

Tính toán mây

Một người quản lí hỏi: “Tác động của tính toán mây là gì? Công ti tôi được coi như dùng dịch vụ tính toán mây từ Microsoft. Điều gì sẽ xảy ra cho những người làm việc trong nhóm công nghệ thông tin hỗ trợ cho công ti?”
5

Lập mục đích

Bạn có biết thuyền trưởng dẫn hướng con thuyền của mình trên đại dương thế nào không?

Xu hướng tương lai trong Công nghệ thông tin

Theo nghiên cứu gần đây của Carnegie Mellon về cái nhìn trong năm năm đối với công nghiệp Công nghệ thông tin (CNTT), thì sẽ có thay đổi lớn về cách chức năng CNTT được tổ chức và quản lí.

Nhu cầu công nghiệp

Ngày nay, doanh nghiệp phức tạp hơn và yêu cầu thông tin có ý nghĩa để giúp cấp quản lí ra quyết định. Để đáp ứng với những thay đổi, công nghệ thông tin (CNTT) được sử dụng để tiến hành thu thập dữ liệu, phân tích thông tin để giúp qui trình ra quyết định và tăng năng lực cạnh tranh của công ti.

Phụ nữ trong khu vực kỹ thuật

Có vài nghiên cứu chỉ ra rằng số phụ nữ làm việc trong khu vực khoa học và công nghệ ít hơn đàn ông nhiều.

Đầu tư giáo dục

Ngày nay các đại học đang đối viện với thách thức của việc phát triển sinh viên hiệu năng cao. Đây là những sinh viên có kĩ năng cao với động cơ mạnh, kĩ năng kĩ thuật và lãnh đạo tốt người có thể làm việc cao hơn những người khác.

Giải quyết xung đột

Làm việc tổ là một trong những yếu tố quan trọng nhất trong dự án phần mềm. Ngay cả những người cùng làm việc với nhau để hoàn thành một mục đích dự án chung vẫn có thể bất đồng với nhau về phương cách hoàn thành mục tiêu này.

Ngôn ngữ lập trình

Một sinh viên năm thứ nhất hỏi tôi: “Tôi phải học ngôn ngữ lập trình nào? Tôi có phải học mọi ngôn ngữ lập trình hay chỉ vài ngôn ngữ thôi?”

CMU như trường đại học nổi tiếng miền Đông

Giáo dục bậc cao của Mĩ được coi là một trong những hệ thống giáo dục tốt nhất trên thế giới.

Trắc nghiệm và kiểm nghiệm

Tôi nhận được một email mà người gửi viết: “Khác biệt giữa trắc nghiệm – Verification và kiểm nghiệm Validation (V&V) là gì và có bao nhiêu kĩ thuật V&V?”

'Trạm dừng sinh tử' và những bí ẩn diệu kỳ

“Trạm dừng sinh tử” mang đến cho người đọc nhiều điều ngạc nhiên và đáng chiêm nghiệm về những người cận tử, những người làm công việc chăm sóc người bệnh giai đoạn cuối đời và những mối “nhân duyên” kỳ lạ giữa con người với con người trong cuộc đời này.

Người kiểm thử chuyên nghiệp

Blog GS John VU - GS John Vu - 24/06/2026 12:00
Tuần trước, một sinh viên hỏi tôi: “Kiểm thử có phải là việc làm mức vào nghề hay nó là một nghề chuyên nghiệp? Có nghề như kiểm thử viên phần mềm không?”

Đừng mắc bẫy! Người xấu tính xuyên tạc, đánh giá thấp bạn? Sự thật là họ đang mang "GƯƠNG SOI" chính mình ra chỉ trích!

Kỹ năng - Tích Thành - 24/06/2026 11:00
Khi những lời chỉ trích cay nghiệt, sự hạ bệ vô cớ ập đến, phản ứng tự nhiên của bạn là gì? Thường là giận dữ, ấm ức, hoặc lao vào giải thích để phân bua. Nhưng có một sự thật mà bạn không hề hay biết. Đó là...

Người càng thông minh càng “lạnh”: 3 việc không quản, 4 điều không nói, 5 kiểu không giúp để sống nhẹ đầu

Suy ngẫm - Trang Đào - 24/06/2026 10:00
Trong cách đối nhân xử thế, người thông minh không phải là người nói nhiều hay can thiệp sâu, mà là người biết dừng đúng lúc, lùi đúng chỗ.

"Thần đồng văn học", được Đại học Thanh Hoa phá lệ để tuyển vào: Cuộc sống hiện tại gây bất ngờ

Phong cách sống - Nhật Linh - 24/06/2026 09:00
Trong khi phần lớn học sinh phải cạnh tranh quyết liệt từng điểm số để giành suất vào các trường đại học hàng đầu, một cô gái trẻ ở Trung Quốc từng khiến dư luận bất ngờ khi được Đại học Thanh Hoa đặc cách hạ chuẩn tới 60 điểm để tuyển sinh.

'Trạm dừng sinh tử' và những bí ẩn diệu kỳ

Từ sách - Phim - Thu An - 24/06/2026 08:00
“Trạm dừng sinh tử” mang đến cho người đọc nhiều điều ngạc nhiên và đáng chiêm nghiệm về những người cận tử, những người làm công việc chăm sóc người bệnh giai đoạn cuối đời và những mối “nhân duyên” kỳ lạ giữa con người với con người trong cuộc đời này.

Nghề nghiệp và việc làm

Blog GS John VU - GS John Vu - 23/06/2026 12:00
"Em hiểu rằng giáo dục đại học là quan trọng nhưng em vẫn bị lẫn lộn về chọn lựa của em khi kết thúc giáo dục bậc đại học rồi đi làm cùng việc làm như mọi người có sáu tháng đào tạo lập trình..."

Điều doanh nghiệp cần biết về GPT - “bộ não” phía sau chatbot AI

Kỹ năng - Vân Anh - 23/06/2026 11:00
GPT, viết tắt của Generative Pre-trained Transformer, là một lớp mô hình trí tuệ nhân tạo tạo sinh có khả năng tạo ra văn bản, tóm tắt tài liệu, viết email, trả lời câu hỏi, hỗ trợ lập trình hoặc phân tích dữ liệu theo yêu cầu bằng ngôn ngữ tự nhiên. Nói đơn giản, GPT giống như “bộ não ngôn ngữ” đứng sau nhiều chatbot AI nổi tiếng hiện nay, bao gồm Chat GPT.

Không phải nghèo hay xấu xí: 3 kiểu đàn ông này mới là “án tử xã hội”

Suy ngẫm - Ứng Hà Chi - 23/06/2026 10:00
Đàn ông có những vấn đề này không chỉ là lỗi hành vi, mà phản ánh sự rối loạn ở tầng nhận thức, khả năng tự kiểm soát và phán đoán cốt lõi.

Việt Nam có một nhà văn sở hữu tác phẩm được dịch ra ít nhất 3 thứ tiếng, là tài liệu nghiên cứu, giảng dạy tại Havard, Stanford, Oxford

Phong cách sống - Nhật Linh - 23/06/2026 09:00
Không chỉ là cây bút lớn của văn học Việt Nam hiện đại, nhà văn này còn là tác giả sở hữu tác phẩm có sức sống vượt ra khỏi biên giới quốc gia.

 'Để hiểu một người' - Chúng ta đang sống trong thời đại khủng hoảng kết nối 

Từ sách - Phim - TĐ - 23/06/2026 08:00
Thứ chúng ta cần nhất là các mối quan hệ, và thứ mà chúng ta xử lý vụng về nhất dường như cũng là các mối quan hệ.

Tính toán mây

Blog GS John VU - GS John Vu - 22/06/2026 12:00
Một người quản lí hỏi: “Tác động của tính toán mây là gì? Công ti tôi được coi như dùng dịch vụ tính toán mây từ Microsoft. Điều gì sẽ xảy ra cho những người làm việc trong nhóm công nghệ thông tin hỗ trợ cho công ti?”

Thất nghiệp đừng vội hoảng: 5 kỹ năng "hái ra tiền" tự học miễn phí giúp bạn lật ngược thế cờ

Kỹ năng - Kiều Dương - 22/06/2026 11:00
Thay vì lo âu khi CV gửi đi chưa có phản hồi, hãy tận dụng khoảng thời gian này để trang bị 5 kỹ năng hữu ích hoàn toàn miễn phí trên mạng.

Tỷ phú Elon Musk và 5 lời khuyên: Chỉ cần làm được 1 điều, cơ hội thành công sẽ tăng vọt

Suy ngẫm - Phương Anh - 22/06/2026 10:00
Vị tỷ phú này cho rằng, để đạt được thành công, mỗi người cần phải mạnh mẽ và nỗ lực thực hiện những điều sau.

Câu chuyện đằng sau tấm ảnh sét đánh đỉnh Landmark 81 thu hút "bão like"

Phong cách sống - Vũ Thanh Bình - 22/06/2026 09:00
Sau 7 năm theo dõi hiện tượng giông sét, tác giả bức ảnh đã ghi lại được khoảnh khắc sét đánh trúng đỉnh tòa nhà Landmark 81 trong cơn mưa lớn tại TPHCM.

Biến tiềm năng thành tài năng - Chúng ta đang sống trong một nền văn hóa tôn thờ tài năng thiên bẩm

Từ sách - Phim - TĐ - 22/06/2026 08:00
 Adam Grant cho rằng tiềm năng không nằm ở nơi bạn bắt đầu, mà nằm ở quãng đường bạn có thể đi được.
HẠT GIỐNG TÂM HỒN
2019 Bản quyền thuộc về hatgiongtamhon.com.vn. Phát triển bởi ONECMS