Проектирование программного обеспечения для оценки психофизиологического состояния человека
Описание среды разработки Microsoft Visual Studio. Поддерживаемые технологии и языки программирования. Возможности и особенности компьютеризированного тестирования человека. Проектирование программного обеспечения с использованием объектного подхода.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | русский |
Дата добавления | 09.02.2013 |
Размер файла | 3,0 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Если и , то тип «вогнутый».
3. Проектирование программного обеспечения с использованием объектного подхода
Модели разрабатываемого программного обеспечения при объектном подходе основаны на предметах и явлениях реального мира. В основе этих моделей также лежит описание требуемого поведения разрабатываемого программного обеспечения, т. е. его функциональности, но это поведение связывается с состояниями элементов (объектов конкретной предметной области.
Таким образом, на этапе анализа ставятся две задачи:
уточнить требуемое поведение разрабатываемого программного обеспечения;
разработать концептуальную модель его предметной области с точки зрения поставленных задач.
В основе объектного подхода к разработке программного обеспечения лежит объектная декомпозиция, т. е. представление разрабатываемого программного обеспечения в виде совокупности объектов, в процессе взаимодействия которых через передачу сообщений и происходит выполнение требуемых функций.
Стандартным средством описания разработки программных продуктов с использованием объектного подхода является язык UML.
Спецификация разрабатываемого программного обеспечения при использовании UML объединяет несколько моделей:
использования,
логическую,
реализации,
процессов,
развертывания.
Модель использования представляет собой описание функциональности программного обеспечения с точки зрения пользователя.
Логическая модель описывает ключевые абстракции программного обеспечения (классы, интерфейсы и т. п.), т. е. средства, обеспечивающие требуемую функциональность.
Модель реализации определяет реальную организацию программных модулей в среде разработки.
Модель процессов отображает организацию вычислений и оперирует понятиями «процессы» и «нити». Она позволяет оценить производительность, масштабируемость и надежность программного обеспечения.
И, наконец, модель развертывания показывает особенности размещения программных компонентов на конкретном оборудовании.
Таким образом, каждая из указанных моделей характеризует определенный аспект проектируемой системы, а все они вместе составляют относительно полную модель разрабатываемого программного обеспечения.
Всего UML предлагает девять дополняющих друг друга диаграмм, входящих в различные модели:
диаграммы вариантов использования;
диаграммы классов;
диаграммы пакетов;
диаграммы последовательностей действий;
диаграммы кооперации;
диаграммы деятельностей;
диаграммы состояний объектов;
диаграммы компонентов;
диаграммы размещения.
3.1 Диаграмма вариантов использования
Диаграммы вариантов использования. Диаграммы вариантов использования позволяют наглядно представить ожидаемое поведение системы. Основными понятиями диаграмм вариантов использования являются: действующее лицо, вариант использования, связь.
Действующее лицо - внешняя по отношению к разрабатываемому программному обеспечению сущность, которая взаимодействует с ним с целью получения или предоставления какой-либо информации (пользователи, другое программное обеспечение или какие-либо технические средства, взаимодействующие с разрабатываемым программным обеспечением).
Вариант использования - некоторая очевидная для действующего лица процедура, решающая его конкретную задачу.
Связь - взаимодействие действующих лиц и соответствующих вариантов использования.
Рис. 23 - Диаграмма вариантов использования для обследуемого
Рис. 23 - Диаграмма вариантов использования для исследователя
3.2 Диаграмма классов
Диаграммы классов - центральное звено объектно-ориентированных методов разработки программного обеспечения, применяемое, в основном, на этапе проектирования для того, чтобы показать особенности построения конкретных классов. UML предлагает использовать три уровня диаграмм классов в зависимости от степени их детализации:
концептуальный уровень, на котором диаграммы классов, называемые в этом случае контекстными, демонстрируют связи между основными понятиями предметной области;
уровень спецификаций, на котором диаграммы классов отображают интерфейсы классов предметной области, т. е. связи объектов этих классов;
уровень реализации, на котором диаграммы классов непосредственно показывают поля и операции конкретных классов.
Каждую из перечисленных моделей используют на конкретном этапе разработки программного обеспечения:
концептуальную модель - на этапе анализа;
диаграммы классов уровня спецификации - на этапе проектирования;
диаграммы классов уровня реализации - на этапе реализации.
Концептуальные модели в соответствии с определением оперируют понятиями предметной области, атрибутами этих понятий и отношениями между ними. Понятию в предметной области разрабатываемого программного обеспечения могут соответствовать как материальные предметы, так и абстракции, которые применяют специалисты предметной области.
Основным понятиям в модели ставятся в соответствие классы. Класс - это совокупность общих признаков заданной группы объектов предметной области. В соответствии с этим определением на диаграмме классов каждому классу соответствует группа объектов, общие признаки которых и фиксирует класс.
Экземпляр класса или объект обязательно обладает всей совокупностью признаков своего класса и может иметь собственные признаки, не фиксированные в классе.
На диаграммах класс изображается в виде прямоугольника, внутри которого указано имя класса. При необходимости допускается указывать характеристики класса, например, атрибуты, используя специальные секции условного обозначения.
В качестве атрибутов представляют некоторые, существенные с точки зрения решаемой задачи характеристики объектов, например, идентифицирующие значения (имя, номер). Для конкретного объекта атрибут всегда имеет определенное значение. На диаграмме классов атрибуты обычно показывают в секции атрибутов.
Под отношением классов понимают статическую, т. е. не зависящую от времени, связь между классами. Различают два основных вида отношений: ассоциация и обобщение.
Отношение ассоциации означает наличие связи между экземплярами классов или объектами, она может иметь имя, рядом с которым обычно ставят стрелку, указывающую направление чтения имени («Студент обучается в институте», а не наоборот).
Рис. 25 - Диаграмма классов системы оценки ПФС человека
3.3 Диаграмма последовательностей системы
Диаграмма последовательностей системы - графическая модель, которая для определенного сценария варианта использования показывает генерируемые действующими лицами события и их порядок.При этом система рассматривается как единое целое.
Для построения диаграммы последовательностей системы необходимо:
представить систему как «черный ящик» и изобразить для нее линию жизни - вертикальнуюпунктирную линию, подходящую к блоку снизу;
идентифицировать каждое действующее лицо и изобразить для него линию жизни (многодействующих лиц бывает в вариантах совместного использования программного обеспечения);
из описания варианта использования определить множество системных событий и ихпоследовательность;
изобразить системные события в виде линий со стрелкой на конце между линиями жизнидействующих лиц и системы, а также указать имена событий и списки передаваемых значений.
В отличие от внутренних событий, те, что генерируются для системыдействующими лицами, называют системными. Системные события инициируют выполнениесоответствующего множества операций, также называемых системными. Каждую системнуюоперацию называют по имени соответствующего сообщения.
Множество всех системных операций определяют, идентифицируя системные события всехвариантов использования. Для наглядности системные операции изображают в виде операций абстрактного класса (типа) System. Если необходимо разделить множество операций наподмножества, инициируемые разными пользователями, то используют несколько абстрактных классов: Systeml, System2 и т. д.
Каждую системную операцию необходимо описать. Обычно описание системной операциисодержит:
имя операции и ее параметры;
описание обязанности;
указание типа;
названия вариантов использования, в которых она используется;
примечания для разработчиков алгоритмов и т. д.;
описание обработки возможных исключений;
описание вывода неинтерфейсных сообщений;
предположение о состоянии системы до выполнения операции (предусловие);
описание изменения состояния системы после выполнения операции (постусловие).
Рис. 26 - Диаграмма последовательностей системы для варианта использования «Регистрация пользователя в системе»
Таблица 6 - Описание операции «Ввести личные данные»
Раздел |
Описание |
|
Имя |
Ввести личные данные() |
|
Обязанности |
Ввод информации, идентифицирующей человека, и некоторых его физиологических показателей (вес, рост, пол и т.д.) |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Регистрация пользователя в системе» |
|
Примечания |
Предусмотреть возможность прерывания операции |
|
пользователем |
||
Исключения |
Если в указаны не все данные, то вывести сообщение об ошибке |
|
Вывод |
- |
|
Предусловия |
Предполагает наличие всех исходных данных о человеке |
|
Постусловие |
- |
Таблица 7 - Описание операции «Проверить верность введенных результатов»
Раздел |
Описание |
|
Имя |
Проверить верность введенных результатов() |
|
Обязанности |
Проверка корректности введенной информации |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Регистрация пользователя в системе» |
|
Примечания |
Предусмотреть возможность прерывания операциипользователем |
|
Исключения |
Если в указаны не все данные, то вывести сообщение об ошибке |
|
Вывод |
Сообщение об удачной/неудачной проверке |
|
Предусловия |
Предполагает наличие всех исходных данных о человеке |
|
Постусловие |
- |
Таблица 8 - Описание операции «Сохранить результаты»
Раздел |
Описание |
|
Имя |
Сохранить результаты() |
|
Обязанности |
Перенос информации в БД |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Регистрация пользователя в системе» |
|
Примечания |
Предусмотреть возможность прерывания операциипользователем |
|
Исключения |
- |
|
Вывод |
Сообщение об успешной регистрации/о невозможности регистрации, т.к. такая текущая учетная запись уже существует |
|
Предусловия |
Предполагает наличие всех исходных данных о человеке |
|
Постусловие |
Информация сохранена в БД |
Рис. 27 - Диаграмма последовательностей системы для варианта использования «Авторизация пользователя в системе»
Таблица 9 - Описание операции «Ввести опознавательные данные»
Раздел |
Описание |
|
Имя |
Ввести опознавательные данные() |
|
Обязанности |
Ввод исходных данных, идентифицирующих конкретного пользователя |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Авторизация пользователя в системе» |
|
Примечания |
Предусмотреть возможность прерывания операции пользователем |
|
Исключения |
- |
|
Вывод |
- |
|
Предусловия |
Предполагает наличие всех исходных данных о человеке |
|
Постусловие |
Возможность осуществления поиска |
Таблица 10 - Описание операции «Поиск в системе»
Раздел |
Описание |
|
Имя |
Поиск в системе() |
|
Обязанности |
По введенным данным осуществить поиск соответствия в системе |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Авторизация пользователя в системе» |
|
Примечания |
- |
|
Исключения |
- |
|
Вывод |
Учетная запись человека |
|
Предусловия |
Предполагает наличие введенных опознавательных данных о человеке |
|
Постусловие |
Возможность осуществления поиска |
Таблица 11 - Описание операции «Войти в систему тестирования»
Раздел |
Описание |
|
Имя |
Войти в систему тестирования() |
|
Обязанности |
Переход непосредственно к тестам |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Авторизация пользователя в системе» |
|
Примечания |
Предусмотреть возможность прерывания операции пользователем |
|
Исключения |
- |
|
Вывод |
Окно главного меню тестов системы |
|
Предусловия |
Предполагает наличие пользователя среди зарегистрированных пользователей |
|
Постусловие |
Возможность перехода непосредственно к тестам |
Рис. 28 - Диаграмма последовательностей системы для варианта использования «Тестирование пользователя в системе»
Таблица 12 - Описание операции «Выбрать тест»
Раздел |
Описание |
|
Имя |
Выбрать тест() |
|
Обязанности |
Осуществление выбора теста |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Тестирование пользователя в системе» |
|
Примечания |
Предусмотреть возможность прерывания операции пользователем |
|
Исключения |
- |
|
Вывод |
Окно инструкции теста |
|
Предусловия |
Предполагает наличие пользователя среди зарегистрированных пользователей |
|
Постусловие |
- |
Таблица 13 - Описание операции «Изучить инструкцию к тесту»
Раздел |
Описание |
|
Имя |
Изучить инструкцию к тесту() |
|
Обязанности |
Прочтение инструкции и запоминание правил прохождения теста |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Тестирование пользователя в системе» |
|
Примечания |
Предусмотреть возможность прерывания операции пользователем |
|
Исключения |
- |
|
Вывод |
Окно непосредственно самого теста |
|
Предусловия |
Предполагает наличие пользователя среди зарегистрированных пользователей |
|
Постусловие |
Возможность вводить данные |
Таблица 14 - Описание операции «Дать ответ к тесту»
Раздел |
Описание |
|
Имя |
Дать ответ к тесту() |
|
Обязанности |
Выполнение действий, описанных в инструкции к тесту |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Тестирование пользователя в системе» |
|
Примечания |
Предусмотреть возможность прерывания операции пользователем |
|
Исключения |
- |
|
Вывод |
Окно непосредственно самого теста |
|
Предусловия |
Предполагает наличие пользователя среди зарегистрированных пользователей |
|
Постусловие |
Возможность вводить данные |
Рис. 29 - Диаграмма последовательностей системы для варианта использования «Просмотр исследователем информации о результатах тестирования одного человека в системе»
Таблица 15 - Описание операции «Выбрать человека»
Раздел |
Описание |
|
Имя |
Выбрать человека() |
|
Обязанности |
Выбор человека, по которому предполагается поиск информации |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Просмотр исследователем информации о результатах тестирования одного человека в системе» |
|
Примечания |
Предусмотреть возможность прерывания операции пользователем |
|
Исключения |
- |
|
Вывод |
Учетная запись выбранного человека |
|
Предусловия |
Предполагает наличие введенных данных по обследуемому |
|
Постусловие |
Возможность выбора теста или набора тестов |
Таблица 16 - Описание операции «Выбрать тест или набор тестов»
Раздел |
Описание |
|
Имя |
Выбрать тест или набор тестов() |
|
Обязанности |
Выбор одного или нескольких тестов, по которому (которым) предполагается поиск информации |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Просмотр исследователем информации о результатах тестирования одного человека в системе» |
|
Примечания |
Предусмотреть возможность прерывания операции пользователем |
|
Исключения |
- |
|
Вывод |
- |
|
Предусловия |
Предполагает наличие введенных данных по обследуемому |
|
Постусловие |
Возможность вывода результатов тестирования |
Таблица17 - Описание операции «Вывести результаты тестирования»
Раздел |
Описание |
|
Имя |
Вывести результаты тестирования() |
|
Обязанности |
Вывод информации о результатах тестирования одного человека в системе |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Просмотр исследователем информации о результатах тестирования одного человека в системе» |
|
Примечания |
- |
|
Исключения |
- |
|
Вывод |
Информация о результатах тестирования одного человека в системе по выбранным тестам |
|
Предусловия |
Предполагает наличие учетной записи обследуемого и списка тестов |
|
Постусловие |
Возможность печати информации о результатах тестирования |
Рис. 30 - Диаграмма последовательностей системы для варианта использования «Просмотр исследователем информации о результатах тестирования группы людей в системе»
Таблица 18 - Описание операции «Выбрать группу людей»
Раздел |
Описание |
|
Имя |
Выбрать группу людей() |
|
Обязанности |
Выбор группы людей, по которым предполагается поиск информации |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Просмотр исследователем информации о результатах тестирования группы людей в |
|
системе» |
||
Примечания |
Предусмотреть возможность прерывания операции пользователем |
|
Исключения |
- |
|
Вывод |
Наименование группы людей |
|
Предусловия |
Предполагает наличие введенных данных по обследуемым |
|
Постусловие |
Возможность выбора теста или набора тестов |
Таблица 19 - Описание операции «Наложить дополнительные ограничения»
Раздел |
Описание |
|
Имя |
Наложить дополнительные ограничения() |
|
Обязанности |
Выбор различных фильтров, необходимых для текущего варианта вывода |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Просмотр исследователем информации о результатах тестирования группы людей в системе» |
|
Примечания |
- |
|
Исключения |
- |
|
Вывод |
Наименование группы людей с наложенными дополнительными фильтрами |
|
Предусловия |
Предполагает наличие введенных данных по обследуемым |
|
Постусловие |
Возможность выбора теста или набора тестов |
Таблица 20 - Описание операции «Выбрать тест или набор тестов»
Раздел |
Описание |
|
Имя |
Выбрать тест или набор тестов() |
|
Обязанности |
Выбор одного или нескольких тестов, необходимых для текущего варианта вывода |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Просмотр исследователем информации о результатах тестирования группы людей в системе» |
|
Примечания |
- |
|
Исключения |
- |
|
Вывод |
Наименование группы людей с наложенными дополнительными фильтрами и выбранными тестами |
|
Предусловия |
Предполагает наличие введенных данных по обследуемым |
|
Постусловие |
Возможность вывода информации |
Таблица 21 - Описание операции «Вывести результаты тестирования»
Раздел |
Описание |
|
Имя |
Вывести результаты тестирования() |
|
Обязанности |
Вывод результатов тестирования группы людей в системе |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Просмотр исследователем информации о результатах тестирования группы людей в системе» |
|
Примечания |
- |
|
Исключения |
- |
|
Вывод |
Информация о результатах тестирования группы людей |
|
Предусловия |
Предполагает наличие введенных данных по обследуемым |
|
Постусловие |
- |
Рис. 31 - Диаграмма последовательностей системы для варианта использования «Генерациязаключения о состоянии здоровья»
Таблица 22 - Описание операции «Выбрать человека»
Раздел |
Описание |
|
Имя |
Выбрать человека() |
|
Обязанности |
Выбор человека, по которому предполагается поиск информации |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Генерация заключения о состоянии здоровья» |
|
Примечания |
Предусмотреть возможность прерывания операции пользователем |
|
Исключения |
- |
|
Вывод |
Учетная запись выбранного человека |
|
Предусловия |
Предполагает наличие введенных данных по обследуемому |
|
Постусловие |
Возможность выбора теста или набора тестов |
Таблица 23 - Описание операции «Выбрать период»
Раздел |
Описание |
|
Имя |
Выбрать период() |
|
Обязанности |
Выбор период времени, в пределах которого предполагается поиск информации |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Генерация заключения о состоянии здоровья» |
|
Примечания |
- |
|
Исключения |
- |
|
Вывод |
Учетная запись выбранного человека и выбранный период |
|
Предусловия |
Предполагает наличие введенных данных по обследуемому |
|
Постусловие |
Возможность вывода заключения о состоянии ПФС человека |
Таблица 24 - Описание операции «Вывести заключение»
Раздел |
Описание |
|
Имя |
Вывести заключение() |
|
Обязанности |
Вывод заключения о состоянии здоровья человека |
|
Тип |
Системная |
|
Ссылки |
Вариант использования «Генерация заключения о состоянии здоровья» |
|
Примечания |
- |
|
Исключения |
- |
|
Вывод |
Информация о состоянии здоровья человека |
|
Предусловия |
Предполагает наличие данных по обследуемому |
|
Постусловие |
- |
3.4 Диаграмма пакетов
Диаграмма пакетов показывает, из каких частей состоит проектируемая программная система, и как эти части связаны друг с другом.
Связь между пакетами фиксируют, если изменения в одном пакете могут повлечь за собой изменения в другом. Она определяется внешними связями классов и других ресурсов, объединенных в пакет. Возможны различные виды зависимости классов, например:
объекты одного класса посылают сообщения объектам другого класса;
объекты одного класса обращаются к компонентам объектов другого;
объекты одного класса используют объекты другого в списке параметров методов и т.п.
Самыми хорошими технологическими характеристиками отличается вариант, при котором каждый пакет включает интерфейс, содержащий описание всех ресурсов данного пакета, и взаимодействие пакетов осуществляется только через этот интерфейс. Изменения реализацииресурсов пакета в этом случае не затрагивает других пакетов. И только изменения в интерфейсе могут потребовать изменения пакетов, использующих ресурсы данного пакета.
Пакеты, с которыми связаны все пакеты программной системы, называют глобальными. Интерфейсы таких пакетов необходимо проектировать особенно тщательно, так как изменения в них потребуют проверки всех пакетов разрабатываемой системы.
Ниже будет представлена диаграмма классов разрабатываемой системы по оценке ПФС человека, где определена зависимость классов.
Рис. 32 - Диаграмма пакетов системы по оценке ПФС человека
Диаграмме пакетов, представленной на рис. 32, соответствуют следующие группы классов или пакеты:
Пользовательский интерфейс - классы, реализующие объекты интерфейса с пользователем;
Библиотека интерфейсных элементов - классы, реализующие интерфейсныекомпоненты: окна, кнопки, метки и т. п.;
Объекты управления - классы, реализующие сценарии вариантов использования (в т.ч. реализующие регистрацию и авторизацию);
Объекты задачи - классы, реализующие объекты предметной области системы (тесты):
тест ИМ - тест «Индивидуальная минута» (внутреннее ощущение времени человека);
теппинг-тест - динамика движения руки (определение силы нервной системы);
тест Кагана - тест «Сравнение похожих рисунков» Дж. Кагана (определение когнитивного стиля импульсивность/рефлективность);
тест ЗР - тест «Зрительная реакция»;
пакет анализа - обработка результатов обследования;
База данных;
Интерфейс с базой данных - классы, реализующие интерфейс с базой данных;
Обработка ошибок (global) - классы исключений, реализующие обработку нештатных ситуаций.
3.5 Диаграмма компонентов
Диаграммы компонентов применяют при проектировании физической структуры разрабатываемо программного обеспечения. Эти диаграммы показывают, как выглядит программное обеспечение на физическом уровне, т. е. из каких частей оно состоит и как эти части связаны между собой.
Диаграммы компонентов оперируют понятиями компонент и зависимость. Под компонентами при этом понимают физические заменяемые части программного обеспечения, которые соответствуют некоторому набору интерфейсов и обеспечивают их реализацию. По сути дела, это отдельные файлы различных типов: исполняемые (.ехе), текстовые, графические, таблицы баз данных и т. п., составляющие разрабатываемое программное обеспечение.
Зависимость между компонентами фиксируют, если один компонент содержит некоторый ресурс (модуль, объект, класс и т. д.), а другой - его использует. Качество компоновки оценивают по количеству и типу связей между компонентами, т. е. по степени независимости компонентов. На диаграмме компонентов зависимость обозначают пунктиром со стрелкой на конце.
В данном курсовом проекте диаграмма компонентов разрабатываемого программного обеспечения для оценки ПФС человека (рис.33) состоит из следующих элементов:
БД - база данных для хранения информации об обследуемых,
Тест ПФС.exe - приложение по тестированию человека,
Анализ ПФС.exe - приложение для анализа статистики ПФС человека,
Instruction1.doc и Instruction2.doc - файлы с инструкциями для обследуемого и исследователя соответственно,
Папка с рисунками - каталог для хранения графических файлов к тесту «Сравнение похожих рисунков»,
test_project.ini и analyse_project.ini - файлы настроек подключения к серверу для приложений Тест ПФС.exe и Анализ ПФС.exe соответственно.
База данных в своем составе имеет 9 таблиц, приведенных в табл. 25.
Таблица 25 - Состав таблиц в базы данных проекта
Номер п/п |
Полное наименование таблицы |
Сокращенное наименование таблицы в схеме БД |
Определение смысла сущности |
|
1 |
Пациент |
Patient |
Информация о пациентах, проходящих тестирование |
|
2 |
Пациенты в организациях |
Patients_organisation |
Информация о принадлежности пациентов к организациям |
|
3 |
Организации |
Organization |
Информация об организациях и их структуре |
|
4 |
Результаты тестов |
Results |
Информация о результатах теста |
|
5 |
Дата проведения теста |
Dates |
Информация о дате проведения теста |
|
6 |
Тесты |
Tests |
Информация о имеющихся тестах |
|
7 |
Заключения в тестах |
test_concl |
Информация о соответствии заключений определенным тестам |
|
8 |
Заключения |
Conclusion |
Информация, необходимая для формирования заключения по результатам прохождения теста |
|
9 |
Данные, полученные в ходе тестирования |
Data |
Конкретные числовые значения (время выполнения, количество ошибок) |
Рис. 33 - Диаграмма компонентов разрабатываемого программного обеспечения для оценки ПФС человека
3.6 Диаграмма размещения
Диаграмма размещения отражает физические взаимосвязи между программными и аппаратными компонентами системы. Каждой части аппаратных средств системы, например, компьютеру или датчику, на диаграмме размещения соответствует узел. Соединения узлов означают наличие в системе соответствующих коммуникационных каналов. Внутри узлов указывают размещенные на данном оборудовании программные компоненты разрабатываемой программной системы, сохраняя указанные на диаграмме компонентов отношения зависимости.
С точки зрения диаграммы размещения локальная и глобальная сети - это тоже узлы, которые обладают некоторой спецификой.
Рис. 34 - Диаграмма размещения программного обеспечения по оценке ПФС человека
4. Программная реализация интерфейсов системы оценки ПФС человека на языке С#
Интерфейсы пользователя бывают двух типов:
процедурно-ориентированные интерфейсы;
объектно-ориентированные интерфейсы.
Процедурно ориентированный интерфейс использует традиционную модель взаимодействия с пользователем, основанную на понятиях «процедура» и «операция». В рамках этой модели программное обеспечение предоставляет пользователю возможность выполнения некоторых действий, для которых пользователь определяет соответствие данных и следствием выполнения которых является получение желаемого результата.
Объектно-ориентированные интерфейсы используют несколько иную модель взаимодействия с пользователем, ориентированную на манипулирование объектами предметной области (перемещение папок и файлов в Windows).
Процедурно-ориентированные интерфейсы можно разделить на:
примитивные,
меню,
со свободной навигацией.
Примитивный интерфейс организует взаимодействие с пользователем и используется в консольном режиме. Единственное отклонение от последовательного процесса, который обеспечивается данными, заключается в организации цикла для обработки нескольких наборов данных.
Интерфейс «меню» позволяет пользователю выбирать операцию из специального списка, выводимого ему программой. Эти интерфейсы предполагают реализацию множества сценариев работы, последовательность действий в которых определяется пользователями. Древовидная организация меню предполагает строго ограниченную реализацию.
Интерфейс со свободной навигацией (графический интерфейс) поддерживает концепцию интерактивного взаимодействия с программным обеспечением, визуальную обратную связь с пользователем и возможность прямого манипулирования объектом (кнопки, индикаторы, строки состояния). В отличие от интерфейса «меню», интерфейс со свободной навигацией обеспечивает возможность осуществления любых допустимых в конкретном состоянии операций, доступ к которым возможен через различные интерфейсные компоненты. Интерфейс со свободной навигацией реализуется с использованием событийного программирования, что предполагает применение визуальных средств.
Объектно-ориентированные интерфейсы используют модель взаимодействия с пользователем, ориентированную на манипулирование объектами предметной области. В рамках этой модели пользователю предоставляется возможность напрямую взаимодействовать с каждым объектом и инициировать выполнение операций, в процессе которых взаимодействуют несколько объектов. Задача пользователя формулируется как целенаправленное изменение некоторого объекта.
Объектно-ориентированный интерфейс предполагает, что взаимодействие с пользователем осуществляется посредством выбора и перемещения пиктограмм соответствующей объектно-ориентированной области.
При разработке интерфейса проектируемой программы используем графический тип интерфейса.
Выбор графического интерфейса был сделан по следующим причинам:
обеспечивает возможность осуществления любых допустимых в конкретном состоянии операций;
способен изменяться в процессе взаимодействия с пользователем, предлагая выбор только тех операций, которые имеют смысл в конкретной ситуации.
4.1 Построение графа диалога
Граф диалога - ориентированный взвешенный граф, каждой вершине которого соответствует определенное состояние диалога, характеризующееся набором доступных пользователю действий. Дуги, исходящие из вершин, показывают возможные изменения состояний при выполнении пользователем указанных действий. Таким образом, граф представляет собой набор состояний системы, между которыми в ходе диалога при определенных условиях осуществляются переходы.
Разработка графа диалога позволяет выявить и устранить возможные тупиковые ситуации, выбрать рациональный путь перехода из текущего состояния системы в требуемое, выявить неоднозначные ситуации, когда для пользователя требуется дополнительная помощь.
Интерфейс пользователя можно упростить, снизив степень неопределенности действий пользователя. Для этого можно применить смешанную структуру диалога, ограничив при необходимости свободу выбора пользователя, используя меню или другие элементы и контролировать вводимую пользователем информацию, принимать только допустимые данные.
Граф диалога приложения по тестированию ПФС человека представлен на рисунке 35.
Рис. 35 - Граф диалога приложения по тестированию ПФС человека
Разработка форм ввода-вывода информации
Разработанное программное обеспечение имеет большой набор элементов графического интерфейса: окна, меню, компоненты ввода-вывода.
Окно - прямоугольная, ограниченная область физического экрана. В программе используется два вида окон: информационные и окна приложений.
Примером окна приложения, может быть окно регистрации (рис. 34). Оно имеет поле ввода/выбора данных и управляющие кнопки («Зарегистрироваться», «Выход»).
Рис. 36 - Окно регистрации в системе
Также в программе есть окно начальной страницы, тестирования, самих тестов (рис.37-39).
Рис. 37 - Окно начальной страницы при нажатии на кнопку «Вход»
Рис. 38 - Окно выбора тестов «Тестирование»
Рис. 39 - Окно теста «Сравнение похожих рисунков»
Информационное окно - представлено в виде окон сообщения. Окна сообщений предупреждают пользователя о существующей ошибке при вводе данных (рис.40), об успешном выполнении операций (рис.41) и т.п.
Рис. 40 - Окно сообщения при ошибке ввода
Рис. 41 - Окно сообщения, информирующее об успешном выполнении операции
Элементы графического интерфейса программы многочисленны, это компоненты ввода-вывода. Некоторые из них перечислены в таблице 26.
Таблица 26 - Компоненты ввода-вывода в программе
Компонент |
Внешний вид |
Предназначение |
|
label - метка |
вывода текста на поверхность формы, для именования других объектов, либо для отображения каких-либо сообщений |
||
textBox - однострочное редактируемое текстовое поле |
ввод-вывод информации |
||
button- кнопка |
инициирует выполнение некоторой функциональной задачи, программный код которой выполнен в виде функции-обработчика события |
||
radioButton |
переключатель, который пользователь может устанавливать (выбирать), но не снимать (отменять выбор) |
||
comboBox - комбинированный список |
ввод данных в поле редактирования путем набора на клавиатуре или выбором из имеющегося списка значений |
Заключение
В ходе выполнения курсового проекта был определен объект и предмет исследования, выявлены цели и задачи. Проведен анализ проблемы, включающий в себя оценку отечественных и зарубежных аналогов комплекса по определению и оценке психофизиологического состояния человека, описаны основные требования к разрабатываемому программному продукту, а именно: выбраны структуры данных хранения информации, методы разработки основных алгоритмов решения задачи.
Были также созданы спецификации программного обеспечения, т.е. построены различные диаграммы: вариантов использования, классов, последовательностей системы.
В том числе, спроектирован интерфейс пользователя, а именно: выбран его тип (сочетание графического интерфейса и меню), построен граф диалога, разработаны формы ввода-вывода информации.
Список литературы
1. Информационно-экспертная система определения психофизиологического состояния человека: Всероссийская научная конференция студентов и аспирантов «Молодые исследователи - регионам», 18 апр. 2012 г./ И.П. Левичев, Е.А. Одинцова.
2. Компьютеризированная система комплексной оценки психофизиологического состояния человека: 10 Всероссийская научно-техническая конференция «Вузовская наука - региону», 28 февр. 2012 г./ И.П. Левичев, П.Г. Леонов, Е.А. Одинцова, А.Л. Смыслова.
3. Компьютерные варианты психологических тестов [Электронный ресурс]. URL: http://website-seo.ru/02970101155.html
4. Комплекс для психофизиологической диагностики «Универсальная психофизиологическая лаборатория» [Электронный ресурс]. URL: http://medprom.ru/medprom/mpp_0008083
5. Биомышь - комплекс для психофизиологической диагностики [Электронный ресурс]. URL: http://www.zdorovierus.ru/biomouse/
6. Дианел 22S-iON (PlenusEdition) Комплекс аппаратно-программный [Электронный ресурс]. URL: http://www.nelian.ru/index.php?productID=719
7. Медицинские компьютерные системы [Электронный ресурс]: Комплекс «Здоровье-Экспресс». URL: http://zdex.ru/
8. Иванова Г.С. Технология программирования. - М.: Изд-во МГТУ им. Н.Э. Баумана, 2002.
9. Мельникова С.Л. Показатель продолжительности индивидуальной минуты как интегральная характеристика адаптационных возможностей [Электронный ресурс]. URL: http://rsana.narod.ru/public/melnikova_21.html
10. Гусев Е.И. и др. Пространственно-временная организация восприятия у больных дисциркуляторной энцефалопатией [Электронный ресурс]. URL: http://www.mediasphera.ru/journals/korsakov/detail/104/1126/
11. Величковский Б. Когнитивная наука: Основы психологии познания [Электронный ресурс]. URL: http://www.gumer.info/bibliotek_Buks/Psihol/velich
12. Среда разработки MicrosoftVisual Studio [Электронный ресурс]. URL: http://xbb.uz/dev/Sreda-razrabotki-Microsoft-Visual-Studio
13. Интегрированная среда разработки Visual Studio [Электронный ресурс]. URL: http://www.aspnetcms.info/node/73
14. Пошаговое руководство. Просмотр интегрированной среды разработки Visual Studio [Электронный ресурс]. URL: http://msdn.microsoft.com/ru-ru/library/jj153219.aspx
Приложение 1
Устав проекта
Требования, удовлетворяющие потребности, пожелания и ожидания заказчика, спонсора и других участников проекта
Разрабатываемое инструментальное средство должно отвечать следующим требованиям:
интуитивно понятный интерфейс, с которым смогут работать простые пользователи ПК, не обладающие какими-либо специализированными знаниями;
иметь простую и понятную инструкцию по работе с разработанным инструментальным средством;
мобильность, т.е. возможность установки разработанного инструментального средства на широком круге ПЭВМ с последующим переносом результатов обработки информации в базу данных.
Производственная необходимость, самое общее описание проекта или требования к продукту, который является предметом проекта
Наблюдение за эмоциональным напряжением и его оценка является одной из профилактических мер против снижения работоспособности человека.
Требования к программному продукту:
возможность сбора и обработки обширных статистических данных о показателях состояния здоровья человека;
возможность создания общего заключения о состоянии здоровья человека на основании результатов тестирования;
интуитивно понятный интерфейс, с которым смогут работать простые пользователи ПК, не обладающие какими-либо специализированными знаниями;
простые и понятные инструкции по работе с разработанным инструментальным средством;
мобильность, т.е. возможность установки разработанного инструментального средства на широком круге ПЭВМ с последующим переносом результатов обработки информации в базу данных.
Использование данного инструментального средства позволит:
определять состояние здоровья человека,
собрать обширный статистический материал для дальнейших исследований в области здоровья, при помощи которого можно будет выявить новые корреляционные зависимости между образом жизни современного человека и его психофизиологическим состоянием;
в зависимости от результатов обследования равномерно распределять нагрузку для человека (образовательные учреждения).
Информация о назначенном менеджере проекта и уровне его полномочий
Менеджер проекта:
Информация о менеджере проекта
Наименование |
Описание |
|
ФИО |
Екатерина Александровна |
|
Организация |
ФГБОУ ВПО ЧГУ |
|
Отдел |
Институт информационных технологий |
|
Должность |
магистрант |
|
Тел: |
+79211326552 |
|
E-mail: |
the-one35@rambler.ru |
Полномочия менеджера проекта:
управление людьми, которые задействованы в производственном процессе;
управление ресурсами, которые задействованы в производственном процессе.
Менеджер принимает на себя ответственность за качественное исполнение задания на курсовой проект. Программное инструментальное средство, отвечающее всем предъявляемым к нему требованиям и выполненное в установленные сроки, является основной целью действий менеджера. Расписание контрольных событий
Инициатор 1 проекта
Наименование |
Описание |
|
ФИО |
Екатерина Александровна |
|
Организация |
ФГБОУ ВПО ЧГУ |
|
Отдел |
Институт информационных технологий |
|
Должность |
магистрант |
|
Тел: |
+79211326552 |
|
E-mail: |
the-one35@rambler.ru |
Инициатор 2 проекта
Наименование |
Описание |
|
ФИО |
Иван Павлович |
|
Организация |
ФГБОУ ВПО ЧГУ |
|
Отдел |
отдел программно-технического обеспечения |
|
Должность |
техник 1 категории |
|
Тел: |
+79210579795 |
|
E-mail: |
levichev_ivan@mail.ru |
Инициатор 3 проекта
Наименование |
Описание |
|
ФИО |
Павел Георгиевич |
|
Организация |
ФГБОУ ВПО ЧГУ |
|
Отдел |
Институт информационных технологий |
|
Должность |
доцент |
|
Тел: |
+7(8202) 517177; +79215450350 |
|
E-mail: |
lnov@inbox.ru |
Спонсор проекта:
ФГБОУ ВПО «Череповецкий государственный университет».
Потребитель (потребители) продукта проекта:
ФГБОУ ВПО «Череповецкий государственный университет»;
школы г. Череповец;
предприятия г.Череповец.
Руководитель (менеджер) проекта:
Руководитель проекта
Наименование |
Описание |
|
ФИО |
Алена Леонидовна |
|
Организация |
ФГБОУ ВПО ЧГУ |
|
Отдел |
Институт информационных технологий |
|
Должность |
к.т.н., доцент |
|
Тел: |
+7(8202) 517177 |
|
E-mail: |
smyslovaal@rambler.ru |
Поставщики оборудования и материалов:
ФГБОУ ВПО «Череповецкий государственный университет»;
инициаторы проекта.
Регулирующие органы:
Законодательство Российской Федерации;
ФГБОУ ВПО «Череповецкий государственный университет».
Функциональные организации и их участие
Участие организацийв проекте:
ФГБОУ ВПО «Череповецкий государственный университет».
выступает в роли заказчика;
предоставляет менеджера проекта и подчиненных;
следит за отчетностью и качеством выполняемых работ менеджера проекта.
предоставляет ресурсы;
является потребителем проекта (услуг).
Допущения относительно организации и окружения, а также внешние допущения
Работнику устанавливается следующая продолжительность рабочей недели: пятидневная с двумя выходными днями. Определение выходных дней, предоставление отпусков и отгулов - в соответствии с нормами трудового законодательства.
Продолжительность рабочего дня Работника: рабочее время - с 8.30 до 17.30; обеденный перерыв - с 12.30 до 13.30; либо в соответствии с утвержденным персональным графиком работы по согласованию с Работником.
Ограничения относительно организации и окружения, а также внешние ограничения
Работник обязан:
добросовестно выполнять свои трудовые обязанности;
соблюдать правила внутреннего трудового распорядка;
соблюдать противопожарные правила, нормы санитарии и гигиены, правила по охране труда и технике безопасности;
бережно относиться к имуществу ЧГУ, в том числе, к находящемуся в его пользовании оргтехнике и оборудованию;
обеспечить сохранность вверенной ему документации;
не разглашать ставшие ему известными по роду деятельности сведения, относящиеся к конфиденциальным в соответствии со ст. 15 Федерального закона № 75-ФЗ «О негосударственных пенсионных фондах»;
информировать руководителей об имеющихся недостатках в работе и мерах по их устранению.
Бюджет проекта
Работодатель обязуется своевременно и в полном объеме ежемесячно выплачивать менеджеру проекта заработную плату. Его должностной оклад прописан в трудовом договоре.
Заработная плата, включая премии, надбавки и другие выплаты компенсационного и стимулирующего характера, выплачивается не позднее 25 числа каждого месяца. Удержания из заработной платы производятся только в случаях, предусмотренных Трудовым кодексом РФ и иными федеральными законами.
Приложение 2
Текст программы
Модуль входа в систему
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); textBox1.Visible = false; textBox4.Visible = false; textBox5.Visible = false; comboBox1.Visible = false; comboBox2.Visible = false; comboBox3.Visible = false; label3.Visible = false; label4.Visible = false; label5.Visible = false; label6.Visible = false; label8.Visible = false; label7.Visible = false; label9.Visible = false; label10.Visible = false; button3.Visible = false; } private void button1_Click(object sender, EventArgs e) { Form1 f1 = new Form1(); f1.Close(); Form2 f2 = new Form2(); f2.ShowDialog(); } private void button2_Click(object sender, EventArgs e) { textBox1.Visible = true; textBox4.Visible = true; textBox5.Visible = true; comboBox1.Visible = true; comboBox2.Visible = true; comboBox3.Visible = true; label3.Visible = true; label4.Visible = true; label5.Visible = true; |
label6.Visible = true; label8.Visible = true; label7.Visible = true; label9.Visible = true; label10.Visible = true; button3.Visible = true; } private void button3_Click(object sender, EventArgs e) { if ((textBox1.Text == "") || (textBox4.Text == "") || (textBox5.Text == "") || (comboBox1.Text == "") || (comboBox1.Text == "") || (comboBox2.Text == "") || (comboBox3.Text == "")) { MessageBox.Show("Заполните все поля ввода.", "Острожно!", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { Form1 f1 = new Form1(); f1.Close(); Form3 f3 = new Form3(); f3.ShowDialog(); } } private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { } private void ПрограммеToolStripMenuItem_Click(object sender, EventArgs e) { AboutBox1 AB1 = new AboutBox1(); AB1.Show(); } } } |
|
Модуль регистрации |
Модуль выбора тестов |
|
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form2 : Form { public Form2() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { Form1 f1 = new Form1(); f1.ShowDialog(); Form2 f2 = new Form2(); f2.Close(); } private void button2_Click(object sender, EventArgs e) { if ((textBox1.Text == "") || (textBox2.Text == "") || (textBox3.Text == "") || (comboBox1.Text == "") || (comboBox2.Text == "") || (comboBox3.Text == "") || (textBox5.Text == "") || (textBox6.Text == "")) { MessageBox.Show("Заполните все поля ввода.", "Острожно!", MessageBoxButtons.OK, MessageBoxIcon.Error); } else { string sex; if (radioButton1.Checked == true) sex = "мужской"; else { if (radioButton2.Checked == true) sex = "женский"; } Message Box. Show ("Вы успешно зарегистрированы.", "Поздравляем!", MessageBox Buttons. OK, Message Box Icon. Information); Form2 f2 = new Form2(); f2.Close(); Form1 f1 = new Form1(); f1.ShowDialog(); } } } } |
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form3 : Form { public Form3() { InitializeComponent(); } private void button2_Click(object sender, EventArgs e) { Form3 f3 = new Form3(); f3.Close(); Form1 f1 = new Form1(); f1.ShowDialog(); } private void button1_Click(object sender, EventArgs e) { Form3 f3 = new Form3(); f3.Close(); Form4 f4 = new Form4(); if (radioButton1.Checked == true) f4.Text = "Тест Индивидуальная минута"; else { if (radioButton2.Checked == true) f4.Text = "Тест Сравнение похожих рисунков"; elsе { if (radioButton3.Checked == true) f4.Text = "Тест Зрительная реакция"; else { if (radioButton4.Checked == true) f4.Text = "Тест Слуховая реакция"; else { if (radioButton5.Checked == true) f4.Text = "Тест Зрительно-слуховая реакция"; else { if (radioButton6.Checked == true) f4.Text = "Теппинг-тест"; } } } } } f4.ShowDialog();} } } |
Размещено на Allbest.ru
Подобные документы
Языки среды программирования Visual Studio. Стартовая страница интегрированной среды разработки. Окно New Project. Вкладка разработки формы. Перемещение и изменение размера кнопки. Прибавление программного кода к кнопке. Запуск и сохранение проекта.
презентация [1,4 M], добавлен 29.04.2014Современные инструменты разработки программного обеспечения для СУТП. Универсальные языки программирования и сравнение их со SCADA-системами. Разработка программного обеспечения с использованием многоканальных измерительных преобразователей Ш9327.
дипломная работа [2,3 M], добавлен 13.07.2011Общие сведения о работе программы в среде программирования Microsoft Visual Studio 2008, на языке программирования C++. Ее функциональное назначение. Инсталляция и выполнение программы. Разработанные меню и интерфейсы. Алгоритм программного обеспечения.
курсовая работа [585,5 K], добавлен 24.03.2009Основные этапы разработки программного обеспечения (пакета программ), анализ требований к системе. Метод пошаговой детализации. Языки программирования низкого уровня и высокого уровня (императивные, объектно-ориентированные, функциональные, логические).
презентация [41,4 K], добавлен 13.10.2013Мониторинг аппаратного обеспечения для оценки состояния компьютера. Реализация приложения "Мониторинг аппаратного обеспечения" на языке C# в среде программирования Visual Studio 2013 с использованием технологии Windows Presentation Foundation (WPF).
курсовая работа [767,8 K], добавлен 21.02.2016Описание программного продукта Visual Studio. Возможности, преимущества и недостатки бесплатной среды программирования Sharp Develop для проектов на платформе MS.NET. Получение информации из справочной системы .NET SDK. Запуск визуального отладчика CLR.
реферат [393,4 K], добавлен 05.04.2017Разработка программы создания заметок в любом месте компьютера. Выбор технологии, языка и среды разработки приложения. Описание основных алгоритмов работы программного обеспечения. Проектирование пользовательского интерфейса. Выбор стратегии тестирования.
отчет по практике [700,5 K], добавлен 24.11.2014Возможности среды программирования delphi при разработке приложения с визуальным интерфейсом. Отладка программных модулей с использованием специализированных программных средств. Тестирование программного обеспечения. Оптимизация программного кода.
курсовая работа [974,0 K], добавлен 21.12.2016Выбор, обоснование и особенности языка программирования. Вербальное и графическое описание функционального назначения системы. Разработка диаграммы классов, описывающей логическую модель системы. Проектирование физической структуры программного средства.
курсовая работа [2,4 M], добавлен 26.05.2014Разработка программного обеспечения для корпоративного портала Череповецкого Государственного Университета. Выбор технологии, среды и языка программирования. Требования к составу и параметрам технических средств. Построение функциональных диаграмм.
дипломная работа [1,7 M], добавлен 09.11.2016