Software as a "Living Entity"...

Posted by on in Blogs
At the recent OOPSLA 2004 conference in Vancouver there were interesting discussions at some of the panel sessions and in the halls about thinking of software as a “living entity”.  If you are thinking about the software lifecycle, should you follow the metaphor relating the aspects of software to real life?

Would you think about and plan for software programmed death? Biologists study programmed cellular death in the human body. There are cells in the brain that need to die to create pathways. There are cells in our bodies that get rid of damaged cells. Should you think about biology and fault tolerant software in the same way? Would you write programs differently if you knew that the software was going to die? Year 2000 focused applications were only good for a certain period of time and then went away. Are destructors and finalization sections enough for objects and programs to get their "affairs in order"? When should a piece of software be retired or shut off? Should it decide when to kill itself? Can software evolve? Okay, you are probably thinking that DavidI has gone off the deep end this time. But, I do think about these things when they come up at conferences.

Richard Gabriel, during the OOPSLA 2004 Onward Breakthrough Ideas open microphone session, said "We design software like a house of cards, we believe in abstraction too much. Biological systems are based on failure and the maintenance of life. How much of our software is based on maintaining itself? Zero – exception handling is all we have."

In the book, "Are We Spiritual Machines?: Ray Kurzweil vs. the Critics of Strong A.I.", Kurzweil says that with the growth of processing power machine intelligence will exceed human intelligence early in this century. Within a half century, Kurzweil says that "nonbiological intelligence will dominate because it is growing at a double exponential rate while biological intelligence is at a standstill." Humankind will "merge with its computational technology." Can evolvability and robustness be found in current software practice? Is IBM's Autonomic Computing initiative the latest step in the right direction?

Thomas S. Ray's "An approach to the synthesis of life" and the Tierra software project was motivated by the desire to observe a non-carbon life form based evolutionary process.

Inman Harvey's PhD thesis introduced the SAGA (Species Adaptation Genetic Algorithms) framework focused on "the different domain of long term artificial evolution, where the task domain is ill-defined and can increase in complexity indefinitely."

What would the impact on software engineering be if we could design information systems that evolved? Imagine software that was adaptive, autonomous, evolutionary, self recplicating, and self organizing. For more information, check out the dissertations related to evolutionary computing at the US Navy's Genetic Algorithms Archive.

I'm looking forward to the day when my programs tells another program to "Live Long and Prosper".

Gold User, Rank: 1, Points: 2466
David Intersimone (known to many as David I.) is a passionate and innovative software industry veteran-often referred to as a developer icon-who extols and educates the world on Embarcadero developer tools. He shares his visions as an active member of the industry speaking circuit and is tapped as an expert source by the media. He is a long-standing champion of architects, developers and database professionals and works to ensure that their needs are folded into Embarcadero's strategic product plans. David holds a bachelor's degree in computer science from California Polytechnic State University at San Luis Obispo, California.


  • Guest
    Michael Marshall Wednesday, 24 November 2004

    Please don't include these Amazon IFRAME links in your RSS feed - viewing the blog in FeedDemon is automatically launching the browser, which is a worrying security issue...

  • Guest
    David Intersimone Wednesday, 24 November 2004

    will check with John K and Robert L to see what they can do to remove the IFrames. Strange that FeedDemon launches a browser.

  • Please login first in order for you to submit comments
  • Page :
  • 1

Check out more tips and tricks in this development video: