Phát triển phần mềm và quy trình theo mô hình MVP
04 Jan 2020 | STARTUP MVPHiện nay, khi nói đến Phát triển phần mềm, hầu hết chúng ta đều biết đến các Qui trình xây dựng và các Mô hình phát triển thường thấy như Scrum, Agile, Waterfall hay Sprial. Đặc điểm chung của các mô hình trên đều đưa ra các tiêu chuẩn xây dựng một phần mềm theo giai đoạn, sự tương tác giữa các nhóm phát triển với nhau, tất cả đều nhằm một mục đích duy nhất là làm “smooth” tất cả các vị trí từ trong ra ngoài của sản phẩm. Giống như những “bánh răng” của một động cơ, chúng càng “nhịp nhàng” thì cỗ máy càng chạy nhanh.
Tuy nhiên, việc ứng dụng các mô hình trên luôn phụ thuộc vào từng loại dự án hay sản phẩm cần xây dựng. Thậm chí, hình thành nên cơ cấu, tổ chức một công ty. Các công ty phát triển năng động hiện nay đã áp dụng những qui trình linh hoạt hơn như Agile, cho phép dự án được kết thúc nhanh chóng, tương tác giữa các thành viên nhịp nhàng, tạo ra một văn hóa doanh nghiệp cởi mở, đầy linh hoạt.
Qui trình Agile có hơn 15 năm với triết lý và vận hành riêng. Điểm dễ nhận ra là không có bất kì quy tắc nào ở các khâu, mà đó là sự kinh nghiệm được truyền qua lại giữa các nhân viên, cho phép họ cải tiến mình và giúp dự án được suôn sẻ. Mấu chốt ở đây là Kinh nghiệm, các qui trình được tạo ra bởi kinh nghiệm của người đi trước được học hỏi, đúc kết và thường nhanh gọn. Bạn không nên áp dụng Agile nếu bạn chưa từng làm việc trong một dự án “Agile”.
Thay đổi linh hoạt mà vẫn giữ được cốt lõi.
Eric Ries, tác giả cuốn sách nổi tiếng The Lean Start Up đã chỉ ra một kĩ thuật phù hợp hơn và được coi như kim chỉ nam cho các Startup (những công ty hạn chế về nguồn lực, thời gian và tiền bạc trong thời kì đầu), giúp họ tiết kiệm quá trình “kiểm thử” sản phẩm, đồng thời giảm thiểu được rủi ro về thị trường do đó nhanh chóng xoay chuyển sản phẩm theo sát thực tiễn . Mô hình đó có tên là Minimum Viable Product — Sản phẩm khả thi mức tối thiểu. Dưới đây là một minh họa hay được sử dụng khi nói về MVP:
Minh họa của Henrik Kniberg (bài viết về MVP của tác giả)
Vậy MVP là gì, cách dùng MVP trong việc xây dựng và phát triển sản phẩm ra sao, tôi sẽ trình bày từng phần dưới đây.
MVP — Sản phẩm khả thi ở mức tối thiểu
Là một khái niệm. Một kĩ thuật phát triển một sản phẩm mới như một website, với vừa đủ các tính năng đáp ứng cho tập những người dùng — khách hàng đầu tiên. Sau đó trải qua nhiều lần sửa đổi, cải tiến và bổ sung theo feedback từ những người dùng ban đầu mới cho ra thiết kế cuối cùng hay đưa sản phầm on-air phục vụ tập khách hàng.
Minh họa bởi Rob Borley
Các keyword để thực hành theo phương pháp Lean đó là vòng lặp: Build-Measure-Learn. Cụ thể:
- Build: Xây dựng một bản MVP với những tính năng cốt lõi, cơ bản nhất. Cụ thể, là những tính năng xương sống — ít bị loại bỏ trong tương lai, mức độ về kĩ thuật nằm trong khả năng của team phát triển và trong phạm vi ngân sách giới hạn ban đầu. Lưu ý rằng, những tính năng xây dựng trong bản MVP này có thể bị thay đổi hoặc nâng cấp, vì vậy sự hoàn thiện các chức năng cần đạt được các mục tiêu đã định (tạo ra giá trị sản phẩm và có tính khả dụng).
- Measure: Đưa sản phẩm đến một nhóm các đối tượng khách hàng tiềm năng hoặc chỉ định cụ thể để đánh giá tính khả dụng *và *tính thực tiễn. Nhờ vào các kết quả đo lường thực tế đó, product owner đánh giá được rủi ro và biết được dự án đang đi đúng hướng hay không, cần điều chỉnh, đéo bám sản phẩm bằng chiến lược kinh doanh như nào.
- Learn: là sự học hỏi có kiểm chứng. Dựa trên các kết quả đo lường bằng con số cụ thể, chỉ ra rằng sự thay đổi nào là cần thiết, cần bổ sung thêm cái gì, bỏ cái nào trong bản MVP tiếp theo.
Vòng lặp BML (Build-Measure-Learn)
Có thể thấy rằng vòng lặp phản hồi trên cho ra một version sản phẩm (MVP) tiếp cận khách hàng nhanh chóng, có được sự phản hồi NHANH HƠN — ÍT RỦI RO HƠN — ĐỠ TỐN KÉM HƠN. Cứ như vậy, qua các bản MVP sẽ dần hoàn thiện và đi đúng hướng sát theo các mục tiêu đã xác định, trên hết là tính “thực tiễn” và “khả dụng” được đảm bảo.
Comments