Was nutzt das Grails-Framework dem Business?
In meinem DOAG-Artikel [1] mit dem Thema „Weblogic und Grails“ habe ich diese Thematik vor allem technisch beleuchtet. Natürlich hat das Grails-Framework[2] auch Vorteile für das Business, dies möchte ich kurz in diesem Blog-Eintrag festhalten.
Was macht Software-Projekte so teuer? Oder lohnt sich Software-Entwicklung in Deutschland noch?
Kostentreiber bei Softwareprojekten sind auf der einen Seite nicht klar definierte Anforderungen seitens des Auftraggebers an die Software-Lösung. Auf der anderen Seite sind es technisch verliebte Dienstleister, die gerne komplexe eigene Frameworks beim Kunden einführen wollen. Ein großer Teil des Projektbudgets wird hierbei durch technische Extravaganzen vergeudet (siehe hierzu auch die Glosse von meinem Kollegen [3]). Den Auftraggeber hingegen interessiert eigentlich nur die Umsetzung der fachlichen Anforderungen. Von den großen Dienstleistern wird deshalb, zur Kostenminimierung, Out-Sourcing in Länder mit niedrigeren Lohnkosten als Königsweg favorisiert. Jeder, der beispielsweise schon einmal ein Projekt mit einem indischen Dienstleister durchgeführt hat, weiß, dass diese Projekte (bei der Retrospektive am Projektende) doch nicht so billig sind, wie anfangs angenommen. Ein großes Problem ist hierbei immer die Kommunikation und die unterschiedlichen Kulturen. Des Weiteren wird meistens vergessen, dass die Spezifikationen detailgenauer (im Vergleich zu einem deutschen Dienstleister) sein müssen.
Was könnte nun ein Framework, wie Grails verbessern?
Wir haben die Erfahrung gemacht, dass wir uns beim Einsatz von Grails wieder vor allem auf die fachlichen Anforderungen konzentrieren können. So konnten wir auch feststellen, dass die Sprache Groovy (im Vergleich zu Java) den Entwickler um einiges produktiver macht. Dies bedeutet im Endeffekt, dass wir in der Lage sind, Projekte in kürzerer Zeit zu realisieren. Hieraus resultieren niedrigere Projektkosten für den Auftraggeber.
Fazit
Zuletzt möchte ich dennoch anmerken, dass Grails nicht zwingend für jede Problemstellung Anwendung finden kann. Eine Stärke von Grails ist zweifelsfrei der Ansatz „Convention over Configuration“. Hierbei konnten wir jedoch feststellen, dass dies wiederum hinderlich sein kann, wenn man alle Freiheitsgrade bei der Entwicklung, beispielsweise für das UI eines sehr komplexen transaktionsbasierten Dialogs, benötigt.