Feeds

Aspect oriented software comes of age

Becoming a staple part of the developer's diet

Internet Security Threat Report 2014

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

Top 5 reasons to deploy VMware with Tegile

More from The Register

next story
Download alert: Nearly ALL top 100 Android, iOS paid apps hacked
Attack of the Clones? Yeah, but much, much scarier – report
You stupid BRICK! PCs running Avast AV can't handle Windows fixes
Fix issued, fingers pointed, forums in flames
NSA SOURCE CODE LEAK: Information slurp tools to appear online
Now you can run your own intelligence agency
Microsoft: Your Linux Docker containers are now OURS to command
New tool lets admins wrangle Linux apps from Windows
Facebook, working on Facebook at Work, works on Facebook. At Work
You don't want your cat or drunk pics at the office
Soz, web devs: Google snatches its Wallet off the table
Killing off web service in 3 months... but app-happy bonkers are fine
prev story

Whitepapers

Choosing cloud Backup services
Demystify how you can address your data protection needs in your small- to medium-sized business and select the best online backup service to meet your needs.
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.
Driving business with continuous operational intelligence
Introducing an innovative approach offered by ExtraHop for producing continuous operational intelligence.
10 threats to successful enterprise endpoint backup
10 threats to a successful backup including issues with BYOD, slow backups and ineffective security.
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?