Skip to main content

On Refinement of Software Architectures

  • Conference paper
Theoretical Aspects of Computing – ICTAC 2005 (ICTAC 2005)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 3722))

Included in the following conference series:

Abstract

Although increasingly popular, software component techniques still lack suitable formal foundations on top of which rigorous methodologies for the description and analysis of software architectures could be built. This paper aims to contribute in this direction: building on previous work by the authors on coalgebraic semantics, it discusses component refinement at three different but interrelated levels: behavioural, syntactic, i.e., relative to component interfaces, and architectural. Software architectures are defined through component aggregation. On the other hand, such aggregations, no matter how large and complex they are, can also be dealt with as components themselves, which paves the way to a discipline of hierarchical design. In this context, a major contribution of this paper is the introduction of a set of rules for architectural refinement.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Abdurazik, A.: Suitability of the UML as an Architecture Description Language with Applications to Testing. Technical Report ISE-TR-00-01, Information and software engineering, George Mason University (2000)

    Google Scholar 

  2. Arbab, F.: Abstract Behavior Types: A Foundation Model for Components and Their Composition. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2002. LNCS, vol. 2852, pp. 33–70. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  3. Arbab, F., Rutten, J.: A coinductive calculus of component connectors. In: Wirsing, M., Pattinson, D., Hennicker, R. (eds.) WADT 2003. LNCS, vol. 2755, pp. 34–55. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  4. Barbosa, L.S.: Towards a Calculus of State-based Software Components. Journal of Universal Computer Science 9(8), 891–909 (2003)

    Google Scholar 

  5. Barbosa, L.S., de Oliveira, J.N.F.: State-based components made generic. In: Peter Gumm, H. (ed.) Elect. Notes in Theor. Comp. Sci. (CMCS 2003 - Workshop on Coalgebraic Methods in Computer Science), Warsaw, April 2003, vol. 82.1 (2003)

    Google Scholar 

  6. Barbosa, L.S., Meng, S., Aichernig, B.K., Rodrigues, N.: On the semantics of componentware: a coalgebraic perspective. In: He, J., Liu, Z. (eds.) Mathematical Frameworks for Component Software.- Models for Analysis and Synthesis, ch. 2. World Scientific, Singapore (2004) (to be published)

    Google Scholar 

  7. Berson, A.: Client/Server Architecture. McGraw-Hill, New York (1992)

    Google Scholar 

  8. Booch, G., Rumbaugh, J., Jacobson, I.: The Unified Modeling Language User Guide. Addison Wesley, Reading (1999)

    Google Scholar 

  9. de Roever, W.-P., Engelhardt, K.: Data Refinement: Model-Oriented Proof Methods and their Comparison. Cambridge University Press, Cambridge (1998)

    Book  MATH  Google Scholar 

  10. Garlan, D.: Higher-order connectors. In: Proceedings of Workshop on Compositional Software Architectures (January 1998)

    Google Scholar 

  11. Hoare, C.A.R., Jifeng, H., Sanders, J.W.: Prespecification in data refinement. Information Processing Letters 25, 71–76 (1987)

    Article  MATH  MathSciNet  Google Scholar 

  12. Hoare, C.A.R.: Proof of correctness of data representations. Acta Information 1, 271–281 (1972)

    Article  MATH  Google Scholar 

  13. Hunt, J.: The Unified Process for Practitioners: Object Oriented Design, UML and Java, Practitioner. Springer, Heidelberg (2001)

    Google Scholar 

  14. Inverardi, P., Wolf, A.L.: Formal specification and analysis of software architectures using the chemical abstract machine model. IEEE Transactions on Software Engineering 21(4) (1995)

    Google Scholar 

  15. Jacobs, B., Hughes, J.: Simulations in coalgebra. In: Peter Gumm, H. (ed.) Elect. Notes in Theor. Comp. Sci (CMCS 2003 - Workshop on Coalgebraic Methods in Computer Science), Warsaw, April 2003, vol. 82, pp. 245–263 (2003)

    Google Scholar 

  16. Marco, M.A., Barbosa, A., Barbosa, L.S.: A Relational Model for Component Interconnection. Journal of Universal Computer Science 10(7), 808–823 (2004)

    Google Scholar 

  17. Marco, M.A., Barbosa, A., Barbosa, L.S.: Specifying software connectors. In: Liu, Z., Araki, K. (eds.) ICTAC 2004. LNCS, vol. 3407, pp. 52–67. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  18. Meng, S., Barbosa, L.S.: On Refinement of Generic Components. Technical Report 281, UNU/IIST (May 2003)

    Google Scholar 

  19. Meng, S., Barbosa, L.S.: On Refinement of Generic State-based Software Components. In: Rattray, C., Maharaj, S., Shankland, C. (eds.) AMAST 2004. LNCS, vol. 3116, pp. 506–520. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  20. Milner, R.: Communication and Concurrency. Prentice Hall, Englewood Cliffs (1989)

    MATH  Google Scholar 

  21. Morgan, C.: Programming from Specifications, Second Edition. Prentice Hall, Englewood Cliffs (1994)

    Google Scholar 

  22. Moriconi, M., Qian, X., Riemenschneider, R.A.: Correct architecture refinement. IEEE Transactions on Software Engineering 21(4), 356–372 (1995)

    Article  Google Scholar 

  23. OMG. OMG Unified Modeling Language Specification, Version 1.3 (2000)

    Google Scholar 

  24. Philipps, J., Rumpe, B.: Refinement of information flow architectures. In: Hinchey, M. (ed.) Proceedings of ICFEM 1997. IEEE CS Press, Los Alamitos (1997)

    Google Scholar 

  25. Rumbaugh, J., Jacobson, I., Booch, G.: The Unified Modeling Language Reference Manual. Addison Wesley Longman, Amsterdam (1999)

    Google Scholar 

  26. Rutten, J.: Universal coalgebra: a theory of systems. Theoretical Computer Science 249, 3–80 (2000)

    Article  MATH  MathSciNet  Google Scholar 

  27. Schneider, J.-G., Nierstrasz, O.: Components, scripts, glue. In: Barroca, L., Hall, J., Hall, P. (eds.) Software Architectures - Advances and Applications, pp. 13–25. Springer, Heidelberg (1999)

    Google Scholar 

  28. Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discipline. Prentice Hall, Englewood Cliffs (1996)

    MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Meng, S., Barbosa, L.S., Naixiao, Z. (2005). On Refinement of Software Architectures. In: Van Hung, D., Wirsing, M. (eds) Theoretical Aspects of Computing – ICTAC 2005. ICTAC 2005. Lecture Notes in Computer Science, vol 3722. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11560647_31

Download citation

  • DOI: https://doi.org/10.1007/11560647_31

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-29107-7

  • Online ISBN: 978-3-540-32072-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics