3.77M

Презентация Артём Киселёв-ПО 331

1.

Учёт
поступающих
абитуриентов
Студент: Артём Киселёв
Группа: ПО-331
Преподователь: Мадияр Берстем

2.

Цель и задачи
Цель проекта:
Разработка консольной системы учёта абитуриентов, которая
позволяет подавать и обрабатывать заявки на поступление.
Задачи:
• Реализовать регистрацию пользователей.
• Создать механизм подачи заявок.
• Разработать функционал администратора.
• Построить модель данных с применением ООП.
• Обеспечить простое и понятное взаимодействие через
консоль.

3.

Тема и описание
проекта
Тема: Учёт поступающих абитуриентов
Описание: Приложение разработано для
автоматизации процесса подачи и обработки заявок
абитуриентов.
Пользователь формирует заявку на специальность, а
администратор выполняет её проверку и принимает
дальнейшее решение по статусу заявки.
Система предоставляет два режима:
• User — регистрация, подача заявок, просмотр
своих заявок.
• Admin — просмотр всех пользователей, управление
специальностями, изменение статусов заявок.
Проект полностью реализован на Java с
использованием коллекций и ООП.

4.

Диаграмма
классов
Основные классы:
• User — представляет абитуриента. Хранит его имя, логин и пароль.
Используется для регистрации и входа в систему.
• Admin — класс администратора. Имеет логин, пароль и доступ к
функциям управления пользователями и заявками.
• Product — описывает специальность (название и количество
бюджетных мест). Используется при выборе направления обучения.
• Order — хранит информацию о поданных заявках: кто подал и на
какую специальность, а также текущий статус.
• Database — главный управляющий класс. Обрабатывает регистрацию,
авторизацию, хранит списки пользователей, администраторов,
специальностей и заявок. Содержит логику всех меню.
• Main — точка входа в программу, запускает основное меню и передаёт
управление классу Database.

5.

Возможности User
(абитуриента)
Абитуриент взаимодействует с системой через простое консольное меню. Основной функционал
пользователя включает:
• Регистрация нового аккаунта.
• Пользователь вводит имя, логин и пароль. После регистрации данные сохраняются в системе.
• Авторизация по логину и паролю.
• После входа система определяет пользователя и открывает доступ к его функциям.
• Подача заявки на специальность.
• Пользователь выбирает одну из доступных специальностей, после чего система добавляет
заявку в общий список.
• Просмотр своих заявок.
• Абитуриент может увидеть статус всех поданных заявок (например: “Принято”, “Отклонено”, “На
рассмотрении”).

6.

Возможности Admin
Администратор — это сотрудник
приёмной комиссии. Он имеет
расширенные права для
управления системой:
Просмотр списка всех
пользователей.
Администратор видит, кто зарегистрировался
в системе. Так же вход выполняется только
после ввода правильного пароля, после чего
предоставляется административное меню.
Просмотр всех заявок.
Полный список заявок абитуриентов с
указанием специальности и статуса.
Изменение статуса заявки.
Администратор может отметить заявку как
“Принята”, “Отклонена” или установить
другой статус.
Добавление новых
специальностей.
Администратор может расширить список
специальностей, указав название и
количество бюджетных мест.

7.

Пример интерфейса (консоли)
Регистрация пользователя
Регистрация заявки
Меню администратора с
рассмотрением заявок

8.

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

9.

Использованные технологии
В проекте были применены следующие технологии и инструменты разработки:
• Java SE (Standard Edition) — основной язык программирования для реализации логики
приложения.
• ООП (Объектно-ориентированное программирование) Применены принципы инкапсуляции,
композиции и разделения ответственности между классами.
• Коллекции Java (ArrayList)
Используются для хранения пользователей, администраторов, специальностей и заявок.
• Класс Scanner
Обеспечивает обработку пользовательского ввода в консольном интерфейсе.
• Консольное меню
Реализовано с использованием операторов switch и циклов для построения навигации.
• Override методов (toString) Используется для удобного отображения объектов (например,
специальностей и заявок).
• Исключения и базовая проверка данных
Обеспечивает корректность ввода пользователя.
• IntelliJ IDEA
Использовалась как среда разработки для написания и отладки кода.

10.

Тестирование
программы
Для проверки корректности работы системы было выполнено:
• Тестирование регистрации и авторизации.
Проверка, что система корректно добавляет и опознаёт
пользователя.
• Проверка меню пользователя.
Создание тестовой заявки, просмотр заявок, обработка ошибок.
• Тестирование функций администратора.
Просмотр всех заявок, изменение статуса, добавление
специальности.
• Проверка на некорректный ввод.
Например, неправильный выбор пункта меню или ввод
несуществующей специальности.

11.

Результат проекта
В результате разработки удалось создать простую,
но функциональную систему учёта абитуриентов:
• Реализованы роли User и Admin.
• Пользователь может зарегистрироваться,
подать заявку и просматривать её.
• Администратор управляет пользователями и
заявками.
• Программа полностью работает через консоль.
• Использованы базовые механизмы Java и
принципы объектно-ориентированного
программирования.
Система демонстрирует полную цепочку
взаимодействия от подачи заявки до её
рассмотрения.

12.

Заключение
В ходе выполнения этой работы была разработана консольная
система учёта абитуриентов. Несмотря на то что проект не имеет
графического интерфейса, он показывает основные принципы
разработки программного обеспечения и принципов ООП: работу с
объектами, списками, ролями пользователей и обработкой данных.
В приложении реализованы две роли — пользователь и
администратор. Абитуриент может зарегистрироваться, выбрать
специальность и подать заявку, а администратор — просматривать
и управлять всеми заявками. Выполненная система выполняет все
основные задачи, поставленные в начале работы, и может быть
расширена в будущем — например, можно добавить сохранение
данных в файл, сортировку заявок или графический интерфейс.
English     Русский Rules