Abstract
Aspect orientation is an increasingly promising approach to software development. It affords benefits deriving from advanced separation of concerns, including concern modeling, encapsulation, extraction, and composition. These may enable the development and evolution of software on a higher semantic level, with unprecedented control and flexibility. Aspect orientation may hold similar benefits for software process. Aspect orientation has implications for process on three levels: aspect-oriented products, aspect-oriented processes, and aspect-oriented process languages. It also facilitates insight into how the software-process spectrum may be unified. Macroprocess and microprocess concerns do not overlap, but some relationship between them is necessary. The relating of macroprocess concerns and microprocess concerns is the concern of a mesoprocess level, the principal home for process engineering, the purpose of which is to realize the ends of the macro level in terms of the means provided by the micro level. Aspect orientation should also benefit to a rigorous, orderly, and effective discipline of process engineering.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Akşit, M., Wakita, K., Bosch, J., Bergmans, L., Yonezawa, A.: Abstracting object-interactions using composition-filters. In: Guerraoui, R., Riveill, M., Nierstrasz, O. (eds.) ECOOP-WS 1993. LNCS, vol. 791, pp. 152–184. Springer, Heidelberg (1994)
AOP for Business Rules. Website (2003), http://ssel.vub.ac.be/br/index.php
AOSD.net. Website (2005), http://www.aosd.net
Baniassad, E., Clarke, S.: Finding aspects in requirements with Theme/Doc. In: Early Aspects 2004: Aspect-Oriented Requirements Engineering and Architecture Design Workshop (AOSD) (2004), http://trese.cs.utwente.nl/workshops/early-aspects-2004/Papers/Baniassad-Clarke.pdf
Bass, L., Klein, M., Northrop, L.: Identifying aspects using architectural reasoning. In: Early Aspects 2004: Aspect-Oriented Requirements Engineering and Architecture Design Workshop (AOSD), Lancaster, UK (2004), http://trese.cs.utwente.nl/workshops/early-aspects-2004/Papers/BassEtAl.pdf
BEA Systems. aspectwerkz-workshopkit Project home (Website), https://aspectwerkz-workshopkit.projects.dev2dev.bea.com/
Brito, I., Moreira, A.: Integrating the NFR framework in a RE model. In: Early Aspects 2004: Aspect-Oriented Requirements Engineering and Architecture Design Workshop (AOSD) (Lancaster, UK) (2004), http://trese.cs.utwente.nl/workshops/early-aspects-2004/Papers/BritoMoreira.pdf
Clarke, S., Harrison, W., Ossher, H., Tarr, P.: Subject-oriented design: Towards improved alignment of requirements, design and code. In: 14th Conf. Object-oriented Programming, Systems, Languages, and Applications (OOPSLA), pp. 325–339. ACM, New York (1999)
Coady, Y., Kiczales, G., Feeley, M., Smolyn, G.: Using AspectC to Improve the Modularity of Path-Specific Customization in Operating System Code. In: Proceedings of the 8th European Software Engineering Conference held jointly with 9th ACM SIGSOFT International Symposium on Foundations of Software Engineering, pp. 88–98 (2001)
Defense Advanced Research Projects Agency (DARPA). Program Composition for Embedded Systems (Website) (1999), http://www.darpa.mil/baa/baa00-23.htm
Eclipse AspectJ Development Tools Technology Subproject (Website) (2005), http://www.eclipse.org/aspectj/
Eclipse AspectJ Technology Project (Website) (2005), http://www.eclipse.org/aspectj/
Eclipse Concern Manipulation Environment Technology Project (Website) (2005), http://www.eclipse.org/cme/
Eclipse.org (Website), http://www.eclipse.org
Elrad, T., Filman, R.E., Bader, A.: Aspect-oriented programming. Comm. ACM 44(10), 29–32 (2001)
Fraunhofer Institute Computer Architecture and Software Technology FIRST. TOPPrax – Applying Aspect-Oriented Programming in Commercial Software Development (Website) (2005), http://www.first.fraunhofer.de/en/topprax
Griswold, W.: Aspect Browser for Eclipse (Website), http://www-cse.ucsd.edu/users/wgg/Software/AB/
Harrison, W., Ossher, H.: Subject-oriented programming—a critique of pure objects. In: 8th Conf. Object-oriented Programming, Systems, Languages, and Applications (OOPSLA), Washington, D.C., pp. 411–428. ACM, New York (1993)
Harrison, W., Ossher, H., Sutton Jr., S., Tarr, P.: Concern Modeling in the Concern Manipulation Environment. IBM Systems Journal, Special Issue on Open Source Software (2005) (to appear)
Harrison, W., Ossher, H., Tarr, P.: Software engineering tools and environments: A roadmap. In: Conf. Future of Software Engineering (Limerick), pp. 261–277. ACM, New York (2000)
IBM. Concern Manipulation Environment (CME): a flexible, extensible, interoperable environment for AOSD, http://www.research.ibm.com/cme/
IBM. Hyperspaces, http://www.research.ibm.com/hyperspace/
ISPW. Proceedings of 10th International Software Process Workshop, Dijon, France, June 17-19, 1996, p. 119. IEEE, Los Alamitos (1998)
Jacobson, I., Ng, P.-W.: Aspect-Oriented Software Development with Use Cases. Addison-Wesley Object Technology Series, p. 464 (2004)
Janzen, D., De Volder, K.: Navigating Code without Getting Lost. In: 2nd International Conference on Aspect-Oriented Software Development, pp. 178–187. ACM, New York (2003)
JBoss. JBoss Aspect Oriented Programming (Website) (2005), http://www.jboss.org/products/aop
Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.G.: Getting started with AspectJ. Comm. ACM 44(10), 59–65 (2001)
Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.-M., Irwin, J.: Aspect-oriented programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)
Kimelman, D., Kruskal, V., Ossher, H., Roth, T., Tarr, P.: HyperProbe(TM) - An Aspect-Oriented Instrumentation Tool for Troubleshooting Large-Scale Production Systems. In: Demonstration Abstract, 1st Int’l Conf. Aspect-Oriented Software Development, AOSD (2002), http://trese.cs.utwente.nl/aosd2002/index.php?content=hyperprobe
Lieberherr, K.: Adaptive Object-Oriented Software: The Demeter Method with Propagation Patterns. PWS Publishing Company (1996)
Lohmann, D., Ebert, J.: A generalization of the hyperspace approach using meta-models. In: Early Aspects 2003: Aspect-Oriented Requirements Engineering and Architecture Design Workshop (AOSD), Boston, USA (2003), http://www.cs.bilkent.edu.tr/AOSD-EarlyAspects/Papers/LohEbe.pdf
Nuseibeh, B., Kramer, J., Finkelstein, A.: Expressing the relationships between multiple views in requirements specification. In: 15th Int’l Conf. Software Engineering (ICSE) (Baltimore, Maryland), pp. 187–196. IEEE, Los Alamitos (1993)
Odgers, B., Thompson, S.: Aspect-Oriented Process Engineering (ASOPE). In: Moreira, M.D., Demeyer, S. (eds.) ECOOP 1999 Workshops. LNCS, vol. 1743, p. 295. Springer, Heidelberg (1999)
PARC. AspectJ (2004), http://www.parc.com/research/csl/projects/aspectj/default.html
Rajan, H., Sullivan, K.: Generalizing AOP for Aspect-Oriented Testing. In: Proceedings of the Fourth International Conference on Aspect-Oriented Software Development (AOSD), pp. 14–18 (2005)
Robillard, M., Murphy, G.: Concern Graphs: Finding and Describing Concerns Using Structural Pro-gram Dependencies. In: Proceedings of the 24th Int’l Conf. of on Soft. Eng., pp. 406–416 (2002)
Sabbah, D.: Aspects—From Promise to Reality. In: 3rd International Conference on Aspect-Oriented Software Development (AOSD), Lancaster, UK, pp. 1–2. ACM, New York (2004)
Sereni, D., de Moor, O.: Static Analysis of Aspects. In: Proceedings of the 2nd International Conference on Aspect-Oriented Software Development, pp. 30–39. ACM, New York (2003)
Software Engineering Institute (SEI). The Capability Maturity Model: Guidelines for Improving the Software Process, p. 464. Addison-Wesley Professional, Reading (1995)
Software Engineering Institute (SEI). A Framework for Software Product Line Practice Version 4.2 (2004), http://www.sei.cmu.edu/plp/framework.html#outline
Spinczyk, O., Gal, A.S., Schröder-Preikschat, W.: AspectC++: An Aspect-Oriented Extension to C++. In: Proceedings of the Fortieth International Conference on Tools Pacific: Objects for internet, mobile and embedded applications, vol. 10, pp. 53–60 (2002), see also http://www.aspectc.org/
Sutton Jr., S., Osterweil, L.: The Design of a Next-Generation Process Language. In: Jazayeri, M. (ed.) ESEC 1997 and ESEC-FSE 1997. LNCS, vol. 1301, pp. 142–158. Springer, Heidelberg (1997)
Sutton Jr., S.M., Rouvellou, I.: Advanced separation of concerns for component evolution. In: Workshop on Engineering Complex Object-Oriented Systems for Evolution, Tampa, Florida (2001), http://www.dsg.cs.tcd.ie/ecoose/oopsla2001/papers.shtml
Sutton Jr., S., Rouvellou, I.: Modeling of software concerns in Cosmos. In: Kiczales, G. (ed.) 1st Int’l Conf. Aspect-Oriented Software Development (AOSD), pp. 127–133. ACM, New York (2002)
Tarr, P., Ossher, H., Harrison, W., Sutton Jr., S.: degrees of separation: Multi-dimensional separation of concerns. In: 21st Int’l Conf. Software Engineering (ICSE), Los Angeles, pp. 107–119. IEEE, Los Alamitos (1999)
Tarr, P., Ossher, H., Sutton Jr., S.: Hyper/J: Multi-Dimensional Separation of Concerns for Java, Tutorial (2001), http://www.netobjectdays.org/pdf/01/slides/tutorial/sutton.pdf
Tekinerdogan, B.: ASAAM: aspectual software architecture analysis method. In: Early Aspects 2003: Aspect-Oriented Requirements Engineering and Architecture Design Workshop (AOSD) (2003), http://www.cs.bilkent.edu.tr/AOSD-EarlyAspects/Papers/Tekinerdogan.pdf
Wagelaar, D.: A concept-based approach for early aspect modelling. In: Early Aspects 2003: Aspect-Oriented Requirements Engineering and Architecture Design Workshop (AOSD) (2003), http://www.cs.bilkent.edu.tr/AOSD-EarlyAspects/Papers/Wagelaar.pdf
Wise, A., Cass, A., Lerner, B., McCall, E., Osterweil, L., Sutton Jr., S.: Using Little-JIL to Coordinate Agents in Software Engineering. In: 15th IEEE International Conference on Automated Software Engineering (ASE 2000) Proceedings, pp. 155–164. IEEE, Los Alamitos (2000)
Zhao, J.: Data-Flow-Based Unit Testing of Aspect-Oriented Programs. In: Proceedings of the 27th Annual IEEE International Computer Software and Applications Conference (COMPSAC 2003) (2003)
Zhu, J.: Personnel communication. IBM Research (2005), zhujun@cn.ibm.com
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Sutton, S.M. (2006). Aspect-Oriented Software Development and Software Process. In: Li, M., Boehm, B., Osterweil, L.J. (eds) Unifying the Software Process Spectrum. SPW 2005. Lecture Notes in Computer Science, vol 3840. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11608035_17
Download citation
DOI: https://doi.org/10.1007/11608035_17
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-31112-6
Online ISBN: 978-3-540-32450-8
eBook Packages: Computer ScienceComputer Science (R0)