Ver código fonte

Добавить 'Лекции/Agile/Agile.md'

u23karpov 1 mês atrás
pai
commit
07c78cfd00
1 arquivos alterados com 31 adições e 0 exclusões
  1. 31 0
      Лекции/Agile/Agile.md

+ 31 - 0
Лекции/Agile/Agile.md

@@ -0,0 +1,31 @@
+# **Agile (гибкие методологии управления и разработки)**
+
+Agile (гибкие методологии управления и разработки) — это совокупность принципов и практик **итеративно-инкрементального управления** жизненным циклом продукта, ориентированных на снижение неопределённости требований и повышение адаптивности системы разработки. В методологическом смысле Agile трактуется как **организационно-процессная парадигма**, в которой планирование, реализация, верификация и корректировка выполняются в **коротких временных интервалах (итерациях)** с регулярной **эмпирической оценкой результата**. Базовыми научно описываемыми характеристиками Agile являются **итеративность**, **инкрементальность**, **эмпиризм**, **кросс-функциональная организация труда** и **непрерывное улучшение процесса**, что задаёт формализуемую рамку для управления неопределённостью и изменчивостью требований.
+
+С точки зрения теории управления Agile соотносится с **адаптивными системами**, использующими **обратные связи высокой частоты** и эмпирическое уточнение управленческих гипотез. В рамках итерации выполняются: **формализация гипотез о ценности**, **приоритизация элементов бэклога**, реализация ограниченного объёма работ, интеграция и тестирование, демонстрация инкремента заинтересованным сторонам, а также **ретроспективный анализ процессных метрик** и причин отклонений. Данный цикл описывается как **укороченный контур управления**, уменьшающий латентность между изменением внешней среды и корректировкой планов работ, что снижает управленческий риск и повышает наблюдаемость процесса.
+
+![Agile iteration cycle](https://upload.wikimedia.org/wikipedia/commons/thumb/7/7a/PDCA_Cycle.svg/640px-PDCA_Cycle.svg.png)
+
+Agile **не является единым стандартом процесса**; он реализуется через **фреймворки (Scrum, Kanban и др.)**, которые задают различную степень формализации ролей, артефактов, ограничений потока и событий контроля. Scrum моделирует работу как **дискретные спринты фиксированной длительности** и вводит ролевую модель (Product Owner, Scrum Master, Developers), а также артефакты **Product Backlog**, **Sprint Backlog** и **Increment**, формируя периодический режим планирования и проверки результата. Kanban, напротив, ориентирован на **непрерывный поток**, **визуализацию работ** и **ограничение незавершённого производства (WIP)**, что статистически уменьшает **среднее время цикла (cycle time)** и вариативность пропускной способности в условиях изменяющегося входящего потока задач.
+
+| Параметр | Scrum | Kanban |
+|---|---|---|
+| Тип потока | дискретный (спринты) | непрерывный |
+| Ограничение WIP | не является базовым | базовый принцип |
+| Роли | формально определены | не обязательны |
+| Планирование | на спринт | по мере готовности |
+| Метрики | velocity, burndown | cycle time, throughput |
+
+Ключевым объектом управления в Agile выступает **бэклог** — упорядоченное множество требований, представленное как набор атомарных элементов (например, user stories), для которых могут задаваться атрибуты бизнес-ценности, трудоёмкости, риска и зависимостей. Оценка трудоёмкости часто проводится **относительными шкалами (story points)** и поддерживается эмпирическими показателями производительности команды (velocity), что позволяет выполнять локальные прогнозы при неизбежной неполноте исходных данных. Контроль качества обеспечивается практиками **непрерывной интеграции**, **автоматизированного тестирования** и введением **Definition of Done** как формализованного критерия завершённости, уменьшающего неоднозначность трактовки готовности результатов.
+
+| Признак | Научная интерпретация | Практический механизм |
+|---|---|---|
+| Итеративность | циклическая структура процесса | спринты/итерации |
+| Инкрементальность | поэтапное наращивание продукта | поставка инкрементов |
+| Эмпиризм | управление по наблюдаемым данным | review, метрики |
+| Обратная связь | контур управления высокой частоты | демонстрации, ретроспективы |
+| Адаптивность | способность изменять курс | пересмотр приоритетов бэклога |
+
+Agile-управление переносит акцент с **предиктивной оптимизации** (полной спецификации на старте) на **адаптивную оптимизацию** (постоянное уточнение требований и приоритетов на основе наблюдаемых результатов). Такое смещение повышает устойчивость к изменению требований, но требует **прозрачности**, **зрелой коммуникации** и дисциплины управления зависимостями, так как локальные решения команды должны быть согласованы с целевой архитектурой и ограничениями продукта. В терминах организационной теории Agile увеличивает частоту **межфункциональных взаимодействий** и снижает **трансакционные издержки** согласования за счёт локализации решений и сокращения числа промежуточных передач работ между специализированными подразделениями.
+
+В прикладной интерпретации Agile может быть описан как **эмпирически управляемая система разработки**, использующая итерации, обратные связи и приоритизацию по ценности для контролируемого снижения проектных рисков и повышения релевантности результата для стейкхолдеров. Эффективность данного подхода зависит от корректности операционализации метрик (например, cycle time, throughput, velocity), качества формализации критериев готовности и управляемости технического долга. При соблюдении этих условий Agile обеспечивает воспроизводимый механизм адаптации, при котором изменение требований становится управляемым фактором, а не источником неконтролируемых отклонений сроков и качества.