OSGi in practice - Part 1

OSGi:

Eclipse IDE is one of the extensively used Java development tool and I have been using it from the start of my Java programming career. One of the key features of Eclipse which impresses me a lot is its plugin architecture. To add support for a new feature we just download the relevant plugins, copy them to the plugins folder and after a restart all the required menus are in place and all the new features are available at our disposal.

I always wanted to develop an application on a similar architecture but due to other project priorities couldn’t research a lot on this. After 7 years of my S/W career I was finally struck with an opportunity to develop an application based on the OSGi Framework. As I started my research on OSGi framework I realized this is what I had been waiting for a long time.

What is OSGi?

From my initial discussions you must have got a clue that OSGi development is somewhere related to plugin development. Correct OSGi framework allows us to build highly modular Java applications composed of small components.

To define it more correctly the OSGi Framework provides the standardized specifications that allow applications to be constructed from small, reusable and collaborative components. These components are highly cohesive and loosely coupled. Each component can be individually developed, tested, deployed, updated and managed with minimal or impact on other components.The components can be composed into an application and deployed.

OSGi Bundles

An application module or component is termed as a bundle in OSGi. Bundles are the common Java jar files except that their Manifest file contains more OSGi specific details like a definitive name, version, dependencies and other deployment details.

As opposed to normal Java application which is packaged in a monolithic jar/war file bundles are logical modules that combines to comprise an application. They explicitly define which packages they export and which external packages they depend upon. OSGi framework performs bundle resolution ensuring consistency among bundles with respects to their versions and other constraints.

The OSGi specification defines a life cycle for OSGi bundles and once the bundle is deployed the bundle life cycle determines its status. A bundle can be installed, started, stopped and uninstalled from the framework following the lifecycle prescribed by the OSGi specifications.

OSGi Containers

OSGi based application run within an OSGi Container. Following are some of the popular OSGi containers:

· Eclipse Equinox

· Apache Felix

· Knopflerfish

OSGi Benefits

· Changes are easy to accommodate:

Functionalities of a bundle are known only through its published interfaces. This allows changes to the implementation logic without affecting other collaborating bundles.

· Improved work distribution:

An OSGi based application is a collection of bundles. Each bundle defines a set of dependencies to other bundles. The development tasks can be distributed easily based on the bundle dependency hierarchy.

· Improved Testability

Each bundle can be tested as a cohesive unit in addition to the unit and integration testing.

· Improved Packaging and Release management

Application features can be developed under separate bundles. For an installation a deploy time decision can be made to package and deploy only those bundles which are relevant to the application features to be made available.

· Increased Reusability

Functionalities of a bundle can be abstracted enough to make them reusable across projects. It is even possible to reassemble module selection of an application to produce a different application.

In this article I touched upon what is OSGi and what benefits it offers. In the next article I would like to touch upon the challenges in developing an OSGi based application and how Spring DM server comes to the rescue.

Following are some of the good reference books for starting with OSGi

1. Modular Java by Craig Walls

2. OSGi in Action

e-Zest featured in Pune Mirror (TOI) newspaper: 'Innovation kept us afloat'

Pune Mirror, an English daily from Times of India group owner Bennett Coleman & Co. Ltd, has covered e-Zest Solutions in special feature about companies that are booming in the gloom economic period. It also covered the interview of Devendra Deshmukh, Co-founder and Executive Director. The article covers e-Zest's success till date, diffrentiation, roadmap and its fture plans. Devendra Deshmukh, explained a four point success mantra that covered e-Zest's excellence in handling and communication with clients, core competency, marketing, team members.

The details could be found out at Pune Mirror's e-Zest coverage.

IT labor shortage: Companies to outsource

Society of Information Management’s (SIM) 2008 IT Trends Survey shows different picture than prevailing perception about IT outsourcing. The data shows that US companies are not laying off IT staff and shipping jobs overseas to cut IT budgets. “There are more jobs than there are qualified people”, said Jerry Luftman, an IT professor and the SIM director.

The common perception about offshore outsourcing is built by two things (i) media exaggerating IT offshoring and (ii) prominent and large companies outsourcing much of their consumer support to offshore companies.

The recent research conducted showed that offshore outsourced staff budget is just 5.2% of overall IT budget allocation for 2009. This is higher than last two years’ figures: 4% and 3.2%. In the catastrophic period of global slowdown such increase is a pleasant breeze for offshore IT services companies. The scarcity of qualified candidates in the labor market may be the reason for companies thinking to outsourcing their IT work. This outsourcing is still a very small fraction. The bigger threat to US IT sector is labor crunch issue which is going to become more acute with the impending retirement of Baby Boomers and the smaller-than-needed numbers of math and science students that are graduating and looking for IT jobs.

The offshore outsourced staff budget (5.2%) is much lower than 33.7% budget allocated to internal staff. It is still smaller than 6.2% pie allocated for dedicated domestic outsourcing. In 2009 offshore outsource staff budget has got increased as compared to previous years. Along with that budget for dedicated domestic outsourcing has got increased in 2009. In reality, US is creating more jobs for local candidates than previous years in IT sector.

The activities that SIM does to increase awareness of IT as a viable profession and maturing college IT programs may address problem of IT professionals availability but the big thing is that it is changing or will eventually change the perception about offshore outsourcing.

Congratulations to newly elected US President

e-Zest Solutions congratulates Democrat Barack Obama forbecoming President of America. This is a historical event since he is the firstblack president of America.

This victory of Democrats over Republican hints that USpeople wants a balanced economy on priority than war waging government.

There is a heated discussion on aftermath effects of USPresidential elections on Indian IT industry. Some say outsourcing will bedoomed but I strongly feel that need of cutting cost in most of globalterritories will need more and more IT. Barack Obama knows that curbingoutsourcing in one night will increase problems manifold rather than resolving.He will try to create new jobs and opportunities to calm US citizens’ agony.

All the very best to Obama for creating newer jobs for USpeople, seeding peace movement across world and helping nations fight globalslowdown successfully. India will keep supporting world businesses with itshigh quality and low cost IT solutions. 

e-Zest’s 8th anniversary

It is a pleasure for every employee of any company to see his institution growing. Every team member at e-Zest was having proud feeling on 08-08-08 when company set its foot in 9th year of its operation.

Company had decided to celebrate this occasion out station near beautiful beaches of Konkan opening right in the Great Arabian Sea. There could not be a better place to celebrate its 8th anniversary of prosperity, bonding and customer delight.

Team members enjoyed their travel to Dapoli in two full packed luxury buses and rope way experience of Raigad. While Dapoli connects land mass and a great water reservoir, the great Raigad connects present with glorious history hallmark of Chhatrapati Shivaji era.

The two day celebration function was full of fun games, water sports, ad mad shows, individual performances from team members, foundation day function and rides through green valleys.

look forward to celebrate many more such anniversaries here in e-Zest being part of it.