Getting started with OSGiusing a 3D OSGi Robot sample applicationChristian Baranowski, SEITENBAU GmbHJochen Hiller, Deutsc...
What is an OSGi Code Camp?Experience from the first Camp  Page 4   OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
#1 Agile Design• Components• Interaction• “Post-it”-Design   Page 6   OSGi Alliance Community Event 2011© 2008-2011. All R...
#2 Pair Programming• Pair programming• OSGi beginners/  experts  Page 7   OSGi Alliance Community Event 2011© 2008-2011. A...
#3 Communication• Ad-hoc design of  component interaction• Interfaces agreed  between pairs• All developers in 1 room!• Lo...
#4 Test Driven Development• Focus on OSGi concepts• Too much time for  infrastructure setup• No time for testing!   Page 9...
#5 Continuous Delivery• Build server  available• No one did care• Late integration   Page 10   OSGi Alliance Community Eve...
Summary and Lessons Learnedfrom the first CampWe need…• Development VM• Cool application• List of OSGi  concepts to be  im...
Live Demo Mars RobotHow to teach OSGi by Example  Page 12   OSGi Alliance Community Event 2011© 2008-2011. All Rights Rese...
Bundle Context APIand Lifecycle• Simple provisioning   Page 13   OSGi Alliance Community Event 2011© 2008-2011. All Rights...
Separate Interface (Service API)and Implementation Bundle• Mars robot API and world implementation bundle   Page 14   OSGi...
Whiteboard Pattern• Simulator desktop bundle adding internal frames   Page 15   OSGi Alliance Community Event 2011© 2008-2...
Extender Patternand Bundle Tracker• Adding static objects to mars world   Page 16   OSGi Alliance Community Event 2011© 20...
Configuration Admin andMetatype Service• Creating wall and robot instances   Page 17   OSGi Alliance Community Event 2011©...
Event Admin Service• Integration sensor data view and world (event bus)   Page 18   OSGi Alliance Community Event 2011© 20...
Extending the OSGi Console(OSGi RFC 147 Draft)• Robot commands to move and rotate the robot• Shows how to use OSGi service...
OSGi ConceptsShould be added during the next camp•   Simulator by using the Event Admin Service•   Robot web control conso...
Conclusion•   Mars Robot is a cool application•   OSGi concepts can be demonstrated very easily•   Robot domain nice for r...
OSGi Code Camp Berlin• about  20 participants• VirtualBox VM• Felix, bndtools• Hosted at Telekom  Laboratories   Page 22  ...
Discusssion and Q&A  Page 23   OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
References•   Simbad 3D Robot Simulator    http://simbad.sourceforge.net/•   Richard S. Hall et. al.    OSGi in Action - C...
Upcoming SlideShare
Loading in...5
×

Getting started with OSGi using a 3D OSGi Robot sample application - Christian Baranowski + Jochen Hiller

2,202

Published on

