Начать бесплатный период
Searching...
SoBrief
Русский
EnglishEnglish
EspañolSpanish
简体中文Chinese
繁體中文Chinese (Traditional)
FrançaisFrench
DeutschGerman
日本語Japanese
PortuguêsPortuguese
ItalianoItalian
한국어Korean
РусскийRussian
NederlandsDutch
العربيةArabic
PolskiPolish
हिन्दीHindi
Tiếng ViệtVietnamese
SvenskaSwedish
ΕλληνικάGreek
TürkçeTurkish
ไทยThai
ČeštinaCzech
RomânăRomanian
MagyarHungarian
УкраїнськаUkrainian
Bahasa IndonesiaIndonesian
DanskDanish
SuomiFinnish
БългарскиBulgarian
עבריתHebrew
NorskNorwegian
HrvatskiCroatian
CatalàCatalan
SlovenčinaSlovak
LietuviųLithuanian
SlovenščinaSlovenian
СрпскиSerbian
EestiEstonian
LatviešuLatvian
فارسیPersian
മലയാളംMalayalam
தமிழ்Tamil
اردوUrdu
Чистый Agile. Основы гибкости
Попробуйте полный доступ на 3 дня
Откройте прослушивание и многое другое!
Продолжить

Ключевые идеи

1. Происхождение Agile: ответ на неэффективные, громоздкие процессы

В то время большинство программного обеспечения создавалось с помощью неэффективных, тяжеловесных и перегруженных ритуалами процессов, таких как Waterfall и раздутые варианты Rational Unified Process (RUP).

Agile возник как решение. В феврале 2001 года семнадцать экспертов в области разработки программного обеспечения собрались в Сноубёрде, штат Юта, чтобы обсудить плачевное состояние индустрии. Они создали Манифест Agile, в котором сделали акцент на:

  • Людях и взаимодействиях важнее процессов и инструментов
  • Рабочем программном обеспечении важнее обширной документации
  • Сотрудничестве с заказчиком важнее переговоров по контракту
  • Готовности к изменениям важнее следования плану

Это движение предложило более лёгкий и эффективный подход к разработке ПО. Agile быстро завоевал популярность и стал одной из основных методологий в индустрии.

2. Железный крест: баланс между качеством, скоростью, стоимостью и завершённостью в управлении проектами

«Хорошо, быстро, дешево, сделано — выберите любые три. Четвёртого не будет.»

Железный крест иллюстрирует компромиссы. Эта концепция подчёркивает фундаментальные ограничения в управлении проектами:

  • Хорошо: высокое качество результата
  • Быстро: быстрая доставка
  • Дешево: низкая стоимость
  • Сделано: выполненный объём работ

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

  • Графики скорости (velocity charts), показывающие производительность команды во времени
  • Графики сгорания задач (burn-down charts), отражающие оставшийся объём работы и прогнозируемые сроки завершения

Эти инструменты позволяют менеджерам корректировать планы и вести проекты к оптимальным результатам.

3. Практики Agile: планирование, небольшие релизы, приёмочные тесты и команда целиком

«Практика приёмочных тестов — одна из наименее понятных, редко используемых и часто неправильно интерпретируемых в Agile.»

Ключевые практики Agile ведут к успеху. Эти ориентированные на бизнес практики формируют основу эффективного внедрения Agile:

  1. Планирование:

    • Использование story points для оценки задач
    • Применение Planning Game для приоритизации
    • Фокус на доставке бизнес-ценности
  2. Небольшие релизы:

    • Частые, инкрементальные поставки
    • Стремление к непрерывной доставке
  3. Приёмочные тесты:

    • Формулирование требований в виде автоматизированных тестов
    • Сотрудничество бизнес-аналитиков, QA и разработчиков
  4. Команда целиком:

    • Совместное расположение участников команды, когда возможно
    • Акцент на кросс-функциональное взаимодействие

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

4. Технические практики: TDD, рефакторинг, простой дизайн и парное программирование

«Разработка через тестирование (TDD) — богатая и сложная тема, требующая отдельной книги для полного раскрытия.»

