- •Таганрог 2007
- •Содержание
- •Введение
- •Глава 1. Проблема математического сопровождения психологического исследования
- •1.1. Экспериментальная психология как набор инструментов и принципов психологического исследования
- •1.2. Математическое обеспечение психологического исследования
- •1.3. Обзор существующих аналогов
- •1.4. Выводы
- •Глава 2. Проектирование информационной системы
- •2.1. Постановка технического задания
- •2.2. Используемые программные технологии
- •2.3. Архитектурное проектирование программного средства
- •2.4. Обоснование выбора средств разработки
- •2.5. Проектирование интерфейсов
- •2.5.1. Проектирование внутренних интерфейсов
- •2.5.2. Проектирование пользовательского интерфейса
- •2.6. Реализация и эксплуатация программного средства
- •2.7. Модернизация программного средства
- •Глава 3. Безопасность и экологичность проекта
- •3.1. Анализ безопасности
- •3.1.1. Описание трудового процесса при использовании программного средства
- •3.1.2. Анализ и оценка напряженности трудового процесса пользователя
- •3.1.3. Разработка защитных и профилактических мероприятий
- •3.1.4. Анализ надежности программного средства на этапе эксплуатации
- •3.2. Анализ экологичности
- •Глава 4. Экономическое обоснование проекта
- •4.1. Актуальность разработки
- •4.2. Расчет затрат на разработку программного средства
- •4.3. Расчет капитальных вложений
- •4.4. Расчет и сопоставление эксплуатационных расходов
- •4.5. Сводные экономические показатели по разработке программы
- •Заключение
- •Список использованных источников
- •Приложение а Анкета для выявления предпочитаемых математических методов, используемых в психологических исследованиях
- •Приложение б Частота использования различных математических методов в психологических исследованиях
- •Последовательность действий для получения алгоритмов математических процедур из моделей Simulink
- •Для создания кода на языке Си соответствующего построенной модели, нужно установить необходимые параметры моделирования среды Simulink.
- •Приложение г Пример работы с Dll, содержащей математическую процедуру обработки данных
- •Приложение д
- •Приложение е Последовательность действий для создания эталонных файлов, применяемых для верификации алгоритмов математических процедур в создаваемых программой кмс Dll
2.2. Используемые программные технологии
Для определения внутренней структуры создаваемого программного средства, необходимо определиться с технологиями, посредством которых будет реализовываться требования, установленные в техническом задании.
Во-первых, как можно использовать создаваемые математические процедуры, которые будут работать в различных операционных системах и средах программирования. Самой современной и распространенной технологией унификации создаваемых интерфейсов является COM (Component Object Model). COM – это метод разработки программных компонентов, которые предоставляют необходимые сервисы приложениям, операционным системам и другим приложениям. COM не зависит от языка программирования и от используемой операционной среды. Помимо того, что COM – это метод разработки, СOM – это еще и спецификация, которая определяет правила создания унифицированных интерфейсов. Чаще всего компоненты COM представлены в виде динамически-компонуемых библиотек1 (далее – Dll) или exe-файлов Windows. Применение COM дает следующие преимущества (Д. Роджерсон, 2000):
-
Адаптация приложений. Возможность разрабатывать одну систему на нескольких языках программирования. Это особенно актуально при групповой работе над проектом.
-
Создание библиотеки компонентов. Имея набор независимых компонентов, которые можно менять, не нарушая работу соседних компонентов, можно создавать приложения простым сочетанием готовых блоков.
-
Создание распределенных компонентов. Возможность создания приложений, элементы которого располагаются на разных (но связанных в сеть) ПЭВМ.
Основными методами, позволяющими реализовывать данные преимущества, являются динамическая компоновка и инкапсуляция. Динамическая компоновка позволяет в любой момент времени заменить используемый компонент, инкапсуляция позволяет «спрятать» все особенности реализации компонента и предоставить пользователю унифицированный интерфейс.
Таким образом, использование COM-технологий и динамически-компонуемых библиотек (DLL), используемых в качестве «обертки» для создаваемых математических процедур, позволит реализовать требование по независимости от операционных систем и сред разработки приложений.
Второй проблемой, является процедура создания математических процедур. Наилучшим решением является использование уже имеющейся и проверенной базы алгоритмов. Анализ возможностей таких профессиональных математических пакетов как MatLab, Maple, Mathematica и Mathcad показал, они не предоставляют доступ к имеющимся у них алгоритмам. Поиск среди дополнительных компонентов этих математических пакетов позволил выделить пакет моделирования Simulink, входящий в состав MatLab.
Simulink - интерактивный инструмент для моделирования, имитации и анализа динамических систем. Он дает возможность строить графические блок-диаграммы, имитировать динамические системы, исследовать работоспособность систем и отлаживать собственные модели. Simulink интегрирован с MATLAB, обеспечивая немедленным доступом к широкому спектру инструментов анализа и проектирования. Simulink также интегрируется с Stateflow для моделирования поведения, вызванного событиями. Эти преимущества делают Simulink наиболее популярным инструментом для проектирования систем управления и коммуникации, цифровой обработки и других приложений моделирования (В. Дьяконов, 2002).
При моделировании с использованием Simulink реализуется принцип визуального программирования, в соответствии с которым, пользователь на экране из библиотеки стандартных блоков создает модель устройства и осуществляет расчеты. При этом, в отличие от классических способов моделирования, пользователю не нужно досконально изучать язык программирования и численные методы математики, а базовых знаний работы на компьютере и знаний той предметной области, в которой он работает. При работе с Simulink пользователь имеет возможность модернизировать библиотечные блоки, создавать свои собственные, а также составлять новые библиотеки блоков. При моделировании пользователь может выбирать метод решения дифференциальных уравнений, а также способ изменения модельного времени (с фиксированным или переменным шагом). В ходе моделирования имеется возможность следить за процессами, происходящими в системе. Для этого используются специальные устройства наблюдения, входящие в состав библиотеки Simulink. Результаты моделирования могут быть представлены в виде графиков или таблиц (И.В. Черных, 2003).
Визуальное моделирование и набор открытых библиотек, содержащих различные алгоритмы обработки данных, позволяют быстро создавать необходимые процедуры обработки данных. Самостоятельное создание необходимых методов обработки данных позволяет пользователю понимать логику реализовываемых процедур и верифицировать их средствами Simulink. На рисунке 2.1. представлен пример модели в Simulink, имеющей один вход (In1) и один выход (Out1).
Создав необходимую процедуру обработки данных, пользователь имеет возможность получить код созданной модели с помощью программы Real-Time Workshop (далее - RTW), входящей в Simulink. RTW автоматически генерирует С-коды непосредственно из моделей Simulink, построенных по определенным правилам (см. приложение В). Схема процесса получения алгоритмов математических процедур представлена на рисунке 2.2.
Рисунок 2.1 - Пример модели, построенной в Simulink
Рисунок 2.2 - Последовательность действий для получения алгоритмов математических процедур
Таким образом, решение требования ТЗ о предоставлении простого и удобного механизма создания процедур математической обработки данных возможно при использовании пакета Simulink и разработки требований к создаваемым моделям, для возможности получения их кода на языке Си.