Чем критичнее для бизнеса программа, тем дороже обходятся дефекты в ней. Но, к сожалению, создание априори безошибочных программ дело чрезвычайно нетривиальное — если не сказать, невозможное. На практике часто используются методы валидации и верификации, т.е. проверки программного обеспечения на корректность реализации поставленной задачи путем сравнения с требуемыми свойствами.
На современном этапе развития систем автоматизации документационного обеспечения управления весьма актуальны вопросы их адаптации к современным информационным технологиям, организации взаимодействия и интеграции с другими системами. Возникает потребность в сквозной обработке данных — взаимодействии разных систем не только в рамках одной компании, что невозможно без выработки соответствующих стандартов.
С ростом сложности архитектуры программных систем растет трудоемкость их разработки и развертывания, усложняются сценарии интеграции, растут расходы на сопровождение. Традиционная интегрированная среда разработки предоставляет базовые инструменты — редакторы кода, компиляторы, средства разработки пользовательского интерфейса и отладчики, однако за ее пределами остаются ключевые этапы жизненного цикла приложений.