OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

19
OSGi in the TK - The BundleMaker Nils Hartmann, Techniker Krankenkasse Gerd Wütherich, Freelancer Page 1

description

BundleMaker is a tool to modularize huge existing Java-based applications. While it was originally developed to support the OSGi migration process of the Techniker Krankenkasse's Java application, it is now an open-source tool hosted at http://www.bundlemaker.org. With BundleMaker you can analyze the structure and dependencies of your Java application including its required third party libraries. In addition, you can define various transformations to restructure your system according to your new modularized target architecture. BundleMaker is able to export the whole restructured system into several output formats such as OSGi binary bundles or projects for the Eclipse PDE development tools. Developed as an OSGi/Eclipse-based application itself, BundleMaker is highly customizable to make it a perfect match for a variety of usage scenarios. In this session we will give you an introduction into BundleMaker's ideas and its underlying concepts.

Transcript of OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

Page 1: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

OSGi in the TK - The BundleMaker

Nils Hartmann, Techniker Krankenkasse Gerd Wütherich, Freelancer

Page 1

Page 2: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

Initial Situation

Page 3: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

» Main application at Techniker Krankenkasse (TK) » One of Germany‘s largest health insurance funds

» 3-Tier architecture

» Started in 1998

» More than 100 applications

» 65.000 Java classes

» 6500 packages

» 5 mio lines of code

» 100 active developers

The Project TKeasy

Page 4: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

Dependency problems

Page 5: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

» Need to modularize the application

» Current focus: the module layer

» Easier maintanance

» Reuse of components in other contexts

Why Modularity?

Why OSGi? » „The“ module system for Java

» Open infrastructure: Extender Pattern, Hooks

» Future: introduce service layer

Page 6: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

The Migration Path

Page 7: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

The Development Cycle

Page 8: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

Continuous Migration I

Page 9: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

Continuous Migration II

Page 10: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

Continuous Migration III

Page 11: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

Continuous Migration IV

Page 12: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

The „Final Transformation“

Page 13: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

The BundleMaker

Page 14: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

» Alpha Version

» http://www.bundlemaker.org

» Source code available » http://github.com/wuetherich/bundlemaker

» EPL

» Goal: Open platform for software analysis applications

BundleMaker „Open Source Edition“

Page 15: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

BundleMaker Concepts

Page 16: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

BundleMaker - Analyze

Page 17: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

BundleMaker – Transform

Page 18: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

BundleMaker - Export

Page 19: OSGi in the TK: The Bundle Maker - Nils Hartmann & Gerd Wuetherich

Thank you very much!