Abstract
Early architectural assumptions (EAAs) are initial assumptions about the architectural solution that are made already during requirements elicitation. Such EAAs are inherently present when applying requirements engineering methods and techniques situated at the transition to architecture, for example those adhering to the Twin Peaks model to software engineering.
In the current state-of-the-art, early architectural assumptions (EAAs) are documented implicitly, and they are tangled within and scattered across heterogeneous requirement artifacts. This makes it hard to distinguish EAAs from actual requirements, analyze their relevance, and bring them in relation to architectural decisions taken in later development stages. As a consequence, early development activities in the transition to architecture are hindered by the lack of explicit support for EAAs.
In this paper, we address this problem in the context of scenario-based requirements (use cases and quality attribute scenarios). We present a system meta-model for EAAs, and provide an aspect-oriented requirements language that allows the instantiation of EAAs in terms of use case-level pointcuts. We employ our prototype implementation of above-mentioned techniques to evaluate and illustrate the benefits of making EAAs explicit in the early stages of development, specifically in terms of modularity and requirements navigability.
Chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
References
Ali Babar, M., Dingsyr, T., Lago, P., Van Vliet, H.: Software Architecture Knowledge Management: Theory and Practice. Springer (2009)
Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. Addison-Wesley (2003)
Chitchyan, R., Pinto, M., Rashid, A., Fuentes, L.: Compass: Composition-centric mapping of aspectual requirements to architecture. In: Rashid, A., Akşit, M. (eds.) Transactions on AOSD IV. LNCS, vol. 4640, pp. 3–53. Springer, Heidelberg (2007)
Chitchyan, R., Rashid, A., Rayson, P., Waters, R.: Semantics-based composition for aspect-oriented requirements engineering. In: Barry, B.M., de Moor, O. (eds.) AOSD. ACM ICPS, vol. 208, pp. 36–48. ACM (2007)
Cockburn, A.: Writing Effective Use Cases. Addison-Wesley Professional (January 2000)
Coleman, D.: A use case template: Draft for discussion (1998)
Eaddy, M., Aho, A., Murphy, G.C.: Identifying, assigning, and quantifying crosscutting concerns. In: Proceedings of the First International ACoM Workshop, ACoM 2007, p. 2 (2007)
Garlan, D., Allen, R., Ockerbloom, J.: Architectural mismatch, or, why it’s hard to build systems out of existing parts. In: Proceedings of the 17th ICSE Conference, pp. 179–185 (April 1995)
Jacobson, I., Griss, M., Jonssson, P.: Software Reuse: Architecture, Process and Organization for Business Success. Addison-Wesley (1997)
Jacobson, I., Ng, P.-W.: Aspect-Oriented Software Development with Use Cases, 1st edn. Addison-Wesley (December 2004)
Katz, S., Mezini, M., Kienzle, J. (eds.): Transactions on Aspect-Oriented Software Development VII. LNCS, vol. 6210. Springer, Heidelberg (2010)
Kazman, R., Klein, M., Barbacci, M., Longstaff, T., Lipson, H., Carriere, J.: The architecture tradeoff analysis method. In: Proceedings of the Fourth IEEE International Conference on Engineering of Complex Computer Systems, ICECCS 1998, pp. 68–78 (1998)
Kienzle, J., Guelfi, N., Mustafiz, S.: Crisis Management Systems: A Case Study for Aspect-Oriented Modeling. Transactions on Aspect-Oriented Software Development 7, 1–22 (2010)
Kruchten, P., Lago, P., van Vliet, H.: Building up and reasoning about architectural knowledge. In: Hofmeister, C., Crnković, I., Reussner, R. (eds.) QoSA 2006. LNCS, vol. 4214, pp. 43–58. Springer, Heidelberg (2006)
Malan, R., Bredemeyer, D.: Functional requirements and use cases: System has properties (2005)
Moreira, A., Araújo, J.A., Brito, I.: Crosscutting quality attributes for requirements engineering. In: Proceedings of the 14th International Conference on Software Engineering and Knowledge Engineering, SEKE 2002, pp. 167–174. ACM, New York (2002)
Moreira, A., Rashid, A., Araújo, J.: Multi-dimensional separation of concerns in requirements engineering. In: RE, pp. 285–296. IEEE Computer Society (2005)
Nuseibeh, B.: Weaving together requirements and architectures. IEEE Computer 34(3), 115–117 (2001)
Nuseibeh, B.: Crosscutting requirements. In: Proceedings of the 3rd International Conference on Aspect-Oriented Software Development, AOSD 2004, pp. 3–4. ACM, New York (2004)
Rashid, A., Moreira, A., Araújo, J.: Modularisation and composition of aspectual requirements. In: AOSD 2003: Proceedings of the 2nd International Conference on Aspect-Oriented Software Development, pp. 11–20. ACM, New York (2003)
Riaz, M., Sulayman, M., Naqvi, H.: Architectural decay during continuous software evolution and impact of ‘design for change’ on software architecture. In: Ślęzak, D., Kim, T.-h., Kiumi, A., Jiang, T., Verner, J., Abrahão, S. (eds.) ASEA 2009. CCIS, vol. 59, pp. 119–126. Springer, Heidelberg (2009)
Roeller, R., Lago, P., van Vliet, H.: Recovering architectural assumptions. Journal of Systems and Software 79(4), 552–573 (2006)
Rosenhainer, L.: Identifying crosscutting concerns in requirements specifications (2004)
Sillito, J., Dutchyn, C., Eisenberg, A.D., De Volder, K.: Use case level pointcuts. In: Odersky, M. (ed.) ECOOP 2004. LNCS, vol. 3086, pp. 246–268. Springer, Heidelberg (2004)
U. Software Engineering Institute (SEI) (Carnegie Mellon). Arche, architecture expert design assistant, http://www.sei.cmu.edu/architecture/tools/arche/
Some, S.S.: Use cases based requirements validation with scenarios. In: IEEE International Conference on Requirements Engineering, pp. 465–466 (2005)
Tekinerdogan, B., Moreira, A., Araujo, J., Clements, P.: Presented papers: finding aspects in requirements with theme/doc (2004)
Van Landuyt, D., Truyen, E., Joosen, W.: Discovery of stable abstractions for aspect-oriented composition in the car crash management domain. In: Katz, S., Mezini, M., Kienzle, J. (eds.) Transactions on AOSD VII. LNCS, vol. 6210, pp. 375–422. Springer, Heidelberg (2010)
Van Landuyt, D., Truyen, E., Joosen, W.: Documenting early architectural assumptions in scenario-based requirements. In: Proceedings of the Joint 10th Working IEEE/IFIP Conference on Software Architecture & 6th European Conference on Software Architecture (2012)
Van Landuyt, D., Truyen, E., Joosen, W.: On the modularity impact of architectural assumptions. In: Proceedings of the 2012 NEMARA Workshop, NEMARA 2012, pp. 13–16 (2012)
Weston, N., Chitchyan, R., Rashid, A.: Formal semantic conflict detection in aspect-oriented requirements. Requir. Eng. 14, 247–268 (2009)
Wojcik, R., Bachmann, F., Bass, L., Clements, P.C., Merson, P., Nord, R., Wood, W.G.: Attribute-driven design (add), version 2.0. Technical report, Software Engineering Institute (November 2006)
Zschaler, S., Rashid, A.: Aspect assumptions: a retrospective study of aspectj developers’ assumptions about aspect usage. In: Proceedings of the Tenth International Conference on AOSD 2011, pp. 93–104. ACM (2011)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Van Landuyt, D., Joosen, W. (2014). Modularizing Early Architectural Assumptions in Scenario-Based Requirements. In: Gnesi, S., Rensink, A. (eds) Fundamental Approaches to Software Engineering. FASE 2014. Lecture Notes in Computer Science, vol 8411. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-54804-8_12
Download citation
DOI: https://doi.org/10.1007/978-3-642-54804-8_12
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-54803-1
Online ISBN: 978-3-642-54804-8
eBook Packages: Computer ScienceComputer Science (R0)