Xây phần mềm đúng cách: từ người dùng tới user story
Cho bạn đang học làm phần mềm, mới vào nghề BA, hay đang làm đồ án. Một dự án xuyên suốt, đi từ buổi phỏng vấn đầu tiên tới quyết định sau bốn tuần chạy thử.
Đăng ký miễn phí để lưu tiến độ từng khóa.
Vì sao app sinh viên hay "trật đường ray"
Phần lớn đồ án phần mềm bắt đầu bằng một câu: "nhóm mình làm app gì?". Cả nhóm chốt một ý tưởng nghe hay hay, rồi lao vào vẽ màn hình, chia việc, code. Tới lúc đưa cho người dùng thật xài thử mới té ngửa.
Lỗi đó hiếm khi nằm ở chuyện code dở. Nó nằm ở phần việc trước khi code, và sau khi ra mắt, hai phần mà trường học ít dạy. Bốn kiểu trật đường ray hay gặp nhất:
Ai nên học lộ trình này
Một câu chuyện đi suốt lộ trình
Bảy khóa đầu dùng chung một tình huống: Căng tin số, app đặt cơm cho căng tin của một trường đại học khoảng 9.000 sinh viên. Giờ cao điểm xếp hàng 20 tới 25 phút. Có hôm 12 giờ rưỡi quầy cơm đã hết món mặn. Có bạn dị ứng đậu phộng mà hỏi ai cũng không chắc món nào ăn được.
Mỗi khóa lấy kết quả của khóa trước làm đầu vào, nên học xong bạn sẽ thấy tận mắt một câu than trong buổi phỏng vấn đầu tiên đi qua từng bước như thế nào:
- Phỏng vấn"Thứ Hai em hay nhịn trưa, vì xếp hàng xong là trễ giờ vào lớp."
- InsightSinh viên có lớp 12:45 không ăn trưa kịp vì xếp hàng 20 tới 25 phút.
- Persona"Người chạy lịch", có bằng chứng từ ghi chú và thời khóa biểu.
- User storyLà Người chạy lịch, tôi muốn đặt trước một suất cho khung 11:35, để nhận món trong vài phút.
- Đo lườngSau bốn tuần: thời gian lấy suất khi đã đặt còn khoảng 3 phút.
Bạn gặp sáu người: ba bạn sinh viên, cô bếp trưởng 14 năm nghề, anh quản lý căng tin và chị chuyên viên phòng quản trị của trường. Khóa cuối đổi sang một bài toán khác để bạn tự làm từ đầu.
Tám bước, đi lần lượt
Khóa sau dùng kết quả của khóa trước. Mỗi khóa có sáu bài, mỗi bài khoảng 20 tới 30 phút đọc và 30 phút thực hành, kèm bài kiểm tra tình huống.
-
1
Phỏng vấn để hiểu vấn đề
Hỏi người dùng, hỏi người rành nghiệp vụ và hỏi người có quyền quyết định là ba chuyện khác nhau. Khóa này dạy bạn ba bộ câu hỏi cho ba kiểu người, và mẹo quan trọng nhất: hỏi chuyện đã xảy ra, đừng hỏi ý kiến.
- Mang vào
- Một đề bài
- Mang ra
- Ghi chép phỏng vấn, ghi chép quan sát, bảng thuật ngữ đầu tiên
6 bài học
-
2
Từ ghi chép tới insight
Sáu buổi phỏng vấn là cỡ 200 mẩu ghi chú. Bạn học gom nhóm, tách nỗi khổ thật khỏi mong muốn và khỏi giải pháp người dùng tự nghĩ ra, cân xem điều gì có nhiều bằng chứng, và xử lý khi người dùng với sếp muốn hai thứ ngược nhau.
- Mang vào
- Ghi chép từ bước 1
- Mang ra
- Vấn đề có bằng chứng, problem statement, nhật ký quyết định
6 bài học
-
3
Persona và User Journey
Persona ở đây không phải nhân vật bịa ra cho đẹp. Dòng nào cũng phải chỉ ra được nó lấy từ ghi chú nào. Bạn vẽ hành trình của người dùng, rồi vẽ luôn phần hậu trường, nơi mấy chức năng hay bị quên nhất đang nằm.
- Mang vào
- Vấn đề và problem statement
- Mang ra
- Persona, journey hiện tại, service blueprint, journey tương lai
6 bài học
-
4
Hiểu nghiệp vụ trước khi xây
Bước hay bị bỏ qua nhất, và là lý do app thiếu huỷ đơn, hoàn tiền, báo cáo. Bạn lập bảng thuật ngữ, nghe ra quy tắc người ta nói thoáng qua, chạy event storming rút gọn và vẽ vòng đời của từng đối tượng.
- Mang vào
- Ghi chép từ người rành nghiệp vụ, blueprint
- Mang ra
- Thuật ngữ, quy tắc nghiệp vụ, sơ đồ trạng thái, quy trình
6 bài học
-
5
Từ journey tới user story
Tới đây mới bàn tới tính năng. Từ một cơ hội nghĩ ra vài cách giải rồi mới chọn, dựng story map, viết user story theo INVEST, tách story cho vừa sprint, viết tiêu chí nghiệm thu và ghi ra cả những yêu cầu người dùng không bao giờ nói.
- Mang vào
- Journey tương lai, quy tắc, vòng đời
- Mang ra
- Story map, user story có tiêu chí nghiệm thu, yêu cầu phi chức năng
6 bài học
-
6
Không bỏ sót: kiểm tra độ đầy đủ
Câu hỏi ít ai dạy: làm sao biết mình chưa quên gì? Năm phép kiểm tra trên backlog, gồm ma trận tạo, xem, sửa, xoá; ma trận vai trò; đường không vui; truy vết về bằng chứng; và một buổi đi qua mọi thứ trước khi code.
- Mang vào
- Story map và user story
- Mang ra
- Backlog đã kiểm tra, truy được nguồn gốc
6 bài học
-
7
Đo lường thành công
Làm xong app chưa phải là xong. Bạn chọn chỉ số thành công từ chính problem statement, đo đường cơ sở trước khi ra mắt, lên kế hoạch ghi nhận dữ liệu, rồi đọc số liệu thật sau bốn tuần chạy thử để quyết định tiếp tục, sửa, dừng hay mở rộng.
- Mang vào
- Backlog sẵn sàng và bản chạy thử
- Mang ra
- Kế hoạch đo lường, đường cơ sở, quyết định cho vòng sau
6 bài học
-
8
Dự án cuối: Phòng học nhóm thư viện
Một bài toán khác hẳn để bạn tự làm từ đầu tới cuối: sáu bản phỏng vấn y như ngoài đời và một bảng số liệu, giấu 24 điều. Làm xong mới mở đáp án và đếm xem mình tìm được bao nhiêu.
- Mang vào
- Mọi thứ của bảy bước trước
- Mang ra
- Bộ hồ sơ hoàn chỉnh và điểm số trên 24
6 bài học
Lịch học gợi ý: 6 tuần
- Tuần 1Bước 1, và đi phỏng vấn ít nhất năm người cho đồ án của bạn.
- Tuần 2Bước 2 và bước 3.
- Tuần 3Bước 4, rồi đọc lại mô hình nghiệp vụ với một người rành nghề.
- Tuần 4Bước 5 và bước 6.
- Tuần 5Bước 7, và viết kế hoạch đo lường cho đồ án của bạn.
- Tuần 6Dự án cuối, chấm bài, rồi quay lại bước còn yếu.
Học nhanh hơn cũng được, nhưng đừng bỏ phần đi gặp người thật. Phần đó không khóa học nào làm thay bạn.
24 điều ẩn trong sáu buổi phỏng vấn
Bạn nhận sáu bản phỏng vấn y như ngoài đời: có người nói lan man, có người tự sửa lời, có người buột ra một quy tắc quan trọng giữa một câu chuyện khác. Kèm theo là bảng số liệu thư viện xuất từ sổ đăng ký.
Trong đó giấu 12 nỗi khổ, 3 mâu thuẫn, 6 quy tắc nghiệp vụ và 3 manh mối chỉ số liệu mới cho thấy, cùng vài điều nghe như yêu cầu mà không phải. Đáp án nói cho bạn biết cần luyện lại bước nào.
Học sao cho hiệu quả
- Đi đúng thứ tự. Nhảy thẳng tới user story là lặp lại đúng cái lỗi lộ trình này muốn sửa.
- Làm bài kiểm tra sau mỗi bài học. Câu hỏi là tình huống thật, sai câu nào đọc lại phần đó liền.
- Làm song song với đồ án của bạn. Học xong bước 1 thì tuần đó đi phỏng vấn năm người thật.
- Rủ bạn học chung. Phỏng vấn cần một người hỏi, một người ghi. Gom ghi chú thì ba người nhìn ra nhiều hơn một người.
- Dùng mẫu, nhưng đừng điền cho có. Mẫu nào cũng có sẵn ví dụ Căng tin số. Bắt đầu dự án của bạn thì xoá ví dụ đi.
Muốn đi sâu thêm về dữ liệu
Năm khóa này dùng chung ví dụ Căng tin số, nên học tiếp rất liền mạch.
Câu hỏi hay gặp
Mình là lập trình viên, có cần học không?
Có, nếu bạn từng nhận một yêu cầu rồi làm xong mới biết không ai cần nó. Bạn không cần thành BA; bạn sẽ biết hỏi đúng câu trước khi code, và nhìn ra chỗ thiếu trong một user story.
Không có ai để phỏng vấn thì sao?
Bắt đầu từ người gần nhất: bạn cùng lớp, nhân viên căng tin, thủ thư, người bán quán quen. Khóa 1 có cách xin 30 phút một cách lịch sự. Dự án cuối cũng có sẵn sáu bản phỏng vấn để bạn luyện.
Mất bao lâu để học hết?
Khoảng 6 tuần nếu mỗi tuần dành vài buổi tối và một buổi đi phỏng vấn. Riêng phần đọc và làm bài kiểm tra thì nhanh hơn nhiều; phần tốn thời gian và có giá trị nhất là áp vào dự án thật.
Có phải học hết theo thứ tự không?
Nên. Mỗi khóa dùng kết quả của khóa trước, và cùng một tình huống. Nếu bạn đã quen phỏng vấn, vẫn nên lướt khóa 1 để biết các nhân vật và con số của Căng tin số.
Học trên điện thoại được không?
Được, bài học và bài kiểm tra đều đọc được trên điện thoại. Các mẫu Excel thì nên mở trên máy tính.
Khác gì lộ trình BA từ số 0?
Lộ trình BA dạy nghề BA và con đường sự nghiệp. Lộ trình này dạy cách làm trọn một sản phẩm. Hai cái bổ sung cho nhau.
Bắt đầu từ một buổi phỏng vấn
Khóa đầu tiên chỉ cần bạn chịu khó đi nói chuyện với người thật. Phần còn lại, lộ trình dẫn bạn đi từng bước.