Feeds

Aspect oriented software comes of age

Becoming a staple part of the developer's diet

Providing a secure and efficient Helpdesk

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

Choosing a cloud hosting partner with confidence

More from The Register

next story
Microsoft on the Threshold of a new name for Windows next week
Rebranded OS reportedly set to be flung open by Redmond
Business is back, baby! Hasta la VISTA, Win 8... Oh, yeah, Windows 9
Forget touchscreen millennials, Microsoft goes for mouse crowd
SMASH the Bash bug! Apple and Red Hat scramble for patch batches
'Applying multiple security updates is extremely difficult'
Apple: SO sorry for the iOS 8.0.1 UPDATE BUNGLE HORROR
Apple kills 'upgrade'. Hey, Microsoft. You sure you want to be like these guys?
ARM gives Internet of Things a piece of its mind – the Cortex-M7
32-bit core packs some DSP for VIP IoT CPU LOL
Lotus Notes inventor Ozzie invents app to talk to people on your phone
Imagine that. Startup floats with voice collab app for Win iPhone
'Google is NOT the gatekeeper to the web, as some claim'
Plus: 'Pretty sure iOS 8.0.2 will just turn the iPhone into a fax machine'
prev story

Whitepapers

A strategic approach to identity relationship management
ForgeRock commissioned Forrester to evaluate companies’ IAM practices and requirements when it comes to customer-facing scenarios versus employee-facing ones.
Storage capacity and performance optimization at Mizuno USA
Mizuno USA turn to Tegile storage technology to solve both their SAN and backup issues.
High Performance for All
While HPC is not new, it has traditionally been seen as a specialist area – is it now geared up to meet more mainstream requirements?
Beginner's guide to SSL certificates
De-mystify the technology involved and give you the information you need to make the best decision when considering your online security options.
Security for virtualized datacentres
Legacy security solutions are inefficient due to the architectural differences between physical and virtual environments.