CHƯƠNG 3 HIỆN TRẠNG CÔNG TY CỔ PHẦN VNG
4.1. Đánh giá mức độ phù hợp
Hai tác giả Boehm và Turner (2003) đã đưa ra năm yếu tố quyết định quan trọng trong việc đánh giá mức độ phù hợp của dự án ứng dụng Agile, theo đó, sự phù hợp trong các dự án của bộ phận phát triển phần mềm web của công ty VNG được thể hiện qua phân tích chi tiết từng yếu tố dựa trên kết quả phỏng vấn chuyên gia (là các trưởng dự án của bộ phận, 3 người) nhằm xác định các thông tin sử dụng cho việc đánh giá mức độ phù hợp (tham khảo thêm ở phụ lục D):
• Mức độ rủi ro thấp (Criticality)
Rủi ro được nói đến ở đây là mức ảnh hưởng của kết quả dự án đến những bên liên quan và ảnh hưởng đến kết quả hoạt động của công ty.
Với đặc trưng của mình là nhanh và linh hoạt, Agile cho phép các thay đổi yêu cầu (Change request) được thực thi ngay cả khi dự án đã bắt đầu, điều này là điểm cải tiến trong nhiều qui trình hiện tại mà ở đó sự thay đổi yêu cầu được xem là trở ngại rất lớn, làm mất thời gian và phá vỡ những cam kết (Baseline) ban đầu. Cũng vì vậy mà việc một sản phẩm cuối cùng không giống với thiết kế ban đầu là điều dễ dàng tìm thấy ở các dự án có ứng dụng Agile.
Điều này cũng đồng nghĩa với việc rủi ro phá vỡ cấu trúc, hoặc những cam kết ban đầu rất cao. Vì vậy, đối với những dự án cần thiết phát triển nhanh thành ứng dụng từ yêu cầu sơ khai ban đầu với mức độ ảnh hưởng thấp (rủi ro thấp) hoàn toàn phù hợp với Agile.
Bộ phận phát triển phần mềm VNG là nơi cho ra đời những sản phẩm có đặc điểm trên. Sản phẩm chủ yếu được sử dụng để giới thiệu hoặc cung cấp thông tin đến người dùng cuối, được điều hành bởi nội bộ công ty. Vì lý do cạnh tranh gay gắt trong môi trường kinh doanh cùng lĩnh vực, VNG buộc phải
giới thiệu hình ảnh sản phẩm/dịch vụ của mình với người dùng cuối sớm hơn đối thủ cạnh tranh, chính vì vậy, các sản phẩm web của công ty đòi hỏi sự phát triển nhanh và có nhiều thay đổi trong quá trình thực hiện.
• Thành viên nhóm có kinh nghiệm (Personnel)
Như giới thiệu ở trên, Agile chia nhỏ dự án ra nhiều phân đoạn, với mỗi phân đoạn kéo dài từ một đến hai tuần làm việc (gọi là sprint).
Mỗi Sprint là một tập hợp các khâu từ tiếp nhận yêu cầu, phân tích thiết kế, hiện thực hóa, kiểm thử (testing) và chuyển giao cho khách hàng (release).
Vì vậy, mỗi thành viên trong nhóm dự án phải đi qua các khâu trên trong quá trình thực hiện dự án của mình. Điều này đòi hỏi ở mỗi thành viên có kinh nghiệm làm việc ở tất cả các khâu, có khả năng làm việc độc lập, khả năng phân tích tốt, ngoài ra, giao tiếp tốt cũng là yếu tố quan trọng trong khâu tiếp xúc làm rõ yêu cầu và tiếp nhận thay đổi yêu cầu từ phía khách hàng trực tiếp.
Môi trường làm việc áp lực trong các dự án ứng dụng Agile thể hiện đặc tính phát triển nhanh và linh hoạt của qui trình, vì vậy, một điểm khác cần lưu ý ở đây là các thành viên dự án phải có khả năng làm việc nhóm tốt và chịu áp lực cao.
Với phần lớn thành viên nhóm dự án tốt nghiệp đại học chuyên ngành công nghệ thông tin (CNTT), trong đó, hơn 80% thành viên có kinh nghiệm làm việc trong cùng lĩnh vực từ 3 năm trở lên, các trưởng nhóm là những người hoạt động trong lĩnh vực này từ thời công ty còn sơ khai (5-6 năm), đội ngũ bộ phận phát triển phần mềm VNG cho thấy khả năng ứng dụng Agile vào các dự án là rất lớn.
• Yêu cầu thay đổi thường xuyên (Dynamism)
Tính linh hoạt trong Agile một lần nữa được nhấn mạnh ở những thay đổi yêu cầu trước, trong và sau khi dự án triển khai. Đối với một dự án ổn định (các yêu cầu được “chốt” lại – baseline – trong các tài liệu trước khi hiện thực hóa) thì việc ứng dụng Agile không thực sự cần thiết. Thông thường, những qui trình phát triển phần mềm trước đây đều đánh giá những thay đổi yêu cầu (Change
request – viết tắt là CR) là không mong muốn, vì vậy, việc sử dụng thời gian dự trữ (buffer) trong các dự án là điều không tránh khỏi. Tuy nhiên, các thay đổi trong các dự án này cũng sẽ được đáp ứng với ước tính cẩn thận, dĩ nhiên, thời gian và chi phí cho dự án cũng tăng lên theo, điều này gây khó khăn cho khách hàng.
Xuất phát từ nhu cầu quảng bá sản phẩm/dịch vụ công ty, VNG đã hình thành nên nhóm các dự án có nhu cầu tiếp nhận nhiều thay đổi yêu cầu ở mức thường xuyên, tùy thuộc vào chiến lược và kế hoạch cho từng sản phẩm.
Vì mức độ cạnh tranh và thời gian ra mắt sản phẩm giữa các đối thủ rất khắt khe nên dự án của công ty thường phát triển theo hướng nhanh, kịp thời, có nhiều thay đổi trong quá trình thực hiện. Ngoài ra, nhằm thu hút nhiều người dùng hơn nữa, các website công ty đều có kế hoạch thiết kế lại nhiều lần trong năm, quá trình thiết kế lại này là các thay đổi nội dung bên trong và giao diện bên ngoài. Như vậy, đánh giá về mức độ thay đổi thì các dự án tại bộ phận phát triển phần mềm có mức độ thay đổi nhiều, diễn ra thường xuyên.
• Kích thước nhóm nhỏ, các thành viên làm việc cùng một địa điểm (Size)
Vì tính tự quản cao trong qui trình Agile, mỗi thành viên đều phải trải qua các khâu phân tích, thiết kế, triển khai ứng dụng nên cấu trúc nhóm cũng là yếu tố rất quan trọng. Một nhóm trong các dự án theo Agile không nên quá 10-12 người. Điều này càng hợp lý hơn khi xét đến mức độ phản ứng nhanh nhạy trong cách thức làm việc, cách thức tiếp nhận và triển khai yêu cầu của dự án. Sự liên kết thông tin, yêu cầu của khách hàng giữa các thành viên của dự án cần được chính xác và kịp thời, tạo nên sự nhất quán trong mục tiêu triển khai và sự hợp lý trong việc kết nối các phần của dự án lại với nhau. Để đạt được điều này, các thành viên nhóm cần hoạt động/làm việc ở cùng một địa điểm.
Tại VNG, các thành viên của nhóm dự án hiện tại đang làm việc cùng với nhau tại cùng tòa nhà, mỗi nhóm từ 5 đến 6 thành viên. Với điều kiện như trên, rõ ràng cấu trúc nhóm dự án của bộ phận phát triển phần mềm web tại công ty VNG là phù hợp trong câu chuyện ứng dụng của Agile.
• Văn hóa công ty tự do, không yêu cầu trật tự (Culture)
Theo Boehm và Turner (2003), phương pháp Agile sẽ thành công trong tổ chức có nền văn hóa “phát triển trên sự hỗn loạn” (thrives on chaos) hơn tổ chức có nền văn hóa “phát triển trong trật tự” (thrives on order).
Công ty VNG là công ty internet có tốc độ phát triển rất nhanh về nhân sự, từ năm người chủ đạo trong ngày đầu thành lập (tháng 9 năm 2004) đến nay dân số tại VNG đã hơn mức 1.500 người. Theo thống kê nội bộ, tuổi trung bình tại công ty dưới 30. Với một tổ chức tập hợp rất nhiều thành viên trẻ, đầy nhiệt huyết, là sức mạnh về nguồn lực của công ty trong các nhiệm vụ đòi hỏi phát triển ứng dụng nhanh, sáng tạo và tập trung cao độ. Bên cạnh đó, nhân viên công ty VNG còn có niềm đam mê trên chính công việc của mình, kết hợp với văn hóa trẻ trung, tự do, sáng tạo và chịu trách nhiệm trên các sản phẩm do mình tạo ra.
Qua phân tích năm yếu tố quan trọng để đánh giá mức độ phù hợp khi ứng dụng Agile như trên tại công ty VNG, cho thấy sự phù hợp của Agile trong việc giải quyết các vấn đề mà bộ phận phát triển phần mềm của công ty đang gặp phải. Dựa trên cơ sở đó, tác giả lên kế hoạch ứng dụng vào thực tế qua một dự án thử nghiệm tại bộ phận.