Here comes the question that lies behind many discussions I’ve had in the last days (e.g. here) …
I have started to think about what is best practice in a complex system – can it exist? In complex systems every situation is unique. Whilst practitioners closest to the problem will find a way of solving it, does that mean that the solution to this problem can be adequately codified and be laid over a totally different situation and applied in another context? Chances are that in a small team setting you might get away with this and build models to assist in finding the best solution. But as the number of people involved, and the problems to be solved increase, you will quickly move into new territory with a different frame of reference and set of contexts – so would one “best practice” work?
Hardly, yet best practices are important, which can be used when situations, tasks and (underlying) patterns are similar. Of course best practices shouldn’t be carved in stone but be open to adaptation and tweaking – it’s a start when we don’t understand them as “products” but as processes.
In regard of Enterprise 2.0 for complex organizational systems this makes it clear, that one advantage of light-weight and freeform enterprise social software systems is that they can be constantly improved and refined, whereas (customized) packaged software can’t be tweaked and optimized this way. This follows open-source concepts such as “release early and often” or “fail fast” and puts them to use in enterprise software projects.
This calls for a small start, that is expanded constantly with new services, from which one can quickly learn from user feedback …