Tестирование программного обеспечения, поставляемого пользователям, часто бывает болезненным, рискованным и длительным процессом. Перед вами книга, представляющая совершенно новую стратегию разработки – набор принципов и практических методик, обеспечивающих быструю инкрементную поставку высококачественного программного обеспечения. Благодаря автоматизации процессов сборки, установки и тестирования и улучшению взаимодействия разработчиков, тестировщиков и администраторов команда проекта получает возможность поставлять изменения и новые средства в течение считанных часов или даже минут, независимо от размера проекта и сложности его кодовой базы.
Авторы начинают с рассмотрения основ процесса быстрой и надежной поставки программного обеспечения с минимальными рисками. Затем они вводят понятие «конвейера развертывания» – автоматизированного процесса, управляющего всеми изменениями проекта, от регистрации изменений до выпуска очередной версии программы. И наконец, в книге обсуждаются способы поддержки непрерывного развертывания, начиная с инструментов управления инфраструктурами, данными и конфигурациями и заканчивая управлением целыми проектами.
Авторы предлагают передовые методики, включая автоматизированное управление инфраструктурами, перенос данных и применение средств виртуализации. Для каждой представленной стратегии приведен обзор ключевых проблем, возникающих при ее применении, описаны способы уменьшения рисков и оптимальные методики реализации.
В книге рассмотрены следующие вопросы:
– автоматизация всех процессов сборки, интеграции, тестирования и развертывания программного обеспечения;
– реализация конвейера развертывания на уровне команд и организаций;
– улучшение взаимодействия разработчиков, тестировщиков и администраторов;
– стратегии инкрементной разработки новых программных средств большими распределенными командами;
– реализация эффективных стратегий управления конфигурациями;
– автоматизация приемочного тестирования – от анализа требований до реализации процессов;
– тестирование производительности, безопасности, доступности и других нефункциональных требований;
– реализация непрерывного развертывания с минимальным временем простоя;
– управление инфраструктурами, данными, компонентами и зависимостями;
– управление рисками, аудит и соответствие проекта регуляторным требованиям и стандартам ведения бизнеса.
Книга будет полезна всем участникам процесса поставки – разработчикам, системным администраторам, тестировщикам и менеджерам проектов. Она поможет вашей организации внедрить современную технологию разработки и поставки программного обеспечения, ускорить процесс разработки, повысить надежность поставки и прибыльность проекта.