Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Писар_текст КР.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
411.65 Кб
Скачать

1.4. Вимоги до умов експлуатації програмного продукту

Реалізація програмного продукту повинна здійснюватись в інтегрованому середовищі програмування С++-Builder.

Для забезпечення зв’язку з MS Access необхідна наявність на комп’ютері утиліти Microsoft Jet 4.0 OLE DB Provider, яка, як правило, постачається в комплекті з операційною системою Windows XP.

Програмний продукт повинен бути виконаний у вигляді додатку та функціонувати в операційній системі Windows XP на будь-яких комп’ютерах.

В разі відсутності потреби в модифікації програмного продукту середовище програмування С++-Builder та пакет програм MS Access можуть бути відсутніми на комп’ютері.

Встановлення програмного продукту на комп’ютер повинно здійснюватися шляхом копіювання папки з exe-файлом. Файл шаблону бази даних повинен розташовуватись в цій самій папці.

2. Документи техно-робочого проекту

2.1. Інформаційне забезпечення програмного продукту

Програмний продукт є складовою чатиною АІС «Тести 2013». В своїй роботі він використовує пакет тестів, створений підсистемою «Формування пакету тестів», що зберігається в базі даних. Її структура визначається засобами MS Access.

Б аза даних містить три взаємопов’язані таблиці (рис.1).

Рис.1. Схема зв’язку між таблицями бази даних

Склад полів таблиць наведений на рис.1.

Зв'язок з базою даних реалізується в режимі інтерфейсу з користувачем: він сам обирає файл пакету тестів у діалоговому режимі. Перед встановленням зв’язку з ним контролюється коректність структури та вмісту (достатності інформації) відкритого файлу бази даних. В разі виявлення невідповідності відображається одне з повідомлень:

  • «База даних відсутня або пошкоджена»

  • «Пакет тестів має некоректну структуру».

Текст повідомлення визначається причиною невідповідності бази даних.

На початку роботи підсистеми необхідно здійснити авторизацію доступу: ввести пароль і логін. Кожен з них складається з 6 символів. Дані зберігаються в текстовому файлі Person.txt, що повинен знаходитися в папці з exe-файлом програмного продукту. Якщо цей файл відсутній, то надається вільний доступ.

Для логіна та пароля застосовано простий спосіб шифрування: їх рядкові значення розбиваються навпіл та міняються місцями. Користувач це повинен зробити до початку роботи програмного продукту за допомогою текстового редактора «Блокнот». Під час перевірки відповідності значень логіна та пароля програмний продукту здійснює їх розшифрування. Встановлення та зміна логіна та пароля програмним продуктом не передбачена.

Файл списку результатів тестування Info.txt створюється, зберігається та завантажується автоматично. Він розташовується в папці з з exe-файлом програмного продукту. Відсутність цього файлу не впливає на його роботу.

2.2. Структура програмного продукту

До складу програмного продукту входять модулі: UnitMain.cpp, UnitAvtor.cpp, UnitTools.cpp, UnitReestr.cpp, UnitTest.cpp, UnitInfo.cpp, UnitData.cpp, які містять:

  • реалізації подій стандартних компонентів інтегрованого середовища С++Builder, використаних під час візуального проектування програмного продукту;

  • процедури та функції виконання функціональних задач та окремих технологічних операцій.

Тексти програмних модулів наведені в Додатку.

Склад програмних компонентів з зазначенням їх функціонального призначення наведені в табл.1-6.

Таблиця 1

Склад та призначення програмних компонентів модуля UnitMain.cpp

Головний модуль

Процедура

Функціональне призначення

1

2

3

1

void __fastcall TFormMain::

InterfaceControl()

Контроль коректності тестів

2

void __fastcall TBavtClick

(TObject *Sender)

Відкриття вікна "Авторизація доступу"

3

void __fastcall TBToolsClick

(TObject *Sender)

Відкриття вікна "Налаштування"

Продовження табл.1

1

2

3

4

void __fastcall TBReestClick(TObject *Sender)

Відкриття вікна "Реєстрація"

5

void __fastcall TBinfoClick

(TObject *Sender)

Відкриття вікна "Тестування"

6

void __fastcall TBexitClick

(TObject *Sender)

Відкриття вікна "Інформація"

7

void __fastcall TBtestClick

(TObject *Sender)

Завершення роботи програмного проекту

Таблиця 2

Склад та призначення програмних компонентів модуля UnitAvtor.cpp

Модуль авторизації доступу

Процедура

Функціональне призначення

1

void __fastcall FormActivate

(TObject *Sender)

Встановлення параметрів інтерфейсу головного вікна "Авторизація доступу"

