Описание книги
Тестирование программного обеспечения, поставляемого пользователям, часто бывает болезненным, рискованным и длительным процессом. Перед вами книга, представляющая совершенно новую стратегию разработки - набор принципов и практических методик, обеспечивающих быструю инкрементную поставку высококачественного программного обеспечения. Благодаря автоматизации процессов сборки, установки и тестирования и улучшению взаимодействия разработчиков, тестировщиков и администраторов команда проекта получает возможность поставлять изменения и новые средства в течение считанных часов или даже минут, независимо от размера проекта и сложности его кодовой базы.
Авторы начинают с рассмотрения основ процесса быстрой и надежной поставки программного обеспечения с минимальными рисками. Затем они вводят понятие "конвейера развертывания" - автоматизированного процесса, управляющего всеми изменениями проекта, от регистрации изменений до выпуска очередной версии программы. И наконец, в книге обсуждаются способы поддержки непрерывного развертывания, начиная с инструментов управления инфраструктурами, данными и конфигурациями и заканчивая управлением целыми проектами.
Авторы предлагают передовые методики, включая автоматизированное управление инфраструктурами, перенос данных и применение средств виртуализации. Для каждой представленной стратегии приведен обзор ключевых проблем, возникающих при ее применении, описаны способы уменьшения рисков и оптимальные методики реализации.
В книге рассмотрены следующие вопросы:
автоматизация всех процессов сборки, интеграции, тестирования и развертывания программного обеспечения;
реализация конвейера развертывания на уровне команд и организаций;
улучшение взаимодействия разработчиков, тестировщиков и администраторов;
стратегии инкрементной разработки новых программных средств большими распределенными командами;
реализация эффективных стратегий управления конфигурациями;
автоматизация приемочного тестирования - от анализа требований до реализации процессов;
тестирование производительности, безопасности, доступности и других нефункциональных требований;
реализация непрерывного развертывания с минимальным временем простоя;
управление инфраструктурами, данными, компонентами и зависимостями;
управление рисками, аудит и соответствие проекта регуляторным требованиям и стандартам ведения бизнеса.
Книга будет полезна всем участникам процесса поставки - разработчикам, системным администраторам, тестировщикам и менеджерам проектов.
Она поможет вашей организации внедрить современную технологию разработки и поставки программного обеспечения, ускорить процесс разработки, повысить надежность поставки и прибыльность проекта.
Джез Хамбл - главный консультант компании ThoughtWorks Studios, помогающей различным организациям быстро и надежно поставлять высококачественное программное обеспечение. Начиная с 2000 года работал в различных IT-компаниях системным администратором, разработчиком, инструктором, консультантом и менеджером проектов. Постоянный докладчик на конференциях, посвященных гибкой разработке программного обеспечения.
Дейвид Фарли в настоящее время участвует в проекте построения самой производительной в мире электронной биржевой системы - London Multi-Asset Exchange. Имеет 20-летний опыт работы с крупномасштабными распределенными системами и является активным сторонником методик гибкой разработки. В компании ThoughtWorks работал техническим руководителем ряда важнейших проектов.