Cтраница 1
Бригада ведущего программиста может иметь также и некоторые недостатки. Скептики часто утверждают, что бригады ведущего программиста хороши для ведущих программистов, но не особенно вдохновляют остальных, потому что программистов часто тасуют из бригады в бригаду, что лишает их чувства ответственности и удовлетворения от выполненной работы. [1]
Основное достоинство концепции бригады ведущего программиста в том, что она позволяет вернуть специалистов высокого уровня на главное направление в создании программного обеспечения. Во многих организациях, связанных с программированием, специалисты с большим опытом полностью отходят от участия в работе над проектами. Люди часто считают отход от кодирования при первой возможности продвижением по службе. Такое отношение привело множество высококвалифицированных в технических вопросах специалистов на должности, связанные с управлением или кадрами, как можно более удаленные от задач непосредственной разработки программного обеспечения. Концепция бригады ведущего программиста пытается исправить эту ситуацию, устанавливая полезные и престижные должности непосредственно в программных проектах. [2]
Основное отличие хирургической бригады от бригады ведущего программиста в том, что члены бригады остаются в ней в течение всей работы над проектом и каждый из них имеет свою особую роль, учитывающую его особые таланты. Бригадой руководит ведущий программист ( хирург), но здесь он пишет все программы и всю документацию на продукцию бригады. В бригаде имеется также ассистент, который исследует альтернативные варианты, служит адвокатом дьявола для ведущего программиста и взаимодействует с остальными членами бригады. Брукс предлагает также, чтобы в бригаде был администратор: человек, занимающийся исключительно бюджетом, жилищными условиями, машинным временем, кадровыми вопросами. [3]
Хирургическая бригада, как и бригада ведущего программиста, включает также программиста-библиотекаря. [4]
Бригада ведущего программиста может иметь также и некоторые недостатки. Скептики часто утверждают, что бригады ведущего программиста хороши для ведущих программистов, но не особенно вдохновляют остальных, потому что программистов часто тасуют из бригады в бригаду, что лишает их чувства ответственности и удовлетворения от выполненной работы. [5]
Еще одно нововведение в организации проекта - мысль, что программисты должны работать официально оформленными бригадами - кладет конец традиционному взгляду на программирование как на деятельность в основном индивидуальную. Оказалось, что бригады программистов обладают многими существенными достоинствами: улучшается общение между программистами, вырабатываются общие стандарты качества и самоконтроля, члены бригады многому учатся друг у друга, поощряется безличное программирование, поскольку программисты рассматривают свои результаты как результаты бригады, а не индивидуальные, и легче обеспечивается преемственность, когда один из участников проекта неожиданно оставляет работу. Здесь рассматриваются три распространенных варианта концепции бригады программистов: бригада ведущего программиста, хирургическая бригада и демократическая бригада. [6]
На разработку программного обеспечения влияют сотни факторов, многие из них еще не выявлены. Более того, эти факторы не независимы. Например, нашумевший проект IBM для Нью-Йорк тайме часто рассматривается как свидетельство достоинств структурного программирования и бригады ведущего программиста. Невыясненным остается, однако, вопрос: какой процент успеха - результат этих методов, а какой - следствие других факторов, таких, как исключительно высокий класс занятых в проекте программистов. [7]
Нет единственно правильной для всех условий организации бригады, и в действительности во многих компаниях используются различные модификации трех основных методов ее организации. Если нельзя подобрать ведущего программиста, который пользуется всеобщим уважением, то демократическая бригада является наилучшей альтернативой. С другой стороны, возможно, что группа программистов может испытывать трудности при работе в демократической обстановке, без лидера, и тогда это потребует организации бригады ведущего программиста. [8]
Основное достоинство концепции бригады ведущего программиста в том, что она позволяет вернуть специалистов высокого уровня на главное направление в создании программного обеспечения. Во многих организациях, связанных с программированием, специалисты с большим опытом полностью отходят от участия в работе над проектами. Люди часто считают отход от кодирования при первой возможности продвижением по службе. Такое отношение привело множество высококвалифицированных в технических вопросах специалистов на должности, связанные с управлением или кадрами, как можно более удаленные от задач непосредственной разработки программного обеспечения. Концепция бригады ведущего программиста пытается исправить эту ситуацию, устанавливая полезные и престижные должности непосредственно в программных проектах. [9]
Она отличается тем, что не имеет формального лидера или предварительного распределения обязанностей. Отдельные члены бригады стремятся оказаться на высоте положения ( быть неформальным лидером), когда бригада переходит к тому этапу, в котором этот ее член наиболее квалифицирован. Бригада сама распределяет обязанности, основываясь на способностях ее членов. Поэтому такая бригада стремится принимать во внимание прежде всего сильные стороны ее членов. Большое различие между нею и бригадой ведущего программиста состоит в том, что демократическая бригада сохраняет свой состав, переходя от проекта к проекту. [10]