12.6 LÀM THẾ NÀO SCRUM CÓ THỂ KHẮC PHỤC ĐƯỢC CÁC VẤN
12.6.1 Các Nguyên tắc của Phương pháp Phát triển Agile là gì?
Trong 40 năm qua, nhiều lựa chọn thay thế cho SDLC đã được đề xuất, bao gồm mơ hình RAD (Rapid Application Development), quy trình hợp nhất, lập trình cực đoan, Scrum, và những giải pháp khác. Các kỹ thuật này đã giải quyết các vấn đề của
SDLC và vào đầu thế kỷ trước, triết lý của họ đã kết hợp lại thành cái được gọi là Phát triển Agile, có nghĩa là một q trình phát triển tuân theo các nguyên tắc trong Hình 12-20 . Scrum là một kỹ thuật Agile và cũng tuân thủ các nguyên tắc này.
Expect, even welcome, changes in requirements
Frequently deliver working version of the product
Work closely with customer for the duration
Design as you go
Test as you go
Team knows best how it's doing/how to change
Can be used for business processes, information systems, and applications development
Bảng 12.3 - Nguyên tắc phát triển Agile (Scrum)
Nguyên tắc 1
Scrum và các kỹ thuật Agile khác mong đợi và thậm chí hoan nghênh sự thay đổi. Bởi vì các hệ thống được tạo ra để giúp các tổ chức và mọi người đạt được chiến lược của họ, và các yêu cầu càng thay đổi, thì chúng càng tiến gần đến việc tạo điều kiện cho các chiến lược. Kết quả đạt được tốt hơn và làm hài lòng hơn cho cả người dùng và nhóm phát triển.
Nguyên tắc 2
Scrum và các quy trình phát triển Agile khác được thiết kế để thường xuyên cung
cấp các phiên bản hoạt động của một số phần của sản phẩm. Thường là từ 1 đến 8
tuần và không lâu hơn. Và vào cuối kỳ, họ sẽ có một số sản phẩm có thể sử dụng được cũng như có giá trị đối với doanh nghiệp.
Do đó , khơng giống như SDLC, các kỹ thuật Agile mang lại lợi ích sớm và thường
xun hơn. Với SDLC thì khơng có giá trị nào được tạo ra cho đến phần cuối cùng của quy trình. Xét về giá trị thời gian của tiền bạc, chỉ riêng đặc điểm này đã khiến các kỹ thuật Agile trở nên đáng kỳ vọng hơn.
Nguyên tắc 3:
Nhóm phát triển sẽ làm việc, hợp tác chặt chẽ với khách hàng cho đến khi dự án
kết thúc. Một người biết các yêu cầu nghiệp vụ phải ln có mặt và có khả năng trình
bày rõ ràng, làm rõ chi tiết về các yêu cầu để đảm bảo rằng nhóm hiểu được mục đích và giá trị của ứng dụng đối với khách hàng. Ngoài ra, khách hàng cần có mặt để kiểm tra sản phẩm đang phát triển.
Nguyên tắc 4:
Là một nguyên tắc khó chấp nhận với nhiều nhà phát triển do thay vì thiết kế hệ thống hồn chỉnh ngay từ đầu, thì chỉ những phần của thiết kế cần thiết để hồn thành cơng việc mới được thực hiện trước. Đôi khi đây được gọi là thiết kế đúng lúc. Nhìn bề ngồi thì nó khơng hiệu quả, tuy nhiên kinh nghiệm cho thấy rằng có quá nhiều đội ngũ đã xây dựng các thiết kế cơng phu và hồn chỉnh nhưng hóa ra nó hồn tồn khơng thực tế khi các yêu cầu thay đổi.
Tiến hành kiểm tra là hiển nhiên nếu nhóm phát triển liên tục cung cấp các phiên
bản của sản phẩm. Thử nghiệm ban đầu được tiến hành giữa các thành viên của nhóm nhưng cũng liên quan đến khách hàng doanh nghiệp.
Nguyên tắc 6:
Các nhóm phát triển biết họ đang hoạt động tốt như thế nào. Họ biết khá rõ điểm
mạnh, điểm yếu, điểm nghẽn và các vấn đề trong quy trình. Nguyên tắc này là một phần của phương pháp luận phát triển Agile. Vào cuối mỗi cột mốc có thể phân phối hoặc một số cột mốc (ngắn) khác, nhóm phát triển họp mặt để đánh giá hoạt động của nó và cách nó có thể cải thiện.
Nguyên tắc 7:
Các phương pháp luận phát triển Agile là phương pháp chung. Chúng có thể được áp dụng để tạo ra các quy trình kinh doanh, hệ thống thơng tin và ứng dụng.