560 likes | 790 Views
Средства разработки ПО. IBM Software Architect. Содержание. Что такое CASE -системы; Системы поддержки коллективной разработки ПО; Системы управления разработкой ПО; Системы проектирования ПО;. Что такое CASE -системы. Описание CASE -систем.
E N D
Средства разработки ПО IBM Software Architect
Содержание • Что такое CASE-системы; • Системы поддержки коллективной разработки ПО; • Системы управления разработкойПО; • Системы проектирования ПО;
Описание CASE-систем • CASE (Computer-Aided Software Engineering) • Данные системы помогают: • повысить качество, реализуемого ПО; • снизить количество ошибок; • упростить обслуживание программных продуктов;
Средства CASE-систем • Применяются в… • анализе предметной области; • предназначены для построения и анализа предметной области; • проектировании баз данных; • разработке приложений; • реинжиниринге; • планировании и управлении проектом; • тестировании; • документировании;
Инструменты CASE-систем • Используются для… • управления конфигурацией; • моделирования данных; • анализа и проектирования; • преобразования моделей; • редактирования программного кода; • рефакторинга кода; • генерации кода; • построения UML-диаграмм.
Основные положения методологийCASE-систем • Построение логической(не физической) модели системы; • Методология предполагает построение системы сверху вниз; • Включение итерации для более качественной разработки;
Классификация 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).
Классификация CASE-пакетов Классификация по уровню интегрированности выполняемых функций Вспомогательные программы (Tools); Пакеты разработки (Toolkit); Инструментальные средства (Workbench); Нурмухаметов Н.А. 2012 9
Классификация CASE-пакетов Классификация по области действия в пределах жизненного цикла ПО Верхние (Upper) CASE; Средние (Middle) CASE; Нижние (Lower) CASE; Нурмухаметов Н.А. 2012 10
Примеры CASE-систем • Dia; • ERwin; • Rational Software; • Umbrello;
Системы поддержки коллективной разработки ПО На примере 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; SourceGear Vault; Subversion; Нурмухаметов Н.А. 2012 16
Системы управления разработкойПО На примере Microsoft Team Foundation Server
Схема планирования проектов • Концептуальное описание проекта; • Формулирование сценариев; • Формирование набора функциональных возможностей для реализации выбранных сценариев; • Формирование набора рабочих элементов; • Распределение задач по областям; • Создание плана работ;
Сценарий работынад большим проектом Мейер Дж.Д., Тейлор Дж. и др. Командная разработка с использованием Visual Studio Team Foundation Server
Типичные проблемыуправления проектами • Работа с разрозненными источниками информации; • Сложности со сбором показателей проекта; • Сложности с выполнением требований; • Управление процессами и изменения в них; • Недостаток учитываемого обмена информацией и отслеживания задач; • Контроль качества;
Другие примерысистем управления разработкойПО Atlassian Jira; Easy Projects .NET; Embarcadero ER/Studio; Microsoft Project; OpenProj; TrackStudio Enterprise; Нурмухаметов Н.А. 2012 21
Системы проектирования ПО Пример использования IBM Software Architect
Задача Разработать приложение «Телефонная книга» J.Martin. Presentation 4: IBM Rational Software Architect Example
Последовательность работы • Создание UML проекта; • Построение диаграммы вариантов использования; • Построение диаграммы классов; • Построение диаграммы последовательностей; • Публикация проекта; • Прямое преобразование UML в Java;
Создание UML проекта: шаг 1 В меню рабочей среды выбратьFile > New > Project > Other.
Создание UML проекта: шаг 2 ВыберитеUML Projectи нажмитеNext.
Создание UML проекта: шаг 3 В поле название проекта введитеMyPhoneBookUMLProject и нажмитеNext.
Создание UML проекта: шаг 4 В поле имя файла UML модели введитеPhone Book UML Model, уберите флажокCreate a default diagram in the new model ипосле этого нажмитеFinish.
Построение диаграммывариантов использования • Актер: владелец телефонной книги • Варианты использования: • Добавление записи. Ввод пары значений имя человека и номер телефона с помощью пользовательского интерфейса приложения. В хранилище не должно быть совпадающих пар. Система обрабатывает введенные данные и сохраняет их. • Поиск номера телефона. По средствам пользовательского интерфейса получить имя человека номер которого необходимо найти. Система находит номер телефона и возвращает его актеру.
Построение диаграммывариантов использования: шаг 1 Во вкладке Model Explorer щелкните правой кнопкой мыши на Phone Book UML Modelи выберите в контекстном менюAdd Diagram > Use Case Diagram.
Построение диаграммывариантов использования: шаг 2 В поле названия диаграммы введитеUse Case Diagramвместо Diagram1. Теперь Вы можете построить диаграмму прецедентов, добавляя различные элементы модели из палитры к диаграмме.
Построение диаграммывариантов использования: шаги 3-5 • ВыберитеActorна палитре, а затем нажмите левой кнопкой мыши в области диаграммы для создания актера. Назовите актераOwner (владелец книги). • ВыберитеUse Caseна палитре, а затем нажмите левой кнопкой мыши в области диаграммы для создания варианта использования. Назовите его Add an entry (добавление записи). • Аналогично второй вариант использования с названиемSearch for a phone number (поиск номера телефона).
Построение диаграммывариантов использования: шаги 6, 7 • ВыберитеAssociationна палитре. Проведите линию ассоциации от актераOwnerк варианту использованияAdd an entry, чтобы создать отношение между двумя элементами модели. • Аналогично создайте линию ассоциации междуOwnerи случаемSearch for a phone number.
Построение диаграммывариантов использования: результат
Построение диаграммы классов Для реализации простого приложения будем использовать архитектурный паттерн Model-View-Controller (MVC). Три класса: PhoneBookModel PhoneBookView PhoneBookController
Построение диаграммы классов. Класс: PhoneBookModel • Для управления записями в телефонной книге и фиксации состояния приложения; • Всякий раз, когда меняется состояние, он уведомляет PhoneBookView, которые затем обновляет отображение записей телефонной книги на окне приложения;
Построение диаграммы классов. Класс: PhoneBookView • Управление графическим интерфейсом пользователя; • Когда получает какие-либо данные сообщает об этом PhoneBookController;
Построение диаграммы классов. Класс: PhoneBookController • Регулирует работу всего приложения; • Изменение модели состояния приложения и обновление модели данных на основе введенных пользователем данных;
Построение диаграммы классов.Методы классов • PhoneBookModel: • addAnEntry; • searchPhoneNumber; • getSearchResult; • getState; • PhoneBookView: • stateHasChanged; • changeViewgetUserInput; • PhoneBookController: • userHasInput; • Start;
Построение диаграммыклассов: шаги 1-3 • В Model Explorer щелкните правой кнопкой мыши Phone Book UML Model и выберите Add Diagram > Class Diagram. • В качестве имени сгенерированной диаграммы введите Class Diagram вместо Diagram1. • Выберите Classв палитре, а затем нажмите кнопку мыши в области диаграммы для создания класса. Назовите его PhoneBookModel.
Построение диаграммыклассов: шаги 4-6 • Щелкните правой кнопкой мыши на созданный класс PhoneBookModel и выберите Add UML > Operationдля создания метода для данного класса. Назовите его SetState; • Аналогично создаются остальные классы и методы; • Ассоциации между классами создаются также как отношения между актером и вариантом использования в предыдущей диаграмме;
Построение диаграммыклассов: результат
Построение диаграммы последовательностей: шаги 1, 2 • Во вкладкеModel Explorerнажать правой кнопкой мыши наPhone Book UML Modelи выбрать в контекстном менюAdd Diagram > Sequence Diagram. • В поле названия диаграммы введитеSequence Diagramвместо Diagram1.
Построение диаграммы последовательностей: шаг 3
Построение диаграммы последовательностей: шаг 5 Выберите методPhoneBookView :: getUserInput () из выпадающего списка.