Abstract
Software developers have to deal with software systems which are usually composed of distributed, heterogeneous and interacting application components representing higher-level business goals. Although the message-passing paradigm is a common concept allowing application components to interact with each other in an asynchronous manner, the technology is not entirely suitable for complex coordination requirements since the processing and state of coordination have to be handled explicitly by the application component. Data-driven frameworks support the coordination of application components, but have a limited number of coordination policies requiring from the software developer to implement coordination functionality that is not directly supported by the coordination framework. We illustrate the Space-Based Computing (SBC) paradigm aiming to support and facilitate software developers efficiently in their efforts to control complexity regarding concerns of interaction in software systems. Major results of the evaluation in this context are improved coordination efficiency accompanied with reduced complexity within application components.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Solomon, S., Shir, E.: Complexity; a science at 30. Europhysics News 34(2), 54–57 (2003)
Cilliers, P.: Complexity and Postmodernism: Understanding Complex Systems. Routledge, London (1998)
Broy, M.: The ’Grand Challenge’ in Informatics: Engineering Software-Intensive Systems. Computer 39(10), 72–80 (2006)
Monson-Haefel, R., Chappell, D.: Java Message Service, p. 220. O’Reilly & Associates, Inc., Sebastopol (2000)
Hohpe, G., Woolf, B.: Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions. Addison-Wesley Longman Publishing Co., Inc., Boston (2003)
Chappell, D.: Enterprise Service Bus. O’Reilly Media, Inc., Sebastopol (2004)
Karhinen, A., Kuusela, J., Tallgren, T.: An architectural style decoupling coordination, computation and data. In: Proceedings of Third IEEE International Conference on Engineering of Complex Computer Systems (1997)
Kühn, E., Mordinyi, R., Lang, M., Selimovic, A.: Towards Zero-Delay Recovery of Agents in Production Automation Systems. In: IEEE/WIC/ACM International Conference on Web Intelligence and Intelligent Agent Technology (IAT 2009), vol. 2, pp. 307–310 (2009)
Auprasert, B., Limpiyakorn, Y.: Structuring Cognitive Information for Software Complexity Measurement. In: Proceedings of the 2009 WRI World Congress on Computer Science and Information Engineering, vol. 07. IEEE Computer Society, Los Alamitos (2009)
McDermid, J.A.: Complexity: Concept, Causes and Control. In: 6th IEEE international Conference on Complex Computer Systems. IEEE Computer Society, Los Alamitos (2000)
Gelernter, D.: Generative communication in Linda. ACM Trans. Program. Lang. Syst. 7(1), 80–112 (1985)
Papadopoulos, G.A., Arbab, F.: Coordination Models and Languages. In: Advances in Computers (1998)
Lehman, T.J., Cozzi, A., Xiong, Y., Gottschalk, J., Vasudevan, V., Landis, S., Davis, P., Khavar, B., Bowman, P.: Hitting the distributed computing sweet spot with TSpaces. Comput. Netw. 35(4), 457–472 (2001)
Mordinyi, R.: Managing Complex and Dynamic Software Systems with Space-Based Computing. Phd Thesis, Vienna University of Technology (2010)
Malone, T.W.: What is coordination theory? MIT Sloan School of Management, Cambridge (1988)
Malone, T.W., Crowston, K.: What is coordination theory and how can it help design cooperative work systems? In: CSCW 1990: Proceedings of the 1990 ACM Conference on Computer-Supported Cooperative Work. ACM, New York (1990)
Malone, T.W., Crowston, K.: The interdisciplinary study of coordination. ACM Comput. Surv. 26(1), 87–119 (1994)
Weigand, H., van der Poll, F., de Moor, A.: Coordination through Communication. In: Proc. of the 8th International Working Conference on the Language-Action Perspective on Communication Modelling (LAP 2003), pp. 1–2 (2003)
Ciancarini, P.: Coordination models and languages as software integrators. ACM Comput. Surv. 28(2), 300–302 (1996)
Ciancarini, P., Jensen, K., Yankelevich, D.: On the operational semantics of a coordination language. In: Object-Based Models and Languages for Concurrent Systems, pp. 77–106 (1995)
Zavattaro, G.: Coordination Models and Languages: Semantics and Expressiveness. Phd Thesis, Department of Computer Science, University of Bologna (2000)
Sancese, S., Ciancarini, P., Messina, A.: Message Passing vs. Tuple Space Coordination in an Aerodynamics Application. In: Malyshkin, V.E. (ed.) PaCT 1999. LNCS, vol. 1662. Springer, Heidelberg (1999)
Franklin, S.: Coordination without Communication. Inst. For Intelligent Systems, Univ. of Memphis (2008)
Tanenbaum, A.S., Steen, M.v.: Distributed Systems: Principles and Paradigms, 2nd edn. Prentice-Hall, Inc., Englewood Cliffs (2006)
Triantafillou, P., Aekaterinidis, I.: Content-based publish-subscribe over structured P2P networks. In: International Conference on Distributed Event-Based Systems (2004)
Eugster, P.T., Felber, P.A., Guerraoui, R., Kermarrec, A.M.: The many faces of publish/subscribe. ACM Comput. Surv. 35(2), 114–131 (2003)
Cugola, G., Di Nitto, E., Fuggetta, A.: The JEDI Event-Based Infrastructure and Its Application to the Development of the OPSS WFMS. IEEE Trans. Softw. Eng. 27(9), 827–850 (2001)
Huang, Y., Garcia-Molina, H.: Publish/subscribe in a mobile environment. Wirel. Netw. 10(6), 643–652 (2004)
Web services business process execution language version 2.0. OASIS Committee Specification 2007 (2007), http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v2.0.html
Arbab, F., Herman, I., Spilling, P.: Manifold: Concepts and Implementation. In: Proceedings of the Second Joint International Conference on Vector and Parallel Processing: Parallel Processing. Springer, Heidelberg (1992)
Cruz, J.C., Ducasse, S.: A Group Based Approach for Coordinating Active Objects. In: Ciancarini, P., Wolf, A.L. (eds.) COORDINATION 1999. LNCS, vol. 1594, pp. 355–370. Springer, Heidelberg (1999)
Jayadev, M.: Computation Orchestration - A basis for wide-area computing. In: Engineering Theories of Software Intensive Systems, pp. 285–330 (2005)
Gelernter, D., Carriero, N.: Coordination languages and their significance. Commun. ACM 35(2), 96 (1992)
Wells, G.C.: Coordination Languages: Back to the Future with Linda. In: Proceedings of the Second International Workshop on Coordination and Adaption Techniques for Software Entities (WCAT 2005), pp. 87–98 (2005)
Zloof, M.M.: Query-by-example: the invocation and definition of tables and forms. In: Proceedings of the 1st International Conference on Very Large Data Bases. ACM, Framingham (1975)
van der Goot, R., Schaeffer, J., Wilson, G.V.: Safer Tuple Spaces. In: Garlan, D., Le Métayer, D. (eds.) COORDINATION 1997. LNCS, vol. 1282. Springer, Heidelberg (1997)
Freeman, E., Arnold, K., Hupfer, S.: JavaSpaces Principles, Patterns, and Practice. Addison-Wesley Longman Ltd., Essex (1999)
Murphy, A.L., Picco, G.P., Roman, G.C.: LIME: A coordination model and middleware supporting mobility of hosts and agents. ACM Trans. Softw. Eng. Methodol. 15(3), 279–328 (2006)
Picco, G.P., Murphy, A.L., Roman, G.C.: LIME: Linda meets mobility. In: ICSE 1999: Proceedings of the 21st International Conference on Software Engineering. IEEE Computer Society Press, Los Alamitos (1999)
Cabri, G., Leonardi, L., Zambonelli, F.: MARS: a programmable coordination architecture for mobile agents. IEEE Internet Computing 4(4), 26–35 (2000)
Cabri, G., Leonardi, L., Zambonelli, F.: Mobile Agent Coordination for Distributed Network Management. Journal of Network and Systems Management 9(4), 435–456 (2001)
Cremonini, M., Omicini, A., Zambonelli, F.: Coordination and Access Control in Open Distributed Agent Systems: The TuCSoN Approach (2000)
Omicini, A., Ricci, A.: MAS Organization within a Coordination Infrastructure: Experiments in TuCSoN (2004)
Omicini, A., Zambonelli, F.: Coordination for Internet Application Development. Autonomous Agents and Multi-Agent Systems 2(3), 251–269 (1999)
Wyckoff, P., McLaughry, S.W., Lehman, T.J., Ford, D.A.: T spaces. IBM Systems Journal 37(3), 454–474 (1998)
Lehman, T.J., McLaughry, S.W., Wycko, P.: T-Spaces: The Next Wave. In: Hawaii Intl. Conf. on System Sciences (HICSS-32) (1999)
Tolksdorf, R., Glaubitz, D.: Coordinating Web-Based Systems with Documents in XMLSpaces. In: CooplS ’01: Proceedings of the 9th International Conference on Cooperative Information Systems. Springer, London (2001)
Tolksdorf, R., Liebsch, F., Nguyen, D.M.: XMLSpaces.NET: An Extensible Tuplespace as XML Middleware. Report B 03-08, Free University Berlin (2003), ftp://ftp.inf.fu-berlin.de/pub/reports/tr-b-0308.pdf ; Open Research Questions in SOA 5-25 and Loose Coupling in Service Oriented Architectures (2004)
Wells, G., Chalmers, A., Clayton, P.: Extending the matching facilities of linda. In: Arbab, F., Talcott, C. (eds.) COORDINATION 2002. LNCS, vol. 2315, p. 380. Springer, Heidelberg (2002)
Wells, G.C.: A Programmable Matching Engine for Application Develoment in Linda. Phd Thesis, University of Bristol (2001)
Wells, G.C.: New and improved: Linda in Java. Sci. Comput. Program. 59(1-2), 82–96 (2006)
Denti, E., Natali, A., Omicini, A.: Programmable Coordination Media. In: Garlan, D., Le Métayer, D. (eds.) COORDINATION 1997. LNCS, vol. 1282. Springer, Heidelberg (1997)
Denti, E., Omicini, A.: An architecture for tuple-based coordination of multi-agent systems. Softw. Pract. Exper. 29(12), 1103–1121 (1999)
Denti, E., Omicini, A., Toschi, V.: Coordination Technology for the Development of Multi-Agent Systems on the Web. In: Proceedings of the 6th AI*IA Congress of the Italian Association for Artificial Intelligence (AI*IA 1999), pp. 29–38 (1999)
Kühn, E., Mordinyi, R., Keszthelyi, L., Schreiber, C.: Introducing the concept of customizable structured spaces for agent coordination in the production automation domain. In: Proceedings of the 8th International Conference on Autonomous Agents and Multiagent Systems (AAMAS 2009), International Foundation for Autonomous Agents and Multiagent Systems, Richland (2009)
Vrba, P.: MAST: manufacturing agent simulation tool (2003)
Vrba, R., Marik, V., Merdan, M.: Physical Deployment of Agent-based Industrial Control Solutions: MAST Story. In: IEEE International Conference on Distributed Human-Machine Systems (2008)
Wooldridge, M.: An Introduction to MultiAgent Systems. John Wiley & Sons, Inc., New York (2009)
Lüder, A., Peschke, J., Sauter, T., Deter, S., Diep, D.: Distributed intelligence for plant automation based on multi-agent systems: the PABADIS approach. Production Planning and Control 15, 201–212 (2004)
Kemppainen, K.: Priority scheduling revisited - dominant rules, open protocols and integrated order management. Phd Thesis, Acta Universitatis oeconomicae Helsingiensis. A. (2005)
Rajendran, C., Holthaus, O.: A comparative study of dispatching rules in dynamic flowshops and jobshops. European Journal of Operational Research 116(1), 156–170 (1999)
Hirmer, S., Kaiser, H., Merzky, A., Hutanu, A., Allen, G.: Generic support for bulk operations in grid applications. In: Proceedings of the 4th International Workshop on Middleware for Grid Computing. ACM, Melbourne (2006)
Kühn, E., Mordinyi, R., Schreiber, C.: An Extensible Space-based Coordination Approach for Modeling Complex Patterns in Large Systems. In: 3rd International Symposium on Leveraging Applications of Formal Methods, Verification and Validation, Special Track on Formal Methods for Analysing and Verifying Very Large Systems (2008)
Craß, S., Kühn, E., Salzert, G.: Algebraic foundation of a data model for an extensible space-based collaboration protocol. In: Proceedings of the 2009 International Database Engineering & Applications Symposium (IDEAS 2009). ACM, New York (2009)
Crass, S.: A Formal Model of the Extensible Virtual Shared Memory (XVSM) and its Implementation in Haskell. Institute of Computer Languages, Vienna University of Technology (2010)
Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.-M., Irwin, J.: Aspect-oriented programming (1997)
Kühn, E., Mordinyi, R., Keszthelyi, L., Schreiber, C., Bessler, S., Tomic, S.: Aspect-oriented Space Containers for Efficient Publish/Subscribe Scenarios in Intelligent Transportation Systems. In: Proceedings of the 11th International Symposium on Distributed Objects, Middleware, and Applications, DOA 2009 (2009)
Secure Space - A Secure Space for Collaborative Security Services (2010), http://tinyurl.com/34ymays (cited)
Kühn, E., Mordinyi, R., Schreiber, C.: Configurable Notifications for Event-based Systems, Vienna University of Technology (2008), TechRep. at http://tinyurl.com/oht888
Mordinyi, R., Moser, T., Kuhn, E., Biffl, S., Mikula, A.: Foundations for a Model-Driven Integration of Business Services in a Safety-Critical Application Domain. In: Euromicro Conference on Software Engineering and Advanced Applications, pp. 267–274 (2009)
Agile-Logistics. Komplexitätsreduzierende Middleware - Technologien für Agile Logistik (2010), http://tinyurl.com/2u8qovc
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Mordinyi, R., Kühn, E. (2011). Coordination Mechanisms in Complex Software Systems. In: Bessis, N., Xhafa, F. (eds) Next Generation Data Technologies for Collective Computational Intelligence. Studies in Computational Intelligence, vol 352. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-20344-2_1
Download citation
DOI: https://doi.org/10.1007/978-3-642-20344-2_1
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-20343-5
Online ISBN: 978-3-642-20344-2
eBook Packages: EngineeringEngineering (R0)