Abstract
[Context and motivation] Architecturally significant requirements (ASRs) drive and constrain many aspects of the architecture. It is therefore beneficial to elicit and analyze these requirements in early phases of a project so that they can be taken into consideration during the architectural design of the system. Unfortunately failure to invest upfront effort in exploring stakeholders quality concerns, can lead to the need for significant refactoring efforts to accommodate emerging requirements. This problem is particularly evident in agile projects which are inherently incremental. [Question/Problem] Existing techniques for early discovery of ASRs, such as Win-Win and i*, are typically rejected by agile development teams as being somewhat heavy-weight. A light-weight approach is therefore needed to help developers identify and explore critical architectural concerns early in the project. [Principal ideas/results] In this paper we present the use of Architecturally-Savvy Personas (ASP-Lite). The personas are used to emerge and analyze stakeholders’ quality concerns and to drive and validate the architectural design. ASP-Lite emerged from our experiences working with the requirements and architectural design of the TraceLab project. The approach proved effective for discovering, analyzing, and managing architecturally significant requirements, and then for designing a high-level architectural solution which was designed to satisfy requirements despite significant interdependencies and tradeoffs. [Contributions] This paper presents the ASP-Lite approach and describes its support for architectural design in the US$2 Million TraceLab project.
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
Abrahamsson, P., Babar, M., Kruchten, P.: Agility and architecture: Can they coexist? IEEE Software 27(2), 16–22 (2010)
Ambler, S.W.: Agile modeling: A brief overview. In: pUML, pp. 7–11 (2001)
Ameller, D., Ayala, C.P., Cabot, J., Franch, X.: How do software architects consider non-functional requirements: An exploratory study. In: RE, pp. 41–50 (2012)
Anton, A.: Goal Identification and Refinement in the Specification of Software-Based Information Systems. Georgia Institute of Technology, Atlanta (1997)
Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice. Adison Wesley (2003)
Beck, K.: Extreme Programming Explained: Embrace Change. Addison-Wesley (2000)
Boehm, B.W., Egyed, A., Port, D., Shah, A., Kwan, J., Madachy, R.J.: A stakeholder win-win approach to software engineering education. Ann. Software Eng. 6, 295–321 (1998)
Bosch, J., Dvorak, D.: Traversing the twin peaks. IEEE Software (2012)
Chung, L.: Non-functional Requirements in Software Engineering. Kluwer Academic Publishers, Norwell (2000)
Cohen, M.: Non-functional requirements as user stories. Mountain Goat Software, mountaingoatsoftware.com
Cooper, A.: The inmates are running the asylum. Software-Ergonomie, 17 (1999)
Davis, A.: Software Requirements - Objects, Functions, and States. Prentice Hall, Englewood Cliffs (1993)
Denne, M., Cleland-Huang, J.: The incremental funding method: Data-driven software development. IEEE Software 21(3), 39–47 (2004)
Dotan, A., Maiden, N., Lichtner, V., Germanovich, L.: Designing with only four people in mind? – a case study of using personas to redesign a work-integrated learning support system. In: Gross, T., Gulliksen, J., Kotzé, P., Oestreicher, L., Palanque, P., Prates, R.O., Winckler, M. (eds.) INTERACT 2009. LNCS, vol. 5727, pp. 497–509. Springer, Heidelberg (2009)
Jansen, A., Bosch, J.: Software architecture as a set of architectural design decisions. In: Proceedings of the 5th Working IEEE/IFIP Conference on Software Architecture, pp. 109–120. IEEE Computer Society Press, Washington, DC (2005)
Kazman, R., Klein, M., Clements, P.: Atam: A method for architecture evaluation. Software Engineering Institute (2000)
Keenan, E., Czauderna, A., Leach, G., Cleland-Huang, J., Shin, Y., Moritz, E., Gethers, M., Poshyvanyk, D., Maletic, J.I., Hayes, J.H., Dekhtyar, A., Manukian, D., Hossein, S., Hearn, D.: Tracelab: An experimental workbench for equipping researchers to innovate, synthesize, and comparatively evaluate traceability solutions. In: ICSE, pp. 1375–1378 (2012)
Mirakhorli, M., Cleland-Huang, J.: Tracing Non-Functional Requirements. In: Zisman, A., Cleland-Huang, J., Gotel, O. (eds.) Software and Systems Traceability. Springer, Heidelberg (2011)
Madison, J.: Agile architecture interactions. IEEE Software 27(2), 41–48 (2010)
Madison, J.: Agile architecture interactions. IEEE Software 27(2), 41–48 (2010)
Nielsen, L.: Personas - User Focused Design. Human-Computer Interaction Series, vol. 15. Springer (2013)
Putnam, C., Kolko, B.E., Wood, S.: Communicating about users in ICTD: leveraging hci personas. In: ICTD, pp. 338–349 (2012)
Rising, L., Janoff, N.S.: The scrum software development process for small teams. IEEE Software 17(4), 26–32 (2000)
Robertson, S., Robertson, J.: Mastering the Requirements Process. Adison Wesley (2006)
Unterkalmsteiner, M., Gorschek, T., Islam, A.K.M.M., Cheng, C.K., Permadi, R.B., Feldt, R.: Evaluation and measurement of software process improvement - a systematic literature review. IEEE Trans. Software Eng. 38(2), 398–424 (2012)
Yu, E.S.K.: Social modeling and i*. In: Conceptual Modeling: Foundations and Applications, pp. 99–121 (2009)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Cleland-Huang, J., Czauderna, A., Keenan, E. (2013). A Persona-Based Approach for Exploring Architecturally Significant Requirements in Agile Projects. In: Doerr, J., Opdahl, A.L. (eds) Requirements Engineering: Foundation for Software Quality. REFSQ 2013. Lecture Notes in Computer Science, vol 7830. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-37422-7_2
Download citation
DOI: https://doi.org/10.1007/978-3-642-37422-7_2
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-37421-0
Online ISBN: 978-3-642-37422-7
eBook Packages: Computer ScienceComputer Science (R0)