Подскажите по структуре программы

  • Автор темы mailman
  • Дата начала
M

mailman

Прошу помочь советом как организовать структуру программы.

программа для тестирования с набором опросников. Те ряд форм с чекбоксами или иными контролами для выбора ответов по представленым вопросам. Пример

Вопрос 1 - 5 чекбоксов с вариантами ответов.

и тп..


таких опросников может быть около 10. Тестирование проходит сразу группа целиком - те группа людей. Затем результаты сохраняются в файл с именем этой группы. Позже, когда накопится достаточно таких файлов проводится обработка результатов по разным методикам с выдачей результатов.

---

не могу определиться как это все организовать.

Вариант такой:

- Создаем класс(объект) типа "Опросник" с полями содержащими результаты ответов 1по конкретному опроснику.
- Создаем класс "Тестирование" для хранения этих объектов типа опросник - используем List.

таким образом в объекте "Тестирование" будут находится результаты по всем опросникам. Но тогда такой вопрос - как реализовать это применительно к тому, что тестируется группа людей?
 
A

alexsid

клиент-серверное приложение
Класс "Сервер" - программа которая управляет подключениями и тестами. Регистрирует
Класс "Клиент" - программа которая коннектится к серверу и может отображать набор тестов и выполнять его
(должен иметь конфиги на подключение и прочую фигню).
при подключении (после выбора теста) нужна форма с именем, фамилией и группой.

Класс "ДанныеТеста" с данными (вопросы, ответы, как отображать: выбор одного, да/нет, и т.д.)
данные в xml
Класс "Тест" для контроля выполнения теста, управления переходами и т.п. (использует класс "ДанныеТеста")
Класс "Тест" состоит из вопросов. Класс "Вопрос": с типом,и всеми нужными данными.

Работа идет так:
Препод стартует сервер
Ученики стартуют клиенты и подключаются к серверу
При подключении первого ученика к серверу сервер начинает сессию (класс "Сессия") по группе.
Сервер регит каждого ученика подключающегося из данной группы в начатую сессию сессию.
Сессия нужна чтобы контролировать начало/конец тестирования.
Сессия начинается когда регится первый ученик группы и заканчиватся когда
тестирование закончил последний ученик группы.
Результаты тестирования заносятся в файл когда сессия закончивается.
(препод может обрубить сессию. данные сохраняются тока те, что уже занесены - остальные ученики курят бамбук :)))).

Нужен класс "результаты теста" для клиента
и "результат тестирования" для сервера (список результатов тестирования)

После того как ученик залогинился сервак ему высылает данные теста для прохождения.
клиентская прога подхватывает данные и ученик проходит тест
по окончании теста данные от ученика отправляются на сервер (хорошо иметь возможность сохранить данные на компе ученика и потом экспортировать на стороне сервера)

Сервер сравнивает ответы и выставляет оценку. все это запоминается гденить и по окончании тестирования группы выводится в репорт
репорт можно делать детальный или упрощенный.
 
M

mailman

Спасибо за идею, но...

а если преподу понадобится ввести группу вручную например из 50 человек? Они могли пройти тесты на бумаге (небыло света или еще что-то). Искать 50 компов включенных в сеть?

тестирование проводится на 1 компе. препод носит ноут с собой...те прога желательна не клиент-серверная. Почему просто не сделать обычную программу. При запуске препод выбирает методику и группу. Затем сажает учеников п очереди и они проходят тест. И так всех. Все сохраняется в файл и привет.

мне собсно нужна была организационная структура - объекты,классы и их взаимодействие, а не проектирование. проект уже готов и я его изложил в первом сообщении
 
E

etc

Какие там классы, берете либо типизированный датасет либо похожее, и вся пестня.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!