Abstract
Crosscutting is usually described in terms of scattering and tangling. However, the distinction between these three concepts is vague. Precise definitions are mandatory for certain research areas such as the identification of crosscutting concerns at phases of the software life cycle. We propose a conceptual framework for crosscutting where crosscutting is defined in terms of trace relations. The definition of crosscutting is formalized using linear algebra, and represented with matrices and matrix operations. In this way, crosscutting can be clearly distinguished from scattering and tangling. With this definition and transitivity of trace relations, crosscutting can be identified and traced through software development, also in early phases. We describe some illustrative case studies to demonstrate the applicability of the analysis.
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
AOSD-Europe. AOSD Ontology 1.0 – Public Ontology of Aspect-Orientation (2005)(Retrieved May, 2005), http://www.aosd-europe.net/documents/d9Ont.pdf
Araujo, J., Moreira, A., Brito, I., Rashid, A.: Aspect-Oriented Requirements with UML. In: Workshop on Aspect-Oriented Modelling with UML at International Conference on Unified Modelling Language. Dresden, Germany (2002)
Baldwin, C.Y., Clark, K.B.: Design Rules, The Power of Modularity, vol. 1. MIT Press, Cambridge (2000)
Baniassad, E., Clarke, S.: Theme: An Approach for Aspect-Oriented Analysis and Design. In: 26th International Conference on Software Engineering, pp. 158–167. Edinburgh, Scotland (2004)
Baniassad, E., Clarke, S.: Aspect-Oriented Analysis and Design: The Theme Approach. Addison-Wesley, Reading (2005)
Baniassad, E., Clements, P., Araújo, P., Moreira, A., Rashid, A., Tekinerdogan, B.: Discovering early aspects. IEEE Software 23(1), 61–70 (2006)
van den, B.K.: Change Impact Analysis of Crosscutting in Software Architectural Design. In: Thomas, D. (ed.) ECOOP 2006. LNCS, vol. 4067, Springer, Heidelberg (2006)
van den, B.K., Conejero, J.M.: A Conceptual Formalization of Crosscutting in AOSD. In: Iberian Workshop on Aspect Oriented Software Development, TR-24/05 University of Extremadura,Granada, Spain, pp. 46–52 (2005)
van den, B.K., Conejero, J.M.: Disentangling crosscutting in AOSD: A conceptual framework. In: EIWAS 2005, Brussels (2005b)
van den, B.K., Conejero, J.M., Hernández, J.: Identification of crosscutting in software design. In: Aspect-Oriented Modeling Workshop at 5th AOSD, Bonn (2006b)
van den, B.K.: Tekinerdogan, B., Nguyen H.: Analysis of Crosscutting in Model Transformations. In: Aagedal, J., Neple, T., Oldevik, N.J. (eds) ECMDA-TW Traceability Workshop Proceedings 2006. SINTEF Report A219, pp. 51–64 (2006)
Bushmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M.: Pattern-Oriented Software Architecture: A System of Patterns. Wiley, West Sussex, England (1996)
Cachero, C., Gómez, J., Párraga, A., Pastor, O.: Conference Review System: A Case of Study. In [17] (2001)
Danilovic, M., Sandkull, B.: The use of dependence structure matrix and domain mapping matrix in managing uncertainty in multiple project situations. International Journal of Project Management 23(3), 193–203 (2005)
Davis, A.: Software Requirements: Objects, Functions and States, 2nd edn. Prentice-Hall, Englewood Cliffs (1993)
Finkelstein, A., Sommerville, I.: The Viewpoints FAQ. BCS/IEE Software Engineering Journal 11(1), 2–4 (1996)
First International Workshop on Web-Oriented Software Technology, Valencia, Spain (2001), http://www.dsic.upv.es/~west/iwwost01/
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design patterns. Elements of reusable object-oriented software. Addison-Wesley, Reading (1995)
von, K.A., Paech, B.: A Survey on Tracing Approaches in Practice and Research IESE-Report No. 095.01/E. v1.0. Fraunhofer Institut Experimentelles Software Engineering (2002)
Kiczales, G.: Crosscutting. AOSD.NET Glossary 2005 (2005), http://aosd.net/wiki/index.php?title=Crosscutting
Kiczales, G., Irwin, J., Lamping, J., Loingtier, M., Lopes, C.V., Maeda, C.: Aspect-Oriented Programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)
Lopes, C.V., Bajracharya, S.K.: An analysis of modularity in aspect oriented design. In: 4th International Conference on Aspect-Oriented Software Development. Chicago, Illinois (2005)
Masuhara, H., Kiczales, G.: Modeling Crosscutting in Aspect-Oriented Mechanisms. In: 17th European Conference on Object Oriented Programming, Darmstadt, pp. 2–28 (2003)
MDA. MDA Guide Version 1.0.1, document number omg/2003-06-01 (2003)
Mezini, M., Ostermann, K.: Modules for Crosscutting Models. In: Rosen, J.-P., Strohmeier, A. (eds.) Ada-Europe 2003. LNCS, vol. 2655, pp. 24–44. Springer, Heidelberg (2003)
Moreira, A., Araujo, J., Whittle, J.: Modeling Volatile Concerns as Aspects. In: Dubois, E., Pohl, K. (eds.) CAiSE 2006. LNCS, vol. 4001, pp. 973–978. Springer, Heidelberg (2006)
Ramesh, B., Jarke, M.: Toward reference models for requirements traceability. IEEE Transactions on Software Engineering 27(4), 58–93 (2001)
Rashid, A., Moreira, A., Araujo, J.: Modularisation and Composition of Aspectual Requirements. In: Second Aspect Oriented Software Conference. Boston, USA (2003)
Sampaio, A., Loughran, L., Rashid, A., Rayson, P.: Mining Aspects in Requirements. In: Early Aspects 2005 Workshop at Aspect Oriented Software Development Conference. Chicago, USA (2005)
Tekinerdogan, B.: ASAAM: Aspectual Software Architecture Analysis Method. In: 4th Working IEEE/IFIP Conference on Software Architecture (2004)
UML. Unified Modeling Language 2.0 Superstructure Specification (2004) (Retrieved October, 2004), http://www.omg.org/cgi-bin/doc?ptc/2004-10-02
Wieringa, R.J.: An introduction to requirements traceability. Technical Report IR-389, Faculty of Mathematics and Computer Science, Vrije Universiteit, Amsterdam (1995)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
van den Berg, K., Conejero, J.M., Hernández, J. (2007). Analysis of Crosscutting in Early Software Development Phases Based on Traceability. In: Rashid, A., Aksit, M. (eds) Transactions on Aspect-Oriented Software Development III. Lecture Notes in Computer Science, vol 4620. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-75162-5_4
Download citation
DOI: https://doi.org/10.1007/978-3-540-75162-5_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-75161-8
Online ISBN: 978-3-540-75162-5
eBook Packages: Computer ScienceComputer Science (R0)