is -- course project

Информационные системы. Курсовая работа

Цель курсовой работы:

Получение навыков и знаний, необходимых для создания информационной системы в
заданной предметной области.

Команда:

не более 2х человек

Порядок выполнения курсовой работы (при демонстрации каждого этапа
требуется предоставление отчета).

Этап 1:

  1. Согласовать с преподавателем предметную область, для которой будет разрабатываться информационная система.
  2. Составить подробное текстовое описание предметной области.
  3. Сформулировать, зачем нужна информационная система для представленной предметной области, какие задачи она позволит решить.
  4. Составить функциональные/нефункциональные требования к разрабатываемой информационной системе.
  5. Построить модели основных прецедентов (прецеденты согласуются с преподавателем), составить их описание.
  6. Предложить архитектуру будущей системы. При составлении архитектуры необходимо учитывать, что все этапы курсовой работы необходимо будет демонстрировать на сервере helios. Согласовать с преподавателем технологии и фреймворки, которые будут использоваться при реализации системы. Для реализации системы можно использовать:
    a. Frontend: React, Angular, Vue, Next JS, JSF, Spring MVC (Thymeleaf или другой шаблонизатор).
    b. Backend: основанный на Jakarta EE или Spring MVC
    ​​​​​​​c. БД: PostgreSQL
  7. Составить отчет.

Этап 2:

  1. Сформировать ER-модель базы данных (на основе описаний предметной области и прецедентов из предыдущего этапа).
    ER-модель должна:
    a. включать в себя не менее 10 сущностей;
    ​​​​​​​b. содержать хотя бы одно отношение вида «многие-ко-многим».
  2. Согласовать ER-модель с преподавателем. На основе ER-модели построить даталогическую модель.
  3. Реализовать даталогическую модель в реляционной СУБД PostgreSQL.
  4. Обеспечить целостность данных при помощи средств языка DDL и триггеров.
  5. Реализовать скрипты для создания, удаления базы данных, заполнения базы тестовыми данными.
  6. Предложить pl/pgsql-функции и процедуры, для выполнения критически важных запросов (которые потребуются при последующей реализации прецедентов).
  7. Создать индексы на основе анализа использования базы данных в контексте описанных на первом этапе прецедентов. Обосновать полезность созданных индексов для реализации представленных на первом этапе бизнес-процессов.
  8. Составить отчет.

Этап 3:

  1. Изобразить диаграмму классов, представляющую общую архитектуру системы.
  2. Реализовать уровень хранения информационной системы на основе разработанной на предыдущем этапе базы данных.
  3. При реализации уровня хранения должны использоваться функции/процедуры, созданные на втором этапе с помощью pl/pgsql. Нельзя замещать их использование альтернативной реализацией аналогичных запросов на уровне хранения информационной системы.
  4. На основе описания бизнес-процессов из первого этапа и построенного уровня хранения реализовать уровень бизнес-логики информационной системы.
  5. Составить отчет.

Этап 4:

  1. Реализовать уровень представления приложения для осуществления описанных на первом этапе бизнес-процессов.
  2. Сформировать итоговый отчет, содержащий все предыдущие этапы.
  3. Провести презентацию проекта.

При демонстрации этапа курсовой работы вне срока студент может получить только
минимальное количество баллов.