SlideShare a Scribd company logo
1 of 22
Download to read offline
Think Large, Act Small: An Approach to Web
Services for Embedded Systems Based on
the OSGi Framework

   Roman Roelofsen         David Bosschaert      Volker Ahlers
         Prosyst               Progress        University of Applied
          Köln                  Dublin          Sciences and Arts,
        Germany                 Ireland        Hannover, Germany

    Arne Koschel                                 Irina Astrova
   University of Applied                      Institute of Cybernetics
    Sciences and Arts,                               Univ. Tallinn
   Hannover, Germany                                   Estonia
And now something different
                

     Let‘s get a bit technical
      Beware – Some code included
Agenda
    Background, Scenarios, Requirements

    Adding ESB / Web services based
     Distribution Capabilities to OSGi
         Challenges with embedded Web Services
         OSGi & Apache CXF
         Implementation details
         Adoption to smaller devices: Java VM choices

    Conclusion

                                                         3
Background

Project Setup
    Cross country research (Germany, Estonia) /
     Industry (Ireland, USA) cooperation including
     ‘on-site’ development in Ireland
    Software vendor (espec. middleware)
    Enhancements for IT services standards
     specification
     (including OSGi / Web services) ‘in mind’



                                                     4
Background

SOA, ESB, Web Services
    Service Oriented Architecture is a
     distributed system architecture concept

    Services with well described interface(s)

    Service / Messaging Backbone
          Often: Logical / Technical
           “Enterprise Service Bus (ESB)”

    Integration of components often based on
     productive systems

    Different communication paradigms
          Request-Response; Oneway; …

    Implementation possible with different
     technologies, e.g.
          CORBA, Web Services, Java EE, .Net, . . .
          Web Services w.WSDL, SOAP typical




                                                       5
Background

Embedded Systems
    Smaller memory footprint
    ‘Typical’ processors
         ARM: 32 Bit, low power consumption,
          typical for mobiles, PDAs
         some Power PC (e.g. PlayStation)
         some Intel X86
    ‘Passing by’ service providers typical
     if used ‘in movement’

                                                6
Scenarios

Why Embedded Web Services?
    Web services usually used in
     large distributed systems.

    Two example scenarios from
     in-car embedded devices
          Car tracking
          Advertising

    Attributes of both
          Inside car communication
           with ‘outside world’ servers,
           e.g. via UMTS network.
          Web services usage, thus
           dynamic service offerings
           will occur.

                                           7
Requirements

Requirements Driven by Scenarios
    R1: Exposing Information for External Consumers
         Car tracking service should
               be independent of a specific car manufacturer;
               respect existing standards like SOAP to enable third-party integration;
               expose the (same) information using different technologies at the same
                time (to broaden the number of perspective users)
               ease technical consumption of information, so no new proprietary
                protocols and semantics should be introduced.

    R2: Accessing External Information
         Advertising service
               needs to access external information using existing standards like
                SOAP (car tracking service exposes them);
               should abstract from underlying technologies to ease consumption of
                external information.



                                                                                      8
Requirements

Requirements Driven by Scenarios
    R3: Enable Simultaneous Use of Technologies
          Depending on the services offered to or by the in-car embedded device,
           different technologies will be used. However, the use of one technology
           should not prevent the in-car embedded device from using another
           technology. Since the technologies may evolve independently from each
           other, the in-car embedded device should be able to replace the
           technologies. On the other hand, different technologies may be used at the
           same time. However, a simultaneous use of technologies should not lead to
           an inconsistent environment.

    R4: Facilitate Loose Coupling between Services and Technologies
          The term loose coupling usually refers to the coupling between services and
           consumers, especially over a network. Here, the coupling between services
           and technologies is getting observed.
           Services may use different technologies at the same time. However, they
           may not know in advance, which of the technologies will be used.
           Therefore, a loose coupling between services and technologies is required.



                                                                                     9
Agenda
    Background, Scenarios, Requirements

    Adding ESB / Web services based
     Distribution Capabilities to OSGi
         Challenges with embedded Web Services
         OSGi & Apache CXF
         Implementation details
         Adoption to smaller devices: Java VM choices

    Conclusion

                                                         10
Implementation

Design Issues: Embedded Web Services
    Independent transport protocol
          Scenarios have highly independent parties, so multiple
           independent Web services transports are required (e.g., not
           only HTTP)
    Highly dynamic service offerings
          A full WS stack would help, but embedded devices might be
           too small wrt their resources
          Nonetheless: WS standard required

    Flexible, standardized technology combination useful
          Here: OSGi & ESB (Apache CXF) + ‘Java Embedding’


                                                                     11
Implementation

Used Technology: OSGi
    Standardized, small
     footprint ‘in memory
     SOA’ for Java
    OSGi core
         Bundles and
          services for
          modularization and
          encapsulation



                               12
Implementation

Used Technology: OSGi
    OSGi was selected for several reasons, including (but not limited to)
          its dynamic service capabilities – suitable for ‘in movement scenes’
                Bundles and service ‘come and go’ in different, independent versions at
                 runtime
                Local OSGi service registry (SR)
                Deployable on all kind of devices ‘from sensor nodes to mainframes’
                Bundle concept increases the isolation between different modules
          As long as the metatdata is properly defined, OSGi provides a
           notion of execution environments to select bundles/capabilities
           based on the current hardware or environment; thus, a fair bit of
           hardware independency
          Java based
          Java Community Process (JCP) standard

    Missing in OSGi at that time though
          distribution features

                                                                                      13
