Feeds

Aspect oriented software comes of age

Becoming a staple part of the developer's diet

New hybrid storage solutions

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

Security for virtualized datacentres

More from The Register

next story
Not appy with your Chromebook? Well now it can run Android apps
Google offers beta of tricky OS-inside-OS tech
Greater dev access to iOS 8 will put us AT RISK from HACKERS
Knocking holes in Apple's walled garden could backfire, says securo-chap
NHS grows a NoSQL backbone and rips out its Oracle Spine
Open source? In the government? Ha ha! What, wait ...?
Google extends app refund window to two hours
You now have 120 minutes to finish that game instead of 15
Intel: Hey, enterprises, drop everything and DO HADOOP
Big Data analytics projected to run on more servers than any other app
prev story

Whitepapers

Providing a secure and efficient Helpdesk
A single remote control platform for user support is be key to providing an efficient helpdesk. Retain full control over the way in which screen and keystroke data is transmitted.
Top 5 reasons to deploy VMware with Tegile
Data demand and the rise of virtualization is challenging IT teams to deliver storage performance, scalability and capacity that can keep up, while maximizing efficiency.
Reg Reader Research: SaaS based Email and Office Productivity Tools
Read this Reg reader report which provides advice and guidance for SMBs towards the use of SaaS based email and Office productivity tools.
Security for virtualized datacentres
Legacy security solutions are inefficient due to the architectural differences between physical and virtual environments.
Secure remote control for conventional and virtual desktops
Balancing user privacy and privileged access, in accordance with compliance frameworks and legislation. Evaluating any potential remote control choice.