2

void __fastcall LoginChange

(TObject *Sender)

Керування доступом до кнопки підтвердження авторизації

3

void __fastcall SBokClick

(TObject *Sender)

Підтвердження прав доступу

4

void __fastcall SBclearClick

(TObject *Sender)

Очищення полів логіна та пароля

5

void __fastcall SBopenClick

(TObject *Sender)

Завантаження пакету тестів за допомогою стандартного діалогового вікна відкриття файлів. Контроль коректності структури завантаженої бази даних. Здійснення зв’язку з базою даних.

6

void __fastcall SBexitClick

(TObject *Sender)

Закриття вікна "Авторизація доступу"

Таблиця 3

Склад та призначення програмних компонентів модуля UnitTools.cpp

Модуль налаштування параметрів тестування

Процедура

Функціональне призначення

1

void __fastcall FormActivate

(TObject *Sender);

Встановлення параметрів інтерфейсу вікна "Налаштування" під час його відкриття

2

void __fastcall CSpinEdit1KeyPress

(TObject *Sender, char &Key);

Заборона введення кількості тестів та тривалості тестування з клавіатури

3

void __fastcall CSpinEdit1Change

(TObject *Sender)

Заборона видалення кількості тестів

4

void __fastcall CSpinEdit2Change

(TObject *Sender)

Заборона видалення тривалості тестування

5

void __fastcall SBokClick

(TObject *Sender)

Підтвердження налаштувань

6

void __fastcall SBclearClick

(TObject *Sender)

Скасування налаштувань

7

void __fastcall SBSelectAllClick

(TObject *Sender)

Вибір усіх тем

8

void __fastcall SBSelectCancelClick

(TObject *Sender)

Скасування вибору будь-яких тем

9

void __fastcall ListTemClickCheck

(TObject *Sender)

Обчислення мінімальної кількості тестів серед обраних тем під час зміни їх вибору

Таблиця 4

Склад та призначення програмних компонентів модуля UnitReestr.cpp

Модуль реєстрації учасника тестування

Процедура

Функціональне призначення

1

void __fastcall FormActivate

(TObject *Sender)

Встановлення параметрів інтерфейсу вікна "Реєстрація" під час його відкриття

2

void __fastcall prizChange

(TObject *Sender)

Керування доступом до кнопки "Зареструвати" вікна "Реєстрація"

3

void __fastcall SBokClick

(TObject *Sender)

Рєстрація учасника тестування

4

void __fastcall SpeedButton1Click

(TObject *Sender)

Скасування реєстрації

Таблиця 5

Склад та призначення програмних компонентів модуля UnitTest.cpp

Модуль тестування

Процедура

Функціональне призначення

1

2

3

1

void __fastcall FormActivate

(TObject *Sender)

Встановлення параметрів інтерфейсу головного вікна "Тестування". Завантаження першого тесту

2

void __fastcall StartClick

(TObject *Sender)

Початок або дострокове завершення тестування.

3

void __fastcall V1Click

(TObject *Sender)

Вибір правильних відповідей шляхом клацання мишею. При цьому змінюється колір поля відображення відповіді. Скасування вибору здійснюється шляхом повторного клацання мишею по відповіді – колір знову зміниться

Продовження табл.5

1

2

3

4

void __fastcall TimerTimer

(TObject *Sender)

Відлік та контроль часу тестування. Після завершення терміну тестування викливається функція підведення підсумків

5

void __fastcall NavigatorClick

(TObject *Sender,TNavigateBtn Button)

Завантаження іншого тесту після натискання кнопки навігатора

6

void __fastcall FormClose(TObject *Sender, TCloseAction &Action)

Збереження списку результатів у файлі при закритті вікна "Тестування"

7

void __fastcall LoadTest()

Завантаження теста та варіантів відповідей

8

void __fastcall RezTest()

Обчислення підсумків тестування

9

void __fastcall TFormTest::

ClearTest()

Очищення бази даних від попередніх результатів тестування

10

int __fastcall TFormTest::SelTest()

Випадковий вибір тесту

Таблиця 6

Склад та призначення програмних компонентів модуля UnitInfo.cpp

Модуль відображення результатів тестування

Процедура

Функціональне призначення

1

void __fastcall SBclearClick

(TObject *Sender);

Очищення списку результатів

2

void __fastcall SBCloseClick

(TObject *Sender)

Закриття вікна "Реєстр результатів". Запис списку в файл

Модуль UnitData.cpp містить лише функцію void __fastcall TFormData::ConnectBD(AnsiString filename) організації зв’язку з файлом бази даних з іменем filename.