You Can't Get There from Here! Large Problems and Potential Solutions in Developing New Classes of Complex Computer Systems

The explosion of capabilities and new products within the sphere of Information Technology (IT) has fostered widespread, overly optimistic opinions regarding the industry, based on common but unjustified assumptions of quality and correctness of software. These assumptions are encouraged by software producers and vendors, who at this late date have not succeeded in finding a way to overcome the lack of an automated, mathematically sound way to develop correct systems from requirements. NASA faces this dilemma as it envisages advanced mission concepts that involve large swarms of small spacecraft that will engage cooperatively to achieve science goals. Such missions entail levels of complexity that beg for new methods for system development far beyond today’s methods, which are inadequate for ensuring correct behavior of large numbers of interacting intelligent mission elements. New system development techniques recently devised through NASA-led research will offer some innovative approaches to achieving correctness in complex system development, including autonomous swarm missions that exhibit emergent behavior, as well as general software products created by the computing industry.

[1]  Roy Sterritt,et al.  Why computer-based systems should be autonomic , 2005, 12th IEEE International Conference and Workshops on the Engineering of Computer-Based Systems (ECBS'05).

[2]  Thomas A. Corbi,et al.  The dawning of the autonomic computing era , 2003, IBM Syst. J..

[3]  M.G. Hinchey,et al.  Autonomous and autonomic systems: a paradigm for future space exploration missions , 2006, IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applications and Reviews).

[4]  Gordon Plotkin,et al.  An Operational Semantics for CSP. , 1982 .

[5]  Nancy G. Leveson,et al.  Safeware: System Safety and Computers , 1995 .

[6]  Charles W Wessner,et al.  Board on Science, Technology and Economic Policy (STEP) , 2012 .

[7]  Bill Stoddart,et al.  An operational semantics for ZCCS , 1997, First IEEE International Conference on Formal Engineering Methods.

[8]  Christopher A. Rouff,et al.  Formal requirements-based programming for complex systems , 2005, 10th IEEE International Conference on Engineering of Complex Computer Systems (ICECCS'05).

[9]  Michael J. Butler csp2B: A Practical Approach to Combining CSP and B , 1999, World Congress on Formal Methods.

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

[11]  Walt Truszkowski,et al.  A Survey of Formal Methods for Intelligent Swarms , 2013 .

[12]  Jeffrey S. Lavell,et al.  Report on the Loss of the Mars Polar Lander and Deep Space 2 Missions , 2000 .

[13]  Roy Sterritt,et al.  Towards autonomic computing: effective event management , 2002, 27th Annual NASA Goddard/IEEE Software Engineering Workshop, 2002. Proceedings..

[14]  K. Rose,et al.  Panel Session , 2005, ICDM.

[15]  Fabrice Kordon,et al.  Formalization of a Spatialized Multiagent Model Using Coloured Petri Nets for the Study of an Hunting Management System , 2000, FAABS.

[16]  Stephen A. Jarvis,et al.  Concurrent systems - formal development in CSP , 1995, McGrawhill international series in software engineering.

[17]  Eugene Miya,et al.  On "Software engineering" , 1985, SOEN.

[18]  Christopher A. Rouff,et al.  Requirements to Design to Code: Towards a Fully Formal Approach to Automatic Code Generation , 2013 .

[19]  C. A. R. Hoare,et al.  Communicating sequential processes , 1978, CACM.

[20]  E. Bonabeau,et al.  Self-organization in social insects. , 1997, Trends in ecology & evolution.

[21]  Richard Murch,et al.  Autonomic Computing , 2004 .

[22]  Dennis Shasha,et al.  The many faces of consensus in distributed systems , 1992, Computer.

[23]  Panagiotis Manolios,et al.  Computer-Aided Reasoning: An Approach , 2011 .

[24]  David Harel,et al.  On visual formalisms , 1988, CACM.

[25]  Christopher A. Rouff,et al.  A Tool for Requirements-Based Programming , 2005 .

[26]  Jonathan P. Bowen,et al.  High-Integrity System Specification and Design , 1999 .

[27]  Harold W. Lawson Rebirth of the computer industry , 2002, CACM.

[28]  Kevin Lano,et al.  Specification in B: An Introduction Using the B Toolkit , 1996 .

[29]  W. J. Kubitz,et al.  Biting the silver bullet: toward a brighter future for system development , 1992 .

[30]  Robert Geisler,et al.  Specifying Safety-Critical Embedded Systems with Statecharts and Z: A Case Study , 1998, FASE.

[31]  Roy Sterritt,et al.  Autonomic Computing - a means of achieving dependability? , 2003, 10th IEEE International Conference and Workshop on the Engineering of Computer-Based Systems, 2003. Proceedings..

[32]  Jim Gray,et al.  What Next? A Few Remaining Problems in Information Technology , 1998, ACM SIGMOD Conference.

[33]  Christopher A. Rouff,et al.  Towards an automated development methodology for dependable systems with application to sensor networks , 2005, PCCC 2005. 24th IEEE International Performance, Computing, and Communications Conference, 2005..

[34]  David Lorge Parnas Software aspects of strategic defense systems , 1985, SOEN.

[35]  Jonathan P. Bowen,et al.  Applications of Formal Methods , 1995 .

[36]  Walter Truszkowski,et al.  NASA's Swarm Missions: The Challenge of Building Autonomous Software , 2004, IT Prof..

[37]  Albert D. Baker,et al.  Multi-Agent Communication in JAFMAS , 1999 .

[38]  Charles W Wessner Capitalizing on new needs and new opportunities : government-industry partnerships in biotechnology and information technologies , 2001 .

[39]  Walter Truszkowski,et al.  Some autonomic properties of two legacy multi-agent systems - LOGOS and ACT , 2004, Proceedings. 11th IEEE International Conference and Workshop on the Engineering of Computer-Based Systems, 2004..