Software Engineering for Ensembles

Software development is difficult, even if we control most of the operational parameters and if the software is designed to run on a single machine. But in the future we will face an even more challenging task: engineering ensembles consisting of thousands, or even millions, of nodes, all operating in parallel, with open boundaries, possibly unreliable components and network links, and governed by multiple entities. To develop reliable and trustworthy software for these kinds of systems we need to go far beyond the current state of the art and address fundamental problems in software development. We present some challenges and promising avenues for research about software-engineering for ensembles.

[1]  Alexander Knapp,et al.  Enhancing UML state machines with aspects , 2007, MODELS'07.

[2]  Bashar Nuseibeh,et al.  Viewpoints: A Framework for Integrating Multiple Perspectives in System Development , 1992, Int. J. Softw. Eng. Knowl. Eng..

[3]  Robert S. Arnold,et al.  Software Change Impact Analysis , 1996 .

[4]  Brice Morin,et al.  Introducing variability into aspect-oriented modeling approaches , 2007, MODELS'07.

[5]  Frank van Harmelen,et al.  Handbook of Knowledge Representation , 2008, Handbook of Knowledge Representation.

[6]  Adrian Thompson,et al.  Scrubbing away transients and jiggling around the permanent: long survival of FPGA systems through evolutionary self-repair , 2004, Proceedings. 10th IEEE International On-Line Testing Symposium.

[7]  Johann Schumann,et al.  Automated Theorem Proving in Software Engineering , 2001, Springer Berlin Heidelberg.

[8]  Evans,et al.  Domain-driven design , 2003 .

[9]  Andy Schürr,et al.  Vervollständigung des Constraint-basierten Assoziationskonzeptes von UML 2.0 , 2006, Modellierung.

[10]  John G. Gibbons Knowledge in Action , 2001 .

[11]  Rob Pooley,et al.  The unified modelling language , 1999, IEE Proc. Softw..

[12]  W. Taha,et al.  Plenary talk III Domain-specific languages , 2008, 2008 International Conference on Computer Engineering & Systems.

[13]  B. Jack Copeland,et al.  CYC: A case study in ontological engineering , 1997 .

[14]  I. C. Parmee Adaptive Computing in Design and Manufacture , 1998 .

[15]  Donald Michie,et al.  Machine Intelligence 4 , 1970 .

[16]  William G. Griswold,et al.  An Overview of AspectJ , 2001, ECOOP.

[17]  Evangelos Kranakis Primality and cryptography , 1986, Wiley-Teubner series in computer science.

[18]  Johan Anton,et al.  SPECWARE - Producing Software Correct by Construction , 2001 .

[19]  Raymond McCall,et al.  Rationale Management in Software Engineering , 2006 .

[20]  Anthony Finkelsteiin Relating viewpoints: a preface to Viewpoints 96 , 1996, ISAW '96.

[21]  Paolo Traverso,et al.  Applied Formal Methods — FM-Trends 98 , 1998, Lecture Notes in Computer Science.

[22]  Harold Ossher,et al.  Using multidimensional separation of concerns to (re)shape evolving software , 2001, CACM.

[23]  João Araújo,et al.  An expressive aspect composition language for UML state diagrams , 2007, MODELS'07.

[24]  John R. Koza,et al.  Automatic Creation of Human-Competitive Programs and Controllers by Means of Genetic Programming , 2000, Genetic Programming and Evolvable Machines.

[25]  Tonya Lewis,et al.  Knowledge in Action , 1977 .

[26]  E. Davis,et al.  Common Sense Reasoning , 2014, Encyclopedia of Social Network Analysis and Mining.

[27]  Raheel Ahmad,et al.  Expert Systems: Principles and Programming , 2006, Scalable Comput. Pract. Exp..

[28]  Klaus Pohl,et al.  Software Product Line Engineering , 2005 .

[29]  Jørgen Lindskov Knudsen ECOOP 2001 — Object-Oriented Programming , 2001, Lecture Notes in Computer Science.

