City.Risks D4.3 Mobile-Appproject.cityrisks.eu/wp-content/uploads/2017/08/D4.3.pdf · Mobile App....

11
Deliverable D4.3 Mobile Application Editor Pfennigschmidt, S. (FF) Contributors Burkard, S., Fischer, F. (HTW), Fotouhi Tehrani, P., Fuchs-Kittowski, F., Hellriegel J. (FF), Himberger, S. (HTW), Koukoulas, N. (SPH), Papadakis, N. (SPH), Pfennigschmidt, S., Restel, H., Rösler, M. (FF) Version 1.0 Date 24.02.2017 Distribution RESTRICTED Ref. Ares(2017)1742441 - 31/03/2017

Transcript of City.Risks D4.3 Mobile-Appproject.cityrisks.eu/wp-content/uploads/2017/08/D4.3.pdf · Mobile App....

Page 1: City.Risks D4.3 Mobile-Appproject.cityrisks.eu/wp-content/uploads/2017/08/D4.3.pdf · Mobile App. The mobile app represents one interface for citizens to communicate with the City.Risks

DeliverableD4.3

MobileApplication

Editor Pfennigschmidt,S.(FF)

Contributors Burkard,S.,Fischer,F.(HTW),FotouhiTehrani,P.,Fuchs-Kittowski,F.,HellriegelJ.(FF),Himberger,S.(HTW),Koukoulas,N.(SPH),Papadakis,N.(SPH),Pfennigschmidt,S.,Restel,H.,Rösler,M.(FF)

Version 1.0

Date 24.02.2017

Distribution RESTRICTED

Ref. Ares(2017)1742441 - 31/03/2017

Page 2: City.Risks D4.3 Mobile-Appproject.cityrisks.eu/wp-content/uploads/2017/08/D4.3.pdf · Mobile App. The mobile app represents one interface for citizens to communicate with the City.Risks

City.Risks DeliverableD3.2

©City.RisksConsortium2

ExecutiveSummary

This report is a short description accompanying the City.Risks Mobile App(deliverable D4.3). It describes the integration of the app into the overallinfrastructure of the City.Risks system, its functionality and basic implementationstructure.

AnnexIcontainstechnicalimplementationanddeploymentdetails.

Page 3: City.Risks D4.3 Mobile-Appproject.cityrisks.eu/wp-content/uploads/2017/08/D4.3.pdf · Mobile App. The mobile app represents one interface for citizens to communicate with the City.Risks

City.Risks DeliverableD3.2

©City.RisksConsortium3

TableofContents

1.INTRODUCTION.............................................................................................4

1.1.OverviewoftheCityRisksInfrastructureArchitecture.....................................4

1.2.MobileAppRequirements................................................................................5

2.OVERVIEWOFCITY.RISKSMOBILEAPPFUNCTIONALITY.........................................6

3.OVERVIEWOFCITYRISKSMOBILEAPPCOMPONENTS...........................................9

ANNEXI:TECHNICALDETAILS............................................................................10

I.1DevelopmentEnvironment...............................................................................10

I.2DeploymentEnvironment.................................................................................10

I.3MobileAppModuleDependencies...................................................................10

I.4AppBackendComponentDependencies..........................................................11

Page 4: City.Risks D4.3 Mobile-Appproject.cityrisks.eu/wp-content/uploads/2017/08/D4.3.pdf · Mobile App. The mobile app represents one interface for citizens to communicate with the City.Risks

City.Risks DeliverableD3.2

©City.RisksConsortium4

1. Introduction

1.1. OverviewoftheCityRisksInfrastructureArchitecture

The following figure represents a general overview of technical architecture ofCity.Risksandshowstheintegrationofthemobileappwithintheoverallsystem.

Fig.1:SystemarchitectureofCity.Risks.

MobileApp. Themobileapp representsone interface for citizens tocommunicatewith the City.Risks infrastructure and access its functionality. It connects to thesystem using the services of the App Backend,which in turn communicate to theCorePlatformand theRiskManagementandResponseService (RMRS) to forwardandreceiveinformation.

Core Platform. The Core Platform is a set of services, including a database, amessagebroker,andsenderand loggingcomponents, thatarecentral toCity.Risksfunctionality.

RiskManagementandResponseService(RMRS).TheRMRSaddsreactiveaswellaspro-activefunctionalitiestotheCity.Risksframework.Thosefunctionalities include,for instance, (semi-)automatic real-time analysis of incoming reports (frommobileappusers,Webapplicationusers,orexternalsources)orcommunityrequests,basedonsemanticalandspatio-temporalanalyticsmethods.

Operation Centre. The Operation Centre represents a set of management andoperational tools for public authorities or private companies operating City.Risks.These tools and interfaces let agents and their supervisors handle incidents incooperation with the decision support provided by RMRS. Other componentssupportsimulationsandstatisticalanalysisofsecurityandriskrelateddata.

App Backend

Mobile AppMessage Queue

Sender

R

Core Database

RMRS

Notification Generator

Message Queue Operation Center

Page 5: City.Risks D4.3 Mobile-Appproject.cityrisks.eu/wp-content/uploads/2017/08/D4.3.pdf · Mobile App. The mobile app represents one interface for citizens to communicate with the City.Risks

City.Risks DeliverableD3.2

©City.RisksConsortium5

1.2. MobileAppRequirements

TheCity.Risksmobileappsupportsavarietyofusecasesoftheproject,allofwhicharedescribedindeliverableD2.4.Thesupportedusecasesareasfollows.

• UC1:TheftofPersonalBelongings• UC3:InformationGatheringandDisseminationforOngoingEvents• UC4:Tourists’andWomen’sSafety• UC5:CitizenEngagement• UC6:NeighborhoodSafety

The detailed app requirements that have been identified are documented indeliverableD2.4. The general concept of the app has been detailed in deliverableD2.5.

Page 6: City.Risks D4.3 Mobile-Appproject.cityrisks.eu/wp-content/uploads/2017/08/D4.3.pdf · Mobile App. The mobile app represents one interface for citizens to communicate with the City.Risks

City.Risks DeliverableD3.2

©City.RisksConsortium6

2. OverviewofCity.RisksMobileAppFunctionality

Inordertosupporttheusecases listed inSec.1.2theCity.RisksMobileAppoffersthefollowingfunctionality.

UC1:TheftofPersonalBelongings

• RegisterorunregisteraCity.Riskstheftdetectiontagwithorfromthesystem• ActivateanddeactivateaCity.Riskstheftdetectiontag• Manage tagprofile information (e.g., label, description, image representing

theitemthetagisattachedto)• Detect City.Risks theft detection tags in the background and report tag

sightingstothesystem

Fig.2:Theftdetectiontagmanagement.

UC3:InformationGatheringandDisseminationforOngoingEventsUC6:NeighborhoodSafety

• View safety-related incident information in a list, on a map, and in anaugmentedrealityview

• Viewincidentdetails(e.g.,publicalerts,userreports)• Send image, video, or textual reports about safety-related incidents to the

City.Risksoperationcentre• Addreportstoanalreadyexistingincident

Page 7: City.Risks D4.3 Mobile-Appproject.cityrisks.eu/wp-content/uploads/2017/08/D4.3.pdf · Mobile App. The mobile app represents one interface for citizens to communicate with the City.Risks

City.Risks DeliverableD3.2

©City.RisksConsortium7

Fig.3:Incidentviewingandreporting.

UC4:Tourists’andWomen’sSafety

• Retrieve a safe route to the nearest “safe harbour” (e.g., Police, Station,TownHall,Hospital)

• Navigatearouteusingamaporanaugmentedrealityview

Fig.4:Safety-awareroutingandnavigation.

UC5:CitizenEngagementUC6:NeighborhoodSafety

• Send Calls for Witness (incl. images, textual, and spatio-temporaldescriptions)totheCity.Riskscommunity

• Getincontactwithothercommunitymembersthroughchatfunctionality

Page 8: City.Risks D4.3 Mobile-Appproject.cityrisks.eu/wp-content/uploads/2017/08/D4.3.pdf · Mobile App. The mobile app represents one interface for citizens to communicate with the City.Risks

City.Risks DeliverableD3.2

©City.RisksConsortium8

Fig.5:Requestforwitnessandcommunitychatfunctions.

Page 9: City.Risks D4.3 Mobile-Appproject.cityrisks.eu/wp-content/uploads/2017/08/D4.3.pdf · Mobile App. The mobile app represents one interface for citizens to communicate with the City.Risks

City.Risks DeliverableD3.2

©City.RisksConsortium9

3. OverviewofCityRisksMobileAppComponents

Mobileapp.Themobileappismodularizedalongenduserfunctionalityorservices.For all the functions, necessary to support such a service (or use case) a set ofmodules and interfaces has been developed that implement the service on themobiledeviceandontheserverside.Thegoalwastohavetheservicemodulesasindependentfromeachotheraspossiblewhileallowingbasicmodulestobesharedbyothers.

