Feeds

Aspect oriented software comes of age

Becoming a staple part of the developer's diet

The Power of One Brief: Top reasons to choose HP BladeSystem

There are two observations you can make about most new ideas in computing. Firstly, they usually originate at Xerox's legendary Palo Alto Research Centre (PARC). Secondly, they take 10 years to make the transition from the lab to the real world.

Aspect-oriented software development (AOSD) fits the bill on both counts.

Although there were several projects looking at the ideas behind AOSD in the 1990s, it is Dr Greg Kiczales and his team at Xerox PARC who are generally acknowledged as the originators.

Kiczales' simple idea was that it should be possible, indeed desirable, to abstract certain common areas of any software project and deal with them separately. Tasks like error trapping and logging, for example, can be hived off as common processes and called when required. Kiczales defined these processes as cross-cutting concerns or aspects.

Kiczales presented his seminal paper on AOSD in 1997 and set the ball rolling with AspectJ - an aspect-oriented version of Java.

In 2007, AspectJ is now considered a stable and complete language aligned with the latest version of Java and the new release of the Aspect Java Development Tools (AJDT) platform was part of the massive 29 June Europa release of the Eclipse platform - widely seen as the seal of approval for AOSD.

IBMer Matt Chapman, leader of the AJDT project, commented on the release: "The AspectJ Development Tools project (AJDT) joins the Eclipse release train for the first time this year. Last year, the project moved from being a technology project to become a tools project, reflecting the project's level of maturity and widespread usage."

The development of AspectJ and AJDT as an open source project and a major effort by Chapman's team at the IBM Hursley Lab has certainly helped push AOSD into the mainstream. IBM has invested heavily in AOSD, and Websphere has been significantly re-cast to use aspect-oriented techniques with large savings in code and complexity. First failure data capture in Websphere's application server, for example, is handled using AOSD.

More importantly, AOSD - along with the academics behind it - has made the transition to the commercial market. Kiczales joined forces with ex-Microsoft man Charles Simonyi to kickstart Intentional Software as long ago as 2002 and Adrian Colyer, Chapman's predecessor at IBM, left Hursley in 2005 to join Interface21 - a start-up specialising in AOSD tools.

Rob Harrop, vice president of engineering at Interface21, sees AOSD as mainstream technology now, although people will not necessarily realise they are using it.

"There has been an immense amount of work in the last few years to bring AOSD into the mainstream and now, with AspectJ 1.5, it has settled down. The big effort was to bring AspectJ in line with Java 5 and that is now done - it's just down to bug fixes. The effort has switched to the tooling and ways to make AOSD accessible," he says.

Interface21 is very much in the vanguard of popularisation of AOSD. It has packaged some of the ideas into its Spring application framework which is being used commercially. It is a sure sign that a technology is going mainstream when the financial services sector picks up on it.

"Spring is being used heavily in banking and, although it does not offer all the features of AOSD, it is a good starting point for the concept. So some of our banking clients are using Spring in combination with AspectJ," Harrop says.

"The Spring framework is comparable to EJB and complimentary to J2EE and can provide for some of the more common uses of AOSD such as transaction management and security. The advantage of Spring is that you don't have to change existing tooling so you can slot it in with other development tools."

AOSD is not without its critics, of course. Research analystForrester, for example, has pointed out potential problems with the concept.

Despite this, it looks likely that AOSD is set to grow quickly now the technology is stable and packaged in an easily digestible form. Furthermore, the issues AOSD deals with will doubtless become more relevant as the service model of application delivery gains ground. ®

Securing Web Applications Made Simple and Scalable

More from The Register

next story
Whoah! How many Google Play apps want to read your texts?
Google's app permissions far too lax – security firm survey
Chrome browser has been DRAINING PC batteries for YEARS
Google is only now fixing ancient, energy-sapping bug
Do YOU work at Microsoft? Um. Are you SURE about that?
Nokia and marketing types first to get the bullet, says report
Microsoft takes on Chromebook with low-cost Windows laptops
Redmond's chief salesman: We're taking 'hard' decisions
EU dons gloves, pokes Google's deals with Android mobe makers
El Reg cops a squint at investigatory letters
Big Blue Apple: IBM to sell iPads, iPhones to enterprises
iOS/2 gear loaded with apps for big biz ... uh oh BlackBerry
OpenWRT gets native IPv6 slurping in major refresh
Also faster init and a new packages system
prev story

Whitepapers

Top three mobile application threats
Prevent sensitive data leakage over insecure channels or stolen mobile devices.
The Essential Guide to IT Transformation
ServiceNow discusses three IT transformations that can help CIO's automate IT services to transform IT and the enterprise.
Mobile application security vulnerability report
The alarming realities regarding the sheer number of applications vulnerable to attack, and the most common and easily addressable vulnerability errors.
How modern custom applications can spur business growth
Learn how to create, deploy and manage custom applications without consuming or expanding the need for scarce, expensive IT resources.
Consolidation: the foundation for IT and business transformation
In this whitepaper learn how effective consolidation of IT and business resources can enable multiple, meaningful business benefits.