Коли під час знайомства з проєктом стає зрозуміло, що «ми не знаємо, де межі того, чого ми не знаємо», ми пишемо технічне завдання без специфікації реалізації — але з докладним описом бізнес-правил. Нижче — приклад такого ТЗ для шкільної системи: повний набір правил, готовий до розробки на будь-якому фреймворку, зокрема Laravel.
Коли технічне завдання будують на бізнес-правилах
Класичне ТЗ описує реалізацію: екрани, поля, кнопки, сценарії натискань. Але є проєкти, де на старті неможливо чесно описати реалізацію — предметна область складна, а замовник і команда ще не бачать усіх її меж. У такому разі ми описуємо не інтерфейс, а правила, за якими живе предметна область.
Ми не знаємо, де межі того, чого ми не знаємо.Ознака проєкту, якому потрібні бізнес-правила замість специфікації реалізації
Перспективи для бізнесу (business opportunity), заради яких школа заходить у такий проєкт:
- Складання та зміна розкладу в електронному вигляді.
- Комунікація всіх зацікавлених учасників в єдиній платформі.
- Оперативне та вчасне сповіщення всіх зацікавлених учасників системи.
- Доступ до всіх матеріалів навчання в електронному вигляді.
- Автоматизація багатьох процесів навчання.
Елементи предметної області та правила навчального дня