Техническое мастерство — залог успеха. Технические практики Agile необходимы для поддержания высокого качества ПО и устойчивого темпа разработки:

  1. Разработка через тестирование (TDD):

    • Писать тесты до кода
    • Обеспечивать качество и поддерживаемость кода
    • Создавать встроенную документацию
  2. Рефакторинг:

    • Постоянно улучшать структуру кода
    • Сохранять целостность дизайна со временем
  3. Простой дизайн:

    • Делать дизайн максимально простым
    • Следовать правилам Кента Бека: проходить тесты, ясно выражать намерения, устранять дублирование, уменьшать количество элементов
  4. Парное программирование:

    • Совместная работа в реальном времени
    • Обмен знаниями и повышение качества кода

Эти практики помогают создавать надёжное, гибкое ПО, способное адаптироваться к изменениям и поддерживать высокую производительность.

5. Становление Agile: фокус на ценностях и адаптация к культуре организации

«Переход от не-Agile к Agile — это переход в ценностях.»

Преобразование в Agile — задача непростая. Успешное внедрение Agile требует не только следования процессам, но и изменения организационной культуры и ценностей:

  • Смелость: готовность к разумному риску
  • Коммуникация: частое и прямое взаимодействие
  • Обратная связь: поиск и оперативное реагирование
  • Простота: стремление к ясности в коде и общении

Организации часто испытывают трудности с этим переходом, особенно на уровне среднего менеджмента. Успешное внедрение может включать:

  • Создание новых подразделений с Agile-ценностями
  • Позволение командам «притворяться», соответствуя ожиданиям руководства, при этом практикуя Agile
  • Фокус на переходе на уровне отдельных команд и сотрудников, а не всей организации целиком

6. Взлёт Software Craftsmanship: акцент на техническом совершенстве

«Software Craftsmanship не предлагает конкретных практик. Это постоянный поиск лучших методов и способов работы.»

Craftsmanship дополняет Agile. Движение Software Craftsmanship возникло в 2008 году, чтобы восполнить пробелы в реализации Agile:

  • Качественное программное обеспечение: акцент на качестве кода и дизайна
  • Постоянное добавление ценности: фокус на непрерывном улучшении
  • Сообщество профессионалов: обмен знаниями и наставничество
  • Продуктивное партнёрство: профессиональные отношения с клиентами

Software Craftsmanship пропагандирует:

  • Мастерство технических практик
  • Непрерывное обучение и развитие
  • Профессионализм в разработке ПО

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

7. Долговечность Agile: основные принципы остаются ключевыми для разработки ПО

«Эти основы проверены временем. Сколько бы новых модных идей ни появлялось, базовые принципы остаются неизменными, актуальными и лежат в основе Agile-разработки.»

Фундамент Agile остаётся неизменным. Несмотря на разнообразие интерпретаций и реализаций, ключевые принципы Agile по-прежнему критически важны для эффективной разработки ПО:

  • Фокус на доставке ценности клиентам
  • Готовность к изменениям и адаптивность
  • Поддержание технического совершенства
  • Содействие сотрудничеству и коммуникации

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

Обновлено:

Report Issue

Обзор отзывов

4.24 из 5
На основе 1 000+ оценок с Goodreads и Amazon.

Книга «Clean Agile» заслужила в основном положительные отзывы, её хвалят за возвращение к истокам и исторический взгляд на Agile. Читатели ценят глубокие размышления автора, особенно касающиеся первоначального замысла Agile и того, как его сейчас часто неправильно понимают. Эта книга полезна как новичкам, так и опытным специалистам — она помогает ясно разобраться в принципах и практиках Agile. Некоторые критикуют её за повторения и отсутствие новых идей. В целом, «Clean Agile» считается важным чтением для всех, кто связан с разработкой программного обеспечения, предлагая свежий взгляд на основные ценности и вызовы Agile.

Your rating:
4.55
172 оценок
Want to read the full book?

Частые вопросы

What's "Clean Agile: Back to Basics" by Robert C. Martin about?

  • Return to Agile Roots: The book aims to bring readers back to the foundational principles of Agile, emphasizing its original intent and practices.
  • Historical Context: It provides a historical perspective on Agile, detailing its origins and evolution over the years.
  • Core Practices: The book outlines essential Agile practices, focusing on simplicity and effectiveness in software development.
  • Personal Insights: Robert C. Martin shares personal anecdotes and insights from his extensive experience in the software industry.

