bạn đã bao giờ làm việc trong một dự án mà sếp cứ liên tục đổi ý, deadline thì dí tới tấp, còn anh em trong team thì cãi nhau chí chóe vì không biết phải làm cái gì trước chưa?

ngày trước, mình từng quản lý một team làm phần mềm nhỏ. tụi mình làm việc theo kiểu truyền thống: lên kế hoạch thật hoành tráng từ đầu năm, hì hục code suốt sáu tháng, để rồi đến ngày ra mắt khách hàng phán một câu xanh rờn: “ơ, cái này đâu phải thứ tôi cần?”. cảm giác lúc đó vừa tức vừa bất lực.

đó là lúc mình đi tìm giải pháp và va phải “agile & scrum”. thay vì quăng cho bạn một mớ lý thuyết khô khan, đầy rẫy những từ chuyên ngành tiếng anh như trong sách giáo khoa, để mình giải thích nó qua lăng kính của một căn bếp nhà hàng cho bạn dễ hiểu nhé!

agile và scrum: đừng nhầm lẫn

rất nhiều người hay đánh đồng hai chữ này, nhưng thực ra chúng đóng hai vai trò khác nhau:

  • agile (tư duy): nó giống như việc bạn quyết tâm “ăn uống lành mạnh”. nó là một triết lý, ưu tiên sự linh hoạt, hợp tác và sẵn sàng thay đổi để tốt hơn.
  • scrum (công cụ): nó giống như chế độ ăn “keto” hay “eat clean” cụ thể. nó cung cấp cho bạn những luật chơi, các bước rõ ràng để đạt được mục tiêu “ăn uống lành mạnh” kia.

bài học: mình “có tư duy agile” và mình “sử dụng công cụ scrum”.

đội hình scrum: các vai trò trong căn bếp

thay vì những từ ngữ đao to búa lớn, hãy tưởng tượng team scrum của bạn là một gian bếp nhà hàng nhỏ, gọn gàng và không quá mười người:

  • product owner (po): đây là bếp trưởng lên thực đơn (executive chef). họ là người nắm rõ khẩu vị khách hàng và quyết định món nào bán ra sẽ có lãi nhất, mang lại giá trị cao nhất. tuy nhiên, po không can thiệp vào việc các đầu bếp xào nấu ra sao. trách nhiệm duy nhất của po là tối đa hóa giá trị sản phẩm.
  • scrum master (sm): đây không phải là sếp, mà là người hỗ trợ. họ đảm bảo dao luôn sắc, bếp luôn cháy, và nhắc nhở mọi người tuân thủ luật lệ vệ sinh an toàn thực phẩm. nếu anh em bị vướng mắc (ví dụ: máy hút mùi hỏng), sm sẽ đi dọn dẹp chướng ngại vật đó.
  • developers (những nhà phát triển): đây là các đầu bếp. dù bạn là người nhặt rau, thái thịt, thiết kế menu hay nấu chính, trong scrum, tất cả đều được gọi chung là “developers” – những người trực tiếp xắn tay áo lên tạo ra món ăn.

bài học: trong scrum không có chức danh “người quản lý tiến độ” hay “sếp”. mọi trách nhiệm được chia đều, và các đầu bếp có toàn quyền tự quyết định cách mình hoàn thành món ăn sao cho ngon nhất.

tương tác giữa các vai trò

dưới đây là biểu đồ mô tả chi tiết luồng tương tác và hỗ trợ lẫn nhau giữa po, sm, ba, và các vị trí cụ thể trong nhóm developers:

sơ đồ tương tác đội hình scrum

sơ đồ quy trình nhà bếp scrum

để bạn dễ hình dung, tụi mình cùng nhìn qua quy trình vận hành của căn bếp này nhé:

sơ đồ quy trình nhà bếp scrum

vòng lặp công việc: nấu một bữa ăn trong thời gian ngắn

scrum chia công việc thành những vòng lặp ngắn gọi là sprint (thường dài từ một đến bốn tuần). giống như việc bạn cam kết nấu xong một bữa ăn hoàn chỉnh trong đúng một tiếng đồng hồ vậy.

