[go: up one dir, main page]

Skip to main content

Abstract

This chapter presents our solution to the CoCoME assignment that is based on the SOFA 2.0 (SOFtware Appliances) hierarchical component model. The solution involves (i) modeling architecture in SOFA meta-model, (ii) speci fication of component behavior via extended behavior protocols, (iii) checking behavior compliance of components, (iv) verification of correspondence be tween selected component Java code and behavior specification, (v) deploy ment to SOFA run-time envi ronment (using connectors that support RMI and JMS), and (vi) modeling of performance and resource usage via layered queue ing networks. We faced sev eral issues during implementation of the CoCoME assignment in SOFA 2.0. Most notably, the architecture was modified in order to improve clarity of the design – in particular, the hierarchical bus was re placed by two separate buses and the Inventory component was restructured. Extended behavior protocols for all the components are based on the provided plain-English use cases, the UML sequence diagrams, and the reference Java implementation (the assignment does not include a complete UML behavior specification e.g. via activity dia grams and state charts).

This work was partially supported by the Grant Agency of the Czech Republic project 201/06/0770, the results will be used in the ITEA/EUREKA project OSIRIS Σ!2023.

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

Access this chapter

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. Adamek, J., Bures, T., Jezek, P., Kofron, J., Mencl, V., Parizek, P., Plasil, F.: Component Reliability Extensions for Fractal Component Model (2006), http://kraken.cs.cas.cz/ft/public/public_index.phtml

  2. Adamek, J., Plasil, F.: Component Composition Errors and Update Atomicity: Static Analysis. Journal of Software Maintenance and Evolution: Research and Practice 17(5) (September 2005)

    Google Scholar 

  3. Aldrich, J., Chambers, C., Notkin, D.: ArchJava: Connecting Software Architecture to Implementation. In: Proc. of ICSE 2002, Orlando, USA (May 2002)

    Google Scholar 

  4. Allen, R.J.: A Formal Approach to Software Architecture, Ph.D. Thesis, School of Computer Science, Carnegie Mellon University (May 1997)

    Google Scholar 

  5. Balsamo, S., DiMarco, A., Inverardi, P., Simeoni, M.: Model-based Performance Prediction in Software Development. IEEE Transactions on Software Engineering 30(5) (May 2004)

    Google Scholar 

  6. Baumeister, H., Hacklinger, F., Hennicker, R., Knapp, A., Wirsing, M.: A Component Model for Architectural Programming. In: ENTCS, Vol. 160 (August 2006)

    Google Scholar 

  7. Bruneton, E., Coupaye, T., Leclercq, M., Quema, V., Stefani, J.-B.: The Fractal Component Model and Its Support in Java. Software Practice and Experience, Special issue on Experiences with Auto-adaptive and Reconfigurable Systems 36(11-12) (2006)

    Google Scholar 

  8. Bures, T.: Generating Connectors for Homogeneous and Heterogeneous Deployment, Ph.D. Thesis, Dep. of SW Engineering, Charles University, Prague (September 2006)

    Google Scholar 

  9. Bures, T., Hnetynka, P., Plasil, F.: SOFA 2.0: Balancing Advanced Features in a Hierarchical Component Model. In: Proc. of SERA 2006, Seattle, USA, August 2006, IEEE CS, Los Alamitos (2006)

    Google Scholar 

  10. Eclipse Modeling Framwork, http://www.eclipse.org/emf/

  11. Enterprise Java Beans specification, version 2.1, Sun Microsystems (November 2003)

    Google Scholar 

  12. Ghosh, A., Givargis, T.: Cache optimalization for embedded processor cores: An analytical approach. ACM Transactions on Design Automation of Electronic Systems (TODAES), 9(4) (October 2004)

    Google Scholar 

  13. Haas, P.J.: Stochastic Petri Nets: Modelling. Springer, New York (2002)

    MATH  Google Scholar 

  14. Hirsch, D., Kramer, J., Magee, J., Uchitel, S.: Modes for Software Architectures. In: Gruhn, V., Oquendo, F. (eds.) EWSA 2006. LNCS, vol. 4344. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  15. Hnetynka, P., Plasil, F.: Dynamic Reconfiguration and Access to Services in Hierarchical Component Models. In: Gorton, I., Heineman, G.T., Crnković, I., Schmidt, H.W., Stafford, J.A., Szyperski, C.A., Wallnau, K. (eds.) CBSE 2006. LNCS, vol. 4063. Springer, Heidelberg (2006)

    Google Scholar 

  16. Kofron, J.: Extending Behavior Protocols With Data and Multisynchronization, Tech. Report No. 2006/10, Dep. of SW Engineering, Charles University in Prague (October 2006)

    Google Scholar 

  17. Magee, J., Kramer, J.: Concurrency State Models & Java Programs. Wiley, Chichester (1999)

    MATH  Google Scholar 

  18. Magee, J., Kramer, J.: Dynamic structure in software architectures. In: Proc. of FSE 2004, San Francisco, USA (October 1996)

    Google Scholar 

  19. Mencl, V., Bures, T.: Microcomponent-Based Component Controllers: A Foundation for Component Aspects. In: Proc. of APSEC 2005, Taipei, Taiwan, December 2005, IEEE CS, Los Alamitos (2005)

    Google Scholar 

  20. OMG: UML Profile for Schedulability, Performance and Time, OMG document formal/2005-01-02 (January 2005)

    Google Scholar 

  21. OMG: CORBA Components, v 3.0, OMG document formal/02-06-65 (June 2002)

    Google Scholar 

  22. OMG: MDA Guide, v. 1.0.1, OMG document omg/03-06-01 (Jun 2003)

    Google Scholar 

  23. van Ommering, R., van der Linden, F., Kramer, J., Magee, J.: The Koala Component Model for Consumer Electronics Software. IEEE Computer 33(3) (March 2000)

    Google Scholar 

  24. Plasil, F., Balek, D., Janecek, R.: SOFA/DCUP: Architecture for Component Trading and Dynamic Updating. In: Proc. of ICCDS 1998, Annapolis, USA. IEEE CS Press, Los Alamitos (May 1998)

    Google Scholar 

  25. Plasil, F., Visnovsky, S.: Behavior Protocols for Software Components. IEEE Transactions on Software Engineering 28(11) (November 2002)

    Google Scholar 

  26. Seinturier, L., Pessemier, N., Duchien, L., Coupaye, T.: A Component Model Engineered with Components and Aspects. In: Gorton, I., Heineman, G.T., Crnković, I., Schmidt, H.W., Stafford, J.A., Szyperski, C.A., Wallnau, K. (eds.) CBSE 2006. LNCS, vol. 4063. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  27. SOFA CoCoME (2007), http://dsrg.mff.cuni.cz/cocome/sofa

  28. SOFA 2.0 implementation, http://sofa.objectweb.org/

  29. Spin, http://www.spinroot.com/

  30. Sun Microsystems, JSR 220: Enterprise JavaBeansTM, Version 3.0

    Google Scholar 

  31. Woodside, C.M., Neron, E., Ho, E.D.S., Mondoux, B.: An Active-Server Model for the Performance of Parallel Programs Written Using Rendezvous. Journal of Systems and Software (1986)

    Google Scholar 

  32. Xu, J., Oufimtsev, A., Woddside, C.M., Murphy, L.: Performance Modeling and Prediction of Enterprise JavaBeans with Layered Queueing Network Templates. ACM SIGSOFT Software Engineering Notes 31(2) (March 2006)

    Google Scholar 

  33. Wu, X.P., Woodside, C.M.: Performance Modeling from Software Components. In: Proc. of WOSP 2004, Redwood Shores, USA (January 2004)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Andreas Rausch Ralf Reussner Raffaela Mirandola František Plášil

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Bureš, T. et al. (2008). CoCoME in SOFA. In: Rausch, A., Reussner, R., Mirandola, R., Plášil, F. (eds) The Common Component Modeling Example. Lecture Notes in Computer Science, vol 5153. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-85289-6_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-85289-6_15

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-85288-9

  • Online ISBN: 978-3-540-85289-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics