Cách tốt nhất để chia tỷ lệ và phân chia một nhóm nhanh nhẹn xây dựng một ứng dụng web là gì?


14

Gần đây tôi đã gia nhập một công ty nơi tôi đang làm chủ scrum trong một dự án phát triển nhanh, xây dựng một ứng dụng web.

Nhóm này chỉ có kích thước tối đa cho một đội nhanh nhẹn (dự kiến ​​9 tuần tới). Chúng tôi đã nói về khả năng chia đội thành hai đội, không quá nhiều để rút ngắn tình trạng đứng lên (điều này không quá mức vào lúc này) nhưng để ngăn mọi người khỏi hoàn toàn buồn chán trong các phiên lập kế hoạch nước rút (một lần nữa không quá dài).

Có hai lớp rất khác biệt cho dự án - dev phụ trợ kỹ thuật cao (như phức tạp nghiêm trọng) và thiết kế / xây dựng / tích hợp UI. Có vẻ như khi các anh chàng phụ trợ đang nói về kỹ thuật, các anh chàng UI sẽ ra ngoài và ngược lại. Có vẻ như là cách hợp lý để chia nhóm nếu chỉ để có hiệu quả hơn về thời gian, nhưng tôi có một sự bảo lưu lớn trong đó tất cả những gì tôi thực sự có thể làm là giảm sự hợp tác và chia sẻ kiến ​​thức. Hai đội sẽ không thực sự có ý tưởng hay về những gì phần còn lại của đội đang xây dựng.

Có ai có bất kỳ kinh nghiệm trong việc đối phó với một cái gì đó như thế này?


Các đội có lãnh đạo không?
superM

Có nhiều đội là một sự đánh đổi. Một nhóm lớn (thậm chí lớn hơn 9) có thể ổn, so với chi phí vượt trội của scrums, v.v. Nó chỉ đòi hỏi một chút kỷ luật hơn trong các cuộc đấu tranh
Dave Hillier

Vâng, cả hai sẽ cần phải có các nhà lãnh đạo. Hiện tại một trong những đội sẽ không.
Ani Møller

Câu trả lời:


8

Thật không may là các anh chàng UI không quan tâm đến chi tiết của công việc phụ trợ phức tạp. Điều này nghe có vẻ giống như một chủ đề thảo luận cho một hồi tưởng. Việc chia nhóm theo kỷ luật sẽ tạo tiền lệ nguy hiểm, sẽ sớm như thế nào trước khi những người Yêu cầu bắt đầu khoanh vùng và không quan tâm đến những gì các anh chàng UI đang làm và yêu cầu nhóm của họ.

Tôi luôn luôn ủng hộ các lát cắt dọc cho các đội của tôi. UI nên lắng nghe những người kỹ thuật nói gì, vì họ là những người có thể giúp công việc của họ dễ dàng hơn (Ồ, tiện ích đó sẽ khiến bạn phải làm điều này, nếu chúng ta sử dụng tiện ích này thay thế).

Cá nhân tôi sẽ tập trung vào vấn đề của các anh chàng UI được phân vùng trước, sau đó khi vấn đề đó đã được giải quyết, hãy thảo luận về cách phân chia các đội một cách tốt nhất. Tôi không cố gắng làm phật lòng các anh chàng UI, có lẽ những người kỹ thuật cũng có thể làm nhiều hơn để làm cho các cuộc thảo luận của họ trở nên dễ hiểu hơn đối với các anh chàng UI.

Như những người khác đã nói, nhóm nên được phép tự tổ chức để xác định cấu trúc mới. Kinh nghiệm trong quá khứ đã dạy tôi tự tổ chức chỉ có thể thực sự hoạt động khi mọi người quan tâm đến nhóm, thay vì kỷ luật hoặc lợi ích của riêng họ.

Chúc mừng!


"Tôi luôn ủng hộ các lát cắt dọc cho các đội của mình" +1, tôi cũng vậy! Bạn luôn có thể có một số chuyên gia UI hoặc chuyên gia DB để đánh bóng những phần đó đến mức hoàn hảo, nhưng về tổng thể, phát triển lát cắt dọc luôn là cách ưa thích của tôi.
ozz

7

Đó thực sự là một ý tưởng tốt để chia các phần độc lập của đội thành các đội mới. Trong dự án lớn hơn, các nhà phát triển gần như không thể làm quen với toàn bộ dự án, vì vậy việc chia tách vẫn còn hiện diện chính thức hoặc không chính thức.

