- •Содержание
- •Введение
- •Формирование концептуальных требований к системе и пользовательскому интерфейсу
- •Лабораторная работа №2 Построение графа диалога интерфейса пользователя
- •Лабораторная работа №3 Разработка проекта прототипа пользовательского интерфейса
- •Лабораторная работа №4 Разработка исполняемого протитипа пользовательского интерфейса
- •Лабораторная работа №5 Тестирование исполняемого прототипа пользовательского интерфейса
- •Лабораторная работа №6 Анализ эффективности пользовательского интерфейса
- •220400 (23010565) «Программное обеспечение
- •450000, Уфа-центр, ул.К.Маркса, 12
- •Список литературы
Формирование концептуальных требований к системе и пользовательскому интерфейсу
Цель работы: изучение методологии проведения предпроектного обследования предметной области с целью выявления решаемых задач и определения их информационных потребностей с использованием современных CASE-средств.
Задачи: овладение методами разработки функциональных моделей, приобретение навыков построения на основе информационных моделей и навыков применения специализированных программных продуктов – Logic Works BPWin и ERWin.
Теоретическая часть
Эффективность пользовательского интерфейса непосредственно зависит от возможности предварить его разработку и внедрение описанием всего комплекса проблем, которые необходимо разрешить, с указанием того, какие функции системы должны быть автоматизированы, определением того, как взаимодействует система со своим окружением. Решение этой задачи базируется на проведении предпроектного обследования, позволяющего выявить основные задачи, которые должна выполнять проектируемая система. Формальные методики проведения такого анализа базируются на разработке системного проекта, который предусматривает создание процессных, функциональных, информационных и динамических моделей.
Для любой системы определяющим является ее функциональное содержание, так как оно определяет ее основные свойства. Поэтому начальным этапом разработки системного проекта является построение функциональной модели.
Функциональная модель представляет с требуемой точностью детализации систему функций, которые отражают свои взаимоотношения через объекты системы [1, 2].
В основе функциональной модели лежит исходная информация по рассматриваемому проекту, которая формируется в виде мнемосхем, отражающих особенности существующего и предлагаемого подходов к решению выявленных задач.
Наиболее распространенным стандартом проектирования функциональных моделей является IDEF0 (первоначальное название SADT – Structured Analysis and Design Technique). Построенная с помощью этой методологии модель и отображает функциональную структуру системы, то есть производимые ей действия и связи между этими действиями.
Процесс моделирования в IDEF0 начинается с определения контекста, то есть определения наиболее абстрактного уровня описания системы в целом. В контекст входит определение субъекта моделирования, цели и точки зрения на модель [1, 2].
Модель должна рассматриваться всегда с одной и той же позиции, которая называется точкой зрения данной модели. Этот аспект разработки функциональной модели занимает особое место, поскольку одни и те же задачи по-разному решаются отдельными категориями пользователей. Например, функции, связанные с проведением сессии на факультете вуза, решаются деканатом, преподавателями и даже студентами, а каждый из них уже со своих позиций подходит к решению этой задачи.
Модель не может быть построена без четко сформулированной цели. Формулировка цели позволяет команде аналитиков сфокусировать усилия в нужном направлении. При этом если цель будет слишком общей, то функциональная модель станет весьма громоздкой, что существенно усложнит и без того непростой этап концептуального проектирования.
При проектировании контекста функциональной модели должна быть сформулирована основополагающая функция системы, соответствующая определенным ранее цели и точке зрения. На следующем этапе необходимо выполнить декомпозицию контекстной функции, т.е. разбиения выбранной сложной задачи на более простые, каждая из которых, в свою очередь, также может быть декомпозирована и т. д. Каждое из таких описаний называется диаграммой.
IDEF0-модель объединяет и организует диаграммы в иерархические структуры, в которых диаграммы наверху модели менее детализированы, чем диаграммы нижних уровней. Каждая диаграмма представляет собой отдельный уровень декомпозиции, общее количество которых задает степень декомпозиции модели.
Каждая IDEF0-диаграмма содержит блоки и дуги. Блоки изображают функции моделируемой системы. Дуги связывают блоки вместе и отображают взаимодействия и взаимосвязи между ними. В IDEF0 каждая сторона блока имеет особое, вполне определенное назначение. Левая сторона блока предназначена для входов, верхняя – для управления, правая – для выходов, нижняя – для механизмов (рис. 1).
Рис. 1. Структура функционального блока IDEF0
Приведенное обозначение отражает следующие системные принципы: входы преобразуются в выходы, управление ограничивает или предписывает условия выполнения преобразований, механизмы показывают, кто, что и как выполняет функцию.
В целом построение функциональной модели позволяет выделить функции, которые следует автоматизировать в рамках разрабатываемой системы.
Информационная модель – это формализованное описание информационных структур и операции над ними. Информационное моделирование представляет собой, прежде всего, анализ логической структуры информации об объектах системы. Эта логическая структура является необходимым дополнением функциональной модели, детализируя объекты, которыми манипулируют функции системы.
Методологической основой информационного моделирования является стандарт IDEF1x, использующий концепцию «сущность-связь» (Entity-Relationship). Фактически с помощью диаграммы «сущность-связь» документируются сущности системы и способы их взаимодействия, включая идентификацию объектов, важных для предметной области (сущностей), свойств этих объектов (атрибутов) и их отношений с другими объектами (связей).
Построение информационной модели выполняется на базе функциональной модели в соответствии со следующими правилами:
– входная, выходная, управляющая и исполнительная информация функциональной модели становится сущностями в информационной модели;
– функциональные блоки преобразуются в связи между сущностями в информационной модели.
– каждая сущность должна содержать уникальный идентификатор, однозначно определяющий каждый её экземпляр. Например, сущность «студент» может содержать в качестве идентификатора номер зачетной книжки. При этом каждый экземпляр этой сущности, т.е. каждый конкретный студент (например, Иванов) однозначно характеризуется этим значением: нет двух студентов с одинаковым номером зачетной книжки.
Построение информационной модели позволяет выявить информационные потребности каждой из автоматизируемых функций.
CASE-средства ERwin и BPwin, разработанные фирмой Logic Works, являются наиболее распространенными механизмами разработки функциональных и информационных моделей. CASE-средство верхнего уровня BPwin поддерживает методологию IDEF0 (функциональная модель), а ERwin — методологию IDEF1X (информационная модель) [3].
Порядок выполнения работы
1. Выполнить предпроектное исследование предметной области согласно варианту задания и результат представить в виде мнемосхемы класса «как есть».
2. Определить не менее пяти функциональных возможностей проектируемой системы. Реализовать задачу анализа входных данных и последующего принятия решения из заранее определенного множества. Выбранные функции должны отвечать некоторым общим критериям и не должны решать диаметрально противоположные задачи. Например, если задана предметная область «Отдел кадров», то могут быть выделены следующие функции:
– прием на работу
– увольнение сотрудников
– премирование / штрафные санкции.
Их можно объединить в единую группу «Учет кадров».
Если же выбраны, например, функции:
– прием на работу
– увольнение сотрудников
– учет расхода канцелярских принадлежностей в отделе,
то такой набор некорректен, поскольку не может быть отнесен к какой-то одной обобщающей функции.
3. Построить функциональную модель. Функциональный блок контекстной диаграммы должен соответствовать обобщающей функции. Декомпозиция первого уровня – это функциональные блоки, соответствующие 5 выбранным в п.2 функциям. Специфицировать не менее 3 входных, выходных, управляющих и исполнительных воздействий с точки зрения пользователя будущей системы. Степень декомпозиции каждого функционального блока – не менее 3. Количество функциональных блоков – не менее 4.
4. Построить информационную модель – не менее 5 сущностей. Дать подробное описание всех субъектов и объектов функционирования с указанием их информационной нагрузки, т.е. тех свойств, которые в контексте данных автоматизируемых функций имеют значение.
Варианты заданий
В качестве вариантов заданий предлагаются следующие предметные области:
кинопрокат
библиотека
автосалон
издательство
мебельный магазин
гостиница
ателье
кадровое агентство
книжный магазин
деканат. Сессия
Контрольные вопросы
С какой целью выполняется предпроектное обследование предметной области?
Что входит в состав системного проекта?
Что такое функциональная модель и какую контекстную нагрузку она несет?
На базе какой методологии строится функциональная модель?
Что такое информационная модель? Какова её роль в предпроектном обследовании?
На базе какой методологии строится информационная модель?
Каковы правила перехода от функциональной модели к информационной?
В чем заключается различие понятий «сущность» и «экземпляр сущности»?
Требования к содержанию и оформлению отчета
Отчет должен содержать:
Титульный лист, название и цель работы.
Вариант задания и постановку задачи.
Мнемосхему
Обоснование выбора автоматизируемых функций и их описание.
Функциональную модель.
Информационную модель.
Выводы.