[30]  S. Gnesi,et al.  A MODEL CHECKING VERIFICATION ENVIRONMENT FOR UML STATECHARTS , 2005 .

[31]  Friedrich Steimann,et al.  Systematically refactoring inheritance to delegation in java , 2008, 2008 ACM/IEEE 30th International Conference on Software Engineering.

[32]  Len Shustek,et al.  InterviewDonald Knuth: A life's work interrupted , 2008, CACM.

[33]  J. Pearl Causality: Models, Reasoning and Inference , 2000 .

[34]  Martin Wirsing,et al.  Consistency checking in an infrastructure for large-scale generative programming , 2004, Proceedings. 19th International Conference on Automated Software Engineering, 2004..

[35]  Frank Wolter,et al.  Handbook of Modal Logic , 2007, Studies in logic and practical reasoning.

[36]  Gene Cooperman,et al.  Solving Rubik's Cube: disk is the new RAM , 2008, CACM.

[37]  Mark E. Stickel,et al.  Automated deduction by theory resolution , 1985, Journal of Automated Reasoning.

[38]  Chen Avin,et al.  Identifiability of Path-Specific Effects , 2005, IJCAI.

[39]  T. Ming Jiang,et al.  Fast, Portable Application Mirroring , 1995, IEEE Softw..

[40]  Ivar Jacobson,et al.  The Unified Modeling Language User Guide , 1998, J. Database Manag..

[41]  Frank van Harmelen,et al.  Extensions to the Rippling-Out Tactic for Guiding Inductive Proofs , 1990, CADE.

[42]  Gregor Engels Model Driven Engineering Languages and Systems, 10th International Conference, MoDELS 2007, Nashville, USA, September 30 - October 5, 2007, Proceedings , 2007, MoDELS.

[43]  John R. Koza,et al.  Survey of genetic algorithms and genetic programming , 1995, Proceedings of WESCON'95.

[44]  Diego Calvanese,et al.  The Description Logic Handbook: Theory, Implementation, and Applications , 2003, Description Logic Handbook.

[45]  Ivar Jacobson,et al.  Unified Modeling Language User Guide, The (2nd Edition) (Addison-Wesley Object Technology Series) , 2005 .

[46]  Frederick P. Brooks The Mythical Man-Month: After 20 years , 1995, IEEE Software.

[47]  Christoph Adami,et al.  Artificial life VI : proceedings of the sixth International Conference on Artificial Life , 1998 .

[48]  Gabor Karsai,et al.  The Model-Integrated Computing toolsuite: Metaprogrammable tools for embedded control system design , 2006, 2006 IEEE Conference on Computer Aided Control System Design, 2006 IEEE International Conference on Control Applications, 2006 IEEE International Symposium on Intelligent Control.

[49]  Paul Graham On LISP: Advanced Techniques for Common LISP , 1993 .

[50]  Axel Uhl,et al.  MDA Distilled , 2004 .

[51]  D. Kirsh Foundations of Artificial Intelligence , 1991 .

[52]  John McCarthy,et al.  SOME PHILOSOPHICAL PROBLEMS FROM THE STANDPOINT OF ARTI CIAL INTELLIGENCE , 1987 .

[53]  Mary Poppendieck,et al.  Lean Software Development: An Agile Toolkit , 2003 .

[54]  R L Rumpf,et al.  Software Intensive Systems , 2006 .

[55]  Oscar Nierstrasz,et al.  Change-Enabled Software Systems , 2008, Software-Intensive Systems and New Computing Paradigms.

