Monday, March 9, 2009

Guiding principles for Web 2.0 application development

In their article published in the recent Baseline Magazine, Frank Faeth and Joe Busateri who are both working for MasterCard have shared the 4 guiding principles established in MasterCard for application development that involves web services.

These guiding principles make different from the traditional way of application development, in order to take advantage of Web 2.0 technologies for speed, simplicity and reduced cost of software development.

Here are the 4 guiding principles:

1. Application developers have to be more than just good coders

Beside technical skills, developers have to be more business oriented now. They need to move forward from the back office to be more customer-facing than before. "Programmers" should transform into "business technologists" to cope with this trend.

They are expected to drive the organization forward by anticipating future business needs, and leverage technology to create practical solutions that will serve those needs.

They have to be awared that the half-life of today's business software is relatively short, so they must build applications that are stable and usable for a short period, and well prepared to be repurposed, rebuilt and enhanced. As such, rapid development is crucial, and components of the applications should be very modular, flexible, reusable and scalable.


2. Managers must realign their organizations to foster web services

Traditional attitudes and methodologies of software development no longer apply in Web 2.0. Web services require vigilance, constant management attention and repeated reinforcement.

Successful web services implementation requires all members of an organization to share technology and best practices across silos. This may require changes in corporate governance, less reliance on top-down directives and greater emphasis on mid-level management cooperations.


3. Companies should adopt Google's mentality: Fast is better than perfect

In their article, Frank Faeth and Joe Busateri argued that since the half-life of business software isn't very long, it's better to push a product into the marketplace quickly, rather than wait until it is thoroughly tested.

Both developers and business owners must agree on which compromises they are willing to accept in the application's functionality, features and stability, as weighed against achieving greater simplicity and speed to market.

The organization must be open to "failing fast and failing cheap" concept of perpetual development.

For example, Google's Gmail is released for public use while still in beta stage, and the beta has been ongoing for years, with continuous development, improvement and enhancement to the product.


4. Be sure to acknowledge that adopting web services requires time and effort

Adopting web services represents a radical change from the way corporations have traditionally developed software systems. As such, the change management and challenges involved should not be underestimated.

No comments:

Post a Comment