Similar presentations:
Рост сложности проектов ИС. Предпосылки появления средств автоматизации разработки ИС. Термин CASE
1. Программная инженерия 7 Раздел CASE
Расписание:11.01 Пн
14:30-18:25
Г-2082
Лекция
12.01 Вт
14:30-18:25
Г-2082
Лекция
13.01 Ср
14:30-18:25
Г-2023
Лабораторная работа
14.01 Чт
14:30-18:25
Г-2023
Лабораторная работа
21.01 Чт
18:30-21:40
Г-2023
Экзамен
2. Содержание
Рост сложности проектов ИС. Предпосылки появлениясредств автоматизации разработки ИС
CASE-средства, -технологии, -индустрия
CASE-технологии:
Основные черты, возможности и характеристики
Содержание
Сравнение по трудоемкости с традиционным подходом
CASE-средства:
Эволюция
Классификация
Архитектура, компоненты
Этапы внедрения
Критерии выбора
Основные проблемы внедрения
2
3. 7 CASE
По литературе 6 и 73
4. Термин CASE
Computer Aided Software Engineering (англ.) - дословный перевод:разработка программного обеспечения информационных систем
при поддержке (с помощью) компьютера.
Первоначальное значение термина CASE, ограничено вопросами
автоматизации разработки только лишь программное
обеспечение (ПО). Однако:
«Термин “CASE” в настоящее время используется в
широком смысле и не ограничивается вопросами
автоматизации разработки только лишь ПО, но и
охватывает процесс разработки сложных
информационных систем в целом».
Формулировка официального сайта Санкт-Петербургского
информационно-аналитического центра (СПбИАЦ)
4
5. Рост сложности ИС
Развитие современных ИТ ведет к постоянному росту сложности ИС.Современные крупные проекты ИС характеризуются:
сложность описания (↑кол-во функций, процессов, элементов данных и
сложные взаимосвязи между ними) требуется тщательное
моделирование и анализ данных и процессов;
наличие совокупности тесно взаимодействующих компонентов
(подсистем), имеющих свои локальные задачи и цели функционирования;
отсутствие прямых аналогов ограничение в использовании каких-либо
типовых проектных решений и прикладных систем;
необходимость интеграции существующих и вновь разрабатываемых
приложений;
функционирование в неоднородной среде на нескольких аппаратных
платформах;
разобщенность и разнородность отдельных групп разработчиков по
уровню квалификации и сложившимся традициям использования тех или
иных инструментальных средств;
существенная временная протяженность проекта.
5
6. Предпосылки появления средств автоматизации:
Ручная разработка обычно порождаласледующие проблемы:
неадекватная спецификация требований;
неспособность обнаруживать ошибки в
проектных решениях;
низкое качество документации, снижающее
эксплуатационные качества;
затяжной цикл и неудовлетворительные
результаты тестирования.
6
7. “Главная идея” software engineering
“Главная идея” software engineeringфундаментальная идея
программной инженерии:
“проектирование ПО ИС
является формальным
процессом, который можно
изучать и совершенствовать.”
Освоение и правильное
использование методов и
средств создания ПО позволят
повысить качество ИС,
обеспечить управляемость
процесса проектирования ИС и
увеличить срок ее жизни.
Появление программнотехнологических
средств специального
класса –
CASE-средств,
реализующих
CASE-технологию
создания и
сопровождения ИС.
7
8. CASE* :
CASE-инструменты(CASE-средства)
– инструментарий для
системных аналитиков,
разработчиков и
программистов, заменяющий
им бумагу и карандаш на
компьютер для автоматизации
процесса проектирования и
разработки ПО.
CASE-технологии
совокупность методологий
анализа, проектирования,
разработки и сопровождения
сложных систем ПО,
поддержанная комплексом
взаимоувязанных средств
автоматизации.
CASE-индустрия объединила сотни фирм и компаний различной
ориентации
8
9. Понятие CASE-технология
CASE-технология представляет собойсовокупность методологий анализа,
проектирования, разработки и сопровождения
сложных систем и поддерживается комплексом
взаимоувязанных средств автоматизации. CASEтехнология - это инструментарий для системных
аналитиков, разработчиков и программистов,
заменяющий бумагу и карандаш компьютером,
автоматизируя процесс проектирования и
разработки ПО.
CASE-технологии =
методология разработки ПО + CASE-средства
9
10. CASE-средства
– это программно-технологические средства специального класса,реализующие CASE-технологию и поддерживающие процессы
создания и сопровождения ИС, включая анализ и формулировку
требований, проектирование прикладного ПО (приложений) и баз
данных (БД), генерацию кода, тестирование, документирование,
обеспечение качества, конфигурационное управление и управление
проектом, а также другие процессы.
11. CASE-технология
12. CASE-технологии - естественное продолжение эволюции отрасли разработки ПО
6 периодов эволюции, отличающихся инструментами:1 - ассемблеры, дампы памяти, анализаторы
2 - компиляторы, интерпретаторы, трассировщики
3 - символические отладчики, пакеты программ
4 - систем анализа и управления исходными текстами
5 - 1-ая генерация CASE-1(подробнее см. ниже)
6 - 2-ая генерация CASE-II (подробнее см. ниже)
12
13. Предпосылки появления CASE-технологий
При использовании методологийструктурного анализа появился ряд
ограничений (сложность понимания, большая
трудоемкость и стоимость использования,
неудобство внесения изменений в проектные
спецификации и т.д.) С самого начала CASEтехнологии и развивались с целью
преодоления этих ограничений путем
автоматизации процессов анализа и
интеграции поддерживающих средств.
13
14. Основные черты CASE-технологии:
Назначение: автоматизация проектирования сложныхинформационных систем. Изначально CASE-средства
были ориентированы на разработку ПО. Сейчас чаще
всего под такими средствами подразумевают любые
средства проектирования ИС и/или моделирования
предметной области.
CASE-средства охватывают все стадии ЖЦ ИС
(анализ, проектирование, разработка, сопровождение).
Не создают новых методологий, а повышают
эффективность использования существующих
методологий – за счет автоматизации.
14
15. Содержание CASE-технологии
МетодологияМетод
Модель
Нотация
Средства
– Методология – определяет шаги реализации проекта, а также
правила используемых при его разработки методов.
– Метод – процедура или техника генерации описания компонентов
ИС (н-р, метод проектирования потоков данных).
– Модель – совокупность символов (вербальных, математических,
графических и т.п.), которая адекватно описывает некоторые
свойства моделируемого объекта и отношения между ними.
– Нотация – система условных обозначений, принятая в
конкретной
модели.
Обычно
для
описания
моделей
используются графические символы, а также формальные и
естественные языки.
– Средства (инструментарий) – специальные программы, которые
поддерживают одну или несколько методологий анализа и
проектирования ИС.
15
16. Достоинства CASE по сравнению с традиционным(ручным) подходом
улучшают качество создаваемого ПО за счет средствавтоматического контроля, прежде всего, контроля проекта;
позволяют за короткое время создавать прототип будущей
системы, что позволяет на ранних этапах оценить ожидаемый
результат;
ускоряют процесс проектирования и разработки;
позволяют разработчику больше времени уделять творческой
работе по созданию ПО, освобождая его от рутинной работы;
поддерживают развитие и сопровождение разработки
(заметим, что этот аспект не затрагивался ни одной из
рассмотренных нами технологий проектирования);
поддерживают технологии повторного использования
компонент разработки).
16
17. Оценки трудозатрат по фазам ЖЦ
Способразработки
Традиционная
разработка
Использование
структурных
методологий
проектирования
Использование
CASEтехнологий
Анализ
Проектирование Кодирование Тестирование
20%
15%
20%
45%
30%
30%
15%
25%
40%
40%
5%
15%
Вывод для CASE-технологий:
1) Наибольшие трудозатраты на начальные этапы(анализ и проектирование)
2) Наиболее автоматизируемыми фазами являются фазы контроля проекта и
кодогенерации (хотя все остальные фазы также поддерживаются CASEсредствами).
См. 7 лит-ру: http://www.studfiles.ru/preview/1500389/page:11/
17
18. CASE-средства
Задачи CASE-средств:Отделить проектирование ПО от его кодирования
и последующих этапов разработки (тестирование,
документирование и пр.)
Автоматизировать весь процесс создания
программных систем
Решать исследовательские и проектные задачи
18
19. Г.Н. Калянов (см. 7 литературу) выделяет 2 периода в эволюции CASE:
CASE-ICASE-II
Автоматизация деятельности
системного аналитика
и проектировщика,
Включала: средства поддержки
графических моделей,
проектирования спецификаций,
экранных редакторов и словарей
данных.
Не предназначена для
поддержки полного ЖЦ.
Сосредоточена на
функциональных спецификациях
и начальных шагах проекта –
сист. анализе, определении
требований, сист.
проектировании, логическом
проектировании БД.
Более развитые возможности,
улучшенные характеристики
Охватывают все стадии ЖЦ ИС.
Поддержка автомат. кодогенерации,
Поддержка создания графических
системных требований и
спецификаций проектирования;
Контроль, анализ и связывание
системной информации, информации
по управлению проектированием;
Тестирование, верификация и анализ
сгенерированных программ;
Генерации документов по проекту;
Контроль на соответствие
стандартам по всем этапам ЖЦ.
Может включать свыше 100
функциональных компонент. 19
20. Для современных CASE-средств характерно:
Автоматизация всех этапов ЖЦ ПО и прежде всего начальных.Отделение проектирование ПО от кодирования и последующих операций
разработки.
Мощные графические средства для описания и документирования
информационных систем, обеспечивающие удобный интерфейс с
разработчиком и развивающие его творческие возможности;
Интеграция отдельных компонент CASE-средств, обеспечивающая
управляемость процессом разработки информационных систем;
Использование специальным образом организованного хранилища
проектных метаданных (репозитория).
Обычно к CASE-средствам относят любое ПС, автоматизирующее ту или иную совокупность
процессов ЖЦ ПО и обладающее следующими основными характерными особенностями:
мощные графические средства для описания и документирования ИС,
интеграция отдельных компонент CASE-средств, обеспечивающая управляемость
процессом разработки ИС;
использование специальным образом организованного хранилища проектных
метаданных (репозитория).
20
21. Классификация CASE-средства (наиболее распространенные)
По области действия впределах ЖЦ ИС
По поддерживаемым
методологиям
проектирования
По функциональному
назначению
По степени интеграции
По режиму
коллективной
разработки проекта
По реализованной
архитектуре
(локальные и корпоративные)
21
22. Классификация по области действия в пределах ЖЦ:
Upper CASE(верхние) – средства, используемые настадии анализа предметной области;
Middle CASE(средние) – средства, используемые на
стадии анализа и проектирования структуры ИС;
Примечание. В н. вр. в зарубежной литературе имеет место тенденция
объединять средства Upper и Middle CASE в одну группу (Upper CASE).
Lower CASE(нижние) – средства, используемые на
стадиях разработки и внедрения (тестирования).
I-CASE – интегрированная система CASE-средств,
которая может использоваться как на ранних, так и на
поздних стадиях ЖЦ ИС (т.е. объединяет возможности
Upper- и Lower- CASE).
22
23. По поддерживаемым методологиям проектирования:
Функционально-ориентированные;Объектно-ориентированные;
Комплексные (поддерживают различные методологии).
По режиму коллективной разработки проекта:
Не поддерживающие.
Поддерживающие в режиме реального времени;
Объединение подпроектов.
23
24. По степени интеграции:
CASE Tools (вспомогательные программы) - включаетотдельные локальные средства, решающие небольшие
автономные задачи; которые могут быть использованы на
той или иной стадии проектирования ИС.
CASE Toolkit (инструментарий) - набор частично
интегрированных средств, охватывающих большинство
этапов жизненного цикла информационных систем;
CASE Workbench (интегрированные средства) полностью интегрированные средства, обеспечивающие
поддержку всего жизненного цикла разработки ПС –
CASE-окружения. Связаны между собой общим
репозиторием.
24
25. По функциональному назначению
основныеВспомогательные
Средства анализа и проектирования ИС
(автоматизация наиболее популярных методологий
проектирования);
Средства проектирования баз данных (моделирование
данных и генерация схем БД);
Средства разработки приложений (в том числе,
средства генерации и рефакторинга программного
кода, средства быстрой разработки приложений);
Средства обратного инжиниринга (построение моделей
действующей ИС для ее переноса в другую среду);
Средства документирования проекта;
Средства управления тестированием ПО;
Средства планирования и управления проектом.
25
26. Средства анализа и проектирования ИС
предназначены для построения и анализа как моделей деятельностиорганизации (т.е. предметной области), так и моделей проектируемой
системы.
Примеры:
BPwin (PLATINUM technology),
Silverrun (Silverrun Technologies),
Oracle Designer (Oracle),
Rational Rose (Rational Software),
Paradigm Plus (PLATINUM technology).
Power Designer (Sybase),
System Architect (Popkin Software).
Их цель: определение системных требований и свойств, которыми
система должна обладать, создание проекта системы, удовлетворяющей
этим требованиям и обладающей соответствующими свойствами.
Выходом таких средств являются спецификации компонентов системы и
их интерфейсов, алгоритмов и структур данных.
26
27. Средства проектирования БД
Цель: обеспечение моделирования данных и генерации схем базданных (как правило, на SQL) для наиболее распространенных СУБД.
Средства данной группы обеспечивают:
логическое моделирование данных
автоматическое преобразование моделей данных в 3НФ
автоматическую генерацию схем БД и описаний форматов файлов на
уровне программного кода
Средства проектирования баз данных имеются в составе таких CASEсредств, как:
Silverrun,
Oracle Designer,
Paradigm Plus,
Power Designer.
Наи более известным средством, ориентированным только на
проектирование БД, является ERwin (PLATINUM technology);
27
28. Cредства разработки приложений
К ним относятся средства:4GL (Uniface (Compuware),
JAM (JYACC),
PowerBuilder (Sybase),
Developer/2000 (ORACLE),
New Era (Informix),
SQL Windows (Gupta),
Delphi (Borland) и др.
и генераторы кодов, входящие в состав Vantage Team Builder,
PRO-IV и частично - в Silverrun;
Статья из Компьютер-ПРЕСС: Средства разработки приложений
http://www.interface.ru/home.asp?artId=454
28
29. Средства обратного(реверсного) инжиниринга
Цель: предназначены для переноса существующей системы ПО вновую среду. Они обеспечивают анализ программных кодов и схем
баз данных и формирование на их основе различных моделей и
проектных спецификаций.
Средства анализа схем БД и формирования ERD входят в состав
таких CASE-средств, как
Silverrun,
Oracle Designer,
Power Designer,
ERwin.
Анализаторы программных кодов имеются в составе Rational Rose
и Paradigm Plus.
29
30. Вспомогательные средства
Примеры:Средства документирования проекта - SoDA —
Software Document Automation — автоматизированное
документирование ПО (Rational Software);
Cредства тестирования. Наиболее развитым на
сегодняшний день средством является Rational Suite
TestStudio (Rational Software) - набор продуктов,
предназначенных для автоматического тести рования
приложений;
Cредства управления проектом - Open Plan
Professional (Wslcom Software), Microsoft Project 98 и
др.;
30
31. Архитектура CASE-средств включает в себя следующие компоненты:
Сервис набор системных утилит по обслуживанию репозитория.Данные утилиты выполняют функции архивации данных,
восстановления данных и создания нового репозитория.
31
32. Архитектура CASE-средств включает в себя следующие компоненты:
Репозиторий (словарь данных) – специализированная база данных,являющаяся ядром системы. Обеспечивает хранение версий проекта и его
отдельных компонентов и объектов, синхронизацию поступающей от
проектировщиков информации, контроль метаданных на полноту и
непротиворечивость.
Репозиторий хранит описания следующих объектов:
• Проектировщиков и их прав доступа к различным компонентам
системы;
• Организационных структур;
• Диаграмм, компонентов диаграмм и связей между диаграммами;
• Структур данных;
• Программных модулей, процедур, библиотек и т.п.
32
33. Архитектура CASE-средств включает в себя следующие компоненты:
Графические средства анализа ипроектирования (редакторы диаграмм).
Используются для создания иерархически
связанных диаграмм – моделей ИС – в
заданной графической нотации.
Поддерживают стадию анализа в жизненном цикле разработки ПО.
Используются различные типы диаграмм.
Например(наиболее важные):
«потоков данных»(DFD) - показывают течение данных среди процессов в
разрабатываемой системе, т.е. для информационной системы: где данные
определяются, куда передаются и т.д.
«сущность-связь»(ER) - описывают структуру предметной области;
«состояние-переход»(STD), используемые для создания систем реального
времени и др.
Диаграммеры CASE-средств обеспечивают автоматическую поддержку
создания этих диаграмм, структурных схем и других графиков.
33
34. Архитектура CASE-средств включает в себя следующие компоненты:
Верификатор диаграмм - контрольправильности построения диаграмм в
заданной методологии проектирования
ИС
(автоматический
синтаксический
контроль за созданными диаграммами)
Он выполняет функции:
• мониторинг правильности построения диаграмм;
• диагностику и выдачу сообщений об ошибках;
• проверку на непротиворечивость;
• проверку уровня сбалансированности диаграмм
• выделение на диаграмме ошибочных элементов.
Например:
диаграммы «потоков данных», требуют, чтобы процессы имели как входы,
так и выходы.
Верификаторы часто называют анализаторами разработки.
* Примеры контролируемых ситуаций?
34
35. Архитектура CASE-средств включает в себя следующие компоненты:
Средства администрирования проектом. Представляют собой наборинструментов и служебных программ, необходимых для выполнения таких
административных функций, как:
– Инициализация проекта;
– Задание начальных параметров проекта;
– Назначение и управление правами доступа к отдельным элементам
проекта;
– Мониторинг выполнения проекта.
Документатор проекта позволяет получать информацию о состоянии
проекта в виде различных отчетов. Отчеты могут строится по нескольким
признакам, например по времени, автору, элементам диаграмм, диаграмме
или проекту в целом.
35
36. Технология внедрения CASE-средств
Этапы внедрения CASE-средств :определение потребностей в CASE-средствах;
оценка и выбор CASE-средств;
выполнение пилотного проекта;
практическое внедрение CASE-средств.
Процесс внедрения CASE-средств кроме
непосредственно использования охватывает
планирование и реализацию множества технических,
организационных, структурных процессов,
изменений в общей культуре организации, и основан
на четком понимании возможностей CASE-средств.
http://5fan.ru/wievjob.php?id=31733
36
37. Выбор CASE-средства
Стратегия выбора CASE-систем для конкретных применений зависитот
- целей и потребностей самого проекта,
- квалификации вовлеченных в процесс проектирования специалистов.
В большинстве случаев одно средство не может обеспечить все
потребности проекта. Разработчики, как правило, применяют набор
средств.
Можно выделить следующие типы проектов с применением CASE
инструментария:
Проекты создания
ПО
Проекты оптимизации бизнеса
(СМК, реинжиниринг …);
Проекты создания
ИС
Процессы управления
организацией (СМК).
http://5fan.ru/wievjob.php?id=31733
37
38. Критерии выбора CASE-средств
При выборе инструментария нет готовыхуниверсальных решений.
Состав и структура продукта проекта
должна соответствовать ЦЕЛЯМ проекта.
Т.е. НЕ СУЩЕСТВУЕТ ЕДИНЫХ
КРИТЕРИЕВ ВЫБОРА CASE-СРЕДСТВА.
Критерии определяются исходя из
специфики использования системы.
38
39. Критерии выбора CASE-средств (приведены лишь некоторые)
• Поддержка процессов жизненного цикла (ЖЦ) ПО.• Размер поддерживаемых приложений
• Требуемые техсредства. Оборудование, необходимое для
функционирования CASE-средства (хост-процессоры, оперативную
память и дисковую память);
• Требуемое ПО. ПО, необходимое для функционирования CASEсредства(ОС, графические оболочки)
• Поддерживаемая методология.
• Соответствие стандартам технологической среды.
• Совместимость с другими средствами.
• Поддерживаемые языки.
• Поддержка одновременной работы
• Простота освоения и использования средства
• Контроль доступа
• Сопровождаемость
• Стоимость/затраты на внедрение
и многие др.
Практические рекомендации по освоению и внедрению CASEсредств (http://www.osp.ru/dbms/1997/01/13031527/)
39
40. Для успешного внедрения CASE-средств организация должна обладать следующими качествами:
Технология. Понимание ограниченности существующихвозможностей и способность принять новую технологию;
Культура. Готовность к внедрению новых процессов и
взаимоотношений между разработчиками и
пользователями;
Управление. Четкое руководство и организованность по
отношению к наиболее важным этапам и процессам
внедрения.
Если организация не обладает хотя бы одним из перечисленных
качеств, то внедрение CASE-средств может закончиться неудачей
независимо от степени тщательности следования различным
рекомендациям по внедрению.
Практические рекомендации по освоению и внедрению CASEсредств (http://www.osp.ru/dbms/1997/01/13031527/)
40
41. Основные проблемы внедрения/ использования CASE-средств
• достоверная оценка отдачи от инвестиций в CASE-средства сложна т. к. нетприемлемых метрик и данных по проектам и процессам разработки ПО;
• внедрение CASE-средств может быть длительным процессом и часто не
несет немедленную отдачу. Возможно даже краткосрочное снижение
продуктивности в ре зультате усилий, затрачиваемых на внедрение возможна
потеря интереса руководства к CASE и прекращение поддержки их внедрения;
• отсутствие полного соответствия между теми процессами и ме тодами,
которые поддерживаются CASE-средствами, и теми, ко торые используются в
данной организации, может привести к до полнительным трудностям;
• CASE-средства зачастую трудно использовать в комплексе с другими
подобными средствами, что объясняется как различными парадигмами,
поддерживаемыми различными средствами, так и проблемами сопряжения;
• некоторые CASE-средства требуют слишком много усилий для того, чтобы
оправдать их использование в небольшом проекте;
• негативное отношение персонала к внедрению новой CASE-технологии
может быть главной причиной провала проекта.
Пользователи CASE-средств должны быть готовы к необходимо сти долгосрочных
затрат на эксплуатацию, частому появлению но вых версий и возможному
быстрому моральному старению средств, а также к постоянным затратам на 41
42. Некоторые примеры CASE-инструментов:
Некоторые примеры CASEинструментов:PowerDesigner (Sybase/Powersoft)
ERwin (LogicWorks)
Silverrun (CSA)
CASE. Аналитик (Эйтекс)
Designer/2000 (Oracle)
Rational Rose (RSC)
42
43. PowerDesigner
Графический инструмент, позволяющий вопределенной степени автоматизировать процесс
проектирования реляционных БД
При разработке структуры БД с помощью PD
формируется концептуальная модель данных (КМД),
которая впоследствии преобразуется в физическую
модель данных (ФМД)
Позволяет создавать базы данных путем
подключения к работающему серверу СУБД через
интерфейс ODBC или готовить текстовые файлы
(пакеты) SQL-операторов по созданию структуры БД
43
44. ERwin
Система концептуального моделирования базданных
Система ERwin реализует проектирование схемы БД,
генерацию ее описания на языке целевой СУБД
(Oracle, Sybase, MS SQL Server и др.) и
реинжиниринг баз данных
Для ряда систем быстрой разработки приложений
(PowerBuilder, SQL Windows, Delphi, Visual Basic)
обеспечивается генерация форм и прототипов
приложений
44
45. Silverrun
Открытая система, используемаясовместно с продуктами других различных
фирм
Инструментальная поддержка структурных
методологий информационных систем
бизнес-класса
Позволяет независимо строить модели
двух видов: функциональные и
информационные.
45
46. CASE. Аналитик
Конкурентоспособное отечественноеCASE-средство функционального
моделирования
Построение и редактирование DFD
Анализ диаграмм и проектных
спецификаций на полноту и
непротиворечивость
Получение разнообразных отчетов по
проекту
46
47. Designer/2000
Поддерживает следующие этапыразработки прикладных систем:
моделирование и анализ деятельности
организации, разработку концептуальных
моделей предметной области,
проектирование приложения и синтез
программ
47
48. Rational Rose
Автоматизация анализа и проектированияПО, генерации кодов на различных языках
и подготовки проектной документации
Средства реинжиниринга программ,
обеспечивающие повторное
использование программных компонентов
в новых проектах
48
49. Примерные вопросы по теме
CASE-средства для ООПНазначение,
Классификации
Общий обзор возможностей
Краткое описание/сравнение/назначение/особенности/достоинства/
недостатки/поддерживаемые возможности нескольких продуктов
49