Перший блок — функціональні правила й обмеження, що стосуються навчального процесу загалом.
- BR-1. У системі використовуються академічні години навчання.
- BR-2. Інтерфейс системи розробляється українською мовою. Контент, який вносять користувачі школи, також створюється українською.
- BR-3. Будь-які уроки та додаткові заняття можуть проводитися лише в робочі дні, з понеділка по п’ятницю.
- BR-4. У суботу та неділю заняття в школі не проводяться.
- BR-5. Академічна година навчання (тривалість уроку) може бути різною залежно від групування класів за віком: 1 класи, «початкова школа» — 35 хвилин; 2–4 класи, «середня школа» — 40 хвилин; 5–11 класи, «старша школа» — 45 хвилин.
- BR-6. Для деяких предметів і занять може бути визначена спеціальна тривалість уроку: фізкультура у 5–11 класах — 45 хвилин; спортивний гурток із додаткового пакета у другій половині дня — від 45 до 60 хвилин і більше; прогулянка для 2–4 класів — не менше години.
- BR-7. Тривалість перерв між уроками задається окремо для початкової, середньої та старшої школи; в усі дні тижня перерви між уроками однакові. Після виконання обов’язкової програми перерви між заняттями з додаткового пакета можуть різнитися залежно від розподілу прогулянки, роботи їдальні та інших чинників.
- BR-8. Початок занять в усі дні тижня для всіх класів однаковий.
Числа, які правила фіксують жорстко:
Предмет і навчальний план
Навчальний план — основа, з якої виростає весь розклад на рік. Саме тут з’являються найнеочевидніші для розробника обмеження.
- BR-CURRICULUM1. Основою для формування розкладу на рік є навчальний план (навчальна програма). Навчальна програма визначається для кожного класу й характеризується тижневим годинним навантаженням по класу. Тижневе навантаження складається з «обов’язкової програми» та «додаткового пакета». Обов’язкову програму визначає Міністерство освіти.
- BR-CURRICULUM2. Обов’язкова програма може мати кілька варіантів, наприклад «базова програма» або «програма Інтелект». У такому разі завуч зазначає це в назві навчального плану — скажімо, робочий навчальний план для 1–3 класів на основі науково-методичного проєкту «Інтелект». Граничне тижневе годинне навантаження визначається для класу залежно від року навчання.
- BR-CURRICULUM3. «Додатковий пакет» — це предмети, включені до плану навчання додатково, які школа пропонує понад «обов’язкову програму навчання». Предмети з додаткового пакета ставляться в розкладі навчального дня після предметів обов’язкової програми.
- BR-CURRICULUM4. До «додаткового пакета» також можуть входити додаткові години з предметів обов’язкової програми. У цьому випадку різниці між обов’язковими та додатковими годинами в розкладі не існує.
- BR-CURRICULUM5. Під час формування тижневого навантаження можуть використовуватися різні шаблони базової програми навчання (наприклад, програма «Інтелект») і різні шаблони додаткового пакета (наприклад, «Додатковий пакет № 1»). Інакше кажучи, серед однієї групи класів можуть застосовуватися різні шаблони програми навчання: 2-А клас навчається за стандартною програмою від Міністерства освіти, а 2-Б — за програмою «Інтелект».
- BR-CURRICULUM6. Розподіл тижневого навантаження для класів проводиться за семестрами на навчальний рік. Протягом семестру тижневе навантаження змінюватися не може.
- BR-CURRICULUM7. Кількість годин із предмета в тижневому навантаженні зазначається цілими годинами. Якщо кількість годин не ціла, вона може бути кратною лише 0,5.
- BR-CURRICULUM8. У різні семестри розклад (розподіл уроків) тижневого навантаження може бути різним.
- BR-CURRICULUM9. Розподіл нецілої кількості годин можливий двома варіантами: різна кількість годин за парними та непарними тижнями або різна кількість годин у різних семестрах.
- BR-CURRICULUM10. Для розподілу тижневого навантаження використовується довідник вихідних і святкових днів та періодів канікул. Перший семестр має звичайну тривалість 16 тижнів, другий — 19 тижнів. Інформація про періоди канікул, вихідні та святкові дні встановлюється документом «Робочий навчальний план» і відома на початку навчального року.
- BR-CURRICULUM11. Після розподілу тижневого навантаження контроль кількості навчальних тижнів не проводиться.
- BR-CURRICULUM12. Після розподілу тижневого навантаження вручну можливе коригування складеного розкладу — зміна днів, включених до канікул або до навчальних днів.
Клас, групи та потоки
- BR-CLASS1. Клас визначається рівнем (1, 2, 3 … 11 і буквою, якщо є паралелі: А, Б, В … Я), навчальною програмою та складом учнів.
- BR-CLASS2. Викладач може бути куратором лише в одному класі.
- BR-CLASS3. Для деяких предметів застосовується поділ класу на групи. Ознаками поділу можуть бути: не більше ніж 10 осіб у групі з іноземної мови; поділ за рівнем знання іноземної мови — elementary, intermediate, advanced (рівнів може бути різна кількість, зазвичай застосовується для предмета «друга іноземна мова»); хлопці та дівчата займаються в окремих групах на трудовому навчанні. На фізкультурі (основний урок) поділу на групи за гендерною ознакою не відбувається.
- BR-CLASS4. Для класу можуть задаватися години недоступності в конкретні дні тижня. На цей час розклад для класу не складається.
- BR-CLASS5. Для деяких предметів можливе об’єднання різних класів у «потоки»: іноземна мова рівня elementary для 5–11 класів проводиться одним потоком; фізкультура (додатковий пакет) для хлопців 2 класів проводиться разом.
Аудиторії
- BR-9. Для аудиторії може бути визначений спеціальний предмет, який читається тільки в ній: фізика, хімія, інформатика. У такому разі аудиторія вважається спеціалізованою.
- BR-10. У спеціалізованих аудиторіях можуть проводитися заняття лише з призначеного предмета.
- BR-11. Для одного предмета може бути кілька спеціалізованих аудиторій.
- BR-12. Предмет із кількома спеціалізованими аудиторіями бажано розподіляти для кожного конкретного класу в одній аудиторії.
- BR-13. Для аудиторій може бути призначено кілька предметів: українська мова та література.
- BR-14. Деякі аудиторії належать до загального фонду — у них можна проводити будь-які заняття: бібліотека, лекційна зала, універсальна студія.
- BR-15. Для класу може бути призначена класна аудиторія — «закріплена за класом».
- BR-16. Предмети без спеціалізованої аудиторії бажано ставити в класній аудиторії.
- BR-17. Для 1 та 2–4 класів усі предмети, крім спеціалізованих, читаються тільки в призначеній класній аудиторії.
- BR-18. У класних аудиторіях 1 та 2–4 класів можуть проводитися заняття лише призначеного класу. Проведення занять інших класів заборонено.
- BR-19. У класних аудиторіях 5–11 класів можуть проводитися заняття інших класів.
- BR-20. Для аудиторії задається максимальна кількість місць. Клас або група не може проводити заняття в аудиторії з недостатньою кількістю місць.
- BR-21. Під час проведення заняття «потоку» кількість учнів визначається сумою учнів в об’єднаних класах і групах.
Викладач та їдальня
Викладач
- BR-22. Для викладача задаються предмети, які він читає.
- BR-23. За викладачем 1 та 2–4 класів може бути закріплений клас, у якому він читає всі предмети, крім спеціалізованих.
- BR-24. Для викладача можуть задаватися умови доступності: не може проводити заняття в певні дні тижня; може проводити заняття лише в певні години певних днів тижня; не може проводити заняття в певному семестрі, якщо контракт укладено лише на один семестр.
Їдальня
- BR-25. У їдальні встановлюється час початку та тривалість для відвідування: сніданок, обід, підвечірок, вечеря.
- BR-26. Визначається час, потрібний для перебування класу в їдальні. Для всіх класів з 1 по 11 час перебування однаковий — це інтервал відвідування.
- BR-27. Визначається кількість місць у їдальні, яку не можуть перевищити учні класів, що перебувають там одночасно.
- BR-28. Класи, які одночасно перебувають у їдальні під час інтервалу відвідування, становлять групу.
- BR-29. Розклад їдальні формується з груп класів та інтервалів їх відвідування їдальні. Результат — документ «Розклад їдальні».
Правила складання розкладу
Обов’язкові до виконання умови — доступність викладачів і кількість місць в аудиторіях (BR-30). Далі йдуть правила поділу, об’єднання та черговості.
- BR-31. При поділі класу на підгрупи заняття проводяться в різних аудиторіях різними викладачами.
- BR-32. При поділі класу на підгрупи можливе проведення в один час занять із різних предметів, наприклад англійська мова та інформатика.
- BR-33. При об’єднанні класів у потоки заняття проводиться в одній аудиторії одним викладачем.
Черговість розподілу предметів у розкладі:
- Спочатку — сумісники. У першу чергу розподіляються предмети вчителів-сумісників (BR-34).
- Потім — найважчі предмети. Далі розподіляються предмети з найбільшою кількістю годин тижневого навантаження (BR-35).
- Потім — потоки. Останніми розподіляються предмети, які дозволяють створювати потоки (BR-36).
Побажання, які система враховує, якщо це можливо:
- BR-37. Якщо можливо, не ставити більше ніж 2 мовні предмети в один день.
- BR-38. Якщо можливо, не ставити більше ніж 2 точні предмети: математика, фізика, хімія.
- BR-39. Фізкультуру бажано не ставити першим уроком.
- BR-40. Використовувати бажані предмети для перших уроків: читання, математика. Застосовується для 1–4 класів.
- BR-41. У четвер не ставити точні предмети — застосовується в 1-х класах.
- BR-42. У четвер — мінімальна кількість уроків, застосовується в 1-х класах.
- BR-43. Якщо немає вільних аудиторій, тривалість прогулянки може змінюватися.
- BR-44. Тривалість прогулянки може змінюватися для відповідності розкладу їдальні.
Проведення занять, журнал і оцінювання
План учителя та урок
- TR-1. Перед початком навчального семестру викладач планує тижневе годинне навантаження. У результаті виходить навчальний план на семестр, або план учителя, — послідовність проведення уроків із визначеними темами, практичних занять і контрольних робіт.
- TR-2. Кожній академічній годині відповідає урок, який описується датою проведення, порядковим номером, темою уроку та детальним описом того, що вивчатиметься.
- TR-3. Уроку також відповідає домашнє завдання, яке вноситься під час навчального процесу. Це текстовий опис, який може містити текст, списки задач із підручника, прикріплені файли та URL.
- TR-4. Домашнє завдання містить завдання, яке має бути підготовлене до цього уроку.
- TR-5. Уроку може відповідати контрольна робота. Контрольні роботи в розкладі мають виділятися додатковими ознаками.
- TR-6. Для класів з однаковим годинним навантаженням, коли збігаються базова програма та додатковий пакет, навчальний план може бути однаковим.
- TR-7. Протягом навчального року теми та зміст фактично проведених уроків можуть не збігатися із запланованими.
Класний журнал і відвідуваність
- TR-8. У класному журналі викладач фіксує предмети, які читає, навчальний план, оцінки, домашнє завдання та відвідуваність.
- TR-9. Викладач відзначає відвідуваність із кожного предмета в класному журналі. Якщо учень відсутній, це відповідає позначці «Н».
- TR-15. Після додавання оцінки необхідно фіксувати дату й час, коли оцінку внесли до класного журналу.
- TR-16. Після фіксації оцінки коригування не допускається. Редагувати може лише користувач із роллю «Директор».
- TR-17. Додавання оцінки до журналу за минулу дату неможливе.
- TR-18. За урок одному учневі може бути поставлена лише одна оцінка.
Оцінки та винятки
- TR-10. Оцінки ставляться числами від 1 до 12.
- TR-11. У 1–2 класах жодні оцінки чи «зараховано» / «не зараховано» не ставляться. Відзначається лише відвідуваність.
- TR-12. Оцінки ставляться у 3–11 класах.
- TR-13. Є винятки для предметів. Не ставляться оцінки учням початкової школи (1–4 класи) з музики, образотворчого мистецтва, фізкультури та трудового навчання. З цих предметів ставиться підсумкова за семестри й підсумкова за рік у вигляді «зараховано» / «не зараховано». Для учнів 5–11 класів діє стандартне оцінювання за 12-бальною системою.
- TR-14. Є винятки для учнів 5–11 класів. Не ставляться оцінки учням, які мають групу з фізкультури «спеціальна»: для них оцінювання у вигляді «зараховано» / «не зараховано». Учень відповідає одній із груп: основна, підготовча, спеціальна.
- TR-19. У журналі можуть бути оцінки, не прив’язані до конкретної дати та уроку: тематична оцінка, оцінка за зошит, підсумкова оцінка за семестр, попередня оцінка за рік, скоригована оцінка, підсумкова оцінка за рік.
- TR-20. При розрахунку середніх оцінок округлення відбувається на користь учня.
- TR-21. Оцінки за контрольні роботи мають таку саму вагу, як і решта.
- TR-22. Тематична оцінка — середня оцінка за вивчену тему. Розраховується автоматично, округлення на користь учня. Підсумовуються всі оцінки за уроки, проведені від попередньої тематичної оцінки, включно з оцінками за зошит. Якщо попередньої тематичної оцінки немає — від початку навчального року.
- TR-23. Зошит оцінює викладач. Цей вид оцінювання є лише у предметів «українська мова», «українська література» та «зарубіжна література».
- TR-24. Підсумкова за семестр — середня оцінка, враховуються лише тематичні оцінки. Розраховується автоматично, округлення на користь учня.
- TR-25. Попередня за рік — середня оцінка, враховуються лише оцінки за семестр. Розраховується автоматично.
- TR-26. Скоригована оцінка — може бути поставлена за підсумками заперечень щодо попередньої за рік.
- TR-27. Підсумкова за рік — середня оцінка, враховуються оцінки за семестр і скоригована оцінка.
Звіт про успішність
- TR-28. Наприкінці кожного місяця для учня готується «Звіт про успішність» — коротка характеристика з кожного предмета. Включає список оцінок і коментар до кожного предмета, а також розділ «персональний розвиток учня».
- TR-29. Для 1–4 класів коротку характеристику кожному учневі з кожного предмета пише закріплений за класом учитель. З предметів, які читають інші викладачі, характеристики пишуть відповідні викладачі.
- TR-30. Для 5–11 класів «Звіт про успішність» пишуть учителі-предметники, а розділ «персональний розвиток учня» — куратор.
Основні функції системи: робочі місця, користувачі та права
Правила предметної області далі розкладаються на автоматизовані робочі місця (АРМ) — за ролями користувачів. Кожне АРМ працює через вебінтерфейс.

