Римский инженер и архитектор Марк Витрувий в 1 в. до н.э. в трактате «10 книг об архитектуре» дал определение проектированию:
В теории — показать и обосновать исполнение в соответствии с требованиями искусства и
целесообразности.
В практическом смысле — выполнение руками человека работ из любого материала по чертежу.
История проектного менеджмента относительно молода, сформировалась в 30-х гг. XX века с разработкой методов координации крупных проектов в США (авиация и нефтегазовая промышленность).
В СССР в этот же период развивалась теория и практика организации крупных строительных проектов.
Появление новой дисциплины связано с развитием информационных технологий с середины прошлого века. Военные ведомства и предприятия осознали важность автоматизации управленческих процессов. Разработчики информационных систем начали понимать необходимость создания методологий проектирования и моделирования бизнес-процессов для повышения эффективности и уменьшения ошибок.
Сложности при создании ИС связаны с изменчивостью и нечеткостью требований со стороны заказчика, что делает важным появление современных методологий проектирования и моделирования.
Это раздел компьютерных наук, изучающий методы построения программ как инженерной деятельности.
Обладает следующими характеристиками:
Основные этапы: проектирование → дизайн → кодирование → тестирование → поддержка.
Методология предполагает последовательное выполнение всех фаз проекта. Возврат к предыдущему этапу не предусмотрен и при ошибках весь проект начинается заново.
Принципы модели: дисциплина, разумное планирование и управление, отложенная реализация продукта до полного понимания целей.
Итеративная модель предполагает разбиение жизненного цикла проекта на последовательность итераций, каждая из которых напоминает "мини-проект", включая все фазы жизненного цикла в применении к созданию меньших фрагментов функциональности, по сравнению с проектом в целом.
Общая концепция DevOps заключается в усилении кооперации между группами разработки (DEVelopments) и эксплуатации (OPerations) в рамках одной организации, несущими ответственность за разработку ПО. Данная методология — это без преувеличения новый виток эволюции методологий разработки, поскольку ориентирована не только на удовлетворение требований заказчика в жёстко определённые сроки, но и повышение качества и стабильности продукта.