I have struggled to understand what OSGi really means for a long time. It has been around since a very long time but not many people are aware of it. It has been hyped as a very complex technology to understand. Here is my attempt to make it simple for any Java developer. In short OSGi is a group of specifications that enable the modular assembly of software built with Java technology. It defines