mọi hoạt động đều diễn ra trong cái sprint này:

  • sprint planning (lập kế hoạch): đầu giờ làm, cả team ngồi lại xem bếp trưởng (po) muốn nấu món gì hôm nay. các đầu bếp sẽ nhẩm tính xem sức mình nấu được bao nhiêu, rồi chốt danh sách công việc và cùng nhau đề ra một sprint goal (mục tiêu cốt lõi của bữa ăn này là gì).
  • daily scrum (họp đứng mười lăm phút): mỗi sáng, các đầu bếp đứng chụm lại đúng mười lăm phút. trọng tâm cốt lõi ở đây là: kiểm tra tiến độ hoàn thành sprint goal và điều chỉnh kế hoạch trong hai mươi bốn giờ tới. (lưu ý: không phải báo cáo hôm qua làm gì, hôm nay làm gì như cách làm cũ).
  • sprint review (đánh giá): hết giờ! bưng món ăn ra cho khách hàng nếm thử. khách khen chê gì thì tụi mình ghi nhận lại để lần sau nấu ngon hơn.
  • sprint retrospective (cải tiến): đóng cửa quán. cả team ngồi lại mổ xẻ xem tại sao hôm nay món canh bị mặn, và thống nhất ngày mai sẽ bớt muối lại. đây là lúc để tụi mình cải tiến quy trình làm việc.

bài học: đừng bao giờ bỏ qua buổi retrospective (cải tiến). đó là cơ hội duy nhất để team bạn chữa lành những “vết thương” và làm việc ăn ý hơn vào ngày mai.

các công cụ minh bạch của scrum

nếu không có đồ nghề rõ ràng, căn bếp sẽ loạn xị ngầu:

  • product backlog (sổ tay thực đơn): danh sách tất tần tật những món mà khách hàng muốn, do po quản lý.
  • sprint backlog (danh sách đi chợ hôm nay): những việc chi tiết mà các đầu bếp cam kết sẽ làm xong trong hôm nay để đạt được sprint goal.
  • increment (món ăn đã hoàn thành): món ăn dọn ra đĩa, trang trí đẹp mắt và sẵn sàng để khách ăn. chưa chín thì chưa được gọi là increment.
  • definition of done (dod - tiêu chuẩn hoàn thành): đây là khái niệm sinh tử. món ăn “sẵn sàng để khách ăn” bắt buộc phải dựa trên tiêu chuẩn nào? ví dụ: đĩa phải sạch, không có tóc rụng, thịt phải chín tới. thiếu dod, tính minh bạch của scrum bị phá vỡ hoàn toàn, vì mỗi người sẽ định nghĩa chữ “xong” một kiểu.

bài học: tính minh bạch là sống còn. mọi thứ phải được phơi bày rõ ràng và có tiêu chuẩn chung để cả team cùng nhìn về một hướng.

năm giá trị cốt lõi của scrum

cuối cùng, để căn bếp này hoạt động trơn tru, tụi mình cần có văn hóa tốt. scrum định nghĩa năm giá trị cốt lõi:

  • cam kết (commitment): đã hứa nấu món gì thì dồn hết tâm sức để hoàn thành đúng hạn.
  • tập trung (focus): chỉ nấu những món trong thực đơn hôm nay, không đứng núi này trông núi nọ.
  • cởi mở (openness): món nào hỏng thì nhận là hỏng, chia sẻ thẳng thắn về những khó khăn.
  • tôn trọng (respect): tin tưởng rằng các đầu bếp khác đều đang làm việc hết mình vì mục tiêu chung.
  • dũng cảm (courage): dám làm việc khó và dũng cảm nói “không” với những thứ không mang lại giá trị.

lời kết

scrum “dễ hiểu nhưng cực kỳ khó để thành thạo”. nó đòi hỏi sự kỷ luật thép và sự cởi mở để chấp nhận sai lầm của bản thân. từ ngày quyết tâm áp dụng scrum vào công việc, team của tụi mình không còn cảnh làm ra sản phẩm mà không ai xài nữa. hy vọng ví dụ về căn bếp này sẽ giúp bạn bớt ngộp thở hơn khi bước chân vào thế giới của agile và scrum!