Abstract
Early aspects are crosscutting concerns that are identified in the early phases of the software development life cycle. These concerns do not align well with the decomposition criteria of traditional software development paradigms and, therefore, they are difficult to modularise. The result is their specification and implementation scattered along several base modules, producing tangled representations that are difficult to maintain, reuse and evolve. It is now understood that the influence of requirements that cut across other requirements results in incomplete understanding of specified requirements and limits the architectural choices. Thus, a rigorous analysis of crosscutting requirements and their interactions is essential to derive a balanced architecture. Early Aspects offer additional abstraction and composition mechanisms for systematically handling crosscutting requirements. This paper focuses on two pioneering requirements approaches, one based on viewpoints and another based on use-cases.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Araújo, J., Whittle, J., Kim, D.: Modeling and Composing Scenario-Based Requirements with Aspects. In: 12th IEEE International Requirements Engineering Conference, Japan, pp. 58–67 (2004)
Araújo, J., Moreira, A., Whittle, J.: Aspect-Oriented RE with Scenarios. Tutorial Presented at 15th RE 2007, India (2007), http://www.re07.org/tutorials/#T3
Baniassad, E., Clarke, S.: Theme: An approach for aspect-oriented analysis and design. In: 26th International Conference on Software Engineering, Scotland, pp. 158–167 (2004)
Brito, I., Vieira, F., Moreira, A., Ribeiro, R.: Handling Conflicts in Aspectual Requirements Compositions. In: Rashid, A., Liu, Y. (eds.) Transactions on Aspect-Oriented Software Development. LNCS, vol. 4620, pp. 144–166. Springer, Heidelberg (2007)
Chung, L., Nixon, B., Yu, E., Mylopoulos, J.: Non-Functional Requirements in Software Engineering. Kluwer, Dordrecht (2000)
Chitchyan, R., Rashid, A., Sawer, P., Garcia, A., Alarcon, M., Bakker, J., Tekinerdogan, B., Clarke, S., Jackson, A.: Survey of Analysis and Design Approaches, TR, AOSD-Europe-ULANC-9 (2005)
Clark, R., Moreira, A.: Constructing Formal Specifications from Informal Requirements. In: Software Technology and Engineering Practice, pp. 68–75. IEEE Computer Society Press, Los Alamitos (1997)
Dijkstra, E.: A Discipline of Programming. Prentice-Hall, Englewood Cliffs (1976)
Finkelstein, A., Sommerville, I.: The Viewpoints FAQ. Software Engineering Journal: Special Issue on Viewpoints for Software Engineering, IEE/BCS 11(1), 2–4 (1996)
Jacobson, I., Chirsterson, M., Jonsson, P., Overgaard, G.: Object-Oriented Software Engineering: a Use Case Driven Approach. Addison-Wesley, Reading (1992)
Jackson, M.: Problem Frames: Analyzing and Structuring Software Development Problems. Addison Wesley, Reading (2000)
Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J., Irwin, J.: Aspect-Oriented Programming. In: Liu, Y., Auletta, V. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)
Lamsweerde, A.: Goal-Oriented Requirements Engineering: A Guided Tour. In: 5th International Symposium on RE, pp. 249–261. IEEE CS Press, Los Alamitos (2001)
Moreira, A., Araújo, J., Brito, I.: Crosscutting Quality Attributes for Requirements Engineering. In: 14th ACM International Conference on SEKE, pp. 167–174 (2002)
Moreira, A., Rashid, A., Araújo, J.: Multi-dimensional Separation of Concerns in Requirements Engineering. In: 13th IEEE Requirements Engineering Conference, Paris, France, pp. 285–296 (2005)
Moreira, A., Araújo, J., Whittle, J.: Modeling Volatile Concerns as Aspects. In: Martinez, F.H., Pohl, K. (eds.) CAiSE 2006. LNCS, vol. 4001, pp. 544–558. Springer, Heidelberg (2006)
Pimentel, A., Gomes, C., Moreira, A., Ribeiro, R.A., Araújo, J.: HAM for architectural choices in software development. In: 14th Congress of APDIO, Book of abstract—IO 2009, Lisbon (September 2009)
HAM tool, http://ample.holos.pt/pageview.aspx?pageid=78&langid=1#ham , http://www.ample-project.net
Rashid, A., Garcia, A., Moreira, A.: Aspect-Oriented Software Development beyond Programming. Tutorial Presented at ICSE 2006 (2006)
Rashid, A., Moreira, A.: Domain Models are NOT Aspect Free. In: Wang, J., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 155–169. Springer, Heidelberg (2006)
Rashid, A., Moreira, A., Araújo, J.: Modularisation and Composition of Aspectual Requirements. In: ACM International Conference on AOSD, pp. 11–20 (2003)
Rashid, A., Moreira, A., Tekinerdogan, B.: Editoral Early Aspects: Aspect-Oriented Requirements Engineering and Architecture Design. IEE - Proceedings Software 151(4), 153–156 (2004)
Ross, D.T., Goodenough, J.B., Irvine, C.A.: Software Engineering: Process, Principles, and Goals. Computer 8(5), 17–27 (1975)
Sampaio, A., Rashid, A., Chitchyan, R., Rayson, P.: EA-Miner: Towards Automation in Aspect-Oriented Requirements Engineering. Trans. on Aspect-Oriented Software Development 3, 4–39 (2007)
Tarr, P., Ossher, H., Harrison, H., Sutton, J.S.: N Degrees of Separation: Multi-Dimensional Separation of Concerns. In: 21th IEEE International Conference on Software Engineering, Canada, pp. 107–119 (1999)
Weston, N., Chitchyan, R., Rashid, A.: Formal semantic conflict detection in aspect-oriented requirements. Requirements Engineering 14(4), 247–268 (2009)
Whittle, J., Moreira, A., Araújo, J., Rabbi, R., Jayaraman, P., Elkhodary, A.: An Expressive Aspect Composition Language for UML State Diagrams. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 514–528. Springer, Heidelberg (2007)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Moreira, A., Araújo, J. (2011). The Need for Early Aspects. In: Fernandes, J.M., Lämmel, R., Visser, J., Saraiva, J. (eds) Generative and Transformational Techniques in Software Engineering III. GTTSE 2009. Lecture Notes in Computer Science, vol 6491. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-18023-1_11
Download citation
DOI: https://doi.org/10.1007/978-3-642-18023-1_11
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-18022-4
Online ISBN: 978-3-642-18023-1
eBook Packages: Computer ScienceComputer Science (R0)