Whether a senior manager responsible for building an agile business, or software developer tasked with building an agile software solution, the fundamental challenge is the same.
Agility can only be fully realized when the underlying entity – the organization or the software product – has a high degree of structural modularity. If the entity is monolithic and so change resistant, then no amount of agile process will address this. For example, there would have been little point in implementing Kanban methodologies in the pre-1900s Automobile Industry – before the innovation of the production line – which, in turn, was dependent upon a more fundamental innovation: the idea of modular assembly.
The relationship between structural modularity and agility is fundamental. It is also no accident that OSGi, the modularity system for Java, is designed the way it is. OSGi’s design is a logical consequence of the challenges of building highly modular and therefore achieving highly agile Java software systems. With OSGi™, Java developers have a powerful ally; an ally that provides the foundation, based on open industry specifications, upon which their organization’s IT agility goals can be fully realized.
|In addition to creating open industry standards for the OSGi ecosystem, the OSGi Alliance provides a number of services to help the community accelerate its adoption of OSGi technology. Recent OSGi Alliance initiatives include the OSGi enRoute Project, which demonstrates Java modularity best practices, and a soon-be-introduced OSGi developer certification program to foster the growth of knowledge and skills to build modular agile Java based systems.|