OSGi requires additional expertise from Java developers. During the first OSGi Code Camp (OCC) [1] organized by OSGi Users’ Forum Germany [2], we tried to bring OSGi beginners and experts together, to learn the core concepts and ideas behind OSGi. There will be a 2nd OSGi Code Camp held on 1st of October in Berlin extending the idea of a software craftsmanship training for OSGi beginners and experts. The first part of the talk describes the agile method we used to teach OSGi core concepts by developing an OSGi demo application in pair-programming mode. In the second part of the talk we will explain how we intend to advance the code camp approach by providing a running example - a Robot running on OSGi [3]. The core OSGi concepts will be demonstrated and teached through extensions to the prepared sample application, developed by the Code Camp participants. The extensions are developed in pairs with one OSGi expert and a beginner. The final part of the talk shows the running interactive 3D robot demo application, and explains which OSGi concepts we think should be added during the next code camp. [1] http://germany.osgiusers.org/Main/SummerOCC2010 |2] http://germany.osgiusers.org [3] http://code.google.com/a/eclipselabs.org/p/occ2010/

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,202
On Slideshare
0
From Embeds
0
Number of Embeds
18
Actions
Shares
0
Downloads
72
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Getting started with OSGi using a 3D OSGi Robot sample application - Christian Baranowski + Jochen Hiller

  1. 1. Getting started with OSGiusing a 3D OSGi Robot sample applicationChristian Baranowski, SEITENBAU GmbHJochen Hiller, Deutsche Telekom AG, Products & InnovationSeptember 20th 2011 Page 1COPYRIGHT © 2008-2011 OSGi Alliance. All Rights Reserved
  2. 2. What is an OSGi Code Camp?Experience from the first Camp Page 4 OSGi Alliance Marketing © 2008-2011 . All Rights Reserved
  3. 3. #1 Agile Design• Components• Interaction• “Post-it”-Design Page 6 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  4. 4. #2 Pair Programming• Pair programming• OSGi beginners/ experts Page 7 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  5. 5. #3 Communication• Ad-hoc design of component interaction• Interfaces agreed between pairs• All developers in 1 room!• Loud! Page 8 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  6. 6. #4 Test Driven Development• Focus on OSGi concepts• Too much time for infrastructure setup• No time for testing! Page 9 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  7. 7. #5 Continuous Delivery• Build server available• No one did care• Late integration Page 10 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  8. 8. Summary and Lessons Learnedfrom the first CampWe need…• Development VM• Cool application• List of OSGi concepts to be implemented Page 11 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  9. 9. Live Demo Mars RobotHow to teach OSGi by Example Page 12 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  10. 10. Bundle Context APIand Lifecycle• Simple provisioning Page 13 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  11. 11. Separate Interface (Service API)and Implementation Bundle• Mars robot API and world implementation bundle Page 14 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  12. 12. Whiteboard Pattern• Simulator desktop bundle adding internal frames Page 15 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  13. 13. Extender Patternand Bundle Tracker• Adding static objects to mars world Page 16 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  14. 14. Configuration Admin andMetatype Service• Creating wall and robot instances Page 17 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  15. 15. Event Admin Service• Integration sensor data view and world (event bus) Page 18 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  16. 16. Extending the OSGi Console(OSGi RFC 147 Draft)• Robot commands to move and rotate the robot• Shows how to use OSGi service properties Page 19 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  17. 17. OSGi ConceptsShould be added during the next camp• Simulator by using the Event Admin Service• Robot web control console with the HTTP Service• WAR bundles (RFC66) to build a web console• Remote robot console using OSGi Remote Services• Service handling e.g. adding other object types to the world (balls) • with Service Tracker • using Blueprint components• Offer sensor and robot data by using Monitor Admin Service• Add logging with the Log Service• Preferences Service to persist some user settings (e.g. world size) Page 20 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  18. 18. Conclusion• Mars Robot is a cool application• OSGi concepts can be demonstrated very easily• Robot domain nice for running OSGi example• Extensible in various areasMars robot as a “PetStore” for OSGi applications? Page 21 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  19. 19. OSGi Code Camp Berlin• about 20 participants• VirtualBox VM• Felix, bndtools• Hosted at Telekom Laboratories Page 22 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  20. 20. Discusssion and Q&A Page 23 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  21. 21. References• Simbad 3D Robot Simulator http://simbad.sourceforge.net/• Richard S. Hall et. al. OSGi in Action - Creating Modular Applications in Java• Apache Felix: RFC 147 Overview http://felix.apache.org/site/apache-felix-gogo.html• OSGi Code Camp 2010 – Konstanz http://germany.osgiusers.org/Main/SummerOCC2011• OSGi Code Camp 2011 – Berlin• http://germany.osgiusers.org/Main/SummerOCC2010• bndtools http://bndtools.org• Apache Felix Application Demonstration http://felix.apache.org/site/apache-felix-application-demonstration.html Page 24 OSGi Alliance Community Event 2011© 2008-2011. All Rights Reserved
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×