Mỗi nhóm mới nên có một trưởng nhóm / quản lý kỹ thuật, người có kiến ​​thức vững chắc về phạm vi nhóm của họ và cũng quen thuộc với công việc của các nhóm khác.

Sau đó, mỗi đội có thể có các cuộc họp riêng, và các nhà lãnh đạo của các đội khác có thể có mặt. Bằng cách này, bạn sẽ giảm số lượng người "chán", nhưng các nhóm sẽ biết những gì người khác đang làm và sẽ có thể cộng tác thành công.

Sự hợp tác trở nên quan trọng hơn nếu phạm vi của các đội giao nhau hoặc một nhóm phụ thuộc vào nhóm khác. Nhưng một lần nữa, không cần thiết phải có mặt cho cả nhóm _ trưởng nhóm có thể điều phối sự hợp tác.


5

Một khía cạnh quan trọng của Scrum là tự tổ chức .

Tôi đề nghị bạn thảo luận câu hỏi với nhóm và để họ giải quyết nó.

Tất cả các mối quan tâm của bạn đều có cơ sở, nhưng hãy nhớ rằng với tư cách là Scrum Master, công việc của bạn là huấn luyện và tạo điều kiện. Vì vậy, hãy hỏi họ làm thế nào họ sẽ giải quyết những vấn đề này. Họ sẽ sở hữu các giải pháp, và làm cho nó hoạt động.

Tôi sẽ thêm: nói chung, các nhóm chức năng chéo là con đường để đi.


Đây là những gì đã được đề xuất bởi một số thành viên trong nhóm, nhưng tôi không chắc đó là điều tốt nhất để làm. Do đó câu hỏi! Tôi nghĩ rằng thực tế là các anh chàng UI không quan tâm đến chi tiết của công việc phụ trợ phức tạp.
Ani Møller

4

Khi chia tách các đội, tôi luôn cố gắng ghi nhớ thực tế rằng một nhóm cần có khả năng mang lại giá trị cho khách hàng. Trong trường hợp của bạn, nó sẽ có cả nhà phát triển phụ trợ và frontend trong nhóm.


1
Trong các dự án lớn, khó có thể một nhóm làm việc trên mọi khía cạnh của sản phẩm và thường thì điều đó là không cần thiết. Vì vậy, tôi sẽ không đồng ý rằng mỗi nhóm tự nó sẽ có thể mang lại giá trị ngay lập tức cho khách hàng _ khách hàng không quan tâm đến giao diện người dùng hoặc phụ trợ, họ cần toàn bộ dự án. Mặt khác, UI và phụ trợ là các bộ phận của sản phẩm và các nhóm làm việc trên những sản phẩm mang lại giá trị cho sản phẩm.
superM

2
Vâng, chúng tôi chắc chắn không đồng ý. Câu hỏi là cho một đội ngũ nhanh nhẹn. Đối với tôi, giá trị doanh nghiệp cho người dùng phụ trợ làm việc không có giao diện là 0,0 Áp dụng tương tự cho giao diện làm việc không có phụ trợ. Và những gì các đội cá nhân sẽ giới thiệu về đánh giá nước rút? Trên hết, sẽ rất khó để sắp xếp công việc của cả hai đội.
199561

3
  1. Làm thế nào xa là front-end từ phụ trợ? Có thể dự đoán, chia tách là một lời khuyên tốt chỉ khi khoảng cách quá xa.

    • Nếu phần phụ trợ nói về lược đồ cơ sở dữ liệu, điều này không quá xa . Cả front-end và backend đều cần lắng nghe các cuộc thảo luận về lược đồ cơ sở dữ liệu.

    • Nếu phần phụ trợ nói về shending, bộ nhớ cache, độ trễ của đĩa, v.v., thì điều này là quá xa (trong đó phần phụ trợ tập trung vào sự thông cảm và tối ưu hóa cơ học, trong khi phần đầu tập trung vào tính thẩm mỹ của con người).

  2. Có một giao diện lập trình ổn định và rõ ràng giữa front-end và backend không?

    • Bằng cách ổn định và rõ ràng, điều đó có nghĩa là người dùng giao diện lập trình đó (nhà phát triển giao diện người dùng) sẽ không bị sa lầy với các thay đổi và sẽ không cần phải đọc các bức tường văn bản để tìm hiểu cách sử dụng chính xác.

    • Nhóm phụ trợ cần cung cấp API tốt và triển khai giả ngay từ đầu và chỉ sau đó mới bắt đầu phát triển thực sự.

    • Điều này không có nghĩa là API nên được đặt trong đá. Đây chỉ là một sự giảm thiểu hậu quả của việc chia một nhóm thành hai.

  3. Tại sao nhiều bài viết nhanh nhẹn đề nghị có các lát dọc? Dưới đây là một số thông tin cơ bản:

    • Hầu hết các bài viết nhanh thực sự khuyên bạn nên tránh công việc phụ trợ, từ góc độ chi phí.

    • Cũng đừng quên rằng một phần nhỏ các bài báo nhanh có sự thiên vị ngầm đối với các công ty khởi nghiệp.

    • Và đừng quên thực tế khắc nghiệt của tiếp thị - hầu hết khách hàng chỉ trả tiền cho mặt trước.

    • Công việc cuối cùng có xu hướng tốn kém và có kết quả chậm. Trừ khi một công ty đã được thành lập lâu dài và tạo ra lợi nhuận khá, tốt hơn hết là "thuê ngoài" phụ trợ bằng cách sử dụng các thư viện công nghệ và nguồn mở sẵn có.

    • Hầu hết các bài viết nhanh cũng khuyên bạn nên thực hiện front-end để nó có thể tồn tại trong một chuyển đổi phụ trợ. Lời khuyên này đi đôi với lời khuyên trước: nếu công nghệ sẵn có không đáp ứng tất cả các yêu cầu, hãy thử một cách khác.

  4. Thực tiễn có thể giảm thiểu hậu quả xấu từ việc chia tách một nhóm

    • Kết thúc ổn định
    • API ổn định
    • Tỷ lệ khuyết tật thấp back-end
      • Lý do: để tránh sự thất vọng
      • Làm thế nào: kiểm tra đơn vị
      • Không có nghĩa là: hiệu suất hoặc tối ưu hóa; nó chỉ cần đúng chức năng.
    • Hội nhập liên tục
    • Tính minh bạch trong giao tiếp, tiến độ và ra quyết định
    • Khuyến khích các cuộc thảo luận không chính thức giữa hai đội
    • Khuyến khích các thành viên trong nhóm (những người không tham gia) tham dự các cuộc họp của nhóm khác.
    • Thiết lập các cuộc họp chung thường xuyên và hồi tưởng chung
    • Các hoạt động xây dựng đội nhóm khác

0

Giống như những người khác, tôi chắc chắn sẽ đề nghị đi với các lát dọc. Đôi khi chúng được gọi là "Nhóm tính năng". Tôi khuyên bạn nên đọc những ưu / nhược điểm tại trang web Khung tỷ lệ Agile: http://scaledagileframework.com/scaled-agile-framework/team/features-components/

Lúc đầu, khi bạn tách, Chủ sở hữu sản phẩm và SDF Master của bạn có thể xử lý Backlog phát hành cho cả hai nhóm cũng như tồn đọng riêng cho từng nhóm tính năng. Tuy nhiên, khi bạn phát triển, bạn có thể sẽ cần phải thực hiện một tính năng tồn đọng của sản phẩm, sau đó được đưa vào nhiều nhóm nhanh nhẹn giải phóng các hồ sơ tồn đọng. Khi bạn mở rộng quy mô đến mức đó, bạn có thể sẽ cần một nhóm riêng quản lý các tính năng tồn đọng và sau đó đưa các tính năng xuống cho các nhóm riêng lẻ để triển khai. Trong cấu trúc đó, bạn có thể có một cái gì đó như thế này:

  1. Nhóm Agile 1: SM, PO, Nhóm chức năng chéo. Có nhóm tồn đọng riêng cho câu chuyện của họ.
  2. Nhóm Agile 2: SM, PO, Nhóm đa chức năng. Có nhóm tồn đọng riêng cho câu chuyện của họ.
  3. Nhóm quản lý chương trình: Quản lý sản phẩm, Quản lý phát hành, Kiến trúc sư doanh nghiệp. Có chương trình tồn đọng riêng của các sử thi cấp cao hơn và các tính năng sẽ được tổ chức, phân tích và sau đó được đưa vào các đội.

Các trang web an toàn có rất nhiều mát mẻ thứ để tổ chức các đội lớn hơn, và một số có thể hữu ích cho bạn khi bạn di chuyển đến một quy mô lớn hơn của các đội-of-đội.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.