Moving the Guidewire platform to OSGi
Guidewire Software builds advanced applications for the insurance industry. With over a hundred customers in a dozen countries, including global giants like AXA, Geico, and Tokyo Marine, our applications handle tens of billions of dollars worth of business every year.
The Guidewire platform provides core services to its applications, and is oriented toward a high degree of customer extensibility. This talk is about the first phase of our project to migrate the Guidewire platform to OSGi. We describe our motivations for moving to OSGi, challenges we faced in "getting off the ground," and how we expect to take advantage of OSGi. Topics include:
- Using bnd to build OSGi metadata
- Using fragments to create an initial "mega bundle"
- Embedding an OSGi container inside a J2EE app server
- Bundling 3rd-party jars
- Using Declarative Services as our component model
- Integrating tools like bnd into a custom build and development environment
We also discuss how we plan to leverage OSGi, including:
- Replacing a proprietary plugin architecture with OSGi services
- Reducing the cognitive burden within development through truly separate components
- Enabling testing in isolation, both at the class level and at the bundle level