"Документ, фиксирующий эти самые нужды и возможности" Карл Вигерс Взаимодействие с заказчиком область взаимного понимания заказчик область возможного сотрудничества разработчик Графические нотации моделирования UML (Unified Modeling Language) – язык графического описания для объектного моделирования в области разработки программного обеспечения. IDEF – методологии семейства ICAM для решения задач моделирования сложных систем, позволяет отображать и анализировать модели деятельности широкого спектра сложных систем в различных разрезах. ARIS (ARchitecture of Integrated Information Systems) – методология и программный продукт компании IDS Scheer для моделирования бизнес-процессов компании UML в моделях процесса разработки Agile – факультативный элемент XP – полное пренебрежение RUP – Best-practices MDA(Model Driven Architecture) – стержень процесса Поставленная задача Автоматизации основного технологического процесса агентства недвижимости «Рога и копыта». Основные функции системы: 1. 2. 3. Ведение сведений о всех клиентах Ведение сведений об объектах недвижимости Ведение сведений о сопровождении сделок Этапы разработки Определение требований Анализ Проектирование Реализация Тестирование Определение требований Один из важнейших этапов разработки, согласно RUP. Отражает сценарии взаимодействия пользователей. Фактически, это взгляд пользователей на программную систему снаружи. Диаграмма вариантов использования (use case diagram) диаграмма, на которой отражены отношения, существующие между актерами и прецедентами. Основная задача — представлять собой единое средство, дающее возможность заказчику, конечному пользователю и разработчику совместно обсуждать функциональность и поведение системы. use case diagram Таблица вариантов использования № варианта использования Вариант использования 1 Название Отмена сделки Действующие лица Клиент системы Описание Клиент переходит на страницу сделок, выбирает конкретную сделку и отменяет ее Предварительные условия Пройдена процедура аутентификации пользователя Выходные условия Изменения по сделке заносятся в БД системы Нормальное направление 1. Пользователь изменяет статус сделки 2. Пользователь выбирает необходимую сделку Исключения 1. Сделка уже отменена Приоритет Частота использования По необходимости Диаграмма последовательности (sequence diagram) Представление взаимодействия элементов модели в форме последовательности сообщений и соответствующих событий на линиях жизни объектов Диаграмма последовательностей обработки заявлений Анализ Создается аналитическая модель, которая подводит разработчиков к архитектуре будущей системы. Аналитическая модель – это взгляд на систему изнутри, в отличие от модели прецедентов, которая показывает, как система будет выглядеть снаружи. Диаграмма состояний (State Machine diagram) диаграмма, на которой представлен конечный автомат с простыми состояниями, переходами и композитными состояниями. State Machine diagram Проектирование На данном этапе создается модель проектирования. Эта модель отражает физическую реализации системы и описывает создаваемый продукт на уровне классов и компонентов. Диаграмма деятельности (Activity diagram) диаграмма, на которой показано разложение некоторой деятельности на её составные части Activity diagram Диаграмма классов (class diagram) статическая структурная диаграмма, описывающая структуру системы, она демонстрирует классы системы, их атрибуты, методы и зависимости между классами. class diagram Модель Сущность-Связь (ER-модель) модель данных, позволяющая описывать концептуальные схемы, объекты и отношения между ними. ER-диаграмма Реализация Создается модель реализации, которая описывает то, как реализуются элементы модели проектирования, какие классы будут включены в конкретные компоненты. Диаграмма компонентов (Component diagram) статическая структурная диаграмма, показывает разбиение программной системы на структурные компоненты и связи (зависимости) между компонентами. В качестве физических компонент могут выступать файлы, библиотеки, модули, исполняемые файлы, пакеты и т. п. Component diagram Тестирование В процессе тестирования проверяются результаты реализации. Для данного процесса создается модель тестирования, которая не имеет отображения на UML диаграммы, но использует уже готовые диаграммы Тестирование & UML Проверка соответсвия документации реализованному ПО Взаимодействие пользователя с системой Используемые диаграммы Активности Состояний Вариантов использования Критика Избыточность языка Неточная семантика Проблемы при изучении и внедрении Формальный механизм визуализации Что хотим? Диаграммы: Поведения Структур Взаимодействия Среда реализации: Microsoft Visio 2007