Case технологии

Автор работы: Пользователь скрыл имя, 12 Марта 2012 в 21:08, реферат

Описание

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

Работа состоит из  1 файл

CASE-технологии.doc

— 58.00 Кб (Скачать документ)


6

 

CASE- технологии

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

CASE-технологии являются естественным продолжением эволюции всей отрасли разработки ПО. Традиционно выделяют 6 периодов, качественно отличающихся применяемой техникой и методами разработки ПО.

В качестве инструментальных средств в эти периоды использовались:

    ассемблеры, дампы памяти, анализаторы;

    компиляторы, интерпретаторы, трассировщики;

    символические отладчики, пакеты программ;

    систем анализа и управления исходными текстами;

    CASE-средства анализа требований, проектирования спецификаций и структуры, редактирования интерфейсов( 1-ая генерация CASE-1;

    CASE-средства генерации исходных текстов и реализации интегрированного окружения поддержки полного ЖЦ разработки ПО  (2-ая генерация CASE-II).

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

CASE обладают следующими основными достоинствами:

-  улучшают качество создаваемого ПО за счет средств автоматического контроля, прежде всего , контроля проекта;

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

-  ускоряют процесс проектирования и разработки;

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

-  поддерживают развитие и сопровождение разработки (заметим, что этот аспект не затрагивался ни одной из рассмотренных нами технологий проектирования);

-  поддерживают технологии повторного использования компонент разработки).

При использовании CASE-технологий изменяются фазы жизненного цикла ПП как показано ниже:

При традиционной технологии:                                          При CASE-технологии:

Анализ                                                                                                   Прототипирование

Проектирование                                                        Проектирование спецификаций

                                                                                                                              Контроль проекта

Кодирование                                                                                                  Кодогенерация

Тестирование                                                                      Системное тестирование

Сопровождение                                                                                    Сопровождение

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

Технология

Этапы разработки

Анализ

Проектирование

Кодирование

Тестирование

традиционная

20%

15%

20%

45%

CASE-1

30%

30%

15%

25%

CASE-11

40%

40%

5%

15%

В следующей таблице сравниваются цели и содержание этапов при традиционной разработке и с применением CASE-средств.

№ п/п

Традиционная разработка

CASE-технология

1

Основные усилия - на

кодирование и тестирование

Основные усилия - на анализ

и проектирование

2

‘Бумажные’ спецификации

Быстрое итеративное

прототипирование

3

Ручное кодирование

Автоматическая кодогенерация

4

Ручное документирование

Автоматическая генерация

документации

5

Тестирование кодов

Автоматический

Контроль проекта

6

Сопровождение кодов

Сопровождение специфи-

каций проектирования

 

Модель ЖЦ ПО определяет порядок выполнения этапов, а также критерии перехода от этапа к этапу.

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

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

Специалистами отмечаются следующие преимущества спиральной модели:

    накопление и повторное использование программных средств, моделей и прототипов;

    ориентация на развитие и модификацию ПО в процессе проектирования;

    анализ риска и издержек в процессе проектирования.

Чем же принципиально CASE-технология отличается от традиционной?

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

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

Большинство CASE-технологий основано на парадигме методология/метод/нотация/ средство. Понятия методологии и метода мы с Вами уже давали.

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

Средства - это инструментарий поддержки методов. Реализуются средства в ПО, которое создает среду разработчика ПО. Эти инструменты поддерживают работу пользователей-разработчиков при создании и редактировании проекта в интерактивном режиме, они выполняют проверки соответствия компонентов и кодируют на некотором языке программирования модули ПО (кодогенерация).

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

    DFD ( Data Flow Diagrams) - диаграммы потоков данных, совместно со словарями данных и спецификациями процессов или миниспецификациями;

    ERD ( Entity-Relationship Diagrams) - диаграммы ‘сущность -связь’;

    STD (State Transition Diagrams) - диаграммы переходов состояний.

Современные структурные методологии анализа и проектирования классифицируются по следующим признакам:

    по отношению к школам - Software Engineering (SE) и Information Engineering (IE);

    по порядку построения моделей - процедурно-ориентированные, ориентированные на данные и информационно-ориентированные;

    по типу целевых систем - для систем реального времени и для информационных систем.

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

 

 

 

Информационные системы

Системы реального времени

Управляются данными

Управляются событиями

Сложные структуры данных

Простые структуры данных

Большой объем

входных данных

Малое количество

входных данных

Интенсивный ввод-вывод

Интенсивные вычисления

Машинная независимость

Машинная зависимость

Информация о работе Case технологии