- •«Технологии разработки программного обеспечения»
- •Оглавление
- •Введение
- •Анализ проблемы. Постановка задачи
- •Введение
- •Описание примера
- •Составление списка заинтересованных лиц
- •Анкетирование и проведение интервью
- •Список потребностей заинтересованных лиц
- •Задания
- •Контрольные вопросы
- •Моделирование объекта автоматизации
- •Введение
- •Введение в методологиюAris
- •Описание инструментаAris. Начало работы
- •Построение организационной модели
- •Построение диаграммы цепочек добавленного качества
- •ПостроениеeEpCмодели
- •Описание объектов автоматизации
- •Задания
- •Контрольные вопросы
- •Разработка модели вариантов использования и их спецификаций
- •Введение
- •Разработка модели вариантов использования
- •Модель вариантов использования
- •Построение модели вариантов использования
- •Спецификация вариантов использования
- •Основной поток
- •Альтернативные потоки
- •Специальные требования
- •Пример спецификации варианта использования
- •Алгоритм расчёта рейтингов
- •Задания
- •Пример написания раздела
- •Назначение документа
- •Наименование системы
- •Сведения о заказчике и исполнителе
- •Основания для выполнения работ, сроки и финансирование
- •Основные понятия, определения и сокращения
- •Актуальность разработки системы
- •Назначение и цели создания (развития) системы
- •Требования к содержимому раздела
- •Пример написания раздела
- •Характеристики объекта автоматизации
- •Требования к содержимому раздела
- •Пример написания раздела
- •Организация и планирование научно-исследовательской и инновационной деятельности
- •Исполнители научно-исследовательских работ
- •Учет и отчетность по научно-исследовательским работам
- •Требования к системе
- •Требования к содержимому раздела
- •Пример написания раздела
- •Требования к системе в целом
- •Требования к структуре и функционированию системы
- •Требования к численности и квалификации персонала
- •Требования к функциям (задачам)
- •Описание вариантов использования
- •Состав и содержание работ по созданию системы
- •Требования к содержимому раздела
- •Пример написания раздела
- •Порядок контроля и приемки системы
- •Требования к содержимому раздела
- •Пример написания раздела
- •Требования к составу и содержанию работ по подготовке объекта автоматизации к вводу системы в действие
- •Требования к содержимому раздела
- •Пример написания раздела
- •Создание служб необходимых для функционирования системы
- •Функциональные этапы внедрения системы
- •Требования к документированию
- •Требования к содержимому раздела
- •Пример написания раздела
- •Паспорт системы
- •Общее описание системы
- •Руководство администратора
- •Руководство пользователя
- •Регламент эксплуатации
- •Источники разработки
- •Правила оформления
- •Задание
- •Бизнес-логика
- •Объектно-реляционное отображение
- •Структура бд
- •Создание проекта вBorlandDeveloperStudio
- •Добавление нового модуля в проект
- •Создание классов с помощью диаграммыUml
- •Добавление полей
- •Добавление свойств
- •Добавление процедуры
- •Добавление функции
- •Создание отношений между классами
- •Ассоциация
- •Агрегация
- •Наследование
- •Пример создания классов
- •Создание классов и отношений между ними слоя объектно-реляционного отображения
- •Создание классов слоя бизнес-логики
- •Невизуальные компоненты интерфейса используемые в примере
- •TimageList
- •TActionManager
- •Визуальные компоненты используемые в примере
- •TBitBtn
- •TdbGrid
- •TcomboBox
- •TPageControl
- •Пример разработки интерфейса
- •Главная форма
- •Форма редактирования параметров студента
- •Форма редактирования книг
- •Форма отображения списка книг
- •Подключение классов
- •Сохранение проекта
- •Задание
- •Шаблоны проектирования
- •Шаблон InformationExpert(информационный эксперт)
- •Преимущества
- •Шаблон Creator(создатель)
- •Преимущества
- •Шаблон LowCoupling(слабое связывание)
- •Преимущества
- •Шаблон HighCohesion(высокое зацепление)
- •Преимущества
- •Шаблон Controller(контроллер)
- •Преимущества
- •Применение шаблонаInformationExpert
- •Применение шаблонаCreator
- •Использование шаблонаHighCohesion
- •Применение шаблонаController
- •Задание
- •Технология eco
- •Язык объектных ограничений ocl
- •Mdi-контейнеры
- •Создание простого mda-приложения
- •Основные этапы разработки приложения
- •Обзор возможностей Borland Developer Studio 2006 для разработки mda-приложения
- •Создание моделиUml
- •Создание бд и настройкаEcOкомпонент
- •Создание интерфейса
- •Связывание интерфейса с моделью
- •Создание логики наOcl
- •Задания
- •Контрольные вопросы
- •РазработкаMda-приложения с использованием машин состояний
- •Введение
- •Автоматы
- •Состояния
- •Подавтоматы
- •Диаграммы состояний
- •Создание mda-приложений с использованием машин состояний
- •Модификация модели uml
- •Создание машины состояний
- •Обновление базы данных
- •Модификация пользовательского интерфейса
- •Связывание интерфейса с моделью
- •Применение автоформ
- •Расширение пользовательского интерфейса
- •Задания
- •Контрольные вопросы
- •Расширенные возможности разработкиMda-приложений
- •СозданиеMda-приложения с расширенными возможностями
- •Модификация моделиUml
- •Программное добавление объекта
- •Программное удаление объекта
- •Программное редактирование объекта
- •Работа со справочником
- •Поиск объектов
- •Задания
- •Контрольные вопросы
- •Заключение
- •Библиографический список
Описание объектов автоматизации
Объект автоматизации необходимо описывать с целью структурирования полученных данных об этом объекте и изложении их в письменном и/или модельном виде. Представленная таким образом информация об объекте является незаменимым помощником при выполнении последующих работ в процессе разработки ПО, таких как проектирование подсистем и модулей, проектирование базы данных, разработка пользовательского интерфейса, формулирования функций и требований к ПО. Кроме того, описание объекта автоматизации требует ГОСТ при разработке ТЗ.
Как правило, для объекта строится его модель (например, по методологии ARIS), делаются пояснения к модели и описываются нюансы, которые сложно или невозможно изобразить на модели.
Задания
Установить и настроить среду моделирования ARISToolset.
Разработать организационную диаграмму.
Разработать диаграмму добавленного качества (VAD).
Разработать для каждого процесса VADдиаграммуeEPC.
Контрольные вопросы
Что такое модель?
Методология ARIS.
Организация хранения данных о модели в ARISToolset.
Как взаимосвязаны разные диаграммы в рамках одной модели?
Какие вы знаете связи между элементами в организационной диаграмме?
Какие процессы отражены на диаграмме VAD?
Как реализован механизм декомпозиции в ARIS?
Из каких блоков строиться диаграмма eEPC?
Что такое событие в eEPC?
Каким образом может использоваться модель ARISдля описания объекта автоматизации?
Разработка модели вариантов использования и их спецификаций
Цель работы:
научиться разрабатывать модели вариантов использования;
научиться организовывать модель вариантов использования;
научиться разрабатывать спецификации вариантов использования.
Введение
Цель данного этапа заключается в разработке требований к программному обеспечению. В России стандартом оформления требований является ГОСТ 34.602-89, который регламентирует содержание технического задания (ТЗ) на разработку автоматизированных информационных систем.
Существуют и другие широко применяемые в мире стандарты, например, IEEE (Institute of Electrical and Electronics Engineers) 830: Standard for Software Requirements Specification (1994).
Процесс разработки требований к ПО (или спецификаций требований) условно можно разделить на три этапа, которые позволяют описать требования на трёх уровнях (рисунок 4.1). Каждый уровень позволяет описать требования на столько детально, насколько этого требует уровень абстракции.
Выявление и формулирование требований первого уровня «Потребности» было осуществлено на предыдущем этапе – этапе системного анализа. На этом этапе нужно описать требования для второго и третьего уровней.
Рисунок 4.16 – Характеристика уровней описания требований
Разработка модели вариантов использования
Модель вариантов использования
Для определения (выявления) функций к разрабатываемой системе необходимо провести анализ требований. На данном этапе для такого анализа имеется уже достаточно много материала, который был собран на предыдущем этапе. Таким образом, исходными данными для анализа требований являются: потребности заинтересованных лиц, данные интервьюирования, описание объектов автоматизации, цели и задачи разработки системы.
Процесс формулирования функций к системе можно частично отнести к процессу проектирования, поскольку он определяет функциональность будущей системы, что в свою очередь уже на этапе анализа требований заставляет задумываться об архитектуре системы и об элементах пользовательского интерфейса. И этот подход верен, он позволяет безболезненно перейти от этапа к этапу и поддерживает итеративную модель разработки программных систем.
При определении функций можно использовать элементы системного анализа. Но существуют более адаптированные методы к процессам разработки ПО. В данном практикуме рекомендуется использовать метод вариантов использования для идентификации и представления функций системы.
Метод вариантов использования (прецедентов) является частью методологии объектно-ориентированного проектирования. Это метод анализа и проектирования сложных систем, представляющий собой способ описания поведения системы с точки зрения того, как различные пользователи взаимодействуют с ней для достижения своих целей. Такой ориентированный на пользователя подход предоставляет возможность исследовать различные варианты поведения системы при раннем привлечении пользователя.
Варианты использования можно успешно использовать на протяжении всего жизненного цикла программного обеспечения. Варианты использования можно применять при анализе, проектировании и в процессе тестирования. В этом случае, процесс разработки программного обеспечения называют – основанный на вариантах использования.
Вариант использования– это функциональный связный блок, выраженный в виде транзакции между актантом и системой (Рисунок 4 .17). Вариант использования описывает последовательность действий, выполняемых системой с целью получения полезного результата пользователем системы. Актантом называют пользователя системы (человек, другая система).
Между вариантами использования и актантами существует связь, которая показывает, какие функции системы доступны каждому пользователю. Кроме того, в модели вариантов использования есть связи между самими варрантами использования. В соответствии со стандартом языка UMLтаких связей достаточно много. В данном практикуме будут рассмотрены наиболее часто употребляемые связи при построении модели. Это расширение (обобщение) и использование (рисунок 4.2).
Рисунок 4.17 – Обозначения в модели вариантов использования
Расширение используется в том случае, если у ряда вариантов использования есть общая часть, которую можно выделить в отдельный вариант использования. Этот тип связи аналогичен наследованию в классах. Пример такого типа связи приведен на рисунке 4.3.
Рисунок 4.18 – Пример связи обобщения
Использование применяется в случае, если несколько вариантов использования в основном или альтернативных потоках имеют одинаковое поведение. В отличие от обобщения, использование не подразумевает обязательное наличие общего поведения.