Задание
Проектирование и разработка программного средства «ИС туристического клуба» для управления базой данных туристического клуба для решения следующих задач:
- упростить работу сотрудников туристического клуба
- уменьшить количество бумажных документов
- устранить финансовые затраты на печать документов
- снизить влияние человеческого фактора.
Функционал программы:
- добавление / изменение / удаление туристов
- добавление / изменение / удаление тренеров
- добавление / изменение / удаление расписания занятий
- регистрация / авторизация пользователей / кабинет пользователя.
Используемые технологии
- язык программирования C#
- WPF
- база данных SQL Server
- база данных SQLite
Содержание отчета к программе
1 ПОСТАНОВКА ЗАДАЧИ.. 6
1.1 Требования к функциональным характеристикам. 6
1.2 Требования к надежности и безопасности. 8
1.3 Требования к составу и параметрам технических средств. 8
2 СИСТЕМНЫЙ ПРОЕКТ. 10
2.1 Описание предметной области. 10
2.2 Диаграммы вариантов использования. 11
2.3 Сценарии вариантов использования. 12
3 ТЕХНИЧЕСКИЙ ПРОЕКТ. 16
3.1 Выбор состава технических и программных средств. 16
3.2 Физическая структура базы данных. 21
3.3 Физическая структура программы.. 25
4 ЭКОНОМИЧЕСКАЯ ЧАСТЬ. 39
4.1 Расчет стоимости одного часа машинного времени. 39
4.2 Расчет стоимости (себестоимости) разработки программы. 44
4.3 Расчет цены программы.. 46
4.4 Расчет экономической эффективности от внедрения программы. 49
5 ЭКСПЕРЕМЕНТАЛЬНАЯ ЧАСТЬ. 52
5.1 Тестирование приложения. 52
5.2 Инструкция пользователя. 60
6 ТЕХНИКА БЕЗОПАСТНОСТИ И ОХРАНА ТРУДА.. 64
6.1 Техника безопасности и производственная санитария на рабочем месте программиста 64
ЗАКЛЮЧЕНИЕ. 70
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ. 71
ПРИЛОЖЕНИЯ. 73
Приложение А. Диаграммы классов. 73
Приложение Б. Код класса TouristDto. 75
Приложение В. Код интерфейса ITouristProcess. 76
Приложение Г. Код интерфейса ITouristDao. 77
Приложение Д. Код класса Tourist 78
Приложение Е. Код класса TouristProcess 78
Приложение Ж. Код класса TouristProcessDb. 79
Приложение З. Код класса TouristDao. 80
Приложение И. Код логики окна добавления данных (туристы) 83
Приложение К. Код логики окна регистрации. 85
Приложение Л. Окно авторизации и его код. 88
Приложение М. Окно кабинета пользователя и его код. 90
Приложение Н. Код класса CoachDto и ScheduleDto. 93
Приложение О. Код интерфейса ICoachProcess и IScheduleProcess 95
Приложение П. Код интерфейса ICoachDao и IScheduleDao. 97
Приложение Р. Код класса Coach и Schedule. 99
Приложение С. Код класса CoachProcess и ScheduleProcess 99
Приложение Т. Код класса CoachProcessDb и ScheduleProcessDb. 101
Приложение У. Код класса CoachDao и ScheduleDao. 103
Приложение Ф. Код класса CoachDtoConverter и ScheduleDtoConverter 109
Приложение Х. Код окна Тренеры (интерфейс и логика) 111
Приложение Ц. Код окна добавления тренеров (интерфейс и логика) 114
Приложение Ч. Код окна Расписание (интерфейс и логика) 117
Приложение Ш. Код окна добавления расписания (интерфейс и логика) 120
Приложение IЩ. Код файла App.config. 123
Приложение Э. Код классов User и AppDBContext 125
Фрагмент программного кода (сущность тренер)
namespace TouristClub.BL.Entities { public class Coach { public int CoachId; public string CoachName; public int AdmissionDate; public int? DismissalDate; public string Qualification; } }
Фрагмент программного кода (интерфейс для работы с сущностью тренер в базе данных)
using System.Collections.Generic; using TouristClub.BL.Entities; namespace TouristClub.BL.Interfaces { /// <summary> /// Описание действий над объектом тренер в базе /// </summary> public interface ICoachDao { /// <summary> /// Получить тренера по id /// </summary> /// <param name="id">id тренера</param> /// <returns>тренер</returns> Coach Get(int id); /// <summary> /// Получить список всех тренеров в базе /// </summary> /// <returns>список всех тренеров в базе</returns> IList<Coach> GetAll(); /// <summary> /// Добавить тренера в базу /// </summary> /// <param name="coach">новый тренер</param> void Add(Coach coach); /// <summary> /// Обновить тренера /// </summary> /// <param name="coach">обновленный тренер</param> void Update(Coach coach); /// <summary> /// Удалить тренера /// </summary> /// <param name="id">id удаляемого тренера</param> void Delete(int id); } }
Структура проекта
Скриншот архива с проектом
Пояснения по запуску программы
Установить MS SQL Server Managment Studio по ссылке https://learn.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver16, присоеденить базу данных (смотри видео с инструкцией), запустить Visual Studio 2019 | 2022, подключить базу данных (смотри видео на канале https://www.youtube.com/channel/UC3XXxvCFq5i4laCmPE2zI9w и инструкцию к работе), запустить проект.
admin