Konferencija Javantura Zagreb 2014 by HUJAK
Izgradnja otvorene i besplatne EU platforme za razvoj ICT usluga za starije osobe by Andrej Grgurić
U siječnju 2014., nakon četiri godine intenzivnog rada europski istraživački projekt universAAL (www.universaal.org), sufinanciran od strane Europske Unije, uspješno je priveden kraju. Glavni rezultat projekta je, uz otvorene alate (pretezno razvijene u obliku otvorenih Eclipse plug-inova), besplatna i otvorena (ASL2.0) platforma, bazirana na OSGi tehnologiji, koja olakšava tehničku implementaciju i djeluje kao otvoren i zajednički temelj za programere.
4. Ambient Assisted Living (AAL)
Problem
demographic
development towards an
“ageing society”
Solution - Ambient Assisted
Living (AAL)
use of ICT to increase the
quality of life of elderly
people and to prolong
their independence
4
eHealth
Social Web of
Things
Context aware
computing
Human
Computer
Interaction
Ambient
Assisted Living
Artificial
Intelligence
Wireless
Sensor
Networks
Smart
environments
Robotics
universAAL platform - Javantura
Internet of
Things
22/02/2014
7. Community support: http://www.aaloa.org
– AAL OPEN ASSOCIATION (AALOA)
• Manifesto – encourage industry and
academic world to participate in forming an
association to develop and exploit AAL
platforms
• Competition – promote active participation
Competition
Association
• Association – support and coordinate AAL
R&D as part of an open community of
stakeholders
Manifesto
Carrying out support activities
promoting widespread acceptance and
adoption of the platform
http://evaal.aaloa.org
AALOA can host a project for you!
7
universAAL platform - Javantura
22/02/2014
12. universAAL platform: Runtime Support
Applications run as if all of them are in one device
Applications
universAAL
universAAL
12
universAAL
universAAL platform - Javantura
universAAL
universAAL
22/02/2014
13. Runtime platform: Building blocks
Applications
Context
Management
LDDI
Service
Management
AAL Space Managers
UI
Management
Profiling
AAL Space
Gateway
Communication
Container
AAL Node Middleware
Discovery & Peering
13
Data
Representation
universAAL platform - Javantura
22/02/2014
14. Runtime platform building blocks
Separation into 7 Expert Groups (EG):
1. Middleware
(associated: porting to OSGi-over-Android and Native Android)
2. Local Device Discovery & Integration
3. Security
4. Context Management
(associated: ontologies)
5. User Interaction
6. Service Infrastructure
7. Remote Interoperability
14
universAAL platform - Javantura
22/02/2014
16. AAL Studio – Eclipse-based IDE for universAAL
16
universAAL platform - Javantura
22/02/2014
17. AAL Studio: Dashboard
Role
streamlines the process of developing universAAL applications, services and
components.
Benefits
helps developers get an overview of the process, and help guide them through it
ensures that developers have access to all the relevant components through a simple
interface
17
universAAL platform - Javantura
22/02/2014
19. Technology platform: OSGi
Implements a complete and dynamic component model
Components are not coupled to other components
Service oriented
Continuous operation – no need to restart the platform
Apache Felix
https://felix.apache.org/
Apache Karaf
http://karaf.apache.org/
19
universAAL platform - Javantura
22/02/2014
20. Benefits of Using the OSGi Service Platform
Components are smaller
Easier to make
Components are not coupled to other components
Gives reusability
Excellent model for the myriad of customizations and
variation that are required of today’s devices
Collaborative model
Allows reuse of other components for most problems
20
22. Maven - Automated Build Tool
Apache Maven: http://maven.apache.org/
Project Object Model (pom.xml)
Makes the build process easy and uniform
Simplifies dependency resolution.
You only have to declare the dependencies
• Maven will download them, setup the classpath for you, and even
deploy the dependencies with your application if required.
Maven manages not only the direct dependencies for you but even the dependencies of the dependecies (transitive
dependencies).
22
universAAL platform - Javantura
22/02/2014
25. Integration testing
Spring Dynamic Modules project provides a test class
hierarchy (based on
org.springframework.osgi.test.AbstractOsgiTests) that
provides support for writing regular JUnit test cases that are
then automatically executed in an OSGi environment
http://docs.spring.io/osgi/docs/1.2.1/reference/html/testing.html#tes
ting:integration
25
universAAL platform - Javantura
22/02/2014
29. OSGi run configurations
Pax Runner is a tool to provision OSGi bundles in all
major open source OSGi framework implementations
https://ops4j1.jira.com/wiki/display/paxrunner/Pax+Runn
er
simple composite model supports installing groups of
bundles as a single composite bundle
http://felix.apache.org/site/composite-bundles.html
Apache Karaf uses features:
simple, yet flexible, way to provision applications
http://karaf.apache.org/manual/latest-2.3.x/usersguide/provisioning.html
29
universAAL platform - Javantura
22/02/2014