Основные принципы Case-технологии. Факторы эффективности Case-технологии.

Тенденции развития современных информационных технологий приводят к постоянному возрастанию сложности информационных систем (ИС), создаваемых в различных областях экономики. Современные крупные проекты ИС характеризуются, как правило, следующими особенностями:

· сложность описания (достаточно большое количество функций, процессов, элементов данных и сложные взаимосвязи между ними), требующая тщательного моделирования и анализа данных и процессов;

· наличие совокупности тесно взаимодействующих компонентов (подсистем), имеющих свои локальные задачи и цели функционирования (например, традиционных приложений, связанных с обработкой транзакций и решением регламентных задач, и приложений аналитической обработки (поддержки принятия решений), использующих нерегламентированные запросы к данным большого объема);

· отсутствие прямых аналогов, ограничивающее возможность использования каких-либо типовых проектных решений и прикладных систем;

· необходимость интеграции существующих и вновь разрабатываемых приложений;

· функционирование в неоднородной среде на нескольких аппаратных платформах;

· разобщенность и разнородность отдельных групп разработчиков по уровню квалификации и сложившимся традициям использования тех или иных инструментальных средств;

· существенная временная протяженность проекта, обусловленная, с одной стороны, ограниченными возможностями коллектива разработчиков, и, с другой стороны, масштабами организации-заказчика и различной степенью готовности отдельных ее подразделений к внедрению ИС.

Для успешной реализации проекта объект проектирования (ИС) должен быть прежде всего адекватно описан, должны быть построены полные и непротиворечивые функциональные и информационные модели ИС. Накопленный к настоящему времени опыт проектирования ИС показывает, что это логически сложная, трудоемкая и длительная по времени работа, требующая высокой квалификации участвующих в ней специалистов. Однако до недавнего времени проектирование ИС выполнялось в основном на интуитивном уровне с применением неформализованных методов, основанных на искусстве, практическом опыте, экспертных оценках и дорогостоящих экспериментальных проверках качества функционирования ИС. Кроме того, в процессе создания и функционирования ИС информационные потребности пользователей могут изменяться или уточняться, что еще более усложняет разработку и сопровождение таких систем.

Перечисленные факторы способствовали появлению программно-технологических средств специального класса - CASE-средств, реализующих CASE-технологию создания и сопровождения ИС. Термин CASE (Computer Aided Software Engineering) используется в настоящее время в весьма широком смысле. Первоначальное значение термина CASE, ограниченное вопросами автоматизации разработки только лишь программного обеспечения (ПО), в настоящее время приобрело новый смысл, охватывающий процесс разработки сложных ИС в целом.

CASE-технология представляет собой методологию проектирования ИС, а также набор инструментальных средств, позволяющих в наглядной форме моделировать предметную область, анализировать эту модель на всех этапах разработки и сопровождения ИС и разрабатывать приложения в соответствии с информационными потребностями пользователей.

CASE-технология представляет собой совокупность методологий анализа, проектирования, разработки и сопровождения сложных систем программного обеспечения, поддержанную комплексом взаимоувязываемых средств автоматизации.

CASE - это инструментарий для системных аналитиков, разработчиков и программистов, который позволяет описывать бизнесс-процессы на компьютере, используя полученные схемы при разработке или настройке системы.

САSЕ -технология в рамках методологии включает в себя методы, с помощью которых на основе графической нотации строятся диаграммы, поддерживаемые инструментальной средой.

Методология определяет шаги и этапность реализации проекта, а также правила использования методов, с помощью которых разрабатывается проект.

Метод - это процедура или техника генерации описаний компонентов ЭИС (например, проектирование потоков и структур данных).

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

Инструментальные средства САSЕ- специальные программы, которые поддерживают одну или несколько методологий анализа и проектирования ИС.

Преимущества САЗЕ-технологии по сравнению с традиционной технологией оригинального проектирования сводятся к следующему:

• улучшение качества разрабатываемого программного приложения за счет средств автоматического контроля и генерации;

• возможность повторного использования компонентов разработки;

• поддержание адаптивности и сопровождения ЭИО

• снижение времени создания системы, что позволяет на ранних стадиях проектирования получить прототип будущей системы и оценить его;

• освобождение разработчиков от рутинной работы по документированию проекта, так как при этом используется встроенный документатор;

• возможность коллективной разработки ЭИС в режиме реального времени.

Существует несколько принципов САSЕ -технологии. Рассмотрим основные из них:

1. Принцип всесторонней компьютерной поддержки проектирования. САSЕ -технология — это разновидность САПР в области создания информационных систем.

2. Принцип модельного подхода — это может быть методология функционально ориентированного подхода или методология объектно - ориентированного подхода.

 

3. Иерархическое представление модели предметной области. Существуют плоские модели, предусматривающие представление всей модели в виде единого листа. Но когда встречаются сложные системы, то возникают определенные трудности. Преодолеть эти трудности позволяют иерархические модели, в которых предусмотрена иерархическая последовательность детализации (декомпозиции)описания системы. Эти модели соответствуют принципу проектирования «сверху вниз», от общего к частному.

4. Наглядность представления модели, т. е. наличие визуальных средств проектирования. Это связано с тем, что процесс построения модели информационной системы так и не удается формализовать до конца и в этом процессе должен принимать участие человек. Графические средства обозначения и правила, предназначенные для описания структуры системы, этапов обработки информации представляют собой нотации САSЕ -технологии. Нотации включают графы, диаграммы, таблицы, формальные и естественные языки. Их использование является существенной особенностью САSЕ -технологии. Поэтому САSЕ -технология предусматривает четырехуровневую парадигму проектирования, в которой важное место отводится нотациям: Методология – Метод - Нотации-Средства.

5. Декомпозиция не только модели предметной области, но и самого процесса проектирования на стадии и этапы. Обычно выделяют следующие стадии проектирования: анализ, собственно проектирование, программирование (реализация), внедрение. САSЕ -технология может быть распространена на все стадии жизненного цикла информационной системы.

6. Перенесение трудоемкости разработки в большей степени на анализ и проектирование. Известно, что ошибки на последующих стадиях труднее исправить, причем трудности возрастают на порядок. Поэтому САSЕ -технологии проектирования предусматривают особенно тщательную проработку стадии анализа и проектирования.

7. Отделение, независимость стадий проектирования от средств реализации, от программирования. Соблюдение этого принципа позволяет переносить проектные решения с одной программно-технической платформы на другую, т. е. осуществлять миграцию ИС.

8. Возможность как прямого, так и обратного проектирования (формирование моделей и спецификаций на основе анализа программных кодов и схем баз данных).

9. Использование репозитория — хранилища проектных данных,представляющего собой центральный компонент САSЕ -средства.

 

 

 

Эффективность применения САSЕ -технологии проектирования ИС проявляется в улучшении качества создаваемого проекта, сокращении стоимостных и временных затрат на всех стадиях жизненного цикла ИС .

Рассмотрим факторы эффективности СЛ5-технологии.

1. Как отмечалось, САSЕ -технология создает возможность для реинжиниринга бизнеса и предусматривает перенос центра тяжести трудоемкости создания системы на предпроектную и проектную стадии. Тщательная проработка этих стадий в интерактивном режиме с компьютерной поддержкой уменьшает число возможных ошибок проектирования, исправлять которые на последующих стадиях затруднительно.

2. Доступная для понимания пользователей-непрограммистов графическая форма представления модели позволяет следовать принципу пользовательского проектирования, предусматривающему участие пользователей в создании системы. САSЕ -модель способствует взаимопониманию между всеми участниками создания системы (заказчиками, пользователями, проектировщиками, программистами).

3. Наличие формализованной модели системы создает возможность для многовариантного анализа с прототипированием и ориентировочной оценкой эффективности вариантов. САSЕ -модели позволяют осуществлять функционально-стоимостной анализдля выявления и исследования стоимости выполнения той или иной функции. Анализ прототипа системы позволяет скорректировать будущую систему до того, как она будет реализована в окончательном виде. Этот подход ускоряет и удешевляет создание системы.

4. САSЕ -технология позволяет использовать концепцию сборочного проектирования, основанную на повторном использовании типовых проектных решений (компонентов) системы. Сборка прикладной программы из готовых компонентов позволяет значительно сократить стоимость и время разработки ИС.

5. Закрепление и формализованном виде требований к системе избавляет проектировщиков от необходимости многочисленных корректировок в соответствии с новыми требованиями пользователей.

 

6. Отделение проектирования системы от программирования создает устойчивость проектных решений для реализации на разных программно-технических платформах.

7. Наличие формализованной модели реализации системы и соответствующих средств автоматизации позволяет осуществить автоматическую кодогенерацию программного обеспечения системы и создать рациональную структуру базы данных.

8. На стадии эксплуатации системы появляется возможность внесения изменений на уровне модели, не обращаясь к текстам программ, силами специалистов отдела автоматизации фирмы, т. е. осуществить модификацию проекта.

9. Модель системы может использоваться не только как основа, но и в целях автоматизированного обучения персонала с использованием диаграмм.

10. На основе модели действующей системы может выполняться бизнес-анализ для поддержки управленческих решений и бизнес-реинжиниринг при изменении направления деятельности фирмы.

Теперь под термином CASE-средства понимаются программные средства, поддерживающие процессы создания и сопровождения ИС, включая анализ и формулировку требований, проектирование прикладного ПО (приложений) и баз данных, генерацию кода, тестирование, документирование, обеспечение качества, конфигурационное управление и управление проектом, а также другие процессы. CASE-средства вместе с системным ПО и техническими средствами образуют полную среду разработки ИС.

Наибольшая потребность в использовании САSЕ -систем испытывается на начальных этапах разработки, а именно на этапах анализа и спецификации требований к ЭИС.

Большинство существующих CASE-средств основано на методологиях структурного (в основном) или объектно-ориентированного анализа и проектирования, использующих спецификации в виде диаграмм или текстов для описания внешних требований, связей между моделями системы, динамики поведения системы и архитектуры программных средств.

Большинство CASE-средств основано на парадигме методология/метод/нотация/средство. Методология определяет руководящие указания для оценки и выбора проекта разрабатываемого ПО, шаги работы и их последовательность, а также правила распределения и назначения методов.

Метод - это систематическая процедура или техника генерации описаний компонент ПО (например, проектирование потоков и структур данных).

Нотации предназначены для описания структуры системы, элементов данных, этапов обработки и включает графы, диаграммы, таблицы, блок-схемы, формальные и естественные языки.

Средства - инструментарий для поддержки и усиления методов. Эти инструменты поддерживают работу пользователей при создании и редактировании графического проекта в интерактивном режиме, они способствуют организации проекта в виде иерархии уровней абстракции, выполняют проверки соответствия компонент.

Многие организации-разработчики программного обеспечения информационных систем (ПО ИС), пытаясь внести усовершенствования в процесс разработки, обращаются к CASE-технологии. Согласно обзору передовых технологий (Survey of Advanced Technology), составленному фирмой Systems Development Inc. в 1996 г. по результатам анкетирования более 1000 американских фирм, CASE-технология в настоящее время попала в разряд наиболее стабильных информационных технологий (ее использовала половина всех опрошенных пользователей более чем в трети своих проектов, из них 85% завершились успешно). Однако, несмотря на все потенциальные возможности CASE-средств, существует множество примеров их неудачного внедрения, в результате которых CASE-средства становятся "полочным" ПО (shelfware). В связи с этим необходимо отметить следующее:

CASE-средства не обязательно дают немедленный эффект; он может быть получен только спустя какое-то время;

реальные затраты на внедрение CASE-средств обычно намного превышают затраты на их приобретение;

CASE-средства обеспечивают возможности для получения существенной выгоды только после успешного завершения процесса их внедрения.

Ввиду разнообразной природы CASE-средств было бы ошибочно делать какие-либо безоговорочные утверждения относительно реального удовлетворения тех или иных ожиданий от их внедрения. Доступная информация о реальных внедрениях крайне ограничена и противоречива. Она зависит от типа средств, характеристик проектов, уровня сопровождения и опыта пользователей. Некоторые аналитики полагают, что реальная выгода от использования некоторых типов CASE-средств может быть получена только после одно- или двухлетнего опыта. Другие полагают, что воздействие может реально проявиться в фазе эксплуатации жизненного цикла ИС, когда технологические улучшения могут привести к снижению эксплуатационных затрат.

Ключом к успешному внедрению CASE-средств является готовность организации, которая включает следующие аспекты:

Технология. Понимание ограниченности существующих возможностей и способность принять новую технологию;

Культура. Готовность к внедрению новых процессов и взаимоотношений между разработчиками и пользователями;

Управление. Четкое руководство и организованность по отношению к наиболее важным этапам и процессам внедрения.

Спешное внедрение CASE-средств должно обеспечить такие выгоды как:

высокий уровень технологической поддержки процессов разработки и сопровождения ПО;

положительное воздействие на некоторые или все из перечисленных факторов: производительность, качество продукции, соблюдение стандартов, документирование;

приемлемый уровень отдачи от инвестиций в CASE-средства. повышение внимания к планированию деятельности, связанной с информационной технологией;

улучшение коммуникации между пользователями и разработчиками.

Современная технология освоения и внедрения CASE-средств базируется в основном на стандартах-рекомендациях IEEE (IEEE Std 1348-1995. IEEE Recommended Practice for the Adoption of CASE Tools и IEEE Std 1209-1992. IEEE Recommended Practice for the Evaluation and Selection of CASE Tools).

Процесс внедрения CASE-средств состоит из следующих этапов:

· определение потребностей в CASE-средствах;

· оценка и выбор CASE-средств;

· выполнение пилотного проекта;

· практическое внедрение CASE-средств.

Среди конкретных статей затрат на внедрение можно выделить следующие:

· специалисты по планированию внедрения CASE-средств;

· выбор и установка;

· учет специфических требований персонала;

· приобретение CASE-средств и обучение;

· настройка;

· подготовка документации, стандартов и процедур использования средств;

· интеграция с другими средствами и существующими данными;

· освоение средств разработчиками;

· технические средства;

· обновление версий.

Рассмотрим архитектуру САSЕ –средства/

Ядром системы является база данных проекта - репозиторий (словарь данных). Он представляет собой специализированную базу данных, предназначенную для отображения состояния проектируемой ЭИС в каждый момент времени. Объекты всех диаграмм синхронизированы на основе общей информации словаря данных.

Репозиторий содержит информацию об объектах проектируемой ЭИС и взаимосвязях между ними, все подсистемы обмениваются данными с ним. В репозиторий хранятся описания следующих объектов:

• проектировщиков и их прав доступа к различным компонентам системы;

• организационных структур;

• диаграмм;

• компонентов диаграмм;

• связей между диаграммами;

• структур данных;

• программных модулей;

• процедур;

• библиотеки модулей и т.д.

Графические средства моделирования предметной области позволяют разработчикам автоматизированных ИС в наглядном виде изучать существующую информационную систему, перестраивать ее в соответствии с поставленными целями и имеющимися ограничениями. Все модификации диаграмм, выполняемых разработчиками в интерактивном (диалоговом) режиме, вводятся в словарь данных, контролируются с общесистемной точки зрения и могут использоваться для дальнейшей генерации действующих функциональных приложений. В любой момент времени диаграммы могут быть распечатаны для включения в техническую документацию проекта.

Графический редактор диаграмм предназначен для отображения в графическом виде в заданной нотации проектируемой ЭИС. Он позволяет выполнять следующие операции:

• создавать элементы диаграмм и взаимосвязи между ними;

• задавать описания элементов диаграмм;

• задавать описания связей между элементами диаграмм;

• редактировать элементы диаграмм, их взаимосвязи и описания.

Верификатор диаграмм служит для контроля правильности построения диаграмм в заданной методологии проектирования ЭИС. Он выполняет следующие функции:

• мониторинг правильности построения диаграмм;

• диагностику и выдачу сообщений об ошибках;

• выделение на диаграмме ошибочных элементов.

Документатор проекта позволяет получать информацию о состоянии проекта в виде различных отчетов. Отчеты могут строиться по нескольким признакам, например по времени, автору, элементам диаграмм, диаграмме или проекту в целом.

Администратор проекта представляет собой инструменты, необходимые для выполнения следующих административных функций:

• инициализации проекта;

• задания начальных параметров проекта;

 

• назначения и изменения прав доступа к элементам проекта;

• мониторинга выполнения проекта.

Сервис представляв собой набор системных утилит по обслуживанию репозитория. Данные утилиты выполняют функции архивации данных, восстановления данных и создания нового репозитория.

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