Why should I read "Clean Agile: Back to Basics"?

  • Understand Agile's Essence: It helps readers grasp the core values and principles of Agile, which are often misunderstood or diluted.
  • Practical Guidance: The book offers practical advice on implementing Agile practices effectively in software development teams.
  • Learn from an Expert: Written by a co-author of the Agile Manifesto, it provides authoritative insights into Agile methodologies.
  • Avoid Common Pitfalls: It highlights common misinterpretations and mistakes in Agile adoption, helping readers avoid them.

What are the key takeaways of "Clean Agile: Back to Basics"?

  • Agile Fundamentals: Emphasizes the importance of returning to the basics of Agile, focusing on simplicity, communication, and feedback.
  • Professionalism in Software: Stresses the need for professionalism and discipline in software development to meet reasonable expectations.
  • Continuous Improvement: Encourages continuous learning and improvement in both technical skills and team dynamics.
  • Agile Misinterpretations: Warns against the misinterpretation and misuse of Agile practices, advocating for a clear understanding of its principles.

How does Robert C. Martin define Agile in "Clean Agile: Back to Basics"?

  • Small Teams, Small Projects: Agile is described as a discipline for managing small software teams and projects effectively.
  • Iterative Process: It involves breaking down projects into iterations, allowing for continuous feedback and adjustment.
  • Focus on Quality: Agile emphasizes maintaining high-quality standards through practices like Test-Driven Development and Refactoring.
  • Data-Driven Management: Agile provides data to help managers make informed decisions about project scope, schedule, and quality.

What are the core Agile practices discussed in "Clean Agile: Back to Basics"?

  • Test-Driven Development (TDD): Writing tests before code to ensure functionality and facilitate refactoring.
  • Refactoring: Continuously improving code structure without changing its behavior to maintain simplicity and clarity.
  • Continuous Integration: Regularly integrating code changes to detect and fix issues early.
  • Pair Programming: Collaborating in pairs to enhance code quality and knowledge sharing.

How does "Clean Agile: Back to Basics" address common Agile misinterpretations?

  • Clarifies Agile's Purpose: The book emphasizes Agile's original intent, focusing on small, iterative improvements rather than large-scale transformations.
  • Warns Against Overcomplication: It cautions against adding unnecessary complexity to Agile practices, which can dilute their effectiveness.
  • Highlights Professionalism: Stresses the importance of maintaining professional standards and discipline in Agile teams.
  • Addresses Agile Hangover: Discusses the disillusionment that can occur when Agile is misapplied or misunderstood.

What is the significance of the Agile Manifesto in "Clean Agile: Back to Basics"?

  • Foundation of Agile: The Agile Manifesto is presented as the foundational document that outlines the core values and principles of Agile.
  • Historical Context: The book provides insights into the creation of the Manifesto and its impact on the software industry.
  • Guiding Principles: It emphasizes the importance of adhering to the Manifesto's principles to achieve true Agile transformation.
  • Misinterpretations: The book addresses how the Manifesto has been misinterpreted over time and seeks to clarify its original intent.

How does "Clean Agile: Back to Basics" suggest handling Agile transformations?

  • Focus on Values: Emphasizes the need to align organizational values with Agile principles for successful transformation.
  • Small Steps: Recommends starting with small, manageable changes rather than attempting large-scale overhauls.
  • Continuous Feedback: Encourages regular feedback and adaptation to refine Agile practices over time.
  • Avoiding Resistance: Discusses strategies for overcoming resistance from middle management and other stakeholders.

What role does professionalism play in "Clean Agile: Back to Basics"?

  • Core Expectation: Professionalism is highlighted as a key expectation in Agile teams, ensuring quality and reliability.
  • Discipline and Ethics: The book stresses the importance of maintaining discipline and ethical standards in software development.
  • Continuous Learning: Encourages developers to continuously improve their skills and knowledge to uphold professional standards.
  • Team Responsibility: Emphasizes the collective responsibility of the team to maintain high standards and cover for each other.

What are the best quotes from "Clean Agile: Back to Basics" and what do they mean?

  • "Agile is a small discipline that helps small software teams manage small projects." This quote underscores the simplicity and focus of Agile on small, iterative improvements.
  • "The only way to go fast, is to go well." Highlights the importance of quality and discipline in achieving speed and efficiency in software development.
  • "We, programmers, rule the world." Reflects on the significant impact and responsibility of software developers in today's technology-driven society.
  • "Hope is the project killer." Warns against relying on hope instead of data and feedback to manage software projects effectively.

