Holistic Programming Overview

Holistic Programming is the way of software development customers and users want to see it:

  • Full understanding of what is needed
  • Immediate results
  • Applying changes any time
  • Easy and intuitive user interface
  • No errors
  • No techie language

Holistic Programming frees the mind from technology driven concepts. It has:

  • No versions
  • No layers
  • No information hiding
  • No components
  • No processes
  • No fear
  • No failing projects

Holistic Programming is based on seven approaches to software development:

  • Outside-In - create software from the user's perspective, i.e. the user interface.
  • Human Centric - let users and developers work the way they intuitively do and like to do most. Remove barriers instead of adding rules. Enabling productive forces. Improve efficiency. Have fun.
  • Manage Structured Knowledge - apply the prinziples of knowledge management to software development.
  • Highest Possible Quality - make systems that really do what they should do and are reliable and fun to use.
  • Holistic - include everybody and everything related to the process of creating, implementing and running the software system into the one system.
  • Dynamic Service - create a dynamic service system instead of a static software system - ready to be changed every second accordingly to new demands, perspectives and changing knowledge.
  • Evolution - let the system grow, considering prinziples of the theory of complex dynamic (nonlinear), self-organizing systems.

Holistic Programming looks at how the users work with computers and give them software they like to use.

Holistic Programming does not tell developers how to work, but supports developers in the way they do work.

Holistic Programming leverages the model of service oriented architecture for software development itself.

Holistic Programming is a radical different perspective on software development.

 

Holistic Programming is a pragmatic approach, driven from the experience of how (non-IT !) people work with computers, and what software tools they use in which way. It's the idea to develop the software development method from the users point of view, and adjust this method to whatever is needed to keep this perspective when actually creating software.

Also, Holistic Programming is driven by what developers need to become highly productive and have fun by quickly achieving their development tasks.

Holistic Programming is based on using a framework for software development supporting its principles. The Naradana Solutions Framework is such a framework. So, Holistic Programming is actually more practice and less theory, but there is a theoretical foundation, one which has evolved in an evolutionary way. With Holistic Programming, you can find many principles of lean management realized, highly considering that understanding and respecting human values and behavior lead to higher efficiency and productivity.

 

The following pages have still many words and few graphics. If you are a friend of few words, you can find a quick start overview here and a snapshot of the idea here.

This is work in progress. Please let me know your opinion. You can use the "Your Comment?" link on any page to do so.

Thanks for reading.

Andreas Stankewitz