Слайд 2
Начальный толчок создания CASE - структурное программирование
достаточно развитый
уровень формализации.
Необходимость автоматизировать выполнение рутинных работ.
Слайд 3
В настоящее время CASE-технологии используются не только для
производства ПО, но и как мощный инструмент решения исследовательских
и проектных задач.
Попытка смоделировать систему вообще.
Слайд 4
Назначение CASE для помощи в создании ПО:
автоматизация процесса
построения ПО;
обеспечение функций реверсивного проектирования;
обеспечение функций сопровождения ПО.
поддержка разработки
моделей анализа и проектирования ПО;
Слайд 5
Истоки CASE - использование разработчиками различных схем и
рисунков
Систематизация графических средств приводит к созданию “графических” языков,
которые могут рассматриваться как языки более высокого уровня по отношению к текстам программ.
Слайд 6
Основные задачи CASE-систем
Разработка моделей предметной области, функциональной
структуры системы, структур данных на графических языках.
Хранение моделей в
единой базе данных – репозитории, доступном всем участникам разработки.
Формальный анализ разрабатываемых моделей, позволяющий избегать некоторых семантических ошибок.
Автоматизированная генерация структур баз данных, приложений, текстов программ.
Автоматизированная генерация документации на программные системы.
Обеспечение повторного использования наработок при модернизации, перепроектировании системы.
Слайд 7
CASE-визуальное средство для структурного анализа:
DFD (Data Flow
Diagrams) - диаграммы потоков данных;
ERD ( Entity-Relationship Diagrams) -
диаграммы ‘сущность - связь’;
STD (State Transition Diagrams) - диаграммы переходов состояний.
Слайд 8
методологии структурного анализа классифицируются по признакам:
по отношению к
школам - Software Engineering (SE) и Information Engineering (IE);
по
порядку построения моделей - процедурно-ориентированные, ориентированные на данные и информационно-ориентированные;
по типу целевых систем - для систем реального времени и для информационных систем.
Слайд 9
SE - нисходящий подход;
IE - более новая дисциплина.
Слайд 10
Состав типовой CASE-системы
диаграммеры,
средства для конструирования пользовательского интерфейса,
генераторы
приложений,
генераторы документации,
система программирования,
центральная база данных проекта –
репозиторий
Слайд 12
Изменение распределения трудозатрат
Слайд 13
Основные CASE-средства:
ERWIN (разработка ER-моделей),
BPWIN (разработка диаграмм потоков
данных),
POWER DESIGNER,
DESIGNER 2000,
RATIONAL ROSE,
PARADIGM+
Слайд 14
Классификация по функциональной ориентации
Анализ и проектирование.
CASE- аналитик
(Эйтекс);
POSE (Computer Systems Advisers);
Design/IDEF (Meta Software);
BPWin (Logic Works);
SELECT (Select
Software Tools);
CASE/4/0 (micro TOOl GmbH)
Проектирование баз данных и файлов.
ERWin (Logic Works);
S-Designor (SPD);
Designtr/2000 (Oracle);
Sillverrun (Computer Systems Advisers)/
Программирование.
COBOL 2/Workbench (Mikro Focus);
DECASE (DEC);
NETRON/CAP (Netron);
APS (Sage Softwfre).
Сопровождение и реинжениринг
Adpac CASE Tools (Adpac);
Scan/COBOL и SuperStructure (Computer Data Systems):
Inshtctor/Recoder (language Tecnologe).
Слайд 15
CASE-средства
фирмы Computer Associated
AllFusion Process Modeler (ранее:BPwin) - моделирование
бизнес-процессов
AllFusion ERwin Data Modeler (ранее: ERwin) - моделирование данных
AllFusion
Data Model Validator (ранее: ERwin Examiner) - проверка моделей данных.
AllFusion Model Manager (ранее: ModelMart) - сервер для совместной работы пользователей ERwin и/или Bpwin
AllFusion Saphir Option - – средство просмотра структур данных широкого набора корпоративных информационных систем.
AllFusion Component Modeler (Paradigm Plus) - моделирование компонентов ПО
Слайд 16
Альтернативой структурному подходу стали объектно-ориентированные методы
разработки ИС. В первой половине 90-х годов был предложен
универсальный язык объектного проектирования - Unified Modeling Language, UML (The Unified Method, Draft Edition (0.8). Rational Software Corporation, October 1995).
Существует несколько CASE-средств, поддерживающих язык UML. Наиболее известными являются:
CASE-средства, поддерживающие UML:
Paradigm Plus фирмы PLATINUM technology (Computer Associated).
Rational Rose фирмы Rational Software.
SELECT фирмы SELECT Software
Слайд 17
RAD
(Rapid Application Development)
методология быстрой разработки приложений
небольшая
команда программистов (от 2 до 10 человек);
короткий, производственный
график (от 2 до 6 мес);
итерационный подход, через взаимодействие с заказчиком.
Слайд 18
ЖЦ ПО по методологии RAD состоит из четырех
фаз:
анализа и планирования требований;
проектирования;
реализации;
внедрения.
Слайд 19
На фазе анализа:
определение требований силами пользователей под руководством
специалистов-разработчиков.
Определяется возможность реализации проекта в установленных рамках финансирования,
на данных аппаратных средствах и т. п.
Определяются временные рамки самого проекта в каждой из последующих фаз.
Слайд 20
На фазе проектирования:
Пользователи, взаимодействуя с разработчиками, уточняют и
дополняют требования Для быстрого получения работающих прототипов приложений используются
CASE-средства.
Анализируется и корректируется функциональная модель. Каждый процесс рассматривается детально, создается частичный прототип: экран, диалог, отчет и пр. Принимается решение о количестве, составляющих ПО подсистем, поддающихся разработке одной командой.
Результат данной фазы:
общая информационная модель системы;
функциональные модели системы в целом и подсистем, реализуемых отдельными командами;
точно определенные с помощью CASE-средства интерфейсы между автономно разрабатываемыми подсистемами;
построенные прототипы экранов, отчетов, диалогов.
Слайд 21
На фазе реализации:
Программный код частично формируется с помощью
автоматических генераторов CASE-средств.
Для контроля за выполнением требований к
ПО привлекаются конечные пользователи.
Во время разработки осуществляется тестирование каждой подсистемы.
Разрабатываемые подсистемы постепенно внедряются в общую систему. Производится их тестирование и тестирование всей системы в целом.
Завершается физическое проектирование системы. Если необходимо, создаются базы данных, завершается разработка документации ПО.
Результатом фазы является готовая система, удовлетворяющая всем согласованным требованиям.
Слайд 22
Принципы организации RAD:
Обязательное использование инструментальных средств.
Тесное взаимодействие между
разработчиками и заказчиком.
Работа ведется немногочисленными хорошо управляемыми группами
профессионалов.
Разработка базируется на моделях.
Итерационное прототипирование (традиционно 3 прототипа).
RAD группа всегда работает только над одним прототипом.
Большие системы разбиваются на подсистемы и для него выделяется несколько RAD групп.
Слайд 23
Гибкое проектирование и XP
Гибкое моделирование (Adile Modeling
- AM) – это упорядочивающая, основанная на практическом опыте
методология эффективного моделирования и документирования программных систем.
Слайд 24
Манифест
альянса гибкой разработки ПО
(февраль 2001 года )
Люди
и контакты важнее процессов и средств.
Работающие программы важнее идеальной
документации.
Сотрудничество с заказчиком важнее переговоров по условиям контракта.
Готовность к изменениям важнее соблюдения планов.
Слайд 25
Принципы гибкой разработки ПО:
Мы придаем первоочередное значение
удовлетворению заказчика, быстро и постоянно предоставляя нужное ему программное
обеспечение.
Мы приветствуем изменения требований даже на поздних этапах разработки. Гибкие процессы позволяют поддерживать изменения, обеспечивая заказчику конкурентное преимущество.
Новые версии работающего ПО поставляются часто, с регулярностью от нескольких недель до нескольких месяцев, причем более предпочтительны короткие временные периоды.
В ходе проекта бизнесмены и разработчики должны постоянно работать вместе.
Проекты строятся мотивированными индивидуалами. Создайте им условия, удовлетворяйте их требования и доверяйте им в том, что касается выполнения работы.
Наиболее производительный и эффективный способ передачи информации рабочей группе и внутри нее – это разговор лицом к лицу.
Работающее ПО – это основной показатель прогресса.
Гибкие процессы стимулируют устойчивую работу. Спонсоры, разработчики и пользователи должны быть в состоянии неограниченно долго поддерживать постоянный ритм работы.
Непрерывное внимание к техническому качеству и хорошему проектированию улучшает гибкость.
Простота – искусство минимизировать количество ненужной работы – исключительно важна.
Наилучшим образом архитектура, требования и проектирование формируются и выполняются самоорганизующимися командами.
Команда должна регулярно обсуждать, как повысить эффективность своей работы, после чего изменять и согласовывать рабочий процесс с результатами этих обсуждений.