Section 17.7. CONCLUSION


17.7. CONCLUSION

In its short history, aspect-oriented software development has clearly been driven by the emergence of aspect-oriented languages such as AspectJ. In other words, AOSD has largely been synonymous with AOP. While such languages have helped popularize the subject, this is not a healthy long-term position. In particular, it is vital that a more complete software engineering discipline emerges for AOSD. This chapter is aimed as a stepping stone in this direction.

This chapter has examined the state-of-the-art in engineering support for aspect-oriented systems, looking at areas such as requirements, specification, design, and implementation. Crucial issues such as the evolution of software and dealing with aspect interactions have also been considered. The evidence presented suggests that rapid progress is being made in these areas. Indeed, it could be argued that wider software engineering issues now dominate the literature in this area, such as the strong interest in early aspects [7, 30, 68, 70]. It would be wrong, though, to claim maturity in the topics addressed by this chapter; indeed, the various sections all generally conclude that although many techniques have emerged, further experience is required to appreciate their relative strengths and indeed to consolidate proposals into a small number of key approaches.

Where possible, the chapter has included qualitative metrics to evaluate the various techniques and to offer guidelines to enable software developers to make informed selections. Our argument is that there is no perfect solution; rather, techniques all have their own strengths and weaknesses, and these must be interpreted in a domain-specific manner in conjunction with organizational needs and development constraints such as available tool support. Furthermore, hybrid solutions are often the most appropriate, exploiting the best features of various approaches for different parts of the system development. Consideration of such hybrid solutions and associated composition issues is a key element of ongoing research at Lancaster [19, 66]. We are of the view that these considerations should underpin the aspect-oriented software development process and that effective support for traceability from early aspects to later stages of design, implementation, and evolution should be integrated in such a hybrid environment. Only then can aspect-oriented techniques be exploited to their full potential to develop well-engineered aspect-oriented systems.



Aspect-Oriented Software Development
Aspect-Oriented Software Development with Use Cases
ISBN: 0321268881
EAN: 2147483647
Year: 2003
Pages: 307

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net