252383bb4a14a72fe9357b60c1abdf32.ppt
- Количество слайдов: 56
Средства разработки ПО IBM Software Architect
Содержание • Что такое CASE-системы; • Системы поддержки коллективной разработки ПО; • Системы управления разработкой ПО; • Системы проектирования ПО; Нурмухаметов Н. А. 2012 2
Что такое CASE-системы
Описание CASE-систем • CASE (Computer-Aided Software Engineering) • Данные системы помогают: – повысить качество, реализуемого ПО; – снизить количество ошибок; – упростить обслуживание программных продуктов; Нурмухаметов Н. А. 2012 4
Средства CASE-систем • Применяются в… – анализе предметной области; • предназначены для построения и анализа предметной области; – – – проектировании баз данных; разработке приложений; реинжиниринге; планировании и управлении проектом; тестировании; документировании; Нурмухаметов Н. А. 2012 5
Инструменты CASE-систем • Используются для… – – – – управления конфигурацией; моделирования данных; анализа и проектирования; преобразования моделей; редактирования программного кода; рефакторинга кода; генерации кода; построения UML-диаграмм. Нурмухаметов Н. А. 2012 6
Основные положения методологий CASE-систем 1. Построение логической (не физической) модели системы; 2. Методология предполагает построение системы сверху вниз; 3. Включение итерации для более качественной разработки; Нурмухаметов Н. А. 2012 7
Классификация CASE-пакетов • Классификация по способу использования в технологическом процессе Для анализа и проектирования; • Для проектирования баз данных и файлов; • Для процесса реализации; • Для процесса внедрения; • Для сопровождения и реинженерии; • Для управления проектом; – Примеры: The Developer (Asyst Technologies), Design Generator (Computer Sciences). – Примеры: Idef/Leverage (D. Appleton), Chen Toolkit (Chen & Associates). – Примеры: Cobol 2/Workbench (Miero Focus), Decase (DEC). – Примеры: Multi/Cam (AGS Management Systems), Sylvia Foondey (Codmare). – Примеры: Adpac Case Tools (Adpac), Superstructure (Computer Data Systems). – Примеры: Projekt Workbench (Applied Business Technology). Нурмухаметов Н. А. 2012 8
Классификация CASE-пакетов • • • Классификация по уровню интегрированности выполняемых функций Вспомогательные программы (Tools); Пакеты разработки (Toolkit); Инструментальные средства (Workbench); Нурмухаметов Н. А. 2012 9
Классификация CASE-пакетов • • • Классификация по области действия в пределах жизненного цикла ПО Верхние (Upper) CASE; Средние (Middle) CASE; Нижние (Lower) CASE; Нурмухаметов Н. А. 2012 10
Примеры CASE-систем • • Dia; ERwin; Rational Software; Umbrello; Нурмухаметов Н. А. 2012 11
Системы поддержки коллективной разработки ПО На примере Microsoft Team Foundation Server
Логический документооборот Мейер Дж. Д. , Тейлор Дж. и др. Командная разработка с использованием Visual Studio Team Foundation Server
Логическая организация работы в нескольких группах разработки Мейер Дж. Д. , Тейлор Дж. и др. Командная разработка с использованием Visual Studio Team Foundation Server
Физическая среда разработки и тестирования Мейер Дж. Д. , Тейлор Дж. и др. Командная разработка с использованием Visual Studio Team Foundation Server
Другие примеры систем поддержки коллективной разработки ПО • • Araxis Merge; Atlassian Jira; Embarcadero ER/Studio; Fossil; Mercurial; Rational Team Concert; Source. Gear Vault; Subversion; Нурмухаметов Н. А. 2012 16
Системы управления разработкой ПО На примере Microsoft Team Foundation Server
Схема планирования проектов • Концептуальное описание проекта; • Формулирование сценариев; • Формирование набора функциональных возможностей для реализации выбранных сценариев; • Формирование набора рабочих элементов; • Распределение задач по областям; • Создание плана работ; Нурмухаметов Н. А. 2012 18
Сценарий работы над большим проектом Мейер Дж. Д. , Тейлор Дж. и др. Командная разработка с использованием Visual Studio Team Foundation Server
Типичные проблемы управления проектами • Работа с разрозненными источниками информации; • Сложности со сбором показателей проекта; • Сложности с выполнением требований; • Управление процессами и изменения в них; • Недостаток учитываемого обмена информацией и отслеживания задач; • Контроль качества;
Другие примеры систем управления разработкой ПО • • • Atlassian Jira; Easy Projects. NET; Embarcadero ER/Studio; Microsoft Project; Open. Proj; Track. Studio Enterprise; Нурмухаметов Н. А. 2012 21
Системы проектирования ПО Пример использования IBM Software Architect
Задача Разработать приложение «Телефонная книга» J. Martin. Presentation 4: IBM Rational Software Architect Example
Последовательность работы 1. Создание UML проекта; 2. Построение диаграммы вариантов использования; 3. Построение диаграммы классов; 4. Построение диаграммы последовательностей; 5. Публикация проекта; 6. Прямое преобразование UML в Java; Нурмухаметов Н. А. 2012 24
Создание UML проекта: шаг 1 В меню рабочей среды выбрать File > New > Project > Other. Нурмухаметов Н. А. 2012 25
Создание UML проекта: шаг 1 Нурмухаметов Н. А. 2012 26
Создание UML проекта: шаг 2 Выберите UML Project и нажмите Next. Нурмухаметов Н. А. 2012 27
Создание UML проекта: шаг 2 Нурмухаметов Н. А. 2012 28
Создание UML проекта: шаг 3 В поле название проекта введите My. Phone. Book. UMLProject и нажмите Next. Нурмухаметов Н. А. 2012 29
Создание UML проекта: шаг 3 Нурмухаметов Н. А. 2012 30
Создание UML проекта: шаг 4 В поле имя файла UML модели введите Phone Book UML Model, уберите флажок Create a default diagram in the new model и после этого нажмите Finish. Нурмухаметов Н. А. 2012 31
Создание UML проекта: шаг 4 Нурмухаметов Н. А. 2012 32
Создание UML проекта: результат Нурмухаметов Н. А. 2012 33
Построение диаграммы вариантов использования • Актер: владелец телефонной книги • Варианты использования: – Добавление записи. Ввод пары значений имя человека и номер телефона с помощью пользовательского интерфейса приложения. В хранилище не должно быть совпадающих пар. Система обрабатывает введенные данные и сохраняет их. – Поиск номера телефона. По средствам пользовательского интерфейса получить имя человека номер которого необходимо найти. Система находит номер телефона и возвращает его актеру. Нурмухаметов Н. А. 2012 34
Построение диаграммы вариантов использования: шаг 1 Во вкладке Model Explorer щелкните правой кнопкой мыши на Phone Book UML Model и выберите в контекстном меню Add Diagram > Use Case Diagram. Нурмухаметов Н. А. 2012 35
Построение диаграммы вариантов использования: шаг 2 В поле названия диаграммы введите Use Case Diagram вместо Diagram 1. Теперь Вы можете построить диаграмму прецедентов, добавляя различные элементы модели из палитры к диаграмме. Нурмухаметов Н. А. 2012 36
Построение диаграммы вариантов использования: шаги 3 -5 3. Выберите Actor на палитре, а затем нажмите левой кнопкой мыши в области диаграммы для создания актера. Назовите актера Owner (владелец книги). 4. Выберите Use Case на палитре, а затем нажмите левой кнопкой мыши в области диаграммы для создания варианта использования. Назовите его Add an entry (добавление записи). 5. Аналогично второй вариант использования с названием Search for a phone number (поиск номера телефона). Нурмухаметов Н. А. 2012 37
Построение диаграммы вариантов использования: шаги 6, 7 6. Выберите Association на палитре. Проведите линию ассоциации от актера Owner к варианту использования Add an entry, чтобы создать отношение между двумя элементами модели. 7. Аналогично создайте линию ассоциации между Owner и случаем Search for a phone number. Нурмухаметов Н. А. 2012 38
Построение диаграммы вариантов использования: результат Нурмухаметов Н. А. 2012 39
Построение диаграммы классов • Для реализации простого приложения будем использовать архитектурный паттерн Model-View-Controller (MVC). • Три класса: – Phone. Book. Model – Phone. Book. View – Phone. Book. Controller Нурмухаметов Н. А. 2012 40
Построение диаграммы классов. Класс: Phone. Book. Model • Для управления записями в телефонной книге и фиксации состояния приложения; • Всякий раз, когда меняется состояние, он уведомляет Phone. Book. View, которые затем обновляет отображение записей телефонной книги на окне приложения; Нурмухаметов Н. А. 2012 41
Построение диаграммы классов. Класс: Phone. Book. View • Управление графическим интерфейсом пользователя; • Когда получает какие-либо данные сообщает об этом Phone. Book. Controller; Нурмухаметов Н. А. 2012 42
Построение диаграммы классов. Класс: Phone. Book. Controller • Регулирует работу всего приложения; • Изменение модели состояния приложения и обновление модели данных на основе введенных пользователем данных; Нурмухаметов Н. А. 2012 43
Построение диаграммы классов. Методы классов • Phone. Book. Model: – – add. An. Entry; search. Phone. Number; get. Search. Result; get. State; • Phone. Book. View: – state. Has. Changed; – change. Viewget. User. Input; • Phone. Book. Controller: – user. Has. Input; – Start; Нурмухаметов Н. А. 2012 44
Построение диаграммы классов: шаги 1 -3 1. В Model Explorer щелкните правой кнопкой мыши Phone Book UML Model и выберите Add Diagram > Class Diagram. 2. В качестве имени сгенерированной диаграммы введите Class Diagram вместо Diagram 1. 3. Выберите Class в палитре, а затем нажмите кнопку мыши в области диаграммы для создания класса. Назовите его Phone. Book. Model. Нурмухаметов Н. А. 2012 45
Построение диаграммы классов: шаги 4 -6 4. Щелкните правой кнопкой мыши на созданный класс Phone. Book. Model и выберите Add UML > Operation для создания метода для данного класса. Назовите его Set. State; 5. Аналогично создаются остальные классы и методы; 6. Ассоциации между классами создаются также как отношения между актером и вариантом использования в предыдущей диаграмме; Нурмухаметов Н. А. 2012 46
Построение диаграммы классов: результат Нурмухаметов Н. А. 2012 47
Построение диаграммы последовательностей: шаги 1, 2 1. Во вкладке Model Explorer нажать правой кнопкой мыши на Phone Book UML Model и выбрать в контекстном меню Add Diagram > Sequence Diagram. 2. В поле названия диаграммы введите Sequence Diagram вместо Diagram 1. Нурмухаметов Н. А. 2012 48
Построение диаграммы последовательностей: шаг 3 Нурмухаметов Н. А. 2012 49
Построение диаграммы последовательностей: шаг 5 5. Выберите метод. Phone. Book. View : : get. User. Input () из выпадающего списка. Нурмухаметов Н. А. 2012 50
Построение диаграммы последовательностей: шаг 5 От кого К кому Метод phone. Book. View phone. Book. Control ler Phone. Book. Controller: : user. Has. Inp ut() phone. Book. Control ler phone. Book. Model Phone. Book. Model: : search. Phone. Numb er() phone. Book. Control ler phone. Book. Model Phone. Book. Model: : set. State() phone. Book. Model phone. Book. View Phone. Book. View: : state. Has. Changed( ) phone. Book. View phone. Book. Model Phone. Book. Model: : get. Search. Result () phone. Book. View Phone. Book. View: : change. View() Нурмухаметов Н. А. 2012 51
Построение диаграммы последовательностей: результат Нурмухаметов Н. А. 2012 52
Публикация проекта Нурмухаметов Н. А. 2012 53
Прямое преобразование UML в Java Нурмухаметов Н. А. 2012 54
Другие примеры систем проектирования ПО • Embarcadero ER/Studio; Нурмухаметов Н. А. 2012 55
Спасибо за внимание Нурмухаметов Н. А. 2012
252383bb4a14a72fe9357b60c1abdf32.ppt