Implementation
Used Technology: Apache CXF
    Free, open source
    Small footprint, multiple protocol ESB
    Fits well to requirements
          Info exposure
                Read OSGi service registry for service properties
          External information access
                ESB abstracts from local / remote view
          Simultaneous use of technologies
                ESB abstracts transparently from multiple technologies
          Loose coupling between services and technologies
                Bundles use different configurations
                No knowledge about technologies required that process the specified properties
                 to create an endpoint.
                Scenarios have quite heterogeneous distributed environment where different
                 networks or services may need different technologies.
                CXF allows these independent parties to use the needed technologies while
                 participating in other networks or with other services provided that a common set
                 of technologies exists.


                                                                                                14
Implementation

Independent Bundles
    ‘CXF’ and ‘Web service’ are provided as
     2 independent OSGi bundles, thus
         CXF bundle can be installed after the
          Web service bundle and removed after a
          certain time.
         To enforce a loose coupling between the
          two but still enable the use of each other,
          the Whiteboard pattern was applied

                                                        15
Implementation

Whiteboard pattern
    Originally alternative to listener/observer pattern

    ‘Kind of’ internal advertisement service

    Frequently used for OSGi applications




                                                           16
Implementation

Configuration approaches
    3 options provided         ExampleService service = new ExampleServiceImpl();
                                Dictionary dict = new Hashtable();
                                dict.put (“expose.service”, true) ;
         Java properties       dict.put (“expose.interface”, ExampleService.class);
                                dict.put (“expose.url”, “http://localhost:8080/exampleService”);
                                      context.registerService (ExampleService.class.getName(),
                                      service, dict);

                                <?xml version=“1.0” encoding=”UTF−8”?>
                                <component name=“ExampleService”>
                                <implementation class=“com.example.ExampleServiceImpl”/>
                                    <property name=“expose.service”>true</property>
         Declarative Service       <property
          Spec. (DSS)               name=“expose.interface”>com.example.ExampleService
                                    </property>
                                    <property name=“expose.url”>http://localhost:8080/
                                    exampleService
                                    </property>
                                    <service>
         Spring-OSGi                        <provide interface=“com.example.ExampleService”/>
                                    </service>
          (not here)            </component>
         ...
                                                                                                   17
Implementation

Remote access design
    Req. from 2nd scenario:
     Remote Access

    Two options examined
         Creating a remote API.
         Creating a proxy (which
          we followed
          prototypically)




                                    18
Implementation

Remote access from OSGi




                          19
Implementation
Adopting CXF for embedded Java
Platforms                                           Adoption results

    Java Standard Edition Embedded (Java               Adoption easy for Java SEE and JamVM
     SEE).                                                    Java 5 code runs just fine
          Almost full Java 5 spec.                           JamVM required some class additions. A
          Only 30MB memory footprint compared to              few changes for java.io and java.xml
           60MB java SE                                        required.
          Several processors
                                                        Java ME CDC
    JamVM                                                    Java 1.4 based, but can run Java 5 byte
          Java 5 based also                                   code
          Compared to Java SEE: very small                   For new language constructs (annotations)
           footprint and runs on ARM processors.               we used the Harmony tool for byte code
                                                               weaving
                                                              Annotatiosn simulated using reflection
    Java Micro Edition (Java ME)                             Thus some CXF modifications required
          ARM processors, PowerPC and Intel x86
           processors.
          Java ME CDC is viable for low end
           devices with memory footprint starting
           from 2 MB.




                                                                                                     20
Conclusion & Outlook
    Core contributions
         Evaluation, if OSGi/CXF can meet the requirements of
          example scenarios.
         Adoption of OSGi/CXF to Java embedded platforms in order
          to meet the memory restrictions of embedded systems.

    Our properties based approach influenced the OSGi
     standard
         It was presented to OSGi expert group and in similar form
          later used by the distributed OSGi specification.

    Outlook: Current research work
         Asynchronous, distributed event-based messaging for OSGi

                                                                      21
Questions ?                  Questions !



Irina Astrova                      Arne Koschel

Tallinn University of Technology   University of Applied Sciences, Faculty IV,
Institute of Cybernetics,          Department for Computer Science
Tallinn, Estonia                   Hannover, Germany


irinaastrova@yahoo.com             akoschel@acm.org
                                   www.fakultaet4.fh-hannover.de
                                   http://www.koschel-edv.de/arne_koschel_publications
                                                                                         22

More Related Content

What's hot

Oracle tech fmw-03-cloud-computing-neum-15.04.2010
Oracle tech fmw-03-cloud-computing-neum-15.04.2010Oracle tech fmw-03-cloud-computing-neum-15.04.2010
Oracle tech fmw-03-cloud-computing-neum-15.04.2010Oracle BH
 
Resource Oriented Architecture in Wireless Sensor Network
Resource Oriented Architecture in Wireless Sensor NetworkResource Oriented Architecture in Wireless Sensor Network
Resource Oriented Architecture in Wireless Sensor NetworkThomas Pham
 
Sparton Corp WAN Analysis
Sparton Corp WAN AnalysisSparton Corp WAN Analysis
Sparton Corp WAN Analysistcollins3413
 
OpenFlow Beyond the Data Centre at IP Expo
OpenFlow Beyond the Data Centre at IP ExpoOpenFlow Beyond the Data Centre at IP Expo
OpenFlow Beyond the Data Centre at IP ExpoADVA
 
FC/FCoE - Topologies, Protocols, and Limitations ( EMC World 2012 )
FC/FCoE - Topologies, Protocols, and Limitations ( EMC World 2012 )FC/FCoE - Topologies, Protocols, and Limitations ( EMC World 2012 )
FC/FCoE - Topologies, Protocols, and Limitations ( EMC World 2012 )EMC
 
Oracle Public Cloud: Oracle Java Cloud Service, by Nino Guarnacci
Oracle Public Cloud: Oracle Java Cloud Service, by Nino GuarnacciOracle Public Cloud: Oracle Java Cloud Service, by Nino Guarnacci
Oracle Public Cloud: Oracle Java Cloud Service, by Nino GuarnacciCodemotion
 
OSGi For Java Infrastructures [5th IndicThreads Conference On Java 2010, Pune...
OSGi For Java Infrastructures [5th IndicThreads Conference On Java 2010, Pune...OSGi For Java Infrastructures [5th IndicThreads Conference On Java 2010, Pune...
OSGi For Java Infrastructures [5th IndicThreads Conference On Java 2010, Pune...IndicThreads
 
[OSDC.tw 2011] The Path to Pass into PaaS -- How We Build the Solution
[OSDC.tw 2011] The Path to Pass into PaaS -- How We Build the Solution[OSDC.tw 2011] The Path to Pass into PaaS -- How We Build the Solution
[OSDC.tw 2011] The Path to Pass into PaaS -- How We Build the SolutionJeff Hung
 
Switch to alfresco with wasaaiq [compatibility mode]
Switch to alfresco with wasaaiq [compatibility mode]Switch to alfresco with wasaaiq [compatibility mode]
Switch to alfresco with wasaaiq [compatibility mode]Alfresco Software
 
F co e_netapp_v12
F co e_netapp_v12F co e_netapp_v12
F co e_netapp_v12aj4953
 
OpenAjax Alliance: Driving Ajax Standards and Interoperability
OpenAjax Alliance: Driving Ajax Standards and InteroperabilityOpenAjax Alliance: Driving Ajax Standards and Interoperability
OpenAjax Alliance: Driving Ajax Standards and Interoperabilityelliando dias
 
The Top 10 Business Reasons for 10GbE iSCSI
The Top 10 Business Reasons for 10GbE iSCSIThe Top 10 Business Reasons for 10GbE iSCSI
The Top 10 Business Reasons for 10GbE iSCSIEmulex Corporation
 
Key Factors To Consider When Selecting Your Mpls Provider
Key Factors To Consider When Selecting Your Mpls ProviderKey Factors To Consider When Selecting Your Mpls Provider
Key Factors To Consider When Selecting Your Mpls ProviderTony Palazzolo
 
Access security on cloud computing implemented in hadoop system
Access security on cloud computing implemented in hadoop systemAccess security on cloud computing implemented in hadoop system
Access security on cloud computing implemented in hadoop systemJoão Gabriel Lima
 
StratusLab: A IaaS Cloud Distribution Focusing on Simplicity
StratusLab: A IaaS Cloud Distribution Focusing on SimplicityStratusLab: A IaaS Cloud Distribution Focusing on Simplicity
StratusLab: A IaaS Cloud Distribution Focusing on Simplicitystratuslab
 
Unlock the Cloud: Building a Vendor Independent Private Cloud
Unlock the Cloud: Building a Vendor Independent Private CloudUnlock the Cloud: Building a Vendor Independent Private Cloud
Unlock the Cloud: Building a Vendor Independent Private CloudAbiquo, Inc.
 
Food and Beverage Automation with InduSoft Web Studio
Food and Beverage Automation with InduSoft Web StudioFood and Beverage Automation with InduSoft Web Studio
Food and Beverage Automation with InduSoft Web StudioAVEVA
 

What's hot (20)

Oracle tech fmw-03-cloud-computing-neum-15.04.2010
Oracle tech fmw-03-cloud-computing-neum-15.04.2010Oracle tech fmw-03-cloud-computing-neum-15.04.2010
Oracle tech fmw-03-cloud-computing-neum-15.04.2010
 
Resource Oriented Architecture in Wireless Sensor Network
Resource Oriented Architecture in Wireless Sensor NetworkResource Oriented Architecture in Wireless Sensor Network
Resource Oriented Architecture in Wireless Sensor Network
 
Enomaly
EnomalyEnomaly
Enomaly
 
An Introduction to IaaS Framework
An Introduction to IaaS FrameworkAn Introduction to IaaS Framework
An Introduction to IaaS Framework
 
Sparton Corp WAN Analysis
Sparton Corp WAN AnalysisSparton Corp WAN Analysis
Sparton Corp WAN Analysis
 
OpenFlow Beyond the Data Centre at IP Expo
OpenFlow Beyond the Data Centre at IP ExpoOpenFlow Beyond the Data Centre at IP Expo
OpenFlow Beyond the Data Centre at IP Expo
 
FC/FCoE - Topologies, Protocols, and Limitations ( EMC World 2012 )
FC/FCoE - Topologies, Protocols, and Limitations ( EMC World 2012 )FC/FCoE - Topologies, Protocols, and Limitations ( EMC World 2012 )
FC/FCoE - Topologies, Protocols, and Limitations ( EMC World 2012 )
 
Oracle Public Cloud: Oracle Java Cloud Service, by Nino Guarnacci
Oracle Public Cloud: Oracle Java Cloud Service, by Nino GuarnacciOracle Public Cloud: Oracle Java Cloud Service, by Nino Guarnacci
Oracle Public Cloud: Oracle Java Cloud Service, by Nino Guarnacci
 
OSGi For Java Infrastructures [5th IndicThreads Conference On Java 2010, Pune...
OSGi For Java Infrastructures [5th IndicThreads Conference On Java 2010, Pune...OSGi For Java Infrastructures [5th IndicThreads Conference On Java 2010, Pune...
OSGi For Java Infrastructures [5th IndicThreads Conference On Java 2010, Pune...
 
[OSDC.tw 2011] The Path to Pass into PaaS -- How We Build the Solution
[OSDC.tw 2011] The Path to Pass into PaaS -- How We Build the Solution[OSDC.tw 2011] The Path to Pass into PaaS -- How We Build the Solution
[OSDC.tw 2011] The Path to Pass into PaaS -- How We Build the Solution
 
Switch to alfresco with wasaaiq [compatibility mode]
Switch to alfresco with wasaaiq [compatibility mode]Switch to alfresco with wasaaiq [compatibility mode]
Switch to alfresco with wasaaiq [compatibility mode]
 
F co e_netapp_v12
F co e_netapp_v12F co e_netapp_v12
F co e_netapp_v12
 
OpenAjax Alliance: Driving Ajax Standards and Interoperability
OpenAjax Alliance: Driving Ajax Standards and InteroperabilityOpenAjax Alliance: Driving Ajax Standards and Interoperability
OpenAjax Alliance: Driving Ajax Standards and Interoperability
 
The Top 10 Business Reasons for 10GbE iSCSI
The Top 10 Business Reasons for 10GbE iSCSIThe Top 10 Business Reasons for 10GbE iSCSI
The Top 10 Business Reasons for 10GbE iSCSI
 
The Great IT Migration
The Great IT MigrationThe Great IT Migration
The Great IT Migration
 
Key Factors To Consider When Selecting Your Mpls Provider
Key Factors To Consider When Selecting Your Mpls ProviderKey Factors To Consider When Selecting Your Mpls Provider
Key Factors To Consider When Selecting Your Mpls Provider
 
Access security on cloud computing implemented in hadoop system
Access security on cloud computing implemented in hadoop systemAccess security on cloud computing implemented in hadoop system
Access security on cloud computing implemented in hadoop system
 
StratusLab: A IaaS Cloud Distribution Focusing on Simplicity
StratusLab: A IaaS Cloud Distribution Focusing on SimplicityStratusLab: A IaaS Cloud Distribution Focusing on Simplicity
StratusLab: A IaaS Cloud Distribution Focusing on Simplicity
 
Unlock the Cloud: Building a Vendor Independent Private Cloud
Unlock the Cloud: Building a Vendor Independent Private CloudUnlock the Cloud: Building a Vendor Independent Private Cloud
Unlock the Cloud: Building a Vendor Independent Private Cloud
 
Food and Beverage Automation with InduSoft Web Studio
Food and Beverage Automation with InduSoft Web StudioFood and Beverage Automation with InduSoft Web Studio
Food and Beverage Automation with InduSoft Web Studio
 

Similar to Vii 2 Z Final Slides Os Gi Iess 2010

Net core microservice development made easy with azure dev spaces
Net core microservice development made easy with azure dev spacesNet core microservice development made easy with azure dev spaces
Net core microservice development made easy with azure dev spacesAlon Fliess
 
Rapid cloudapplicationdevelopmentwithlimeds
Rapid cloudapplicationdevelopmentwithlimedsRapid cloudapplicationdevelopmentwithlimeds
Rapid cloudapplicationdevelopmentwithlimedsPhilippe Thiran
 
StratusLab: Darn Simple Cloud
StratusLab: Darn Simple CloudStratusLab: Darn Simple Cloud
StratusLab: Darn Simple Cloudstratuslab
 
Charlton Barreto - The OGF | Open Cloud Computing Interface
Charlton Barreto - The OGF | Open Cloud Computing InterfaceCharlton Barreto - The OGF | Open Cloud Computing Interface
Charlton Barreto - The OGF | Open Cloud Computing InterfaceCloudCamp Hamburg
 
CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018Krishna-Kumar
 
Open network operating system (onos)
Open network operating system (onos)Open network operating system (onos)
Open network operating system (onos)Ameer Sameer
 
StratusLab at FOSDEM'13
StratusLab at FOSDEM'13StratusLab at FOSDEM'13
StratusLab at FOSDEM'13stratuslab
 
All the amazing features of asp.net core
All the amazing features of asp.net coreAll the amazing features of asp.net core
All the amazing features of asp.net coreGrayCell Technologies
 
Introduction to CORD project
Introduction to CORD projectIntroduction to CORD project
Introduction to CORD projectsangyun han
 
The Future of Networks is Open...Source
The Future of Networks is Open...SourceThe Future of Networks is Open...Source
The Future of Networks is Open...SourceFrancois Duthilleul
 
Do You Need A Service Mesh?
Do You Need A Service Mesh?Do You Need A Service Mesh?
Do You Need A Service Mesh?NGINX, Inc.
 
Building enterprise depth APIs with the IBM hybrid integration portfolio
Building enterprise depth APIs with the IBM hybrid integration portfolioBuilding enterprise depth APIs with the IBM hybrid integration portfolio
Building enterprise depth APIs with the IBM hybrid integration portfolioKim Clark
 
Introduction to the WSO2 Identity Server &Contributing to an OS Project
Introduction to the WSO2 Identity Server &Contributing to an OS ProjectIntroduction to the WSO2 Identity Server &Contributing to an OS Project
Introduction to the WSO2 Identity Server &Contributing to an OS ProjectMichael J Geiser
 
Open Stack Cloud Services
Open Stack Cloud ServicesOpen Stack Cloud Services
Open Stack Cloud ServicesSaurabh Gupta
 
A Component-Based Approach For Service Distribution In Sensor Networks
A Component-Based Approach For Service Distribution In Sensor NetworksA Component-Based Approach For Service Distribution In Sensor Networks
A Component-Based Approach For Service Distribution In Sensor NetworksKim Daniels
 
Win net presentacion [2005]
Win net presentacion [2005]Win net presentacion [2005]
Win net presentacion [2005]Raul Soto
 

Similar to Vii 2 Z Final Slides Os Gi Iess 2010 (20)

Net core microservice development made easy with azure dev spaces
Net core microservice development made easy with azure dev spacesNet core microservice development made easy with azure dev spaces
Net core microservice development made easy with azure dev spaces
 
Rapid cloudapplicationdevelopmentwithlimeds
Rapid cloudapplicationdevelopmentwithlimedsRapid cloudapplicationdevelopmentwithlimeds
Rapid cloudapplicationdevelopmentwithlimeds
 
StratusLab: Darn Simple Cloud
StratusLab: Darn Simple CloudStratusLab: Darn Simple Cloud
StratusLab: Darn Simple Cloud
 
Charlton Barreto - The OGF | Open Cloud Computing Interface
Charlton Barreto - The OGF | Open Cloud Computing InterfaceCharlton Barreto - The OGF | Open Cloud Computing Interface
Charlton Barreto - The OGF | Open Cloud Computing Interface
 
CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018
 
Open network operating system (onos)
Open network operating system (onos)Open network operating system (onos)
Open network operating system (onos)
 
StratusLab at FOSDEM'13
StratusLab at FOSDEM'13StratusLab at FOSDEM'13
StratusLab at FOSDEM'13
 
All the amazing features of asp.net core
All the amazing features of asp.net coreAll the amazing features of asp.net core
All the amazing features of asp.net core
 
Middleware Technologies ppt
Middleware Technologies pptMiddleware Technologies ppt
Middleware Technologies ppt
 
Introduction to CORD project
Introduction to CORD projectIntroduction to CORD project
Introduction to CORD project
 
Introduction to Cloud Computing
Introduction to Cloud ComputingIntroduction to Cloud Computing
Introduction to Cloud Computing
 
soap toolkit
soap toolkitsoap toolkit
soap toolkit
 
The Future of Networks is Open...Source
The Future of Networks is Open...SourceThe Future of Networks is Open...Source
The Future of Networks is Open...Source
 
Do You Need A Service Mesh?
Do You Need A Service Mesh?Do You Need A Service Mesh?
Do You Need A Service Mesh?
 
Building enterprise depth APIs with the IBM hybrid integration portfolio
Building enterprise depth APIs with the IBM hybrid integration portfolioBuilding enterprise depth APIs with the IBM hybrid integration portfolio
Building enterprise depth APIs with the IBM hybrid integration portfolio
 
Introduction to the WSO2 Identity Server &Contributing to an OS Project
Introduction to the WSO2 Identity Server &Contributing to an OS ProjectIntroduction to the WSO2 Identity Server &Contributing to an OS Project
Introduction to the WSO2 Identity Server &Contributing to an OS Project
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Open Stack Cloud Services
Open Stack Cloud ServicesOpen Stack Cloud Services
Open Stack Cloud Services
 
A Component-Based Approach For Service Distribution In Sensor Networks
A Component-Based Approach For Service Distribution In Sensor NetworksA Component-Based Approach For Service Distribution In Sensor Networks
A Component-Based Approach For Service Distribution In Sensor Networks
 
Win net presentacion [2005]
Win net presentacion [2005]Win net presentacion [2005]
Win net presentacion [2005]
 

More from IESS

Iess11 closing session
Iess11 closing sessionIess11 closing session
Iess11 closing sessionIESS
 
Comparison of research based vs industry developed pss models
Comparison of research based vs industry developed pss modelsComparison of research based vs industry developed pss models
Comparison of research based vs industry developed pss modelsIESS
 
Towards an ontological foundation of service dominant logic
Towards an ontological foundation of service dominant logicTowards an ontological foundation of service dominant logic
Towards an ontological foundation of service dominant logicIESS
 
Designing a dynamic competency framework for the service system innovation ar...
Designing a dynamic competency framework for the service system innovation ar...Designing a dynamic competency framework for the service system innovation ar...
Designing a dynamic competency framework for the service system innovation ar...IESS
 
Strategy based service business development for sm es
Strategy based service business development for sm esStrategy based service business development for sm es
Strategy based service business development for sm esIESS
 
Business process flexibility in service composition
Business process flexibility in service compositionBusiness process flexibility in service composition
Business process flexibility in service compositionIESS
 
Service systems and value modeling from an appreciative system perspective
Service systems and value modeling from an appreciative system perspectiveService systems and value modeling from an appreciative system perspective
Service systems and value modeling from an appreciative system perspectiveIESS
 
Service science filling the gap between knowledge and needs
Service science  filling the gap between knowledge and needsService science  filling the gap between knowledge and needs
Service science filling the gap between knowledge and needsIESS
 
The paradox of service industrialization
The paradox of service industrializationThe paradox of service industrialization
The paradox of service industrializationIESS
 
Implementing a request fulfillment process
Implementing a request fulfillment processImplementing a request fulfillment process
Implementing a request fulfillment processIESS
 
Sustainable service innovation
Sustainable service innovationSustainable service innovation
Sustainable service innovationIESS
 
Mining customer loyalty card programs
Mining customer loyalty card programsMining customer loyalty card programs
Mining customer loyalty card programsIESS
 
A model based method for the design of services in collaborative business env...
A model based method for the design of services in collaborative business env...A model based method for the design of services in collaborative business env...
A model based method for the design of services in collaborative business env...IESS
 
Profile based security assurance for service
Profile based security assurance for serviceProfile based security assurance for service
Profile based security assurance for serviceIESS
 
An approach to extract the business value from soa services
An approach to extract the business value from soa servicesAn approach to extract the business value from soa services
An approach to extract the business value from soa servicesIESS
 
Impact analysis of process improvement on it service quality
Impact analysis of process improvement on it service qualityImpact analysis of process improvement on it service quality
Impact analysis of process improvement on it service qualityIESS
 
Seffah iess11 keynote the human side of service science
Seffah iess11 keynote   the human side of service scienceSeffah iess11 keynote   the human side of service science
Seffah iess11 keynote the human side of service scienceIESS
 
On viable service systems
On viable service systemsOn viable service systems
On viable service systemsIESS
 
Spider maps for location based services improvement
Spider maps for location based services improvementSpider maps for location based services improvement
Spider maps for location based services improvementIESS
 
IESS 1.1 intro
IESS 1.1 introIESS 1.1 intro
IESS 1.1 introIESS
 

More from IESS (20)

Iess11 closing session
Iess11 closing sessionIess11 closing session
Iess11 closing session
 
Comparison of research based vs industry developed pss models
Comparison of research based vs industry developed pss modelsComparison of research based vs industry developed pss models
Comparison of research based vs industry developed pss models
 
Towards an ontological foundation of service dominant logic
Towards an ontological foundation of service dominant logicTowards an ontological foundation of service dominant logic
Towards an ontological foundation of service dominant logic
 
Designing a dynamic competency framework for the service system innovation ar...
Designing a dynamic competency framework for the service system innovation ar...Designing a dynamic competency framework for the service system innovation ar...
Designing a dynamic competency framework for the service system innovation ar...
 
Strategy based service business development for sm es
Strategy based service business development for sm esStrategy based service business development for sm es
Strategy based service business development for sm es
 
Business process flexibility in service composition
Business process flexibility in service compositionBusiness process flexibility in service composition
Business process flexibility in service composition
 
Service systems and value modeling from an appreciative system perspective
Service systems and value modeling from an appreciative system perspectiveService systems and value modeling from an appreciative system perspective
Service systems and value modeling from an appreciative system perspective
 
Service science filling the gap between knowledge and needs
Service science  filling the gap between knowledge and needsService science  filling the gap between knowledge and needs
Service science filling the gap between knowledge and needs
 
The paradox of service industrialization
The paradox of service industrializationThe paradox of service industrialization
The paradox of service industrialization
 
Implementing a request fulfillment process
Implementing a request fulfillment processImplementing a request fulfillment process
Implementing a request fulfillment process
 
Sustainable service innovation
Sustainable service innovationSustainable service innovation
Sustainable service innovation
 
Mining customer loyalty card programs
Mining customer loyalty card programsMining customer loyalty card programs
Mining customer loyalty card programs
 
A model based method for the design of services in collaborative business env...
A model based method for the design of services in collaborative business env...A model based method for the design of services in collaborative business env...
A model based method for the design of services in collaborative business env...
 
Profile based security assurance for service
Profile based security assurance for serviceProfile based security assurance for service
Profile based security assurance for service
 
An approach to extract the business value from soa services
An approach to extract the business value from soa servicesAn approach to extract the business value from soa services
An approach to extract the business value from soa services
 
Impact analysis of process improvement on it service quality
Impact analysis of process improvement on it service qualityImpact analysis of process improvement on it service quality
Impact analysis of process improvement on it service quality
 
Seffah iess11 keynote the human side of service science
Seffah iess11 keynote   the human side of service scienceSeffah iess11 keynote   the human side of service science
Seffah iess11 keynote the human side of service science
 
On viable service systems
On viable service systemsOn viable service systems
On viable service systems
 
Spider maps for location based services improvement
Spider maps for location based services improvementSpider maps for location based services improvement
Spider maps for location based services improvement
 
IESS 1.1 intro
IESS 1.1 introIESS 1.1 intro
IESS 1.1 intro
 

Recently uploaded

21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptx21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptxJoelynRubio1
 
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxOn_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxPooja Bhuva
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...Nguyen Thanh Tu Collection
 
Tatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf artsTatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf artsNbelano25
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and ModificationsMJDuyan
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfNirmal Dwivedi
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...Nguyen Thanh Tu Collection
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibitjbellavia9
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Pooja Bhuva
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfSherif Taha
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structuredhanjurrannsibayan2
 
OSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsOSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsSandeep D Chaudhary
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...Amil baba
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxJisc
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jisc
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxDenish Jangid
 
Basic Intentional Injuries Health Education
Basic Intentional Injuries Health EducationBasic Intentional Injuries Health Education
Basic Intentional Injuries Health EducationNeilDeclaro1
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...pradhanghanshyam7136
 

Recently uploaded (20)

21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptx21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptx
 
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptxOn_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
On_Translating_a_Tamil_Poem_by_A_K_Ramanujan.pptx
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
 
Tatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf artsTatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf arts
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
OSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsOSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & Systems
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptx
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Basic Intentional Injuries Health Education
Basic Intentional Injuries Health EducationBasic Intentional Injuries Health Education
Basic Intentional Injuries Health Education
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 

Vii 2 Z Final Slides Os Gi Iess 2010

  • 1. Think Large, Act Small: An Approach to Web Services for Embedded Systems Based on the OSGi Framework Roman Roelofsen David Bosschaert Volker Ahlers Prosyst Progress University of Applied Köln Dublin Sciences and Arts, Germany Ireland Hannover, Germany Arne Koschel Irina Astrova University of Applied Institute of Cybernetics Sciences and Arts, Univ. Tallinn Hannover, Germany Estonia
  • 2. And now something different  Let‘s get a bit technical Beware – Some code included
  • 3. Agenda   Background, Scenarios, Requirements   Adding ESB / Web services based Distribution Capabilities to OSGi   Challenges with embedded Web Services   OSGi & Apache CXF   Implementation details   Adoption to smaller devices: Java VM choices   Conclusion 3
  • 4. Background Project Setup   Cross country research (Germany, Estonia) / Industry (Ireland, USA) cooperation including ‘on-site’ development in Ireland   Software vendor (espec. middleware)   Enhancements for IT services standards specification (including OSGi / Web services) ‘in mind’ 4
  • 5. Background SOA, ESB, Web Services   Service Oriented Architecture is a distributed system architecture concept   Services with well described interface(s)   Service / Messaging Backbone   Often: Logical / Technical “Enterprise Service Bus (ESB)”   Integration of components often based on productive systems   Different communication paradigms   Request-Response; Oneway; …   Implementation possible with different technologies, e.g.   CORBA, Web Services, Java EE, .Net, . . .   Web Services w.WSDL, SOAP typical 5
  • 6. Background Embedded Systems   Smaller memory footprint   ‘Typical’ processors   ARM: 32 Bit, low power consumption, typical for mobiles, PDAs   some Power PC (e.g. PlayStation)   some Intel X86   ‘Passing by’ service providers typical if used ‘in movement’ 6
  • 7. Scenarios Why Embedded Web Services?   Web services usually used in large distributed systems.   Two example scenarios from in-car embedded devices   Car tracking   Advertising   Attributes of both   Inside car communication with ‘outside world’ servers, e.g. via UMTS network.   Web services usage, thus dynamic service offerings will occur. 7
  • 8. Requirements Requirements Driven by Scenarios   R1: Exposing Information for External Consumers   Car tracking service should   be independent of a specific car manufacturer;   respect existing standards like SOAP to enable third-party integration;   expose the (same) information using different technologies at the same time (to broaden the number of perspective users)   ease technical consumption of information, so no new proprietary protocols and semantics should be introduced.   R2: Accessing External Information   Advertising service   needs to access external information using existing standards like SOAP (car tracking service exposes them);   should abstract from underlying technologies to ease consumption of external information. 8
  • 9. Requirements Requirements Driven by Scenarios   R3: Enable Simultaneous Use of Technologies   Depending on the services offered to or by the in-car embedded device, different technologies will be used. However, the use of one technology should not prevent the in-car embedded device from using another technology. Since the technologies may evolve independently from each other, the in-car embedded device should be able to replace the technologies. On the other hand, different technologies may be used at the same time. However, a simultaneous use of technologies should not lead to an inconsistent environment.   R4: Facilitate Loose Coupling between Services and Technologies   The term loose coupling usually refers to the coupling between services and consumers, especially over a network. Here, the coupling between services and technologies is getting observed. Services may use different technologies at the same time. However, they may not know in advance, which of the technologies will be used. Therefore, a loose coupling between services and technologies is required. 9
  • 10. Agenda   Background, Scenarios, Requirements   Adding ESB / Web services based Distribution Capabilities to OSGi   Challenges with embedded Web Services   OSGi & Apache CXF   Implementation details   Adoption to smaller devices: Java VM choices   Conclusion 10
  • 11. Implementation Design Issues: Embedded Web Services   Independent transport protocol   Scenarios have highly independent parties, so multiple independent Web services transports are required (e.g., not only HTTP)   Highly dynamic service offerings   A full WS stack would help, but embedded devices might be too small wrt their resources   Nonetheless: WS standard required   Flexible, standardized technology combination useful Here: OSGi & ESB (Apache CXF) + ‘Java Embedding’ 11
  • 12. Implementation Used Technology: OSGi   Standardized, small footprint ‘in memory SOA’ for Java   OSGi core   Bundles and services for modularization and encapsulation 12
  • 13. Implementation Used Technology: OSGi   OSGi was selected for several reasons, including (but not limited to)   its dynamic service capabilities – suitable for ‘in movement scenes’   Bundles and service ‘come and go’ in different, independent versions at runtime   Local OSGi service registry (SR)   Deployable on all kind of devices ‘from sensor nodes to mainframes’   Bundle concept increases the isolation between different modules   As long as the metatdata is properly defined, OSGi provides a notion of execution environments to select bundles/capabilities based on the current hardware or environment; thus, a fair bit of hardware independency   Java based   Java Community Process (JCP) standard   Missing in OSGi at that time though   distribution features 13
  • 14. Implementation Used Technology: Apache CXF   Free, open source   Small footprint, multiple protocol ESB   Fits well to requirements   Info exposure   Read OSGi service registry for service properties   External information access   ESB abstracts from local / remote view   Simultaneous use of technologies   ESB abstracts transparently from multiple technologies   Loose coupling between services and technologies   Bundles use different configurations   No knowledge about technologies required that process the specified properties to create an endpoint.   Scenarios have quite heterogeneous distributed environment where different networks or services may need different technologies.   CXF allows these independent parties to use the needed technologies while participating in other networks or with other services provided that a common set of technologies exists. 14
  • 15. Implementation Independent Bundles   ‘CXF’ and ‘Web service’ are provided as 2 independent OSGi bundles, thus   CXF bundle can be installed after the Web service bundle and removed after a certain time.   To enforce a loose coupling between the two but still enable the use of each other, the Whiteboard pattern was applied 15
  • 16. Implementation Whiteboard pattern   Originally alternative to listener/observer pattern   ‘Kind of’ internal advertisement service   Frequently used for OSGi applications 16
  • 17. Implementation Configuration approaches   3 options provided ExampleService service = new ExampleServiceImpl(); Dictionary dict = new Hashtable(); dict.put (“expose.service”, true) ;   Java properties dict.put (“expose.interface”, ExampleService.class); dict.put (“expose.url”, “http://localhost:8080/exampleService”); context.registerService (ExampleService.class.getName(), service, dict); <?xml version=“1.0” encoding=”UTF−8”?> <component name=“ExampleService”> <implementation class=“com.example.ExampleServiceImpl”/> <property name=“expose.service”>true</property>   Declarative Service <property Spec. (DSS) name=“expose.interface”>com.example.ExampleService </property> <property name=“expose.url”>http://localhost:8080/ exampleService </property> <service>   Spring-OSGi <provide interface=“com.example.ExampleService”/> </service> (not here) </component>   ... 17
  • 18. Implementation Remote access design   Req. from 2nd scenario: Remote Access   Two options examined   Creating a remote API.   Creating a proxy (which we followed prototypically) 18
  • 20. Implementation Adopting CXF for embedded Java Platforms Adoption results   Java Standard Edition Embedded (Java   Adoption easy for Java SEE and JamVM SEE).   Java 5 code runs just fine   Almost full Java 5 spec.   JamVM required some class additions. A   Only 30MB memory footprint compared to few changes for java.io and java.xml 60MB java SE required.   Several processors   Java ME CDC   JamVM   Java 1.4 based, but can run Java 5 byte   Java 5 based also code   Compared to Java SEE: very small   For new language constructs (annotations) footprint and runs on ARM processors. we used the Harmony tool for byte code weaving   Annotatiosn simulated using reflection   Java Micro Edition (Java ME)   Thus some CXF modifications required   ARM processors, PowerPC and Intel x86 processors.   Java ME CDC is viable for low end devices with memory footprint starting from 2 MB. 20
  • 21. Conclusion & Outlook   Core contributions   Evaluation, if OSGi/CXF can meet the requirements of example scenarios.   Adoption of OSGi/CXF to Java embedded platforms in order to meet the memory restrictions of embedded systems.   Our properties based approach influenced the OSGi standard   It was presented to OSGi expert group and in similar form later used by the distributed OSGi specification.   Outlook: Current research work   Asynchronous, distributed event-based messaging for OSGi 21
  • 22. Questions ? Questions ! Irina Astrova Arne Koschel Tallinn University of Technology University of Applied Sciences, Faculty IV, Institute of Cybernetics, Department for Computer Science Tallinn, Estonia Hannover, Germany irinaastrova@yahoo.com akoschel@acm.org www.fakultaet4.fh-hannover.de http://www.koschel-edv.de/arne_koschel_publications 22