Nghiên cứu trường hợp: Ứng dụng theo dõi chi phí di động
Là một đội phát triển phần mềm, bạn đã được giao nhiệm vụ tạo một ứng dụng theo dõi chi phí di động. Ứng dụng này nên giúp người dùng theo dõi chi phí hàng ngày, phân loại chi tiêu và đặt mục tiêu ngân sách. Mục tiêu là cung cấp cho người dùng một ứng dụng thân thiện, hiệu quả và đầy đủ tính năng, có thể sử dụng trên cả nền tảng Android và iOS.

Để mô phỏng danh sách sản phẩm cho dự án này, hãy tạo một bảng gồm một số câu chuyện người dùng, mức độ ưu tiên, ước tính (theo điểm câu chuyện) và các tiêu chí chấp nhận.
| Câu chuyện người dùng | Mức độ ưu tiên | Ước tính | Tiêu chí chấp nhận |
|---|---|---|---|
| Xác thực người dùng | Cao | 8 | – Người dùng có thể đăng ký bằng địa chỉ email và mật khẩu. – Người dùng có thể đăng nhập bằng thông tin xác thực của họ. – Mật khẩu được lưu trữ an toàn và băm. – Người dùng có thể đặt lại mật khẩu nếu quên. |
| Nhập chi phí | Cao | 13 | – Người dùng có thể nhập một chi phí mới với tiêu đề, số tiền, ngày và danh mục. – Người dùng có thể chỉnh sửa các chi phí hiện có. – Người dùng có thể xóa chi phí. – Chi phí được lưu và truy xuất từ cơ sở dữ liệu. |
| Danh mục chi phí | Trung bình | 5 | – Người dùng có thể tạo các danh mục chi phí tùy chỉnh. – Chi phí có thể được gán vào các danh mục cụ thể. – Người dùng có thể chỉnh sửa và xóa các danh mục. |
| Phân tích chi phí | Trung bình | 8 | – Người dùng có thể xem báo cáo và biểu đồ chi phí hàng tháng và hàng năm. – Chi phí được phân loại tự động dựa trên các quy tắc do người dùng xác định. – Người dùng có thể đặt mục tiêu ngân sách cho các danh mục khác nhau. |
| Đồng bộ hóa đám mây | Cao | 13 | – Dữ liệu người dùng được đồng bộ hóa giữa các thiết bị. – Dữ liệu được lưu trữ an toàn trong đám mây. – Hỗ trợ truy cập ngoại tuyến với lưu trữ dữ liệu cục bộ. – Những thay đổi thực hiện trên một thiết bị sẽ được phản ánh trên các thiết bị khác. |
| Chuyển đổi tiền tệ | Thấp | 3 | – Người dùng có thể chọn loại tiền tệ ưa thích. – Số tiền chi phí được chuyển đổi tự động dựa trên loại tiền tệ đã chọn. |
| Xác thực Touch ID/Mặt ID | Thấp | 5 | – Người dùng có thể bật xác thực sinh trắc học để tăng cường bảo mật. – Ứng dụng hỗ trợ xác thực Touch ID (iOS), Face ID (iOS) hoặc vân tay (Android). |
| Xuất dữ liệu | Trung bình | 8 | – Người dùng có thể xuất dữ liệu chi phí dưới định dạng CSV. – Dữ liệu xuất ra bao gồm tất cả chi tiết chi phí, bao gồm ngày và danh mục. – Dữ liệu có thể được gửi qua email hoặc lưu trữ cục bộ. |
| Thông báo nhắc nhở | Trung bình | 8 | – Người dùng có thể thiết lập thông báo nhắc nhở chi phí hàng ngày, hàng tuần hoặc hàng tháng. – Các thông báo sẽ kích hoạt thông báo với các tin nhắn đã được thiết lập trước. |
| Sắp xếp chi phí | Thấp | 3 | – Người dùng có thể sắp xếp chi phí theo ngày, số tiền hoặc danh mục. – Thứ tự sắp xếp có thể là tăng dần hoặc giảm dần. |
Bảng này mô phỏng một danh sách sản phẩm đơn giản hóa để phát triển ứng dụng theo dõi chi phí di động. Mỗi câu chuyện người dùng được ưu tiên dựa trên mức độ quan trọng đối với dự án, được ước tính bằng điểm câu chuyện để đánh giá mức độ phức tạp, và có các tiêu chí chấp nhận rõ ràng để xác định khi nào được coi là hoàn thành. Danh sách này phục vụ như điểm khởi đầu cho việc lập kế hoạch sprint và đảm bảo rằng đội phát triển và các bên liên quan có cùng một hiểu biết chung về phạm vi và ưu tiên của dự án.
Từ danh sách sản phẩm đến lập kế hoạch sprint
Lập kế hoạch sprint là một phần quan trọng trong quản lý dự án Agile, và nó bao gồm việc chọn một tập hợp các câu chuyện người dùng từ danh sách sản phẩm để làm việc trong sprint sắp tới. Lập kế hoạch sprint thường bao gồm hai phần: cuộc họp lập kế hoạch sprint và tạo danh sách sprint. Hãy cùng đi qua các bước để lập kế hoạch một sprint dựa trên danh sách sản phẩm mà bạn đã cung cấp:
Bước 1: Xác định mục tiêu sprint
- Bắt đầu cuộc họp lập kế hoạch sprint bằng cách thảo luận về mục tiêu tổng thể hoặc mục tiêu của sprint sắp tới. Ví dụ, trong trường hợp của bạn, nó có thể là: “Mục tiêu của sprint này là triển khai chức năng xác thực cơ bản và chức năng nhập chi phí cơ bản.”
Bước 2: Xác định thời lượng sprint
- Quyết định thời lượng của sprint. Các thời lượng sprint phổ biến là hai tuần, ba tuần hoặc một tháng. Chọn một thời lượng phù hợp nhất với đội và dự án của bạn.
Bước 3: Chọn các câu chuyện người dùng
- Xem xét lại danh sách sản phẩm và, cùng với đội phát triển và người sở hữu sản phẩm, chọn một tập hợp các câu chuyện người dùng có thể hoàn thành thực tế trong thời lượng sprint. Hãy cân nhắc thứ tự ưu tiên, ước tính và các phụ thuộc của các câu chuyện người dùng. Hãy nhớ đến tốc độ của đội, tức là lượng công việc mà đội có thể hoàn thành trong một sprint dựa trên hiệu suất trong quá khứ.
Ví dụ, hãy giả sử đội của bạn có thể hoàn thành các câu chuyện người dùng với tổng cộng 30 điểm câu chuyện trong một sprint hai tuần. Dựa trên năng lực này, bạn có thể chọn các câu chuyện người dùng sau:
- Xác thực người dùng (8 điểm câu chuyện)
- Nhập chi phí (13 điểm câu chuyện)
- Chuyển đổi tiền tệ (3 điểm câu chuyện)
- Xác thực Touch ID/Face ID (5 điểm câu chuyện)
Sự lựa chọn này tổng cộng 29 điểm câu chuyện, gần bằng năng lực của đội bạn.
Bước 4: Chia nhỏ các câu chuyện người dùng (nếu cần)
- Nếu bất kỳ câu chuyện người dùng nào được chọn quá lớn hoặc quá phức tạp, hãy cân nhắc chia nhỏ chúng thành các nhiệm vụ nhỏ hơn, dễ quản lý hơn hoặc các câu chuyện con. Đảm bảo rằng các câu chuyện con được xác định rõ ràng với các tiêu chí chấp nhận cụ thể.
Bước 5: Ước tính công việc
- Ước tính công việc cần thiết cho mỗi câu chuyện người dùng hoặc câu chuyện con được chọn theo giờ hoặc điểm câu chuyện. Điều này giúp đội hiểu rõ khối lượng công việc và đảm bảo sprint vẫn ở trong tầm kiểm soát.
Bước 6: Tạo danh sách sprint
- Tạo danh sách các nhiệm vụ cho mỗi câu chuyện người dùng hoặc câu chuyện con được chọn. Bao gồm công việc ước tính và phân công nhiệm vụ cho các thành viên đội dựa trên kỹ năng và khả năng sẵn sàng. Đây sẽ là danh sách sprint của bạn.
Dưới đây là một ví dụ về cách danh sách sprint có thể trông như thế nào:
Danh sách sprint cho sprint 2 tuần sắp tới
| Truyện người dùng | Mô tả nhiệm vụ | Nỗ lực ước tính | Giao cho |
|---|---|---|---|
| Xác thực người dùng | Thực hiện logic đăng ký | 4 giờ | Lập trình viên A |
| Xác thực người dùng | Thực hiện logic đăng nhập | 6 giờ | Lập trình viên B |
| Nhập chi phí | Thiết kế mẫu nhập chi phí | 5 giờ | Nhà thiết kế |
| Nhập chi phí | Thực hiện giao diện người dùng cho mẫu chi phí | 8 giờ | Lập trình viên C |
| Nhập chi phí | Tạo lược đồ cơ sở dữ liệu cho chi phí | 4 giờ | Chuyên gia cơ sở dữ liệu |
| Chuyển đổi tiền tệ | Thêm tính năng chọn tiền tệ | 2 giờ | Lập trình viên D |
| Xác thực Touch ID/Mặt ID | Thực hiện xác thực sinh trắc học (iOS) | 8 giờ | Lập trình viên E |
Bước 7: Cam kết thực hiện Sprint
- Trong buổi họp lập kế hoạch sprint, đội ngũ cam kết hoàn thành các câu chuyện người dùng và nhiệm vụ đã chọn trong suốt thời gian của sprint. Cam kết này đảm bảo rằng đội tập trung vào việc thực hiện công việc đã lên kế hoạch.
Bước 8: Xây dựng mục tiêu Sprint
- Dựa trên các câu chuyện người dùng và nhiệm vụ đã chọn, nêu rõ và súc tích mục tiêu sprint, tóm tắt những gì đội muốn đạt được vào cuối sprint. Mục tiêu này cung cấp sự hiểu biết chung về mục đích của sprint.
Bước 9: Xem xét và kết thúc buổi họp lập kế hoạch Sprint
- Trước khi kết thúc buổi họp, đảm bảo rằng mọi người đều hiểu mục tiêu sprint, các câu chuyện người dùng và nhiệm vụ đã chọn, cũng như các nhiệm vụ tương ứng. Giải quyết mọi câu hỏi hoặc lo ngại, và chính thức bắt đầu sprint.
Trong suốt sprint, tổ chức các buổi họp đứng hàng ngày để theo dõi tiến độ, điều chỉnh khi cần thiết và đảm bảo đội đang đi đúng hướng để đạt được mục tiêu sprint. Cuối sprint, tổ chức buổi xem xét sprint để trình bày công việc đã hoàn thành cho các bên liên quan và thu thập phản hồi. Cuối cùng, tổ chức buổi tổng kết sprint để phản ánh về quy trình sprint và xác định các khu vực cần cải thiện trong các sprint tiếp theo.
Kết luận
Lập kế hoạch sprint là cây cầu then chốt kết nối danh sách công việc sản phẩm với các nỗ lực phát triển có thể thực hiện được trong quản lý dự án Agile. Đây là một quá trình hợp tác và linh hoạt, cho phép các đội lựa chọn và cam kết thực hiện một tập hợp rõ ràng các câu chuyện người dùng hoặc nhiệm vụ cho một sprint cụ thể. Nhờ xem xét cẩn trọng về ưu tiên, các mối phụ thuộc và ước tính, lập kế hoạch sprint đảm bảo rằng đội luôn đồng bộ với các mục tiêu tổng thể của dự án và có thể mang lại giá trị cho khách hàng từng bước một.
Lập kế hoạch sprint hiệu quả vượt xa việc giao nhiệm vụ đơn thuần; nó thúc đẩy giao tiếp rõ ràng, trao quyền cho các thành viên đội để chủ động trong công việc của họ, và cuối cùng dẫn đến một mục tiêu sprint định hướng cho nỗ lực của đội. Việc lập kế hoạch sprint thường xuyên, kết hợp với các buổi họp đứng hàng ngày, xem xét sprint và tổng kết sprint, tạo nên nhịp đập của phát triển Agile, giúp các đội có thể thích nghi với yêu cầu thay đổi, duy trì sự tập trung và không ngừng cải thiện quy trình của mình.
Bằng cách thành thạo nghệ thuật lập kế hoạch sprint, các đội Agile có thể điều hướng bức tranh phức tạp của phát triển phần mềm một cách chính xác, đảm bảo rằng mỗi sprint đưa họ tiến gần hơn đến việc cung cấp các sản phẩm xuất sắc đáp ứng nhu cầu khách hàng và thúc đẩy thành công kinh doanh. Đây là một thực hành thể hiện rõ các nguyên tắc Agile về hợp tác, phản hồi nhanh và lấy khách hàng làm trung tâm, làm nên nền tảng cốt lõi của quản lý dự án Agile.











