|
@@ -0,0 +1,221 @@
|
|
|
+
|
|
|
+Приоритеты разработки
|
|
|
+
|
|
|
+Обозначения
|
|
|
+===========
|
|
|
+
|
|
|
+Зелёный текст — задачу нужно сделать одной из первых;
|
|
|
+
|
|
|
+Жёлтый текст — задача имеет низкий приоритет;
|
|
|
+
|
|
|
+Красный текст — задачу не следует реализовывать.
|
|
|
+
|
|
|
+Описание функционала
|
|
|
+====================
|
|
|
+
|
|
|
+Описание задачи
|
|
|
+---------------
|
|
|
+
|
|
|
+Вашей задачей является разработка подсистемы для работы с базой
|
|
|
+водителей, с которыми Вы будете связывать дальнейшие сущности.
|
|
|
+Для создания подсистемы вам так же необходимо спроектировать,
|
|
|
+разработать и заполнить на основе предоставленных ресурсов
|
|
|
+базу данных. Также, чтобы транспортное средство имело
|
|
|
+доступ к общественным автомобильным дорогам, оно должно
|
|
|
+быть зарегистрировано. Вам предстоит реализовать функционал,
|
|
|
+который позволяет регистрировать транспортные средства (ТС) и
|
|
|
+присваивать их владельцам/водителям.
|
|
|
+
|
|
|
+Во время выполнения задания вам необходимо использовать
|
|
|
+предоставленные ресурсы.
|
|
|
+
|
|
|
+Авторизация
|
|
|
+-----------
|
|
|
+
|
|
|
+В связи с тем, что система хранит и обрабатывает персональные
|
|
|
+данные людей, занесенных в базу, то необходимо предусмотреть
|
|
|
+систему их защиты. Минимальным шагом для этого является
|
|
|
+система авторизации.
|
|
|
+
|
|
|
+Так как система только разрабатывается, то для авторизации мы
|
|
|
+будем использовать только одного пользователя – inspector.
|
|
|
+Пароль должен совпадать с логином.
|
|
|
+
|
|
|
+Для защиты от подборов паролей, необходимо ограничить
|
|
|
+количество попыток ввода с неправильным паролем. Если
|
|
|
+пользователь вводит неправильные данные более чем 3 раза,
|
|
|
+необходимо заблокировать ввод данных на 1 минуту.
|
|
|
+Блокировка остается даже если пользователь сразу же
|
|
|
+перезапускает приложение.
|
|
|
+
|
|
|
+Если приложением не пользуются более одной минуты, то
|
|
|
+необходимо закрыть все открытые окна приложения и
|
|
|
+вернуть пользователя на окно авторизации.
|
|
|
+
|
|
|
+Загрузка данных о существующих водителях
|
|
|
+
|
|
|
+Заказчик системы предоставил нам выгрузку из старой базы данных
|
|
|
+водителей, которую необходимо перенести в новое приложение.
|
|
|
+Воспользуйтесь архивом drivers.zip и загрузите данные в
|
|
|
+свою базу.
|
|
|
+
|
|
|
+Создание водителя
|
|
|
+-----------------
|
|
|
+
|
|
|
+Необходимо реализовать окно создания водителя, в котором должны
|
|
|
+быть следующие поля:
|
|
|
+
|
|
|
+Идентификатор (GUID) *
|
|
|
+
|
|
|
+Фамилия*
|
|
|
+
|
|
|
+Имя*
|
|
|
+
|
|
|
+Отчество*
|
|
|
+
|
|
|
+Паспорт (серия и номер) *
|
|
|
+
|
|
|
+Адрес регистрации*
|
|
|
+
|
|
|
+Адрес проживания*
|
|
|
+
|
|
|
+Место работы
|
|
|
+
|
|
|
+Должность
|
|
|
+
|
|
|
+Мобильный телефон*
|
|
|
+
|
|
|
+Email*
|
|
|
+
|
|
|
+Фотография*
|
|
|
+
|
|
|
+Замечания
|
|
|
+
|
|
|
+При выборе фотографии водителя убедитесь, что файл
|
|
|
+соответствует следующим параметрам:
|
|
|
+
|
|
|
+Соотношение сторон изображения равно 3x4;
|
|
|
+
|
|
|
+Изображение вертикальное;
|
|
|
+
|
|
|
+Размер изображение не более 2 мегабайт;
|
|
|
+
|
|
|
+Изображение формата JPG или PNG.
|
|
|
+
|
|
|
+Поля адрес регистрации и адрес проживания должны быть разделены
|
|
|
+на две части: название города и точный адрес (улица, дом,
|
|
|
+квартира). При вводе названия города поле для ввода
|
|
|
+должно работать по принципу автодополнения (то есть
|
|
|
+система должна показывать несколько вариантов, которые
|
|
|
+подходят по введенным первым буквам из названия города).
|
|
|
+
|
|
|
+Должна присутствовать проверка на правильный формат вводимого
|
|
|
+email адреса.
|
|
|
+
|
|
|
+Карточка водителя
|
|
|
+-----------------
|
|
|
+
|
|
|
+Необходимо реализовать интерфейс, в котором пользователь
|
|
|
+сможешь менять всю информацию о водителе, а также
|
|
|
+получать дополнительную информацию, которая будет
|
|
|
+реализована в следующих релизах.
|
|
|
+
|
|
|
+Загрузка данных о существующих транспортных средствах
|
|
|
+-----------------------------------------------------
|
|
|
+
|
|
|
+Заказчик системы предоставил нам старую базу данных
|
|
|
+транспортных средств, которую необходимо перенести
|
|
|
+в новое приложение. Воспользуйтесь архивом transport.zip и
|
|
|
+загрузите данные в свою базу.
|
|
|
+
|
|
|
+Добавление транспортного средства
|
|
|
+
|
|
|
+Необходимо реализовать функционал, позволяющий добавлять новые
|
|
|
+транспортные средства. Транспортное средство должно включать в
|
|
|
+себя следующую информацию (обязательные к заполнению поля
|
|
|
+отмечены звездочками):
|
|
|
+
|
|
|
+VIN номер автомобиля*
|
|
|
+
|
|
|
+Марка*
|
|
|
+
|
|
|
+Модель*
|
|
|
+
|
|
|
+Тип транспортного средства*
|
|
|
+
|
|
|
+Категория транспортного средства*
|
|
|
+
|
|
|
+Год выпуска*
|
|
|
+
|
|
|
+Номер двигателя
|
|
|
+
|
|
|
+Модель двигателя
|
|
|
+
|
|
|
+Год двигателя
|
|
|
+
|
|
|
+Номер цвета*
|
|
|
+
|
|
|
+Мощность двигателя в кВт
|
|
|
+
|
|
|
+Мощность двигателя в лошадиных силах
|
|
|
+
|
|
|
+Максимальная нагрузка (в кг)
|
|
|
+
|
|
|
+Вес автомобиля*
|
|
|
+
|
|
|
+Тип двигателя*
|
|
|
+
|
|
|
+Вес автомобиля (в кг)*
|
|
|
+
|
|
|
+Тип привода*
|
|
|
+
|
|
|
+Комментарии
|
|
|
+
|
|
|
+Владелец
|
|
|
+
|
|
|
+Владельцем транспортного средства является водитель. При вводе
|
|
|
+ФИО водителя система должна показывать совпадения в базе
|
|
|
+данных (и показывать дату рождения). Но если совпадений
|
|
|
+не найдено, система должна предложить добавить введенного
|
|
|
+водителя в систему в рамках всплывающего окна. Если
|
|
|
+пользователь ввел ФИО в поле владельца и необходимо
|
|
|
+создать нового водителя, то данные из поля с ФИО должны
|
|
|
+разделиться и сразу быть вставлены в соответствующие поля.
|
|
|
+
|
|
|
+При добавлении транспортного средства необходимо проверять
|
|
|
+вводимый VIN номер с помощью созданной ранее библиотеки. В
|
|
|
+случае, если VIN номер совпадает уже с существующим
|
|
|
+автомобилем, то необходимо показать об этом
|
|
|
+информацию и данные автомобиля.
|
|
|
+
|
|
|
+Цвет транспортного средства должен выбираться из базы
|
|
|
+существующих цветов с помощью плиток палитры или
|
|
|
+ввода кода цвета. Кроме этого, должна быть возможность
|
|
|
+выбрать цвет по названию через выпадающий список.
|
|
|
+
|
|
|
+Карточка Транспортного Средства
|
|
|
+-------------------------------
|
|
|
+
|
|
|
+Необходимо разработать интерфейс, позволяющий передавать
|
|
|
+транспортное средство другому владельцу. При этом, у
|
|
|
+каждого транспортного средства должна быть история передачи
|
|
|
+с датами и указанием предыдущих владельцев и комментариев.
|
|
|
+
|
|
|
+К каждому транспортному средству необходимо прикреплять
|
|
|
+фотографии с возможностью переворота изображения.
|
|
|
+
|
|
|
+Необходимо реализовать функционал, позволяющий сгенерировать
|
|
|
+номерной знак для транспортного средства и сохранить его за
|
|
|
+ним.
|
|
|
+
|
|
|
+Проектирование будущей системы
|
|
|
+------------------------------
|
|
|
+
|
|
|
+В связи с большими запросами клиентами, Вам предстоит
|
|
|
+спроектировать будущую систему для того, чтобы клиент
|
|
|
+мог начать согласовать процесс разработки. Вам необходимо
|
|
|
+ознакомиться с информацией в файле design_description и
|
|
|
+подготовить ER диаграмму для будущей системы. Файлы нужно
|
|
|
+сохранить в удобном для вас формате, но с названием
|
|
|
+gai_xx_erd (где xx – номер версии документа).
|
|
|
+
|