Що таке "крос-функціональна команда" насправді? [зачинено]


18

Загальне значення "крос-функціональної команди" - це команда, яка об'єднує фахівців у різних галузях, необхідних для досягнення мети.

Але схоже, що в Agile крос-функціональність означає не тільки поєднання різних фахівців, але і змушення їх поєднання. Генрік Кніберг визначає крос-функціональну команду таким чином: "Крос-функціональний просто означає, що команда в цілому має всі навички, необхідні для створення продукту, і що кожен член команди готовий зробити більше, ніж просто свою справу".

Але де проведена лінія? Чи нормально просити розробників стати тестерами на ітерацію, якщо вона потрібна?


Загальноприйнято, що кожен розробник тестує свій код. Наприклад, команда Scrum не повинна мати спеціалізацій - кожен повинен вміти писати та перевіряти код. Причина полягає в тому, що на початку ітерації (спринту) нічого не слід перевіряти, тому чистий тестер не має нічого спільного.
Ладислав Мрнка

2
@LadislavMrnka Перехресний функціонал не означає, що ви все ще не повинні мати фахівців!
Майкл

@Michael: Так, у вас можуть бути спеціалісти, але вони повинні бути функціонально перехресними = вони повинні мати можливість виконувати й інші завдання.
Ладислав Мрнка

Бути спеціалістом не означає знати одне за рахунок усіх інших.
JeffO

3
Чому так часто я бачу розмови про те, що "програмісти повинні вміти тестувати", але ніколи "тестери не повинні вміти програмувати"?
Стів Фоллі

Відповіді:


11

Я вважаю, що багатофункціональна команда - це команда, яка включає людей з різних функцій компанії: інженерії, ІТ, технічного написання, маркетингу, фінансів, юридичних, продажів, HR, операцій, якості та виконавчої влади.

У великих компаніях ці "функції" розміщуються в бункери (напрямки управління), але для того, щоб виконати справи, вам, як правило, потрібен час когось із них.

Якщо ви робите TDD або щось подібне, так, це абсолютно нормально.

Однак загалом відповідальність за підписання на роботу розробників не повинна покладатися на тих самих розробників.


2
Це саме те, що крос-функціональність відсутня в гнучких методологіях, як Scrum.
Ладислав Мрнка

1
@Ladislav Mrnka: З питання не було зрозуміло, що це Agile. У методах Agile я все ще думаю, що це стоїть. У будь-якій методології вам іноді потрібно зробити щось поза сферою вашої компетенції ("функції"), щоб виконати роботу. C'est la vie, c'est la guerre!
Пітер К.

Чому "відповідальність за вихід із роботи розробника не повинна покладатися на тих самих розробників"? Не, якщо ви хочете скоротити час циклу.
Тодд Оуен

@ToddOwen І зниження якості програмного забезпечення.
Пітер К.

@Downvoter: Будь-який коментар щодо того, чому ви не згодні? :-)
Пітер К.

7

Міжфункціональна команда - це група, де функціональні експерти з різних областей збираються разом, щоб визначити, що потрібно будувати та оцінювати, чи корисно те, що будується. У спритних умовах такі оцінки трапляються часто.

Однак експерти з домену визначать, як виконати свою конкретну частину проекту . Розробники програмного забезпечення розроблятимуть програмне забезпечення. Тестери перевірять. Операційні люди запускають програмне забезпечення тощо.

Маючи думку про розробку, тестування та операції, надзвичайно корисно для визначення хорошого продукту, і саме тут лежить цінність багатофункціональних команд.


Я не думаю, що команда визначає, що потрібно будувати, але як її будувати. Власник продукту вирішує, що. Крім того, я думаю, що члени команди не повинні обмежувати свою діяльність лише сферою, для якої вони спеціалісти. Ідея полягає у виконанні завдань, які необхідно виконати для реалізації мети команди, створення продукту якості продукції.
Kwebble

4

Хороша багатофункціональна команда має і потребує людей, які є "джеком всіх професій", але також майстром деяких . Зазвичай один-два.

Наприклад, на тих, над якими я працював. Я спеціалізуюся на C ++ та декількох веб-мовах, але знаю близько мільйона. Я вільно мою редагування відео та 3D-медіа та подібні речі, а також бізнес та управління проектами. Тож у цій досить невеликій команді, яка приймає великі проекти, я б робила хардкорне кодування більшу частину дня і проводжу частину цього, роблячи бурхливу роботу на сайті та готуючи різні медіа.

Не багато проектів використовують усі мої навички, але покладаються на декілька, я думаю, що це «крос-функціональність». Деколи це справді хороший, ефективний дизайн, а інший - не дуже.

Слава Богу за те, що мені не потрібно бути розробником / адміністратором мережі .. це не весело. Ці малі справи в моєму районі .. божевільні. Хто довіряє свою мережу програмістам, Sheesh. Останнє, що вам потрібно - це побачити, як я намагаюся "налагодити" вашу таблицю маршрутизації: P


4

На мій погляд, «багатофункціональна команда» - це ще маса генералістів, які збираються разом, щоб виконати роботу. Край полягає в універсальності роботи з різними видами завдань, оскільки немає вузького місця, яке могло б трапитися в групі фахівців, де деякі люди можуть приймати лише деякі завдання.

Так, це нормально, щоб розробники ставали тестерами, якщо це потрібно, щоб зробити роботу для ітерації.


Перехресний функціонал може потрапити на ту територію, де це модна мова, яка може мати різні значення залежно від компанії. Деякі можуть вважати це найвищим рівнем, де розробником може бути що завгодно, від ховраха до тимчасового генерального директора, а інші можуть вважати його набагато більш спеціалізованим, так що це різні типи розробників. Деякий час розробнику, можливо, доведеться бути бізнес-аналітиком, системним адміністратором або тестувачем. Я пам’ятаю кілька років тому, коли я щойно розпочав роботу, а інший розробник, і я тестував випуск як одне з перших наших завдань, оскільки в той час був дефіцит тестерів, щоб правильно перевірити випуск.


1
Я не думаю, що розробники, які є тестерами, підходять міжфункціональним визначенням. Це здається більше схожим на сценарій типу розпродажних торгів, де розробники також тестують, приймають дзвінки на продаж, виходять і купують каву, щоб відновити офіс тощо, що може бути типовим для стартапу. Міжфункціональний сценарій більше схожий на ситуацію, коли, наприклад, ти можеш бути розробником, а я можу займатися маркетингом, але ми разом працюємо як команда для створення та продажу продукту.
jmort253

2

Багатофункціональна команда - це не лише сфери експертизи, а ставлення до виконання справ. Члени піднімаються і беруть на себе завдання. Ви не чуєте: "Це не моя робота".

Обмеження щодо проекту не завжди є технічними. Іноді у вас немає розкоші найняти експерта при кожному завданні і вимагають лише всіх працювати у своєму бажаному районі.

Ніколи не хочеш відтягувати диски від кодування, але в деяких командах це не може допомогти. Нормальне відносне.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.