javantura zagreb 2014 - universaal - andrej grgurić
Upload: hujak-hrvatska-udruga-java-korisnika-croatian-java-user-association
Post on 14-Jul-2015
1.022 views
TRANSCRIPT
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
Ambient Assisted Living
eHealth Human
Computer Interaction
Artificial Intelligence
Wireless Sensor
Networks
Internet of Things
Robotics
Smart environments
Context aware computing
Social Web of Things
universAAL platform - Javantura 22/02/2014 4
Carrying out support activities promoting widespread acceptance and adoption of the platform
• Association – support and coordinate AAL R&D as part of an open community of stakeholders
– 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
AALOA can host a project for you!
http://evaal.aaloa.org
Ma
nife
sto
Asso
cia
tio
n
Co
mp
etitio
n
Community support: http://www.aaloa.org
universAAL platform - Javantura 22/02/2014 7
universAAL platform
Online Shop
Developer Site Assisted Person
AAL Application Developer
AAL Service
Provider
AAL Service
AAL Application
Application Platform
Development Tools
AAL Application
universAAL platform - Javantura 22/02/2014 11
universAAL platform: Runtime Support
universAAL universAAL universAAL universAAL universAAL
Applications
Applications run as if all of them are in one device
22/02/2014 universAAL platform - Javantura 12
Runtime platform: Building blocks
22/02/2014 universAAL platform - Javantura 13
Applications
AAL Space Managers
AAL Node Middleware
Container
Discovery & Peering Data
Representation
Communication
Context Management
LDDI Service Management
Profiling UI
Management AAL Space Gateway
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
22/02/2014 universAAL platform - Javantura 14
Developer Depot
Entry-point for developers
Hosts required development resources for universAAL
http://depot.universaal.org/
universAAL platform - Javantura 22/02/2014 15
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
universAAL platform - Javantura 17 22/02/2014
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 22/02/2014 universAAL platform - Javantura
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
Projects in gforge (SVN, wikis, forums, issue trackers)
universAAL platform - Javantura 22/02/2014 21
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 22/02/2014 universAAL platform - Javantura
Continuous Integration: Hudson
Hudson – extensible continuous integration server
24
Trigger Hudson Job
Hudson Server
22/02/2014 universAAL platform - Javantura
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 22/02/2014 universAAL platform - Javantura
Resources
• universAAL
• Homepage: www.universaal.org
• Development depot: http://depot.universaal.org/
• Tools
• Hudson (http://hudson-ci.org/)
• Nexus (http://nexus.sonatype.org/)
• Maven (http://maven.apache.org/)
• SVN (http://subversion.tigris.org/)
22/02/2014 universAAL platform - Javantura 27
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/users-guide/provisioning.html
29 22/02/2014 universAAL platform - Javantura