- •Введение
- •1. Системотехническая часть
- •1.1 Описание и анализ предметной области
- •1.1.1 Принципы обучения слепому методу печати
- •1.1.2 Обзор существующих клавиатурных тренажеров
- •1.1.3 Анализ предметной области
- •1.2 Постановка задачи
- •1.3 Построение структурной схемы
- •1.4 Спецификация системы
- •1.4.1 Функциональная спецификация системы
- •1.4.2 Спецификация качества
- •1.5 Разработка и описание структуры данных и классов объектов
- •1.6 Разработка и описание алгоритмов
- •Выбор и обоснование программных средств
- •1.7.1 Выбор операционной системы
- •1.7.2 Выбор языка программирования
- •2. Конструкторско-технологическая часть
- •2.1 Разработка пользовательского интерфейса системы
- •2.1.1 Меню администратора
- •2.1.2 Меню обучаемого
- •Описание тестового примера
- •2.2 Реализация и описание модулей программы
- •2.3 Выбор и обоснования комплекса технических средств
- •2.3.1 Расчет объема занимаемой памяти
- •2.3.2 Минимальные требования, предъявляемые к системе
- •Заключение
1.2 Постановка задачи
В рамках лабораторного практикума необходимо разработать клавиатурный тренажер с функциями администратора.
При запуске программа должна автоматически загружать настройки, которые хранятся в соответствующих файлах.
В системе предусмотрены две роли пользователей. Пользователь должен пройти процедуру аутентификации, указав свой логин и пароль, или зарегистрироваться в системе с новым логином. Если пользователь вошел как обучаемый, он может приступить к выполнению заданий, предварительно выбрав уровень сложности задания (в системе должны быть предусмотрены 4 уровня сложности заданий: легкий, средний, сложный и очень сложный). Все упражнения должны храниться в текстовых файлах. При выполнении упражнения должна отображаться виртуальная клавиатура с подсвечивающимся текущим символом. Кроме того должна вестись статистика выполненных упражнений (количество допущенных ошибок по отношению к максимально допустимому количеству ошибок, время выполнения упражнения),которая также должна отображаться при выполнении упражнения.
Для повышения заинтересованности обучаемых, в системе должны быть предусмотрена динамическая визуализация (в виде падающих букв). Кроме того, обучаемый должен иметь возможность изменять параметры своего профиля (редактирование, удаление). После освоения очередного уровня, пользователь должен автоматически переводиться на новый уровень сложности. Также обучаемому должна быть доступна статистика выполненных им упражнений.
Пользователь, вошедший в систему с правами администратора, может изменить настройки и параметры оформления программы, редактировать упражнения, просмотреть статистику выполненных заданий обучаемыми, при необходимости редактировать список зарегистрированных обучаемых.
Таким образом система должна выполнять следующие функции:
Прохождение процедуры входа в систему:
авторизация: вход зарегистрированного обучаемого;
регистрация: создание нового профиля обучаемого;
аутентификация: вход в систему с правами администратора;
Функции, предоставляемые администратору:
работа с обучаемыми:
– создание нового профиля обучаемого;
– изменение существующего профиля обучаемого;
– удаление существующего профиля обучаемого;
– просмотр данных (статистики) обучаемых;
– перераспределение обучаемых по категориям;
работа с упражнениями:
– создание, изменение, удаление;
– распределение упражнений по категориям сложностей;
изменение параметров оформления программы:
– параметры цветовой гаммы оформления;
– параметры шрифтов;
Функции, предоставляемые обучаемому:
изменение, удаление своего профиля;
выбор упражнений, доступных для его категории;
выполнение выбранного упражнения;
просмотр статистики, выполненных им упражнений;
Загрузка настроек при запуске программы;
Изменение настроек программы;
Выдача справочной информации.
1.3 Построение структурной схемы
В основе структурного подхода к разработке ПС лежит алгоритмическая декомпозиция, когда система разбивается на функциональные подсистемы, которые, в свою очередь, делятся на подфункции, подразделяемые на задачи и так далее. Процесс разбиения продолжается вплоть до конкретных процедур (алгоритмов). При этом автоматизируемая система сохраняет целостное представление, в котором все составляющие компоненты взаимоувязаны. Разработка системы идет по принципу «сверху-вниз» [7].
Структурная схема «Клавиатурного тренажёра» представлена на рисунке 6.
Рисунок 6 – Структурная схема программной системы
Автоматизированную систему «Клавиатурный тренажёр» можно представить в виде следующих подсистем:
авторизации, обеспечивающей доступ к системе зарегистрированных пользователей;
администрирования, включающая в себя подсистемы:
работа с упражнениями, которая позволяет создавать, изменять и удалять упражнения, а также распределять их по уровню сложности;
работа с обучаемыми, отвечающая за управление профилями пользователей и просмотр их статистики;
работа с параметрами оформления программы, позволяющая изменять цветовую гамму оформления программы и параметры шрифта;
выполнения упражнения, отвечающая за процесс изучения пользователем слепого десятипальцевого метода печати на клавиатуре;
динамической визуализации, которая отвечает за графическое отображение процесса выполнения упражнений;
просмотра статистики, позволяющей пользователю просмотреть статистику выполненных упражнений;
файловая , которая позволяет сохранять профили пользователей, упражнения и статистику.
справочная, в которой пользователь может получить информацию о разработчиках и о программе.
