Skip to main content
Log in

A Calculus for Generic, QoS-Aware Component Composition

  • Published:
Mathematics in Computer Science Aims and scope Submit manuscript

Abstract

Software QoS properties, such as response time, availability, bandwidth requirement, memory usage, among many others, play a major role in the processes of selecting and composing software components. This paper extends a component calculus to deal, in an effective way, with them. The calculus models components as generalised Mealy machines, i.e., state-based entities interacting along their life time through well defined interfaces of observers and actions. QoS is introduced through an algebraic structure specifying the relevant QoS domain and how its values are composed under different disciplines. A major effect of introducing QoS-awareness is that a number of equivalences holding in the plain calculus become refinement laws. The paper also introduces a prototyper for the calculus developed as a ‘proof-of-concept’ implementation.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Adamek J.: An introduction to coalgebra. Theory Appl. Categ. 14(8), 157–199 (2005)

    MathSciNet  MATH  Google Scholar 

  2. Barbosa L.S.: Towards a calculus of state-based software components. J. Univ. Comput. Sci. 9(8), 891–909 (2003)

    Google Scholar 

  3. Barbosa, L.S., Meng, S.: QoS-aware Component Composition. Proceeding of the CISIS 2010, IEEE Computer Society, pp. 1008–1013 (2010)

  4. Barbosa L.S., Oliveira J.N.: State-based components made generic. Electr. Notes Theor. Comput. Sci. 82(1), 39–56 (2003)

    Article  Google Scholar 

  5. Barbosa L.S., Oliveira J.N.: Transposing partial components: an exercise on coalgebraic refinement. Theor. Comput. Sci. 365(1–2), 2–22 (2006)

    Article  MathSciNet  MATH  Google Scholar 

  6. Bird R., de Moor O.: Algebra of Programming. Prentice Hall, Englewood Cliffs (1997)

    MATH  Google Scholar 

  7. Bolch G., Greiner S., de Meer H., Trivedi K.S.: Queueing Networks and Markov Chains: Modeling and Performance Evaluation with Computer Science Applications. Wiley, Hoboken (2006)

    Book  MATH  Google Scholar 

  8. Chothia T., Kleijn J.: Q-Automata: modelling the resource usage of concurrent components. Electr. Notes Theor. Comput. Sci. 175(2), 153–167 (2007)

    Article  Google Scholar 

  9. Hasuo, I., Heunen, C., Jacobs, B., Sokolova, A.: Coalgebraic components in a many-sorted microcosm. Proceeding of CALCO 2009, Lecture Notes in Computer Science 5728, Springer, pp. 64–80 (2009)

  10. Hughes J., Jacobs B.: Simulations in coalgebra. Theor. Comput. Sci. 327(1–2), 71–108 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  11. Hasuo, I.: Generic Forward and Backward Simulations II: Probabilistic Simulation. Proceedings of CONCUR 2010, Lecture Notes in Computer Science 6269, Springer, pp. 447–461 (2009)

  12. Hoogendijk, P.F.: A generic theory of datatypes. PhD thesis, Department of Computing Science, Eindhoven University of Technology (1996)

  13. Jacobs, B.: Exercises in coalgebraic specification. Algebraic and Coalgebraic Methods in the Mathematics of Program Construction, volume 2297 of LNCS, Springer, pp. 237–280 (2002)

  14. Kock A.: Strong functors and monoidal monads. Arch. Math. 23, 113–120 (1972)

    Article  MathSciNet  MATH  Google Scholar 

  15. Martins, A., Barbosa, L.S., Rodrigues, N.F.: Shacc: A Functional Prototyper for a Component Calculus. Proceedings CALCO-Tools’11, Lecture Notes in Computer Science 6859, Springer, pp. 413–419 (2011)

  16. Marsan M.A., Conte G., Balbo G.: A class of generalized stochastic petri nets for the performance evaluation of multiprocessor systems. ACM Trans. Comput. Syst. 2(2), 93–122 (1984)

    Article  Google Scholar 

  17. Menascé D.A.: Composing web services: a QoS view. IEEE Internet Comput. 8(6), 8–90 (2004)

    Google Scholar 

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

    MATH  Google Scholar 

  19. Rutten J.: Universal coalgebra: a theory of systems. Theor. Comput. Sci. 249, 3–80 (2000)

    Article  MathSciNet  MATH  Google Scholar 

  20. Meng S., Arbab F.: QoS-driven service selection and composition using quantitative constraint automata. Fundam. Inf. 95(1), 103–128 (2009)

    MathSciNet  MATH  Google Scholar 

  21. Meng S., Barbosa L.S.: Components as coalgebras: the refinement dimension. Theor. Comput. Sci. 351(2), 276–294 (2006)

    Article  MathSciNet  MATH  Google Scholar 

  22. Meng S.: Pre-galois connection on coalgebras for generic component refinement. Electr. Notes Theor. Comput. Sci. 207, 203–217 (2008)

    Article  Google Scholar 

  23. Szyperski C., Gruntz D., Mure S.: Component Software—Beyond Object-Oriented Programming. 2nd edn. Publishing House of Electronics Industry, Beijing (2003)

    Google Scholar 

  24. Stotts P.D., Pugh W.: Parallel finite automata for modeling concurrent software systems. J. Syst. Softw. 27(1), 27–43 (1994)

    Article  Google Scholar 

  25. Zeng L., Benatallah B., Ngu A.H.H., Dumas M., Kalagnanam J., Chang H.: QoS-aware middleware for web services composition. IEEE Trans. Softw. Eng. 30(5), 311–327 (2004)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to L. S. Barbosa.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Barbosa, L.S., Meng, S. A Calculus for Generic, QoS-Aware Component Composition. Math.Comput.Sci. 6, 475–497 (2012). https://doi.org/10.1007/s11786-012-0137-2

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11786-012-0137-2

Keywords

Mathematics Subject Classification (2000)

Navigation