Введение
Данный принцип подчеркивает важность развития взаимосвязи внутри проекта. Это достигается с помощью
надлежащей организации коллектива и настройки эффективной среды сотрудничества.
|
|
Преимущества
|
-
Эффективность работы коллектива
-
Лучшая взаимосвязь между потребностями клиента и разработкой программного
обеспечения.
|
Что делать
|
-
Побуждайте сотрудников работать лучше
-
Создавайте автономные коллективы
-
Поощряйте взаимодействие сотрудников разных профилей (аналитиков, разработчиков,
тестировщиков)
-
Создавайте среду для эффективного сотрудничества
-
Управляйте возникающими артефактами и задачами так, чтобы увеличивать
сотрудничество и стимулировать интуицию сотрудников.
-
Объединяйте коллективы программистов, маркетологов и операторов
|
Чего не делать
|
-
Поощрять героизм разработчиков, желающих работать сверхурочно и даже в выходные.
-
Создавать коллектив из узко специализированных специалистов, обладающих мощными
средствами разработки при слабом сотрудничестве между ними и слабом взаимодействии
между различными средствами разработки. Этот подход является следствием
неправильного предположения, что если каждый сделает свою работу хорошо, то
результат будет хорошим.
|
|
Обсуждение
Программное обеспечение создается талантливыми и заинтересованными людьми при тесном сотрудничестве. Многие комплексные
системы требуют сотрудничества многих заинтересованных лиц, обладающих различными навыками. Часто крупные проекты
распределены территориально и во времени, что добавляет сложности к процессу разработки. По этим причинам "мягкие"
элементы разработки приложений - специалисты и сотрудничество между ними имеют очень большое значение в сообществе
разработчиков agile. Следование этим принципам требует прояснения следующих вопросов:
-
Как побуждать сотрудников работать лучше
-
В чем особенности взаимодействия коллектива при распределенной разработке?
-
Как организовать сотрудничество между коллективами, ответственными за бизнес-процессы, разработку приложений и
информационные технологии?
Первый шаг для достижения эффективного сотрудничества - побуждать участников коллектива добиваться наилучших
результатов. Идея автономного коллектива очень популярна в сообществе agile. За дополнительной информацией
обратитесь Концепция: Практики Agile и RUP); эта концепция подразумевает убеждение коллектива в
необходимости выполнить задачу и, затем предоставление этому коллективу полномочий принимать решения по всем
вопросам и непосредственно влиять на результат. Если люди знают, что результат зависит от них, они гораздо более
заинтересованы сделать работу хорошо. Девиз agile: "Создавайте проекты с заинтересованными людьми. Предоставьте им
условия и поддержку и доверьте им сделать работу."
Второй шаг - организовать сотрудничество между специалистами, ответственными за различные функции. Как говорит
Walker Royce, "Разработка приложений - это командный спорт". Итерационный подход увеличивает необходимость коллективной
работы. Необходимо убрать границы между аналитиками, разработчиками и тестировщиками и расширить их зоны
ответственности для того чтобы увеличить эффективность сотрудничества в условиях быстрой текучести. Каждый член
коллектива должен понимать цель и обладать видением всего проекта.
С простом команды необходимо создавать условия для эффективного сотрудничества. Эти условия позволяют
облегчить и автоматизировать сбор показателей и получение информации о статусах, а также автоматизировать управление
компоновкой и учет ресурсов при управлении конфигурацией. Это помогает освободить время, затрачиваемое на встречи, и
использовать это время для работы. Также эти условия должны увеличивать эффективность сотрудничества путем упрощения
сообщения между членами коллектива. Примерами таких условий могут быть как общие комнаты для участников проекта, так и
сетевые или Web решения, например, Wikis или интегрированные среды разработки и настройки, а также среды управления
изменениями.
С ростом важности программного обеспечения для основных бизнес-процессов растет необходимость эффективного
сотрудничества между коллективами. В большинстве организаций сообщение между коллективами, ответственными за ведение
бизнеса, разработку приложений и эксплуатацию приложений находится на низком уровне.
Главная цель данного принципа - объединить коллективы программистов, маркетологов, и операторов. С ростом
важности программного обеспечения в бизнесе необходимо создать тесное взаимодействие между следующими коллективами: 1)
принимающим решение о настоящем и будущем бизнеса, 2) разрабатывающим поддерживающее программное обеспечение и 3)
операторов приложений. В большинстве организаций сообщение между этими тремя коллективами находится на низком уровне.
|