Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

Команда программистов - это группа людей, которые разрабатывают или обслуживают компьютерное программное обеспечение . [1] Они могут быть организованы по-разному, но команда программирования без эгоизма и команда главного программиста были общими структурами. [2]

Описание [ править ]

Команда программистов состоит из людей, которые разрабатывают или обслуживают компьютерное программное обеспечение . [3]

Структура команды программистов [ править ]

Команды программистов могут быть организованы по-разному, но команда программирования без эго и команда главного программиста - это две общие структуры, которые обычно используются. [2] Основными определяющими факторами при выборе структуры команды программистов обычно являются: сложность, размер, продолжительность, модульность, надежность, время и общительность. [2]

Программирование без эго [ править ]

По словам Мэрилин Мантей, люди, входящие в децентрализованную команду программистов, более довольны своей работой. [2] Но команда программистов без эго состоит из десяти и менее программистов. Обмен кодами и цели устанавливаются среди членов группы. Лидерство в группе меняется в зависимости от потребностей и способностей, необходимых в определенное время. Отсутствие структуры в команде без эго может привести к снижению эффективности, результативности и способности обнаруживать ошибки в крупномасштабных проектах. Команды программирования без эго лучше всего подходят для очень сложных задач.

Команда главных программистов [ править ]

Команда главных программистов обычно состоит из трех человек, состоящих из главного программиста, старшего программиста и библиотекаря программ. При необходимости в команду добавляются дополнительные программисты и аналитики. Слабые стороны этой структуры включают отсутствие связи между членами команды, взаимодействие задач и выполнение сложных задач. Команда главных программистов лучше всего работает с более простыми и понятными задачами, поскольку поток информации в группе ограничен. Люди, которые работают в этой структуре команды, обычно сообщают о более низком рабочем духе. [2]

Общие рабочие станции [ править ]

Парное программирование [ править ]

Метод разработки, при котором два программиста работают вместе на одной рабочей станции.

Моб программирование [ править ]

Подход к разработке программного обеспечения, при котором вся команда работает над одним и тем же в одно и то же время, в одном пространстве и на одном компьютере.

Модели программирования [ править ]

Модели программирования позволяют группам разработчиков программного обеспечения разрабатывать, развертывать и тестировать проекты с использованием этих различных методологий.

Модель водопада [ править ]

Модель водопада, отмеченная как более традиционный [4] подход, представляет собой линейную модель добычи. Последовательность событий данной методики следующая:

  1. Соберите и задокументируйте требования
  2. Дизайн
  3. Код и модульный тест
  4. Провести тестирование системы
  5. Выполните пользовательское приемочное тестирование (UAT)
  6. Исправьте любые проблемы
  7. Доставим готовый продукт

Каждый этап отличается в процессе разработки программного обеспечения, и каждый этап обычно заканчивается до того, как может начаться следующий.

Команды программирования, использующие эту модель, могут спроектировать проект на ранних этапах процесса разработки, что позволяет группам сосредоточиться на кодировании и тестировании в течение основной части работы вместо того, чтобы постоянно повторять дизайн. Это также позволяет командам разрабатывать полностью и более тщательно, чтобы команды могли иметь полное представление обо всех результатах программного обеспечения .

Гибкая модель [ править ]

Модель разработки Agile - это более командный подход к разработке [4], чем предыдущая водопадная модель. Команды работают в режиме быстрой доставки / развертывания, который разбивает работу на этапы, называемые «спринтами». Спринты обычно определяются как две недели запланированных программных продуктов, предоставляемых каждой команде / члену команды.

После каждого спринта приоритеты работы меняются, и информация, полученная в предыдущем спринте, используется для будущего планирования спринта. Когда работа над спринтом завершена, она может быть просмотрена и оценена командой программистов и отправлена ​​обратно для другой итерации (например, следующего спринта) или закрыта, если завершена.

Общие принципы [5] по Проворному манифесту [6] являются следующими:

  • Удовлетворяйте клиентов и постоянно развивайте программное обеспечение.
  • Изменяющиеся требования принимаются ради конкурентного преимущества клиента.
  • Сосредоточьтесь на частой доставке работающего программного обеспечения. Предпочтение доставки будет отдано в кратчайшие сроки.
  • Разработчики и бизнесмены должны работать вместе на протяжении всего проекта.
  • В основе проектов должны лежать мотивированные люди. Обеспечьте им подходящую среду и поддержку, в которой они нуждаются. Им следует доверять в выполнении их работы.
  • Личное общение - лучший способ передачи информации в команду и из нее.
  • Работающее программное обеспечение - это главный показатель прогресса.
  • Гибкие процессы будут способствовать устойчивому развитию. Спонсоры, разработчики и пользователи должны иметь возможность поддерживать неопределенный постоянный темп.
  • Постоянное внимание к техническому совершенству и хорошему дизайну повысит маневренность.
  • Простота считается искусством максимизировать незавершенную работу, и это очень важно.
  • Самоорганизованные команды обычно создают лучшие проекты.
  • Через регулярные промежутки времени команда будет думать о том, как стать более эффективными, и соответствующим образом настраивать и корректировать свое поведение.

См. Также [ править ]

  • Межфункциональная команда
  • Scrum (разработка программного обеспечения)
  • Процесс разработки программного обеспечения
  • Программный процесс команды

Ссылки [ править ]

  1. Джек Белзер, Альберт Джордж Хольцман, Аллен Кент (1 октября 1979 г.), Энциклопедия компьютерных наук и технологий , 13 , ISBN 9780824722630CS1 maint: несколько имен: список авторов ( ссылка )
  2. ^ a b c d e Мэрилин Мантей (март 1981 г.). «Влияние структуры команды программистов на задачи программирования» (PDF) . Коммуникации ACM . Vol. 24 нет. 3. п. 106–113 . Проверено 26 марта 2019 .
  3. Джек Белзер, Альберт Джордж Хольцман, Аллен Кент (октябрь 1979 г.), Энциклопедия компьютерных наук и технологий , 13 , ISBN 9780824722630CS1 maint: несколько имен: список авторов ( ссылка )
  4. ^ а б Мэри Лотц (5 июля 2018 г.), Waterfall vs. Agile: Какая методология разработки является правильной для вашего проекта?
  5. ^ Linchpin SEO Team (26 марта 2019 г.), Руководство для начинающих по Agile-методу и схваткам
  6. ^ «Принципы гибкого манифеста» . 2019-06-11.