#import "template.typ": * #let authors = ( ( name: "Ситник Є. С.", full_name_gen: "Ситника Єгора Сергійовича", variant: 13, group: "ПЗПІ-23-2", gender: "m", ), ) #let mentors = ( ( name: "Черепанова Ю. Ю.", gender: "f", degree: "Ст. викл. каф. ПІ", ), ( name: "Русакова Н. Є.", gender: "f", degree: "Доц. каф. ПІ", ), ( name: "Широкопетлєва М. С.", gender: "f", degree: "Ст. викл. каф. ПІ", ), ) #let task_list = ( done_date: datetime(year: 2024, month: 12, day: 27), initial_data: datetime(year: 2024, month: 9, day: 15), source: "методичні вказівки до виконання курсової роботи, вимоги до інформаційної системи, предметна область, що пов’язана з управлінням класом та класним керівництвом.", content: "вступ, аналіз предметної області; постановка задачі; проектування бази даних; опис програми; висновки; перелік джерел посилання.", graphics: "загальна діаграма класів, ER-діаграма, UML-діаграми, DFD-діаграма, схема БД в 1НФ, 2НФ, 3НФ, копії екранів (“скриншоти”) прикладної програми, приклади звітів прикладної програми.", ) #let calendar_plan = ( plan_table: [], approval_date: datetime(year: 2024, month: 12, day: 27), ) #let abstract = ( keywords: ( "БАЗА ДАНИХ", "АВТОМАТИЗАЦІЯ", "КЛАСНИЙ КЕРІВНИК", "КЛАС", "ШКОЛА", "GO", "HTMX", "MYSQL", "SQL", ), text: [ Мета даної роботи -- проєктування та розробка інформаційної системи «Помічник класного керівника. Керування класом», яка спрямована на автоматизацію процесів управління класом, облік даних про учнів, планування та аналіз навчального процесу. Основна задача інформаційної системи – спростити роботу класного керівника, забезпечити ефективну організацію документації та взаємодію з учасниками освітнього процесу. Для реалізації системи було використано сучасний стек технологій, а саме: Go -- як основна мова програмування для створення серверної логіки, HTMX -- для динамічного оновлення інтерфейсу без використання складних фреймворків, MySQL -- як СУБД для зберігання даних про учнів, їх оцінки та розклад, Neovim -- як середовище для швидкої та ефективної розробки коду, Go Echo -- веб-фреймворк для створення REST API, Go SQLx -- бібліотека для роботи з базою даних, що забезпечує зручність і гнучкість. Результат роботи – веб-додаток, який дозволяє обліковувати особисті дані учнів та їхніх опікунів, включаючи інформацію про успішність, відвідуваність та інші показники; планувати розклад занять; генерувати звіти про успішність учнів та переглядати різну статистику. Інтерфейс, створений з використанням HTMX, легко адаптується під потреби користувача. ], ) #let appendices = ( ( title: "Приклад звіту 1", content: [test], ), ( title: "Приклад звіту 2", content: [test], ), ( title: "Приклад звіту 3", content: [test], ), ) #show: conf.with( doctype: "КП", title: "Інформаційна система «Помічник класного керівника». Керування класом", subject_shorthand: "БД", department_gen: "Програмної інженерії", edu_program: "ПЗПІ", authors: authors, mentors: mentors, task_list: task_list, calendar_plan: calendar_plan, abstract: abstract, bib_path: "bibl.yml", appendices: appendices, ) #heading(depth: 1, numbering: none)[Вступ] У сучасному освітньому середовищі інформаційні системи відіграють ключову роль у забезпеченні ефективного управління та автоматизації процесів. Особливо це важливо для шкіл, де необхідно систематизувати облік даних про учнів, планувати навчальний процес і створювати звіти. Відсутність зручних інструментів ускладнює роботу класного керівника, змушуючи його витрачати багато часу на тяганину з документами, зокрема на складання звітів, ведення обліку даних про учнів і підготовку розкладу, що потребує сучасних рішень для організації взаємодії між учасниками освітнього процесу. Метою цієї курсової роботи є розробка інформаційної системи «Помічник класного керівника. Керування класом», яка спрощує процес управління класом, дозволяючи автоматизувати складання звітів, зберігати та обробляти дані про учнів, а також планувати навчальний процес у зручному форматі, забезпечує зручний облік даних про учнів і сприяє ефективному плануванню навчального процесу. У процесі роботи над системою було проведено аналіз потреб користувачів, спроєктовано реляційну базу даних і розроблено веб-додаток, який дозволяє обліковувати особисті дані учнів та їхніх опікунів, відстежувати успішність і відвідуваність, планувати розклад занять, формувати звіти та переглядати статистичні дані. Основну серверну логіку написано мовою програмування Go@go, а для забезпечення роботи інтерфейсу застосовано HTMX@htmx. Дані зберігаються у базі даних MySQL@mysql, взаємодія з якою здійснюється через бібліотеку Go SQLx@sqlx. Для створення REST API використано веб-фреймворк Go Echo@echo. Розробка виконувалася у середовищі Neovim@neovim. = Аналіз та концептуальне моделювання предметної області #v(-1em) == test test == test