Semi-formal Models to Support Program Development: Autonomic Management within Component Based Parallel and Distributed Programming

Functional and non-functional concerns require different programming effort, different techniques and different methodologies when attempting to program efficient parallel/distributed applications. In this work we present a "programmer oriented" methodology based on formal tools that permits reasoning about parallel/distributed program development and refinement. The proposed methodology is semi-formal in that it does not require the exploitation of highly formal tools and techniques, while providing a palatable and effective support to programmers developing parallel/distributed applications, in particular when handling non-functional concerns.

[1]  Emilio Luque,et al.  Euro-Par 2008 - Parallel Processing, 14th International Euro-Par Conference, Las Palmas de Gran Canaria, Spain, August 26-29, 2008, Proceedings , 2008, Euro-Par.

[2]  Peter Kilpatrick,et al.  Co-design of Distributed Systems Using Skeleton and Autonomic Management Abstractions , 2008, Euro-Par Workshops.

[3]  David Lorge Parnas,et al.  On the Design and Development of Program Families , 2001, IEEE Transactions on Software Engineering.

[4]  Peter Kilpatrick,et al.  Behavioural Skeletons in GCM: Autonomic Management of Grid Components , 2008, 16th Euromicro Conference on Parallel, Distributed and Network-Based Processing (PDP 2008).

[5]  Barry W. Boehm,et al.  A spiral model of software development and enhancement , 1986, Computer.

[6]  Doina Bucur,et al.  Secure Data Flow in a Calculus for Context Awareness , 2008, Concurrency, Graphs and Models.

[7]  Frank D. Valencia,et al.  Formal Methods for Components and Objects , 2002, Lecture Notes in Computer Science.

[8]  Emilio Tuosto,et al.  Toward a Formal Semantics for Autonomic Components , 2010, ArXiv.

[9]  Antonio Bucchiarone,et al.  Graph-Based Design and Analysis of Dynamic Software Architectures , 2008, Concurrency, Graphs and Models.

[10]  Murray Cole,et al.  Bringing skeletons out of the closet: a pragmatic manifesto for skeletal parallel programming , 2004, Parallel Comput..

[11]  Peter Van Roy,et al.  Multiparadigm Programming in Mozart/Oz, Second International Conference, MOZ 2004, Charleroi, Belgium, October 7-8, 2004, Revised Selected and Invited Papers , 2005, MOZ.

[12]  Peter Kilpatrick,et al.  Autonomic management of non-functional concerns in distributed & parallel application programming , 2009, 2009 IEEE International Symposium on Parallel & Distributed Processing.

[13]  J. Misra Computation Orchestration : A Basis for Wide-Area Computing , 2005 .

[14]  Francesca Cesarini,et al.  Erlang Programming - A Concurrent Approach to Software Development , 2009 .

[15]  Marco Danelutto,et al.  Algorithmic skeletons meeting grids , 2006, Parallel Comput..

[16]  Mary Shaw,et al.  Software architecture - perspectives on an emerging discipline , 1996 .

[17]  Jayadev Misra,et al.  Computation Orchestration , 2007, Software & Systems Modeling.

[18]  Wolfgang Schröder-Preikschat,et al.  On the Configuration of Non-Functional Properties in Operating System Product Lines , 2005 .

[19]  Sebastián Uchitel,et al.  Leveraging Modes and UML2 for Service Brokering Specifications , 2008, MDWE@MoDELS.

[20]  Anneke Kleppe,et al.  MDA explained - the Model Driven Architecture: practice and promise , 2003, Addison Wesley object technology series.

[21]  Marco Danelutto,et al.  Towards software component assembly language enhanced with workflows and skeletons , 2008, CBHPC '08.

[22]  Robin Milner,et al.  Communicating and mobile systems - the Pi-calculus , 1999 .

[23]  Ugo Montanari,et al.  Shaped Hierarchical Architectural Design , 2004, Electron. Notes Theor. Comput. Sci..

[24]  Luciano Baresi,et al.  Style-based modeling and refinement of service-oriented architectures , 2006, Software & Systems Modeling.

[25]  Roberto Bruni,et al.  Architectural design rewriting as an architecture description language , 2008 .

[26]  Peter Kilpatrick,et al.  Management in Distributed Systems: A Semi-formal Approach , 2007, Euro-Par.

[27]  Anne-Marie Kermarrec,et al.  Proceedings of the 13th European international conference on Parallel Processing , 2007 .

[28]  Marco Danelutto QoS in parallel programming through application managers , 2005, 13th Euromicro Conference on Parallel, Distributed and Network-Based Processing.

[29]  Dong Chun-Li,et al.  Communication Optimization on Automatic Program Parallelization , 2007, Eighth ACIS International Conference on Software Engineering, Artificial Intelligence, Networking, and Parallel/Distributed Computing (SNPD 2007).

[30]  Sergei Gorlatch,et al.  Grid Computing: Achievements and Prospects , 2008 .

[31]  Peter Kilpatrick,et al.  Adding metadata to Orc to support reasoning about grid programs , 2007, CoreGRID.

[32]  Jeffrey O. Kephart,et al.  The Vision of Autonomic Computing , 2003, Computer.

[33]  Peter Kilpatrick,et al.  From Orc Models To Distributed Grid Java Code , 2008, CoreGRID Integration Workshop.

[34]  Christian Pérez,et al.  A Software Component Model with Spatial and Temporal Compositions for Grid Infrastructures , 2008, Euro-Par.

[35]  Nazareno Aguirre,et al.  Hierarchical Temporal Specifications of Dynamically Reconfigurable Component Based Systems , 2004, Electron. Notes Theor. Comput. Sci..

[36]  Ivan Lanese,et al.  Synchronised Hyperedge Replacement as a Model for Service Oriented Computing , 2005, FMCO.