160 likes | 240 Views
Explore how BETaaS revolutionizes mobile apps with automatic resource allocation, transparent access to things, and big data functionalities. Learn about the Service Manager API, App Manifest, and seamless interactions with BETaaS. Discover the future work and conclusions of implementing BETaaS in mobile applications.
E N D
Building the Environment forthe Things as a Service GWS 2014 - Aalborg Sergio García (ATOS)
Mobile App Demo – Outline • Main Features for Mobile Apps • BETaaS Features • BETaasBenefits • Developing a BETaaS Mobile App • InteractionswithBETaaS • The Service Manager API • The Apps Manifest • Mobile App Demo • FutureWork • Conclusions
BETaaS Features • BETaaSprovidesfeatures at Service, TaaSandAdaptationLayers Mobile Apps exploittheServiceLayer • Main Features provided at Service Layer: • Automaticallocation of resources Apps justneed to askfor ‘features’ to BETaaS • Transparentaccess to thingsApps do notneed to knowwhichthingsimplement ‘features’ • Big Data functionalities Apps will be able to exploit data Underimplementation
BETaaS Benefits • BETaaSautomaticallocation of resources: • Apps justneed to listrequiredfeatures(temperature, presence, etc…) • Apps mayincludenon-functionalrequirements(QoS, Trust, Security) • BETaaSperformsanoptimizedallocationforthe App • Transparent access to things: • Apps do notneed to knowthe concrete thingto be accessed Justrequestthe data for a ‘feature’ • Resourcesre-allocationdoesnotaffectthe appimplementation • In general, BETaaSallowsexploitinganythingalwaysusingthesame API, even in heterogeneousenvironments No need to interact at low-level
InteractionswithBETaaS Step 1– InstallApplication Step 2 – Use Resources Install App App Id GetservicesIDs ServicesIDs Get Data Get Data Data Data Set Data Set Data OK/KO OK/KO
TheService Manager API • TheService Manager componentistheaccesspointfor apps: • SOAP API accessibleexternally • Itpublishesalltheneededmethodsforinteracting booleanunregister(String arg0,String arg1) booleanuninstallApplication(String arg0,String arg1) boolean register(String arg0,String arg1) String getTaskData(String arg0,String arg1) String installApplication(String arg0) String test(String arg0) String getThingServiceData(String arg0,String arg1)
The Apps Manifest (I) • TheManifestcontainsinformationabout: • Requestedfeatures and thelocation • Non-functionalrequirements • Other general indications (i.e. BETaaSversion, app name…) • Itis a XML formatted file Inspiredby Android app manifest
The Apps Manifest (II) • Requested ‘features’: • Kind of feature (presence, temperature, etc…) • Location in whichitwillhappen • Mode (pull/push) <?xml version='1.0'?> <manifest> <Application> <name>TestPresence</name> <notificationAddress>{device IP}</notificationAddress> </Application> <ServiceDescriptionTerm> <ServiceDefinition> <Feature>presence</Feature> <Areas> <Area>home</Area> </Areas> <Delivery>betaas.delivery.RTPULL</Delivery> …
The Apps Manifest (III) • Non-functionalrequirements: • Associated to a requestedfeature • Mainly, QoSrequirements … <Trust>0.9</Trust> <QoS> <maxDelaySec>5</maxDelaySec> </QoS> <credentials>fonwon2vlxkfwoi2309s</credentials> </ServiceDefinition> </ServiceDescriptionTerm> </manifest>
The Apps Manifest (& IV) • General indications: • Servicename • SDK version (BETaaS firmware version)
Future Work • Full implementation of modes : • PUSH mode still not available, but under development • Set methodsforactuatorsunderdevelopment • Provide a way to enable PUSH mode in mobile devices (i.e. Google Cloud Messaging) • Facilitate a REST interface, alternative to the SOAP one More usable frommobiledevices • Provide a librarywhichwillsimplifythecoding of apps
Conclusions • BETaaS provides a way for mobile applications to interact with things in the environment seamlessly • Interactions with a BETaaS Instance are not too complicated (only requiring one especial step for installing the app) • BETaaS abstracts applications from the physical layer allowing re-allocation of things without changes in apps • Usage of a App Manifest for requesting ‘features’ and the quality levels required
Thanks for your attention!!More information at:http://www.betaas.eu