skip to main content
10.1145/1147249.1147260acmotherconferencesArticle/Chapter ViewAbstractPublication PagesisstaConference Proceedingsconference-collections
Article

Towards supporting the architecture design process through evaluation of design alternatives

Published: 17 July 2006 Publication History

Abstract

This paper addresses issues involved when an architect explore alternative designs including non-functional requirements; in our approach, non-functional requirements are expressed as state-charts. Non-functional requirements greatly impact the resulting design of a system because they naturally conflict with each other, crosscut the system at multiple points, and may be satisfied in a number of different ways. This makes correctly designing them early in the software lifecycle critical, since correcting them later can be extremely costly. Our approach supports an architect generating and evaluating many different design alternatives. This explorative process is not well supported by current techniques, which focus on documenting the result of this process, but not on assisting the designer during this process. We present an architecture-based approach that supports exploration of non-functional requirements expressed as statecharts. Our approach captures design alternatives of non-functional requirements separately, composes different system designs from these alternatives using a novel weaving technique, and analyzes the resulting design for specific qualities using simulation.

References

[1]
Bosch, J. Design and Use of Software Architectures: Adopting and Evolving a Product-Line Approach. Wesley, A. ed. ACM Press, 2000.
[2]
Brandozzi, M. and Perry, D. E. From Goal-Oriented Requirements to Architecture Prescriptions: The Preskiptor Process. In Proceedings of the Software Requirements to Architectures Workshop (STRAW). p. 107--113, May, 2003.
[3]
Chung, L., Nixon, B., et al. Non-functional Requirements in Software Engineering. Kulwer Academic Publishers, 2000.
[4]
Cysneiros, L. M., Leite, J.C.S.P., et al. A Framework for Integrating Non-functional Requirements into Conceptual Models. In Proceedings of the Requirements Engineering. 2001.
[5]
Cysneiros, L. M. and Leite, J.C.S.P. Nonfunctional Requirements: From Elicitation to Conceptual Models. IEEE Transactions on Software Engineering. May, 2004.
[6]
Egyed, A. and Wile, D. Statechart Simulator for Modeling Architectural Dynamics. In Proceedings of the 2nd International Working Conference on Software Architecture. Amsterdam, The Netherlands, August, 2001.
[7]
Gross, D. and Yu, E. From Non-Functional Requirements to Design Through Patterns. Requirements Engineering Journal. 6, 2001.
[8]
Harel, D. Statecharts: A Visual Formalism for Complex Systems. Science of Computer Programming. 8, p. 231--274, 1987.
[9]
Holzmann, G. J. Design and Validation of Computer Protocols. Prentice Hall: Englewood Cliffs, N.J., 1991.
[10]
Holzmann, G. J. The Model Checker SPIN. IEEE Transactions on Software Engineering. 23(5), p. 279--295, May, 1997.
[11]
Institute for Software Research. EASEL, An Extensible Architecting Support Environment with Layers. <http://www.isr.uci.edu/projects/easel/>, University of California, Irvine.
[12]
Lopes, C. V., Kiczales, G., et al. Aspect-Oriented Programming. In Proceedings of the European Conference on Object-Oriented Programming. Finland, 1997.
[13]
Lopez-Herrejon, R., Batory, D., et al. A Displined Approach to Aspect Composition. In Proceedings of the Workshop on Partial Evaluation and Program Manipulation. p. 68--77, Charleston, SC, January 9-10, 2006.
[14]
Luckham, D. C., Kenney, J. J., et al. Specification and Analysis of System Architecture Using Rapide. IEEE Transactions on Software Engineering. 21(4), p. 336--355, April, 1995.
[15]
Luckham, D. C. and Vera, J. An Event-Based Architecture Definition Language. IEEE Transactions on Software Engineering. 21(9), p. 717--734, September, 1995.
[16]
Muccini, H., Bertolino, A., et al. Using Software Architecture for Code Testing. IEEE Transactions on Software Engineering. 30, p. 160--177, March, 2004.
[17]
Mylopoulos, J., Chung, L., et al. Representing and Using Non-Functional Requirements: A Process-Oriented Approach. IEEE Transactions on Software Engineering. 18, June, 1992.
[18]
van Lamsweerde, A. From System Goals to Software Architecture. In Proceedings of the SFM. p. 25--43, 2003.
[19]
Vieira, M. E. R., Dias, M. S., et al. Analyzing Software Architectures with Argus-I. In Proceedings of the International Conference on Software Engineering (ICSE 2000). p. 758--761, Limerick, Ireland, June 4-11, 2000.
[20]
Xu, L., Ziv, H., et al. An Architectural Pattern for Non-functional Dependability Requirements. Journal of Systems and Software. to appear.
[21]
Yu, Y., Leite, J. C., et al. From Goals to Aspects: Discovering Aspects from Goal Models. In Proceedings of the International Conference on Requirements Engineering. 2004.

Cited By

View all
  • (2025)Concept definition review: A method for studying terminology in software engineeringInformation and Software Technology10.1016/j.infsof.2024.107648180(107648)Online publication date: Apr-2025
  • (2024)Real-time design patterns for the verification of safety-critical embedded systems in model-based approachThe Journal of Supercomputing10.1007/s11227-023-05866-080:8(11431-11473)Online publication date: 27-Jan-2024
  • (2012)Conflict detection and resolution for product line design in a collaborative decision making environmentProceedings of the ACM 2012 conference on Computer Supported Cooperative Work10.1145/2145204.2145402(1327-1336)Online publication date: 11-Feb-2012
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
ROSATEA '06: Proceedings of the ISSTA 2006 workshop on Role of software architecture for testing and analysis
July 2006
86 pages
ISBN:1595934596
DOI:10.1145/1147249
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 17 July 2006

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. analysis
  2. aspect-oriented design
  3. non-functional requirements
  4. simulation
  5. software architecture design
  6. state charts

Qualifiers

  • Article

Conference

ISSTA06

Acceptance Rates

ROSATEA '06 Paper Acceptance Rate 11 of 11 submissions, 100%;
Overall Acceptance Rate 11 of 11 submissions, 100%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)2
  • Downloads (Last 6 weeks)0
Reflects downloads up to 02 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2025)Concept definition review: A method for studying terminology in software engineeringInformation and Software Technology10.1016/j.infsof.2024.107648180(107648)Online publication date: Apr-2025
  • (2024)Real-time design patterns for the verification of safety-critical embedded systems in model-based approachThe Journal of Supercomputing10.1007/s11227-023-05866-080:8(11431-11473)Online publication date: 27-Jan-2024
  • (2012)Conflict detection and resolution for product line design in a collaborative decision making environmentProceedings of the ACM 2012 conference on Computer Supported Cooperative Work10.1145/2145204.2145402(1327-1336)Online publication date: 11-Feb-2012
  • (2010)Run-time monitoring of system performance: A goal-oriented and system architecture simulation approach2010 First International Workshop on [email protected]10.1109/RERUNTIME.2010.5628551(31-40)Online publication date: Sep-2010
  • (2008)Moda - multiple objective decision analysisCompanion of the 30th international conference on Software engineering10.1145/1370175.1370227(1019-1022)Online publication date: 10-May-2008

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media