Abstract
This paper presents the idea of Software Architecture Oriented Requirements Engineering, a complementary approach to existing requirements engineering processes and methods. The main objective is to introduce concepts and principles of software architecture into requirement analysis and requirement specification, supporting requirement reuse, traceability between requirement specifications and system design, and consistency in the whole software development process more effectively. The paper views connectors as the first-class entities in the problem space, not just in the solution space as most of current research on software architecture does, hence the connector recognition and specification are same important as component recognition and specification in requirements engineering. Based on this idea, the paper presents a new software development process and corresponding requirements engineering process, gives some guidelines for connector recognition, and borrows the notations of software architecture description to specify the functional and behavioural requirements at a high abstraction level. It must be pointed out that the approach presented in this paper is not a substitute for existing ones, but a complement to them from another perspective and at a different abstraction level.
- {1} Finkelstein, A. Requirements Engineering: a review and research agenda, in Proc 1st Asian & Pacific Software Engineering Conference, (IEEE CS Press) 1994.Google Scholar
- {2} David Garlan and Mary Shaw, An Introduction to Software Architecture, In Advances in Software Engineering and Knowledge Engineering, Volume 1, World Scientific Publishing Company, 1993.Google Scholar
- {3} Dewayne E. Perry and Alexander L. Wolf, Foundations for the Study of Software Architecture, ACM SIGSOFT Software Engineering Notes, 17(4), 1992. Google ScholarDigital Library
- {4} Cristina Gacek, Ahmed Abd-Allah, Bradford Clark, and Barry Boehm, On the Definition of Software System Architecture, ICSE 17 Sottware Architecture Workshop, 1995.Google Scholar
- {5} A. K. Jones, The Maturing of Software Architecture, Software engineering Symposium, Software Engineering Institute, Pittsburgh, August 1994.Google Scholar
- {6} Bass, Clements, and Kazman. Software Architecture in Practice, Addison-Wesley 1997 Google ScholarDigital Library
- {7} Robert Allen and David Garlan, Formalizing Architectural Connection, ICSE 16, Italy, May, 1994. Google ScholarDigital Library
- {8} Robert Allen and David Garlan, Beyond Definition/Use: Architectural Interconnection, Workshop on Interface Definition Languages, Oregon, January, 1994. Google ScholarDigital Library
- {9} M. Shaw, R. Deline, D. V. Klein, T. L Ross, D. M. Young, and G. Zelesnik, Abstractions for Software Architecture and Tools to Support Them, IEEE Transactions on Software Engineering, April 1995. Google ScholarDigital Library
- {10} David Garlan, Higher-Order Connectors, Workshop on Compositional Software Architectures, Monterey, CA, January 1998.Google Scholar
- {11} I. Jacobson, et al, Object-Oriented Software Engineering, A Use Case Driven Approach, Addison-Wesley, 1992. Google ScholarDigital Library
Index Terms
- A complementary approach to requirements engineering—software architecture orientation
Recommendations
Aspect-Oriented Requirements Engineering for Component-Based Software Systems
RE '99: Proceedings of the 4th IEEE International Symposium on Requirements EngineeringDeveloping requirements for software components, and ensuring these requirements are met by component designs, is very challenging, as very often application domain and stakeholders are not fully known during component development. We introduce a new ...
Software architecture: foundations, theory, and practice
ICSE '10: Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 2Software architecture has become a centerpiece subject for software engineers, both researchers and practitioners alike. At the heart of every software system is its software architecture, i.e., "the set of principal design decisions about the system". ...
A software architecture modeling tool
TELE-INFO'09: Proceedings of the 8th Wseas international conference on Telecommunications and informaticsA key aspect of the design of any software system is its architecture. An architecture description provides a formal model of the architecture in terms of components and connectors and how they are composed together. COSA (Component-Object based ...
Comments