Feeds

Aspect oriented software comes of age

Becoming a staple part of the developer's diet

Reducing security risks from open source software

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. ®

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

More from The Register

next story
NO MORE ALL CAPS and other pleasures of Visual Studio 14
Unpicking a packed preview that breaks down ASP.NET
Cheer up, Nokia fans. It can start making mobes again in 18 months
The real winner of the Nokia sale is *drumroll* ... Nokia
Mozilla fixes CRITICAL security holes in Firefox, urges v31 upgrade
Misc memory hazards 'could be exploited' - and guess what, one's a Javascript vuln
Put down that Oracle database patch: It could cost $23,000 per CPU
On-by-default INMEMORY tech a boon for developers ... as long as they can afford it
Google shows off new Chrome OS look
Athena springs full-grown from Chromium project's head
Apple: We'll unleash OS X Yosemite beta on the MASSES on 24 July
Starting today, regular fanbois will be guinea pigs, it tells Reg
HIDDEN packet sniffer spy tech in MILLIONS of iPhones, iPads – expert
Don't panic though – Apple's backdoor is not wide open to all, guru tells us
prev story

Whitepapers

Top three mobile application threats
Prevent sensitive data leakage over insecure channels or stolen mobile devices.
Implementing global e-invoicing with guaranteed legal certainty
Explaining the role local tax compliance plays in successful supply chain management and e-business and how leading global brands are addressing this.
Boost IT visibility and business value
How building a great service catalog relieves pressure points and demonstrates the value of IT service management.
Designing a Defense for Mobile Applications
Learn about the various considerations for defending mobile applications - from the application architecture itself to the myriad testing technologies.
Build a business case: developing custom apps
Learn how to maximize the value of custom applications by accelerating and simplifying their development.