Die Community von Webentwicklern, die wahrscheinlich nicht einmal wissen, wofür die Kürzel ADO oder UML oder JPA stehen, produzieren bessere Systeme zu geringeren Kosten bei einem kleineren Risiko als im Enterprise-Bereich.
Dies ist laut Tim Bray (Doing it Wrong) die wichtigste Erkenntnis, die er aus seiner fünfjährigen Arbeit bei Sun gewonnen hat. Und, so fügt Bray hinzu, dies sei schlicht inakzeptabel!
Wie lässt sich dieser Zustand ändern, angesichts der - trotz Wirtschaftsflaute - Millionen von in Großprojekten verschwendeten Ressourcen? Dazu stellt Bray zunächst einige Überlegungen zum Thema Internet-Kultur an.
Webkultur
In der heutigen Webkultur müsse man die Zeit zwischen einer Idee und deren Umsetzung in Tagen und nicht in Monaten messen. Kleine Teams produzierten hier iterativen Fortschritt in kürzesten Release-Zyklen: "No oceans are boiled, no monster requirements documents written. (Tim Bray)"Und die Ergebnisse dieser agilen Webentwicklung: "Facebook. Google. Twitter. Ravelry. Basecamp. TripIt. GitHub" sind nun mal unbestreitbar auf den vordersten Plätzen der derzeit erfolgreichen IT-Lösungen zu finden.
Was macht nun aber den Erfolg aus?
Auf der technologischen Seite gehörten dynamische Sprachen, Webframeworks, TDD, REST, Open Source und NoSQL zum erfolgreichen Mix. Doch nicht nur Technologie sei wichtig, sondern auch wesentlich die zugrundeliegende Entwicklerkultur:
More important is the culture: iterative development, continuous refactoring, ubiquitous unit testing, starting small, gathering user experience before it seems reasonable. All of which, to be fair, I suppose had its roots in last decade’s Extreme and Agile movements. Tim Bray
Unternehmenskultur
Und wie sieht es im Enterprise-Bereich aus? Die Statistiken von fehlgeschlagenen Großprojekten gleiche hier einer "Litanei von Desastern":
For one thing, the litany of disasters in the private sector is just as big in the aggregate and the batting average isn’t much better; it’s just that businesses can sweep the ashes under the carpet. Tim Bray
Was tun?
Wie kann diese klaffende Lücke zwischen Webkultur und Enterprise-Kultur geschlossen werden?Tim Brays Plan A besteht darin, einfach selbst keine Großsysteme zu bauen. Das können im Zweifelsfall Experten besser - oder eben die Cloud:
Everything would be better if we could do IT the way we do electricity; hook up to the grid, let the IT utility run it all, and get billed per unit of usage. This is where all the people now running around shouting "Cloud! Cloud! Cloud!" are trying to go. Tim Bray
Doch die Cloud könne nicht alle Probleme lösen, und manchmal sei es notwendig und sinnvoll, eigene System zu entwickeln, die entscheidende Wettbewerbsvorteile bringen. Mit der bisherigen Enterprise-Kultur der Formalisierung und Über-Spezifizierung könnten indes Lösungen wie Twitter oder Basecamp schlicht nicht entstehen.
The point is that that kind of thing simply cannot be built if you start with large formal specifications and fixed-price contracts and change-control procedures and so on. Tim Bray
Wolle man im Enterprise-Bereich die selben Ergebnisse produzieren wie im Web-2.0-Umfeld, dann, so Brays Fazit, müsse man auch einen entsprechenden Technologie- und Kultur-Wechsel vollziehen.
It’s not going to be easy; Enterprise IT has spent decades growing a defensive culture based on the premise that you only get noticed when you screw up, so that must be avoided at all costs.Tim Bray
Gründe für den Produktivitätsstau
In den ausführlichen Kommentaren zu Brays Blogposting geht u.a. Stefan Tilkov den Gründen nach, warum Enterprise Software oft so viel komplexer daherkommt als Weblösungen. Ein Grund sei eine übertrieben komplizierte Gesetzgebung in vielen Ländern:
One of the reasons is the absurd complexity of laws in some countries, and the rate in which more and more complexity is added to them. If you're in a regulated business, this tends to create a huge amount of complexity you simply can't escape from. Stefan Tilkov
Ein anderer Grund sei die Trennung zwischen Business- und Technologie-Seite in großen Unternehmen, die in kleineren Teams so meist nicht gegeben ist:
Another source of complexity is the business side, coming up with more and more complex product requirements. In many Web companies, there's no difference between the business and technology decision makers – perfect "business/IT alignment". This simply isn't true in most large businesses. As a tech person, you have a choice of quitting or adapting to it … Stefan Tilkov
In Stefan Tilkovs Blog finden sich weitere interessante Anmerkungen zum Thema.
Wie können Unternehmen Ihrer Meinung nach ähnlich produktiv werden wie kleine agile Web-Startups?






