HƯỚNG DẪN VIẾT PROPOSAL (SCRUM)
GIỚI THIỆU
Chương này nhằm cung cấp cho sinh viên cái nhìn tổng quan về quy trình Scrum và vai trò thiết yếu của tài liệu Proposal trong giai đoạn khởi đầu của một dự án phát triển phần mềm. Việc hiểu rõ cách viết Proposal sẽ giúp nhóm phát triển xác định rõ mục tiêu, phạm vi, và yêu cầu ban đầu của sản phẩm, từ đó xây dựng Product Backlog và kế hoạch Sprint hiệu quả hơn.
TỔNG QUAN VỀ SCRUM
Scrum là một framework phát triển phần mềm theo phương pháp Agile, tập trung vào:
Tính linh hoạt
Giao tiếp thường xuyên
Cải tiến liên tục
Scrum gồm 3 vai trò chính:
Product Owner: đại diện khách hàng, quyết định tính năng sản phẩm
Scrum Master: hỗ trợ nhóm tuân thủ Scrum, gỡ rối
Development Team: nhóm phát triển phần mềm
Các bước trong Scrum:
Sprint Planning: lập kế hoạch Sprint
Daily Scrum: họp mỗi ngày
Sprint Review: trình bày sản phẩm sau Sprint
Sprint Retrospective: rút kinh nghiệm
5 giá trị cốt lõi:
Cam kết (Commitment)
Tập trung (Focus)
Cởi mở (Openness)
Tôn trọng (Respect)
Can đảm (Courage)
TẠI SAO CẦN VIẾT PROPOSAL
Proposal - tài liệu xác định hướng đi của dự án
Định nghĩa bài toán
Trình bày giải pháp sơ bộ
Xác định phạm vi và nguồn lực ban đầu
Truyền đạt ý tưởng giữa nhóm phát triển và stakeholder
Lợi ích chính
Giảm hiểu lầm yêu cầu
Tạo cơ sở cho Product Backlog
Tăng tính chuyên nghiệp cho nhóm sinh viên
CẤU TRÚC MỘT BẢN PROPOSAL TỐT
Một bản Proposal
Tiêu đề và thông tin dự án
Bối cảnh: mô tả tình huống cần giải quyết
Mục tiêu: sản phẩm cần đạt được
Phạm vi: tính năng dự kiến, chức năng chính
Yêu cầu ban đầu: các yêu cầu đã rõ (không chi tiết)
Giả định và ràng buộc:
Công nghệ sử dụng
Thời gian, nguồn lực nhóm
Nguồn lực: số thành viên, kỹ năng
Ước lượng sơ bộ: effort/time dự kiến
Phụ lục (nếu có): sơ đồ, hình ảnh, khảo sát
QUY TRÌNH VIẾT PROPOSAL
Các bước chính
Thu thập thông tin:
Phỏng vấn người dùng/giảng viên
Tìm hiểu sản phẩm tương tự
Phân tích và định hướng giải pháp:
Xác định vấn đề trọng tâm
Chọn hướng giải quyết phù hợp năng lực
Viết nháp Proposal:
Bám theo template
Ưu tiên ngắn gọn, dễ hiểu
Thảo luận nhóm:
Góp ý, chỉnh sửa
Trình bày lại bản cuối
Trình bày với giảng viên (nếu là đồ án)
Template proposal mẫu
Ví dụ: Dự án "Hệ thống quản lý thư viện"
Tiêu đề: Xây dựng hệ thống quản lý thư viện
Bối cảnh: Hiện tại việc quản lý mượn/trả sách thực hiện bằng giấy, gây mất thời gian
Mục tiêu: Tự động hóa quản lý mượn, trả, tìm kiếm sách
Phạm vi:
Đăng ký người dùng
Quản lý mượn/trả
Tra cứu sách
Ràng buộc: Thời gian 12 tuần, nhóm 4 người
Nguồn lực: Sử dụng PHP/MySQL
Ước lượng công sức: 400 giờ công
Phụ lục: sơ đồ use case sơ bộ
SAI LẦM THƯỜNG GẶP
Viết chung chung: không xác định rõ mục tiêu
Không xác định phạm vi: khiến backlog quá rộng
Ngôn ngữ mơ hồ: gây hiểu lầm khi chia task
Không có số liệu hoặc minh chứng
Bỏ qua ràng buộc thực tế: như deadline học kỳ, kỹ năng nhóm
LƯU Ý TRONG MÔI TRƯỜNG HỌC THUẬT
Chọn đề tài phù hợp thời lượng môn học
Làm rõ vai trò các thành viên
Sử dụng ngôn ngữ học thuật kết hợp kỹ thuật
Có thể dựa vào yêu cầu giả lập từ giảng viên
Trình bày Proposal dưới dạng Word + thuyết trình Slide
CÂU HỎI ÔN TẬP
Scrum có bao nhiêu vai trò chính? Kể tên.
Proposal dùng để làm gì trong dự án Scrum?
Một bản Proposal tốt cần có những phần nào?
Nêu 3 sai lầm phổ biến khi viết Proposal.
Có nên viết Proposal quá chi tiết từ đầu không? Vì sao?
BÀI TẬP THỰC HÀNH
Bài tập 1: Viết một bản Proposal cho đề tài: “Ứng dụng đặt vé xe khách trực tuyến”.
Bài tập 2: Phân tích một Proposal mẫu từ Internet và đánh giá tính rõ ràng, hợp lý.
Bài tập 3: Làm việc nhóm 3 người: Đề xuất 1 ý tưởng ứng dụng, viết phần mục tiêu và phạm vi trong Proposal.
TÀI LIỆU THAM KHẢO
The Scrum Guide, Ken Schwaber & Jeff Sutherland
Agile Estimating and Planning, Mike Cohn
Giáo trình Phát triển phần mềm hướng Agile, NXB Giáo Dục
Bài giảng các môn Phân tích và thiết kế hệ thống / Quản lý dự án phần mềm
» Các tin khác: