Она явилась ответом на ряд трудностей, возникших при разработке и эксплуатации компьютерных систем. Учитывая неудачу многих проектов, заказчики стремились получить хорошо проработанное обоснование проекта с тестируемым ПО, однако они не всегда предоставляли разработчикам необходимую информацию, относя её к разряду коммерческой тайны.
Сама организация информационных подходов менялась по мере расширения деятельности предприятия. В результате осуществление проекта затягивалось, и создавались программно-аппаратные комплексы, начинали работать в условиях, когла требования предприятия изменились.
Применялся и другой подход: компьютерный комплекс разрабатывался и вводился в эксплуатацию в короткие сроки специальной фирмой при полном взаимодействии с заказчиком. Это обеспечивало создание работоспособного комплекса, но из-за отсутствия необходимой документации происходили задержки с обучением персонала и выявлялись недостатки, особенно в ПО. Эксплуатация комплекса попадала в зависимость от разработчика и происходила в условиях сбоя и потребности в дополнительных затратах на переделки и усовершенствования.
Для выхода из этой ситуации была разработана CASE-технология, поддерживающая проектирование, выбор технологий, архитектуры и написания ПО.
Разработчик с её помощью описывает предметную область, входящие в неё объекты, их свойства, связи между объектами и их свойства. В результате формируется модель, описывающая основных участников системы, их полномочия, потоки финансовых и иных документов между ними. В ходе описания создаётся электронная версия проекта, которая распечатывается и оперативно передаётся для согласования всем участникам проекта, как и рабочая документация.
В процессе создания проекта выделяются следующие этапы:
1) Формирование требований заказчика и выбор варианта концепции системы.
2) Разработка и утверждение ТО на систему
3) Разработка эскизов и технических проектов с описанием всех компонентов и архитектуры структуры.
4) Рабочее проектирование, предполагающее разработку и отладку программы, описание структуры БД, создание документаций на поставку и установку ТС.
5) Ввод в действие, предусматривающий установку и включение аппаратных средств, установку ПО, загрузку БД, тестирование системы, обучение персонала
6) Эксплуатация системы, включающая сопровождение программных средств и всего проекта, поддержку и замену аппаратных средств.
CASE-технология формировалась в процессе интеграции опыта и новых технологий, появившихся у разработчиков компьютерных систем. Начало этого процесса положили компиляторы и интерпретаторы с алгоритмических языков, потом добавились средства тестирования программ и их отладки – средства генерации отчётов.
Для обмена информации в проектных организациях и обеспечения оперативного доступа к создаваемой документации были разработаны средства информационной поддержки и управления объектом. В результате была создана система проектирования, которая поддерживает все технологические этапы проекта, обеспечивает его документирование и согласованную работу групп разработчиков, как со стороны заказчика, так и со стороны исполнителя.
В настоящее время существует много CASE-систем, различающихся по степени компьютерной поддержки, этапам разработки проекта; часть из них обеспечивает только графические представление функций учреждения и потоков информации между ними; в других – автоматизирован процесс создания БД и составления некоторых программ или их частей.
А основе CASE-технологий лежит процесс выявления функций отдельных элементов системы и информационных потоков. Каждое рабочее место описывается как технологический модуль, в котором происходит преобразование информации. Каждому модулю сопоставляется механизм, в соответствии с которым он изменяет находящиеся в нём данные и функции, в зависимости от управляющих параметров, и информации, полученной от оператора или других модулей.
Модуль системы может передавать информацию и может управлять функциями другого модуля. Для связанных между собой функциональных блоков устанавливается механизм, описывающий правила их взаимодействия. В конечном итоге оставляется полная модель, которая может быть распечатана на бумаге в внесением всех необходимых пояснений и изменений.
Описание информационных потоков в учреждении во многих CASE-технологиях производится с помощью ER-моделей.
Entity
Relationship
Порядок построения такой модели и используемые при этом абстракции определяются CASE-методами, освоения которых CASE-технология не может быть применена в полном объёме.
В процессе построения ER-моделей CASE-система проверяет соответствующие программы на непротиворечивость, что позволяет на разных этапах проектирования выявить ошибки и не допускать некачественное модулирование БД и написание программ, исправление которых на последующих этапах затруднительно и требует значительных материальных затрат.
С помощью средств описания ER-моделей создаются графические изображения информационных потока, а также словарь проекта, который включает в себя упорядоченную информацию о функциях, связях и участниках системы. Проектировщик может использовать для описания своих объектов атрибуты, уже содержащиеся в словаре. Информация словаря может быть распечатана и превращена в часть документа проекта.
Инструменты CASE-технологий на основе ER-моделей могут генерированть описания (таблицы), диалоговые процедуры, а также средства вывода данных и довести проект до стдии тестирования и опытно эксплуатации. Эти инструменты применяются для внесения изменений в дальнейшем.