[56]  John M. Rushby,et al.  Harnessing Disruptive Innovation in Formal Verification , 2006, Fourth IEEE International Conference on Software Engineering and Formal Methods (SEFM'06).

[57]  John F. Sowa,et al.  Knowledge Representation and Reasoning , 2000 .

[58]  Natarajan Shankar,et al.  PVS: A Prototype Verification System , 1992, CADE.

[59]  Jack Greenfield,et al.  Software factories: assembling applications with patterns, models, frameworks and tools , 2004, OOPSLA '03.

[60]  Mark Hopkins,et al.  Causality and Counterfactuals in the Situation Calculus , 2007, J. Log. Comput..

[61]  John F. Sowa,et al.  Knowledge representation: logical, philosophical, and computational foundations , 2000 .

[62]  Peter E. Hart,et al.  Directions for AI in the eighties , 1982, SGAR.

[63]  Paul J. Layzell,et al.  Explorations in design space: unconventional electronics design through artificial evolution , 1999, IEEE Trans. Evol. Comput..

[64]  Gabor Karsai,et al.  Model-integrated development of complex applications , 1997, Proceedings Fifth International Symposium on Assessment of Software Tools and Technologies.

[65]  Shriver Editor-in-Chief's Message , 1987 .

[66]  Randall Davis,et al.  Expert Systems: Where Are We? And Where Do We Go from Here? , 1982, AI Mag..

[67]  Adrian Thompson,et al.  Notes on design through artificial evolution: Opportunities and algorithms , 2002 .

[68]  Olly Gotel,et al.  An analysis of the requirements traceability problem , 1994, Proceedings of IEEE International Conference on Requirements Engineering.

[69]  Klaus Pohl,et al.  Software Product Line Engineering - Foundations, Principles, and Techniques , 2005 .

[70]  Frederick P. Brooks The Mythical Man-Month: After 20 years , 1995 .

[71]  Don S. Batory,et al.  Scaling step-wise refinement , 2004, IEEE Transactions on Software Engineering.

[72]  Daniel G. Bobrow,et al.  Book review: The Art of the MetaObject Protocol By Gregor Kiczales, Jim des Rivieres, Daniel G. and Bobrow(MIT Press, 1991) , 1991, SGAR.

[73]  Robert Hirschfeld,et al.  Language constructs for context-oriented programming: an overview of ContextL , 2005, DLS '05.

[74]  Stuart C. Shapiro Review of Knowledge representation: logical, philosophical, and computational foundations by John F. Sowa. Brooks/Cole 2000. , 2001 .

[75]  Diego Calvanese,et al.  The Description Logic Handbook , 2007 .

[76]  Natarajan Shankar,et al.  PVS: An Experience Report , 1998, FM-Trends.

[77]  Frederick P. Brooks,et al.  No Silver Bullet: Essence and Accidents of Software Engineering , 1987 .

[78]  Peter Struss,et al.  Model-based Problem Solving , 2008, Handbook of Knowledge Representation.

[79]  Nicholas Mark Gotts,et al.  Emergent structures in sparse fields of Conway's “Game of Life” , 1998 .

[80]  Deepak Ramachandran,et al.  First-Orderized ResearchCyc : Expressivity and Efficiency in a Common-Sense Ontology , 2005 .

[81]  Bedir Tekinerdogan,et al.  Modeling traceability of concerns in architectural views , 2007, AOM@AOSD.

[82]  M. Bedau Weak Emergence * , 1997 .

[83]  Greg Nelson,et al.  Simplification by Cooperating Decision Procedures , 1979, TOPL.

[84]  Robert Hirschfeld,et al.  Reflective layer activation in ContextL , 2007, SAC '07.

[85]  Randall D. Beer,et al.  Autopoiesis and Cognition in the Game of Life , 2004, Artificial Life.

[86]  Krzysztof Czarnecki,et al.  Generative programming - methods, tools and applications , 2000 .

[87]  B. Chandrasekaran,et al.  Deep versus Compiled Knowledge Approaches to Diagnostic Problem-Solving , 1982, Int. J. Man Mach. Stud..

[88]  Michael A. Jackson,et al.  Problem Frames - Analysing and Structuring Software Development Problems , 2000 .

[89]  Frank Wolter,et al.  Handbook of Modal Logic, Volume 3 (Studies in Logic and Practical Reasoning) , 2006 .

[90]  Robert T. Wainwright,et al.  Life is universal! , 1974, WSC '74.