"In the context of a book on software design, it should be obvious that we are concerned with designing software. It is far from clear, however, just what the word means. We can approach software from many different perspectives, each with its own implications for design. In this book, we emphasize software as a medium for the creation of virtualities--the world in which a user of the software perceives, acts and responds to experiences."
Terry Winograd, Introduction to "Bringing Design to Software."