Skip to content

adzh2100/SASD

Repository files navigation

VeloCity

Описание

Да се проектира софтуерната архитектура на софтуерната система VeloCity, за отдаване под наем на велосипеди в рамките на града. Основната цел на системата е потребителите през мобилно приложение да се информират за най-близките свободни велосипеди, с които може да се придвижват само в рамките на града. Велосипедите са снабдени с електрическа система за задвижване, но може да се задвижват и със собствена сила на колоездача, чрез педали.

Изисквания към VeloCity

  1. Системата трябва да поддържа следните групи потребители: a. Наемател на велосипед (обикновен потребител) b. Член на група по техническа поддръжка на велосипедите c. Системен администратор (техническа софтуерна поддръжка) d. Наблюдател/отговорник по използването на велосипедите
  2. Велосипедите се намират на стоянки, разположени на предварително определени позиции в рамките на града. Батериите на велосипедите се зареждат по време на престоя им на стоянката.
  3. Наемателите на велосипед се регистрират през мобилното приложение, като в профила им се включвт следните лични данни: имена, ЕГН, както и данни за връзка.
  4. Системните администратори и наблюдателите използват системата през Уеб приложение.
  5. Личните данни на потребителите трябва да са абсолютно защитени от външна намеса. Достъпни са единствено до наблюдателя на правомерното използване на велосипедите.
  6. При заявка от потребителя за търсене на велосипед, приложението му показва най-близката стоянка, където има свободен велосипед с поне Х% заредена батерия. Х е конфигурационен параметър на системата.
  7. Потребителите може да заплащат услугата чрез кредитна карта, СМС или чрез предварително закупени талони, които съдържат уникален код. Кодът може да се въвежда ръчно или автоматично (QR-code).
  8. Всеки велосипед има уникален идентификационен номер в системата и е снабден с GPS устройство, както и със смарт-сензори за самодиагностика. При наличие на технически проблем по велосипеда (спукана/спаднала гума, повреда, и т.н.) да се изпраща известие до гупите по техническа поддръжка, които в рамките на половин час трябва да диагностицират повредата и да вземат мерки за отстраняването ѝ.
  9. Максималното време Т за използване на един велосипед е конфигурационен параметър на сървъра на системата. След изтичане на максималното време се изпраща съобщение на наемателя и той трябва да остави велосипеда на найблизката стоянка и да го замени с друг ако му е необходимо.
  10. При излизане на велосипед от рамките на града, трябва да се сигнализира наблюдателя в рамките на 1 мин, като се изпратят данни за движението на велосипеда в последните 30 мин.
  11. При или загуба на връзка с даден велосипед, , трябва да се сигнализира наблюдателя в рамките на 10 сек, като се изпратят данни за движението на
    велосипеда в последните 30 мин, заедно с най-вероятната му позиция на която се е намирал в момента на изгубване на връзката. Т.нар. най-вероятна позиция се определя със специален алгоритъм (напр. чрез изкуствен интелект).
  12. При засичане на пътен или друг инцидент с велосипеда, се изпраща автоматично сигнал до спешна помощ (112), в рамките на 1 сек след засичане на инцидента. В рамките на 5 сек се известява и наблюдателя на системата.
  13. Системните администратори имат права да конфигурират системата и да следят за правилната ѝ работа.
  14. Системата трябва да може да се интегрира с всички познати онлайн услуги за географски карти (Google maps, BG maps, Open Street maps и т.н.), като има възможност за бъдещо добавяне на нови карти.
  15. Допуска се ремонт и профилактика в интервала от 2:30 до 5:30 ч. В останалата част на деня, системата трябва да е 99,999% налична.
  16. Системата трябва да е устойчива към пикови натоварвания в най-натоварените в денонощието, часове за придвижване.

About

Project for FMI Software architecture and software development course

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published