Inso far, theCity.Risksmobileapprepresentsone incarnationofsuchanappthatincorporatesall services. Themodule approach, however, allows to create variousappsthatcanofferdifferentcombinationsofservicestoitsusers.

TheCity.Risksmobileappcomprisesthefollowingmodules

• basicsupportmodules(e.g.,forservercommunication)• useridentitymodule• devicemodule• theftdetectionmodule• incidentreportingmodule• requestwitnessmodule• safety-awareroutingandnavigationmodule

Onemodule thatplaysa specific role is theAugmentedRealitySDK thathasbeendevelopedfortheAndroidplatform.

The App relies also on other services from the project as well as third partycomponents.TheindividualmoduledependenciesarelistedinAnnexI.

Appbackend.Theappbackend facilitates thecommunicationbetweenthemobileappandtheothercomponentsof theCity.Risks infrastructure. It isalsostructuredalongservicesandcomprisesofthefollowingcomponents.

• backendsupportmodules• theftdetectionendpoint• incidentreportingendpoint• useridentitymanagementendpoint• devicemanagementendpoint• requestforwitnessendpoint

Allofthecomponentsdependonvariousthirdpartycomponents.ThedependenciesarelistedinAnnexI.

Page 10: City.Risks D4.3 Mobile-Appproject.cityrisks.eu/wp-content/uploads/2017/08/D4.3.pdf · Mobile App. The mobile app represents one interface for citizens to communicate with the City.Risks

City.Risks DeliverableD3.2

©City.RisksConsortium10

AnnexI: TechnicalDetails

The following sections describe technical details of the platforms used to developanddeploycomponentsaswellaslist internalandexternaldependenciesbetweenthedifferentmodules.

I.1 DevelopmentEnvironment

MobileApp. ThemobileApphasbeendevelopedas anativeapp for theAndroidsmartphone platform using Android Studio 2.2.3 and the latest Androiddevelopmenttools.

App backend. The App backend has been implemented as a set of HTTP RESTservicesbasedonnode.js(nodejs.org).

I.2 DeploymentEnvironment

MobileApp.Inordertosupportthetheftdetectionfunctionality,whichisbasedonBluetoothLE technology, themobileapp requiresanAndroidSmartphone runningAndroid 5.0 Lollipop (API Level 21) or higher. For all other functions a minimalversionofAndroid4.4KitKatisrequired.

AppBackend.AllservicesoftheappbackendaredeployedassingleinterconnectedDockercontainers(docker.io)runninginaLinuxUbuntu16.04.1LTSenvironment.

I.3 MobileAppModuleDependencies

Table1:Mobileappmoduledependencies

Module Dependencies

theftdetectionmodule • supportmodules

incidentreportingmodule

• supportmodules• AugmentedRealitySDK

useridentitymodule • supportmodules

devicemanagementmodule

• supportmodules

requestwitnessmodule• supportmodules• ApplozicChatFramework(applozic.com)

Page 11: City.Risks D4.3 Mobile-Appproject.cityrisks.eu/wp-content/uploads/2017/08/D4.3.pdf · Mobile App. The mobile app represents one interface for citizens to communicate with the City.Risks

City.Risks DeliverableD3.2

©City.RisksConsortium11

safety-awareroutingandnavigationmodule

• supportmodules• Safety-wareRoutingService

supportmodules• libsodium1.0.3(libsodium.org)• jts1-14(sourceforge.net/projects/jts-topo-suite)

AugmentedRealitySDK

I.4 AppBackendComponentDependencies

Table2:Appbackendcomponentdependencies

Component Dependencies

theftdetectionendpoint• backendsupportmodules• MongoDB(mongodb.org)• Mosquitto(mosquito.orgorotherMQTTbroker)

incidentreportingendpoint

• Backend:supportmodules• MongoDB(mongodb.org)• Redis(redis.io)• Mosquitto(mosquito.orgorotherMQTTbroker)

useridentityendpoint• backendsupportmodules• MongoDB(mongodb.org)

devicemanagementendpoint

• backendsupportmodules• MongoDB(mongodb.org)• Mosquitto(mosquito.orgorotherMQTTbroker)

requestwitnessendpoint

• backendsupportmodules• MongoDB(mongodb.org)• Mosquitto(mosquito.orgorotherMQTTbroker)