АРМ «Директор школи»
- Розклад уроків і дзвінків для всієї школи.
- «Список співробітників».
- «Особова картка працівника».
- «Список класів».
- «Список учнів у класі».
- «Особова справа учня».
- Доступ до «загальношкільних документів».
АРМ «Діловод»
Окреме робоче місце діловода (контент-менеджера) через вебінтерфейс.
АРМ «Викладач»

- План учителя.
- Заняття в класі.
- Розклад викладача.
- Система сповіщень.
- Список класів.
- Учні в класі.
- Особова картка учня.
- Обговорення домашнього завдання.
АРМ «Учень»
- Розклад уроків учня.
- Журнал оцінок.
- Домашнє завдання.
- Система повідомлень.
- «Правила для учня» — статична сторінка, єдина для всієї школи, доступна для адаптивного перегляду.
АРМ «Батьки»
- Розклад уроків учня.
- Журнал оцінок.
- Домашнє завдання.
- Звіт про успішність.
- Список викладачів.
- Навчальні плани (план учителя).
- Система повідомлень.
- «Правила для учня» — статична сторінка, єдина для всієї школи, доступна для адаптивного перегляду.
АРМ «Куратор»
- Домашнє завдання.
- Список викладачів класу.
- Розклад уроків і дзвінків для класу.
- Електронний журнал.
- Звіт про успішність учня.
АРМ «Завуч»
Робоче місце, з якого налаштовують параметри системи та формують розклад на основі навчальних планів.
Користувачі системи
| Користувач | Чисельність | Опис |
|---|---|---|
| Директор | 1 | Основні функції — доступ до складеного шкільного розкладу основних і додаткових занять для отримання довідкової інформації. Доступ до списків співробітників, їхніх контактних даних, персональних карток, журналу замін. Доступ до рідко змінюваних юридичних та управлінських документів: ліцензія, книга наказів тощо. Окремі особливі функції зі спеціальними привілеями: зміна підсумкових оцінок за семестр і рік. |
| Завуч | кілька осіб | Працює з автоматизованим робочим місцем «Завуч». Досвідчений користувач, налаштовує параметри системи. |
| Діловод (контент-менеджер) | 1 | Працює з автоматизованим робочим місцем «Діловод». |
| Викладач | кілька десятків | Працює з автоматизованим робочим місцем «Викладач». |
| Адміністратор системи | 1 | Професійний користувач, налаштовує систему, формулює заявки на розширення функціоналу. |
| Медсестра | кілька осіб | Працює з автоматизованим робочим місцем «Медичний кабінет». Обмежені можливості — доступ до медичної картки, генерація інцидентів. |
| Працівник їдальні | 1 | Працює з автоматизованим робочим місцем «Їдальня». Обмежені можливості, зміна часу роботи. |
| Куратор класу | кілька десятків | Працює з автоматизованим робочим місцем «Куратор». Обмежені можливості. |
| Учень | кілька тисяч | Функції для навчального процесу. |
| Батьки | кілька тисяч | Функціональні можливості для батьків. |
| Неавторизований користувач | — | — |
Система прав і розподіл користувачів за ролями
Права — на групи
Права на кінцеві об’єкти та операції з ними визначаються для груп користувачів.
Користувач — у групу
Розподіл прав у системі для кінцевих користувачів здійснюється через призначення користувачів у групи.
Об’єкти — на архітектурі
Кількість кінцевих об’єктів і можливі операції з ними визначаються на етапі архітектури.
Групи — розширюються
Групи користувачів можуть додаватися під час використання системи, і для них призначаються права на кінцеві об’єкти.
Такий формат ТЗ не відповідає на питання «як саме це буде виглядати» — він відповідає на питання «за якими правилами це має працювати». Реалізацію команда проєктує вже після того, як правила зібрані, перевірені та узгоджені зі школою.
