Гибкая методология разработки

Материал из Seo Wiki - Поисковая Оптимизация и Программирование
Перейти к навигацииПерейти к поиску
Разработка программного обеспечения
Процесс разработки ПО
Шаги процесса

Анализ | Проектирование | Реализация | Тестирование | Внедрение | Сопровождение

Модели / Методы

Agile | Cleanroom | Итеративная | RAD | Scrum | RUP | OpenUP | MSF | Спиральная | Водопад | XP

Сопутствующие дисциплины

Конфигурационное управление | Документирование | Управление проектами


Гибкая методология разработки (англ. Agile software development) — это концептуальный каркас, в рамках которого выполняется разработка программного обеспечения. Существует несколько подобных методик.

Большинство гибких методологий нацелены на минимизацию рисков, путём сведения разработки к серии коротких циклов, называемых итерациями, которые обычно длятся одну-две недели. Каждая итерация сама по себе выглядит как программный проект в миниатюре, и включает все задачи, необходимые для выдачи мини-прироста по функциональности: планирование, анализ требований, проектирование, кодирование, тестирование и документирование. Хотя отдельная итерация, как правило, недостаточна для выпуска новой версии продукта, подразумевается, что гибкий программный проект готов к выпуску в конце каждой итерации. По окончании каждой итерации, команда выполняет переоценку приоритетов разработки.

Agile-методы делают упор на непосредственное общение лицом к лицу. Большинство agile-команд расположены в одном офисе иногда называемом bullpen. Как минимум она включает и «заказчиков» (заказчики которые определяют продукт, также это могут быть менеджеры продукта, бизнес-аналитики или клиенты). Офис может также включать тестировщиков, дизайнеров интерфейса, технических писателей и менеджеров.

Основной метрикой agile-методов является рабочий продукт. Отдавая предпочтение непосредственному общению, agile-методы уменьшают объем письменной документации, по сравнению с другими методами. Это привело к критике этих методов, как недисциплинированных.

Принципы

Agile — семейство процессов разработки, а не единственный подход в разработке программном обеспечения, и определяется Agile Manifesto[1]. Agile не включает практик, а определяет ценности и принципы, которыми руководствуются успешные команды.

Agile Manifesto разработан и принят 11-13 февраля 2001 года на лыжном курорте The Lodge at Snowbird в горах Юты. Манифест подписали представители следующих методологий Extreme programming, SCRUM, DSDM, Adaptive Software Development, Crystal, Feature-Driven Development, Pragmatic Programming.[2] Содержит 4 ценности, 12 принципов и не содержит практик.

Разрабатывая программное обеспечение и помогая другим делать это, мы стараемся найти наилучшие подходы к разработке. В процессе этой работы мы пришли к тому, чтобы ценить[3]:

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

Понятия справа важны, но мы больше ценим понятия слева.

Принципы, которые разъясняет Agile Manifesto[4]:

  • Удовлетворение клиента за счёт ранней и бесперебойной поставки ценного ПО
  • Приветствие изменения требований, даже в конце разработки. Это может повысить конкурентоспособность полученного продукта
  • Частая поставка рабочего ПО (каждый месяц или неделю или ещё чаще)
  • Тесное, ежедневное общение заказчика с разработчиками на протяжении всего проекта
  • Проектом занимаются мотивированные личности, которые обеспечены нужными условиями работы, поддержкой и доверием.
  • Рекомендуемый метод передачи информации это личный разговор (лицом к лицу)
  • Рабочее ПО — лучший измеритель прогресса
  • Спонсоры, разработчики и пользователи должны иметь возможность поддерживать постоянный темп на неопределенный срок
  • Постоянное внимание на улучшение технического мастерства и удобный дизайн
  • Простота — искусство НЕ делать лишней работы
  • Лучшие архитектура, требования и дизайн получаются у самоорганизованной команды
  • Постоянная(Частая) адаптация(улучшение эффективности работы) к изменяющимся обстоятельствам

Методологии

Существуют методологии, которые придерживаются ценностей и принципов заявленных в Agile Manifesto. Здесь перечислены ряд из них:

Внешние ссылки

Ссылки (сообщества)

Примечания


bg:Гъвкава методология ca:Metodologia àgil da:Agile de:Agile Softwareentwicklung en:Agile software development es:Desarrollo ágil de software fi:Ketterä ohjelmistokehitys fr:Méthode agile he:פיתוח תוכנה זריז it:Metodologia agile ja:アジャイルソフトウェア開発 ko:애자일 개발 프로세스 lt:Lankstusis programavimas lv:Spējā izstrāde nl:Agile-software-ontwikkeling pl:Zwinne programowanie pt:Desenvolvimento ágil de software sh:Agilni razvoj softvera sl:Agilne metode razvoja programske opreme sr:Agilni razvoj softvera sv:Agil systemutveckling ta:ஆஜில் மென்பொருள் விருத்தி th:เอจายล์ (การพัฒนาซอฟต์แวร์) uk:Гнучка розробка програмного забезпечення vi:Lập trình linh hoạt zh:敏捷软件开发

Если вам нравится SbUP.com Сайт, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....