Skip to main content

Concern-Based Composition and Reuse of Distributed Systems

  • Conference paper
Software Reuse: Methods, Techniques, and Tools (ICSR 2004)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 3107))

Included in the following conference series:

  • 542 Accesses

Abstract

Successful reusable software for large-scale distributed systems often must operate in multiple contexts, e.g., due to (1) integration with other systems using different technologies and platforms, (2) constant fine tuning needed to satisfy changing customer needs, and (3) evolving market conditions resulting from new laws and regulations. This situation causes vexing challenges for developers of reusable software, who must manage the variation between these contexts without overcomplicating their solutions and exceeding project time and effort constraints. This paper provides three contributions to R&D efforts that address these challenges. First, it motivates the use of a concern-based approach to enhance the level of abstraction at which component-based distributed systems are developed and reused to (1) improve software quality and developer productivity, and (2) localize variability aspects to simplify substitution of reusable component implementations. Second, we present our experience dealing with different domain- and middleware-specific variability gained applying model-based component middleware software technologies to develop an Inventory Tracking System that manages the flow of goods in warehouses. Third, we present a concern-based research strategy aimed at effectively managing the variability caused by the presence of multiple middleware platforms and technologies. Our experience to date shows that using model-based software tools and component middleware as the core elements of software composition and reuse – in conjunction with concern-based commonality and variability analysis – helps reduce development complexity, improve system maintainability and reuse, and increase developer productivity.

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

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

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. Kiczales, G.: Aspect-Oriented Programming. In: Proceedings of the 11th European Conference on Object-Oriented Programming (June 1997)

    Google Scholar 

  2. http://www.aosd.net

  3. Schmidt, D.C., Huston, S.D.: C++ Network Programming, Mastering Complexity with ACE and Patterns, 1st edn. Addison-Wesley, Boston (2002)

    Google Scholar 

  4. Schmidt, D.C., Huston, S.D.: C++ Network Programming, Systematic Reuse with ACE and Frameworks, 2nd edn. Addison-Wesley, Reading (2002)

    Google Scholar 

  5. BEA Systems, et al.: CORBA Component Model Joint Revised Submission, Object Management Group, OMG Document orbos/99-07-01 edn (July 1999)

    Google Scholar 

  6. Wang, N., Balasubramanian, K., Gill, C.: Towards a Real-time CORBA Component Model. In: OMG Workshop On Embedded & Real-Time Distributed Object Systems, Washington, D.C. (July 2002) ;Object Management Group

    Google Scholar 

  7. Wang, N., Schmidt, D.C., Gokhale, A., Gill, C.D., Natarajan, B., Rodrigues, C., Loyall, J.P., Schantz, R.E.: Total Quality of Service Provisioning in Middleware and Applications. Microprocessors and Microsystems 26(9-10) (2003)

    Google Scholar 

  8. Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns. Addison-Wesley, Reading (2001)

    Google Scholar 

  9. Coplien, J., Hoffman, D., Weiss, D.: Commonality and variability in software engineering. IEEE Software, November/December 1999, 37–45 (1999)

    Google Scholar 

  10. Czarnecki, K., Eisenecker, U.: Generative Programming: Methods,Tools, and Applications. Addison-Wesley Pub Co, Reading ISBN: 0201309777

    Google Scholar 

  11. Object Management Group: Deployment and Configuration of Component-based Distributed Applications , An Adopted Specification of the Object Management Group, Inc (June 2003); Draft Adopted Specification ptc (July 2002)

    Google Scholar 

  12. OMG adopted specification: UML Profile for Enterprise Distributed Object Computing Specification Document number ptc/02-02-05.pdf

    Google Scholar 

  13. Object Management Group. UML Profile for Patterns, v1.0. formal/04-02-04

    Google Scholar 

  14. Ledeczi, A.: The Generic Modeling Environment. In: Workshop on Intelligent Signal Processing, accepted, Budapest, Hungary, May 17 (2001) (accepted)

    Google Scholar 

  15. Ledeczi, A., Maroti, M., Bakay, A., Karsai, G., Garrett, J., Thomason IV, C., Nordstrom, G., Sprinkle, J., Volgyesi, P.: The Generic Modeling Environment. In: Workshop on IntelligentSignal Processing, accepted, Budapest, Hungary, May 17 (2001)

    Google Scholar 

  16. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1995)

    Google Scholar 

  17. Gray, J., Bapty, T., Neema, S.: Handling Crosscutting Constraints in Domain-Specific Modeling. Communications of the ACM, 87–93 (October 2001)

    Google Scholar 

  18. Gray, J., Sztipanovits, J., Neema, T.B.S., Gokhale, A., Schmidt, D.C.: Two-level Aspect Weaving to Support Evolution of Model-Based Software. In: Filman, R., Elrad, T., Aksit, M., Clarke, S. (eds.) Aspect-Oriented Software Development, Addison-Wesley, Reading (2003)

    Google Scholar 

  19. Neema, S., Bapty, T., Gray, J., Gokhale, A.: Generators for synthesis of qoS adaptation in distributed real-time embedded systems. In: Batory, D., Consel, C., Taha, W. (eds.) GPCE 2002. LNCS, vol. 2487, p. 236. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  20. Harel, D., Gery, E.: Executable Object Modeling with Statecharts. In: Proceedings of the 18th International Conference on Software Engineering, pp. 246–257. IEEE Computer Society Press, Los Alamitos (1996)

    Chapter  Google Scholar 

  21. Harrison, T., Levine, D., Schmidt, D.C.: The Design and Performance of a Real-time CORBA Event Service. In: Proceedings of OOPSLA 1997, Atlanta, Georgia (October 1997)

    Google Scholar 

  22. Ho, W.-M., Jezequel, J.-M., Pennaneac’h, F., Plouzeau, N.: A Toolkit for Weaving Aspect-Oriented UML Designs. In: First International Conferenceon Aspect-Oriented Software Development, Enschede, The Netherlands (April 2002)

    Google Scholar 

  23. Sztipanovits, J., Karsai, G.: Model-Integrated Computing. IEEE Computer 30, 110–112 (1997)

    Article  Google Scholar 

  24. Kiczales, G.: AOP The Fun has Just Begun. In: New Visions for Software Design & Productivity Workshop, Vanderbilt University, Nashville (2001)

    Google Scholar 

  25. Kircher, M., Jain, P.: Pattern-Oriented Software Architecture - Patterns for Resource Management, 3rd edn., John Wiley & Sons, Chichester (May 2004) (will be published in)

    Google Scholar 

  26. Buck, J.T., Ha, S., Lee, E.A., Messerschmitt, D.G.: Ptolemy: A Framework for Simulating and Prototyping Heterogeneous Systems. International Journal of Computer Simulation, Special Issue on Simulation Software Development Component Development Strategies 4 (1994)

    Google Scholar 

  27. Lin, M.: Synthesis of control software in a layered architecture from hybrid automata. In: Vaandrager, F.W., van Schuppen, J.H. (eds.) HSCC 1999. LNCS, vol. 1569, pp. 152–164. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  28. Liskov, B.: Data Abstraction and Hierarchy. SIGPLAN Notices 23, 5 (1988)

    Google Scholar 

  29. OMG: Model Driven Architecture (MDA) Document number ormsc/2001-07-01Architecture Board ORMSC1,July 9 (2001)

    Google Scholar 

  30. OMG: Meta-Object Facility, version 1.4, January 11 (2002)

    Google Scholar 

  31. Mezini, M., Ostermann, K.: Integrating Independent Components with On-demand Remodularization. In: To appear in the Proceedings of the 17th ACM Conference on Object-Oriented Pro-gramming, Systems, Languages, and Applications (OOPSLA 2002), Seattle, Washington, USA, ACM, New York (2002)

    Google Scholar 

  32. Mezini, M., Ostermann, K.: Conquering Aspects with Caesar. In: Aksit, M. (ed.) Proceedings of the 2nd International Conference on Aspect-Oriented Software Development (AOSD), March 17-21, pp. 90–100. ACM Press, Boston (2003)

    Chapter  Google Scholar 

  33. Schmidt, D.C., Stal, M., Rohnert, H., Buschmann, F.: Pattern-Oriented SoftwareArchitecture: Patterns for Concurrent and Networked Objects, 2nd edn. Wiley & Sons, New York (2000)

    Google Scholar 

  34. Fowler, M., Beck, K., Brant, J., Opdyke, W.,, D.: Roberts Refactoring: Improving the Design of Existing Code. Addison-Wesley Pub. Co, Reading ISBN: 0201485672

    Google Scholar 

  35. Laddad, R.: AspectJ in action. In: Practical Aspect-Oriented Programming, Manning Publications Co ISBN 1-930110-93-6

    Google Scholar 

  36. Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. Addison-Wesley, Reading ISBN: 0321154959

    Google Scholar 

  37. Schmidt, D.C., Levine, D.L., Mungee, S.: The Design and Performance of Real-Time Object Request Brokers. Computer Communications 21(4), 294–324 (1998)

    Article  Google Scholar 

  38. Schmidt, D.C., Levine, D.L., Cleeland, C.: Architectures and Patterns for High-performance. In: Zelkowitz, M. (ed.) Real-time CORBA Object Request Brokers, Advances in Computers, Academic Press, London (1999)

    Google Scholar 

  39. Tarr, P., Ossher, H., Harrison, W., Sutton, S.: N Degrees of Separation: Multi-Dimensional Separation of Concerns. In: International Conference on Software Engineering (ICSE), Los Angeles, California, May 1999, pp. 107–119 (1999)

    Google Scholar 

  40. Object Management Group: Unified Modeling Language (UML) v1.5, OMG Document formal/2003-03-01 edn. (March 2003)

    Google Scholar 

  41. Volter, M., Schmid, A., Wolff, E.: Server Component Patterns: Component Infrastructures Illustrated with EJB. Wiley& Sons, Chichester ISBN is 0-470-84319-5

    Google Scholar 

  42. W.A. Domain: Extensible Markup Language (XML), http://www.w3c.org/XML

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Nechypurenko, A., Lu, T., Deng, G., Turkay, E., Schmidt, D.C., Gokhale, A. (2004). Concern-Based Composition and Reuse of Distributed Systems. In: Bosch, J., Krueger, C. (eds) Software Reuse: Methods, Techniques, and Tools. ICSR 2004. Lecture Notes in Computer Science, vol 3107. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-27799-6_14

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-27799-6_14

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-22335-1

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics