Một đội ngũ chức năng chéo thực sự là gì? [đóng cửa]


18

Ý nghĩa chung của "nhóm đa chức năng" là một nhóm kết hợp các chuyên gia trong các lĩnh vực khác nhau được yêu cầu để đạt được mục tiêu.

Nhưng có vẻ như trong chức năng chéo Agile có nghĩa là không chỉ kết hợp các chuyên gia khác nhau, mà còn khiến chúng trộn lẫn. Henrik Kniberg định nghĩa nhóm đa chức năng theo cách này: " Đa chức năng chỉ có nghĩa là toàn bộ nhóm có tất cả các kỹ năng cần thiết để xây dựng sản phẩm và mỗi thành viên trong nhóm sẵn sàng làm nhiều hơn là chỉ việc của họ."

Nhưng đường được vẽ ở đâu? Có phải là bình thường để yêu cầu các nhà phát triển trở thành người thử nghiệm cho một lần lặp nếu nó được yêu cầu?


Điều phổ biến là mỗi nhà phát triển đang kiểm tra mã của mình. Ví dụ, nhóm Scrum không nên có chuyên môn - mọi người sẽ có thể viết và kiểm tra mã. Lý do là vào lúc bắt đầu lặp lại (chạy nước rút) không có gì để kiểm tra nên người kiểm tra thuần túy không có gì để làm.
Ladislav Mrnka

2
@LadislavMrnka Chức năng chéo không có nghĩa là bạn vẫn không nên có chuyên gia!
Michael

@Michael: Có, bạn có thể có các chuyên gia nhưng họ nên có chức năng chéo = họ cũng có thể thực hiện các nhiệm vụ khác.
Ladislav Mrnka

Trở thành một chuyên gia không có nghĩa là phải biết một điều với chi phí của tất cả những người khác.
JeffO

3
Tại sao tôi thường thấy nói về "lập trình viên nên có thể kiểm tra" nhưng không bao giờ "người kiểm thử nên có thể lập trình"?
Steve Folly

Câu trả lời:


11

Tôi nghĩ rằng một nhóm đa chức năng là một nhóm bao gồm những người từ các chức năng khác nhau của một công ty: kỹ thuật, CNTT, viết kỹ thuật, tiếp thị, tài chính, pháp lý, bán hàng, nhân sự, hoạt động, chất lượng và điều hành.

Trong các công ty lớn hơn, các "chức năng" này được đưa vào silo (dòng quản lý), nhưng để hoàn thành công việc, bạn thường cần thời gian của một ai đó từ tất cả chúng.

Nếu bạn đang làm TDD hoặc một cái gì đó tương tự, vâng, nó hoàn toàn bình thường.

Tuy nhiên, nói chung, trách nhiệm đăng xuất khỏi công việc của nhà phát triển không nên nằm trong tay của những nhà phát triển tương tự.


2
Đây chính xác là những gì chức năng chéo không có trong các phương pháp nhanh như Scrum.
Ladislav Mrnka

1
@Ladislav Mrnka: Không rõ ràng về câu hỏi rằng đây là đặc thù của Agile. Trong phương pháp Agile, tôi vẫn nghĩ nó đứng. Trong bất kỳ phương pháp nào , đôi khi bạn cần phải làm một cái gì đó bên ngoài lĩnh vực chuyên môn của bạn ("chức năng") để hoàn thành công việc. C'est la vie, c'est la guerre!
Peter K.

Tại sao "trách nhiệm đăng xuất khỏi công việc của nhà phát triển không nên nằm trong tay những nhà phát triển tương tự"? Không nếu bạn muốn giảm thời gian chu kỳ.
Todd Owen

@ToddOwen Và giảm chất lượng phần mềm.
Peter K.

@Downvoter: Bạn có nhận xét gì về lý do tại sao bạn không đồng ý không? :-)
Peter K.

7

Một nhóm đa chức năng là một nhóm nơi các chuyên gia chức năng từ các lĩnh vực khác nhau kết hợp với nhau để xác định những gì cần xây dựng và để đánh giá xem những gì đang được xây dựng có hữu ích hay không. Trong một môi trường nhanh nhẹn, những đánh giá này sẽ xảy ra thường xuyên.

Tuy nhiên, các chuyên gia tên miền sẽ xác định cách thực hiện phần cụ thể của họ trong một dự án . Các nhà phát triển phần mềm sẽ phát triển phần mềm. Người kiểm tra sẽ kiểm tra. Người vận hành sẽ chạy phần mềm, v.v.

Có ý kiến ​​về phát triển, thử nghiệm và vận hành là vô cùng hữu ích trong việc xác định một sản phẩm tốt và đó là giá trị của các nhóm chức năng chéo.


Tôi không nghĩ nhóm xác định xây dựng cái gì, nhưng làm thế nào để xây dựng nó. Các chủ sở hữu sản phẩm quyết định những gì. Ngoài ra tôi nghĩ các thành viên trong nhóm không nên giới hạn các hoạt động của mình trong một lĩnh vực mà họ là chuyên gia. Ý tưởng là thực hiện các nhiệm vụ cần thực hiện để thực hiện mục tiêu của nhóm, tạo ra một sản phẩm chất lượng sản xuất.
Kwebble

4

Một nhóm đa chức năng tốt có và cần những người 'là người nắm giữ tất cả các giao dịch' nhưng cũng là bậc thầy của một số . Thường là một hoặc hai.

Ví dụ, trên những cái tôi đã làm việc. Tôi chuyên về C ++ và một vài ngôn ngữ web, nhưng tôi biết khoảng một triệu. Tôi thành thạo với chỉnh sửa video và phương tiện 3D và những thứ đó ở bên cạnh cộng với quản lý dự án và kinh doanh. Vì vậy, trong nhóm khá nhỏ này tham gia vào các dự án lớn, tôi sẽ thực hiện một số công việc mã hóa hầu hết thời gian trong ngày và dành một phần cho công việc đó trên trang web và sẵn sàng cho các phương tiện truyền thông khác nhau.

Không có nhiều dự án sử dụng tất cả các kỹ năng của tôi nhưng để dựa vào nhiều dự án, tôi nghĩ đó là 'chức năng chéo'. Một số lần nó là một thiết kế thực sự tốt, hiệu quả, những lần khác không quá nhiều.

Cảm ơn Chúa vì tôi không phải là một nhà phát triển / quản trị mạng .. điều đó không vui chút nào. Những doanh nghiệp nhỏ trong khu vực của tôi..rất điên rồ. Ai tin tưởng mạng của họ cho các lập trình viên, sheesh. Điều cuối cùng bạn muốn là thấy tôi cố gắng 'gỡ lỗi' bảng định tuyến của bạn: P


4

Một "nhóm đa chức năng" trong tâm trí tôi là một nhóm các nhà tổng hợp đến với nhau để hoàn thành công việc. Lợi thế của tính linh hoạt là xử lý các loại nhiệm vụ khác nhau vì không có nút thắt nào sẽ xảy ra trong một nhóm các chuyên gia nơi một số người chỉ có thể đảm nhận một số nhiệm vụ.

Có, việc các nhà phát triển trở thành người thử nghiệm là điều bình thường nếu bắt buộc phải hoàn thành công việc cho một lần lặp.


Đa chức năng có thể rơi vào lãnh thổ đó, nơi nó là một từ thông dụng có thể có nhiều ý nghĩa khác nhau tùy thuộc vào công ty. Một số người có thể coi nó là cấp cao nhất, trong đó một nhà phát triển có thể là bất cứ thứ gì từ một gopher đến một CEO tạm thời và những người khác có thể xem nó chuyên biệt hơn nhiều để nó là loại nhà phát triển khác nhau được sử dụng. Một nhà phát triển có thể phải là một nhà phân tích kinh doanh, quản trị hệ thống hoặc người kiểm tra một số thời gian. Tôi nhớ cách đây vài năm, khi tôi mới bắt đầu một công việc và một nhà phát triển khác và tôi đang thử nghiệm một bản phát hành như một trong những nhiệm vụ đầu tiên của chúng tôi vì lúc đó thiếu người kiểm tra để kiểm tra bản phát hành đúng cách.


1
Tôi không nghĩ các nhà phát triển là người thử nghiệm phù hợp với định nghĩa đa chức năng. Điều đó có vẻ giống như một kịch bản loại giao dịch mà các nhà phát triển cũng kiểm tra, thực hiện các cuộc gọi bán hàng, đi ra ngoài và mua cà phê để đặt lại văn phòng, v.v., có thể là điển hình trong khởi nghiệp. Một kịch bản đa chức năng có vẻ giống như một tình huống, ví dụ, bạn có thể là nhà phát triển và tôi có thể tiếp thị, nhưng chúng tôi làm việc cùng nhau như một nhóm để xây dựng và tiếp thị sản phẩm.
jmort253

2

Một nhóm đa chức năng không chỉ là về lĩnh vực chuyên môn mà là thái độ đối với việc hoàn thành công việc. Các thành viên bước lên và nhận nhiệm vụ trong tầm tay. Bạn không nghe thấy, "Đó không phải là công việc của tôi."

Những ràng buộc đối với một dự án không phải lúc nào cũng là kỹ thuật. Đôi khi bạn không có sự sang trọng để thuê một chuyên gia trong mọi nhiệm vụ và chỉ yêu cầu mọi người làm việc trong khu vực họ thích.

Bạn không bao giờ muốn kéo các nhà phát triển ra khỏi mã hóa, nhưng trong một số đội, điều đó không thể giúp được. Bình thường là tương đố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.