How does "Clean Agile: Back to Basics" differentiate between Agile and other methodologies?

  • Focus on Iteration: Agile is characterized by its iterative approach, allowing for continuous feedback and adaptation.
  • Simplicity and Clarity: Emphasizes simplicity and clarity in both processes and code, contrasting with more complex methodologies.
  • Professional Discipline: Stresses the importance of professional discipline and standards, which may be less emphasized in other methodologies.
  • Data-Driven Decisions: Agile relies on data and feedback to guide decision-making, rather than rigid plans or processes.

How does "Clean Agile: Back to Basics" address the Agile hangover?

  • Expectation Mismatch: Discusses the mismatch between expectations and reality in Agile transformations, leading to disillusionment.
  • Focus on Process Over Engineering: Critiques the focus on process improvements without addressing underlying engineering challenges.
  • Need for Technical Skills: Emphasizes the importance of developing technical skills alongside Agile practices to achieve true agility.
  • Reconnecting with Agile's Roots: Encourages a return to Agile's foundational principles to overcome the hangover and achieve lasting success.

Об авторе

Роберт Сесил Мартин, известный как Дядя Боб, — признанный эксперт в области программирования и горячий сторонник гибких методологий разработки. В качестве президента компании Object Mentor Inc. он возглавляет команду консультантов, специализирующихся на объектно-ориентированном проектировании, паттернах, UML и Agile. Мартин — мастер экстремального программирования, сотрудничает с клиентами по всему миру. Его влияние в сообществе разработчиков огромно: он был главным редактором C++ Report и часто выступает на международных конференциях. Главная цель его работы — популяризация лучших практик и принципов чистого кода в разработке программного обеспечения.

Follow
Слушать
Now playing
Чистый Agile. Основы гибкости
0:00
-0:00
Now playing
Чистый Agile. Основы гибкости
0:00
-0:00
1x
Queue
Home
Swipe
Library
Get App
Try Full Access for 3 Days
Listen, bookmark, and more
Compare Features Free Pro
📖 Read Summaries
Read unlimited summaries. Free users get 3 per month
🎧 Listen to Summaries
Listen to unlimited summaries in 40 languages
❤️ Unlimited Bookmarks
Free users are limited to 4
📜 Unlimited History
Free users are limited to 4
📥 Unlimited Downloads
Free users are limited to 1
Risk-Free Timeline
Сегодня: мгновенный доступ
Слушайте полные саммари 26 000+ книг. Это более 12 000 часов аудио!
День 2: напоминание о пробном периоде
Мы отправим вам уведомление об окончании пробного периода.
День 3: начало подписки
Оплата будет списана Jun 13,
отмените в любой момент до этой даты.
Consume 2.8× More Books
2.8× more books Listening Reading
Our users love us
600,000+ readers
Trustpilot Rating
TrustPilot
4.6 Excellent
This site is a total game-changer. I've been flying through book summaries like never before. Highly, highly recommend.
— Dave G
Worth my money and time, and really well made. I've never seen this quality of summaries on other websites. Very helpful!
— Em
Highly recommended!! Fantastic service. Perfect for those that want a little more than a teaser but not all the intricate details of a full audio book.
— Greg M
Save 62%
Yearly
$119.88 $44.99/year/yr
$3.75/mo
Monthly
$9.99/mo
Start a 3-Day Free Trial
3 days free, then $44.99/year. Cancel anytime.
Unlock a world of fiction & nonfiction books
26,000+ books for the price of 2 books
Read any book in 10 minutes
Discover new books like Tinder
Request any book if it's not summarized
Read more books than anyone you know
#1 app for book lovers
Lifelike & immersive summaries
30-day money-back guarantee
Download summaries in EPUBs or PDFs
Cancel anytime in a few clicks
Scanner
Find a barcode to scan

We have a special gift for you
Open
38% OFF
DISCOUNT FOR YOU
$79.99
$49.99/year
only $4.16 per month
Continue
2 taps to start, super easy to cancel
Settings
General
Widget
Loading...
We have a special gift for you
Open
38% OFF
DISCOUNT FOR YOU
$79.99
$49.99/year
only $4.16 per month
Continue
2 taps to start, super easy to cancel