Software Connectors and Refinement in Family Architectures

  • Alexander Egyed
  • Nikunj Mehta
  • Nenad Medvidovíc
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1951)

Abstract

Product families promote reuse of software artifacts such as architectures, designs and implementations. Product family architectures are difficult to create due to the need to support variations. Traditional approaches emphasize the identification and description of generic components, which makes it difficult to support variations among products. This paper presents an approach to modeling family architectures using generic software connectors that provide bounded ambiguity and support flexible product families. The paper also proposes an approach for transforming a family architecture to a product design through a four-way refinement and evolution process.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Abi-Antoun, M., Medvidovic, N.: Enabling the Refinement of a Software Architecture into a Design. In: Proceedings of The Second International Conference on The Unified Modeling Language (UML 1999), Fort Collins, CO (October 1999)Google Scholar
  2. 2.
    ARES. Proceedings of the International Workshop on Development and Evolution of Software Architectures for Product Families, Las Navas del Marqués, Ávila, Spain (November 1996), http://hpv17.infosys.tuwien.ac.at/Projects/ARES/public/AWS/
  3. 3.
    ARES II. In: van der Linden, F. (ed.) Proceedings of the Second International Workshop on Development and Evolution of Software Architectures for Product Families, Las Palmas de Gran Canaria, Spain (February 1998)Google Scholar
  4. 4.
    ARES III. The Third International Workshop on Development and Evolution of Software Architectures for Product Families, Las Palmas de Gran Canaria, Spain (February 2000)Google Scholar
  5. 5.
    Batory, L.C., Shafer, S., Tracz, W.: The ADAGE Avionics Reference Architecture. In: Proceedings of AIAA Computing in Aerospace, San Antonio, vol. 10 (1995)Google Scholar
  6. 6.
    Booch, I.J., Rumbaugh, J.: The Unified Modeling Language User Guide. Addison-Wesley, Reading (1998)Google Scholar
  7. 7.
    Egyed, A., Medvidovic, N.: A Formal Approach to Heterogeneous Software Modeling. In: Egyed, A., Medvidovic, N. (eds.) Proceedings of Foundational Aspects of Software Engineering, Berlin, Germany (2000) (to appear)Google Scholar
  8. 8.
    Hayes-Roth, R., Tracz, W.: DSSA Tool Requirements for Key Process Functions. ADAGE Technical Report, ADAGE-IBM-93-13B (October 1994)Google Scholar
  9. 9.
    Medvidovic, N., Taylor, R.N.: A Classification and Comparison Framework for Software Architecture Description Languages. Accepted for publication in IEEE Transactions on Software Engineering (2000) (To appear)Google Scholar
  10. 10.
    Perry, D.E.: Software Architecture and its Relevance to Software Engineering. In: Second International Conference on Coordination Models and Languages (COORD 1997), Berlin, Germany (September 1997) (Invited Talk)Google Scholar
  11. 11.
    Perry, D.E.: Generic Descriptions for Product Line Architectures. In: Proceedings of the Second International Workshop on Development and Evolution of Software Architectures for Product Families (ARES II), Las Palmas de Gran Canaria, Spain (February 1998)Google Scholar
  12. 12.
    The First Software Product Line Conference, August 28-31, Denver, Colorado, USA (2000), http://www.sei.cmu.edu/plp/conf/SPLC.html
  13. 13.
    Batory, D., O’Malley, S.: The Design and Implementation of Hierarchical Software Systems with Reusable Components. ACM Transactions on Software Engineering and Methodology 1(4), 355–398 (1992)CrossRefGoogle Scholar
  14. 14.
    The Open Group, http://www.opengroup.org
  15. 15.
  16. 16.
    Object Management Group, http://www.omg.org
  17. 17.
    Sun Microsystems, http://java.sun.com/j2ee
  18. 18.
    Mehta, N., Medvidovic, N., Phadke, S.: Towards a Taxonomy of Software Connectors, Technical Report, Center for Software Engineering, University of Southern California, USC-CSE-99-529 (1999)Google Scholar
  19. 19.
    Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discipline. Prentice-Hall, Upper Saddle River (1996)MATHGoogle Scholar
  20. 20.
    Roodyn, N., Emmerich, W.: An Architecural Style for Multiple Real-Time Data Feeds. In: 21st International Conference on Software Engineering (ICSE 1999), Los Angeles, CA (May 1999)Google Scholar
  21. 21.
    Carzaniga, E., Di Nitto, D.S., Rosenbloom, D.S., Wolf, A.L.: Issues in Supporting Event-based Architectural Styles. In: 3rd International Software Architecture Workshop (ISAW3), Orlando FL (1998)Google Scholar
  22. 22.
    Taylor, R.N., Medvidovic, N., Anderson, K.M., Whitehead, E.J., Robbins, J.E.: A component- and message-based architectural style for GUI software. IEEE Transactions on Software Engineering 22(6), 390–406 (1996)CrossRefGoogle Scholar
  23. 23.
    Di Nitto, E., Rosenbloom, D.: Exploiting ADLs to Specify Architectural Styles Induced by Middleware Infrastructures. In: 21st International Conference on Software Engineering (ICSE 1999), Los Angeles, CA (May 1999)Google Scholar
  24. 24.
    Medvidovic, N., Taylor, R.N.: Exploiting architectural style to develop a family of applications. In: IEE Proceedings Software Engineering, October 1997, vol. 144(5- 6) (1997)Google Scholar
  25. 25.
    Boehm, B.: Anchoring the Software Process. IEEE Software (July 1996)Google Scholar
  26. 26.
    Medvidovic, N., Rosenblum, D.S., Taylor, R.N.: A Language and Environment for Architecture-Based Software Development and Evolution. In: Proceedings of the 21st International Conference on Software Engineering (ICSE 1999), Los Angeles, CA, May 16-22, pp. 44–53 (1999)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2000

Authors and Affiliations

  • Alexander Egyed
    • 1
  • Nikunj Mehta
    • 1
  • Nenad Medvidovíc
    • 1
  1. 1.Department of Computer ScienceUniversity of Southern CaliforniaLos AngelesUSA

Personalised recommendations