In den Schulen unterrichten sie Latein. Warum kein VBA?

Zugegeben, die Überschrift wirkt auf den ersten Blick provokant. Handelt es sich bei Latein doch um eine Sprache, die als Basis aller romanischen Sprachen mindestens die Einstiegshürde zum Erlernen dieser deutlich erleichtert. Heutige Redewendungen und auch viele Wortbedeutungen lassen sich aus der Kenntnis der Sprache Cäsars genauso ableiten, wie die Tatsache, dass die Rolle des “Kaisers” eben auf den Namen desselben Herrschers zurückzuführen ist. Achja… und für das Jura-Studium sowie das Studium der Medizin benötigt man es auch.

Und VBA? Eine tote Sprache? Genau wie Latein?

Mag sein. Nichts desto trotz haben nicht einmal Office Apps, Visual Studio Tools for Office oder selbst OLE Automation dazu geführt, dass VBA vollends in Vergessenheit geraten ist. Warum auch? Leichtgewichtiger geht es kaum: Der Visual Basic Editor (VBE) ist in die Office Produkte integriert, der Zugang ist extrem leicht, es werden keine zusätzlichen Lizenzen benötigt und sämtliche Belange von Word, Excel und Access lassen sich damit programmieren. Zudem benötigt es keine komplexen Installationssysteme und technisch gesehen auch keine Rollout-Gremien, um zeitnah Problemlösungen innerhalb einer Fachabteilung an den Start zu bekommen (was die IT Abteilung davon hält sei einmal dahingestellt).

Trotzdem. Ein ungutes Gefühl bleibt.

  • Es gibt keine integrierte Quellcodeverwaltung.
  • Unter modernen Gesichtspunkten sind viele Verhaltensweisen zunächst nicht nachvollziehbar.
  • Es gibt zwar Klassen und Interfaces (tatsächlich!), aber keine echte Polymorphie oder Funktionsüberladung.
  • Die Arbeit mehrerer Entwickler an einem Projekt gestaltet sich als sehr aufwändig.
  • Aufgrund der nur eingeschränkten Verwaltungsmöglichkeiten sind komplexe Projekte langfristig nur schlecht wartbar.
  • Die Fehlerbehandlung ist auf den ersten Blick wenig intuitiv.
  • etc.

Stellen wir uns aber der harten Realität: In großen sowie kleinen Unternehmen wird VBA innerhalb von speziell Excel und Access noch immer flächendeckend von den Fachabteilungen eingesetzt. Das Phänomen lässt sich nicht einmal auf bestimmte Branchen einschränken. Und so schnell wird sich das auch nicht ändern.

Daher liegt es in unserer Verantwortung, dafür zu sorgen, dass die Entwicklung (und damit auch unsere Dienstleistung) auch in diesem Kontext einem hohen Anspruch an Qualität gerecht wird. Quellcodeverwaltung, Nachvollziehbarkeit, Testing, Requirements-Engineering & Co sind dabei nur einige Stichworte. Und der Einsatz von VBA ist kein Grund, die modernen Prozesse zur Softwareentwicklung links liegen zu lassen.

Im Gegenteil.

Als Einstieg für die Interessierten hier ein paar Querverweise, die zeigen, dass da auch mehr geht:

In Projekten, in denen auch bei uns dann und wann mal VBA genutzt wird, verwenden wir übrigens selbstverständlich den Team Foundation Server für die Requirements, das Work Item Tracking und auch die Quellcodeverwaltung.

Neugierig? Sprechen Sie uns an!

Pokern auf der DWX14 – Scrum lässt grüßen!

Haben wir das nicht alle schon erlebt? Man sitzt in einer Besprechung mit einem Projektleiter, bekommt grob skizziert was die neue Anwendung können soll und hat dann gefühlte 10 Sekunden Zeit, um eine Aufwandsschätzung abzugeben. Aussagen wie “Das können wir so nicht schätzen, da fehlen noch viel zu viele Informationen!” führen dann gerne zu Reaktionen wie “Ok, dann sagen wir einfach mal 50 Tage!”. Und als wäre das nicht schon verheerend genug, nein, die Aufwandsschätzung wird vom Kunden dann als Festpreis verstanden, ganz unabhängig davon, wie viele zusätzliche Wünsche noch einfließen werden…

Am Ende hat das Projekt dann im besten Fall 100 Tage gedauert, die Timeline wurde 3 mal verschoben und der Absatz an Haarfärbungsmitteln hat wieder ein Stück weit zugenommen, um die neu gewachsenen grauen Haare zu kaschieren. Naja und vielerorts findet man dann eine der unzähligen Varianten folgenden Bildes an den Wänden hängen:

Projektmanagement

 

Aber muss das wirklich so sein? Kann man da nicht etwas dran verbessern? Natürlich! Genau an dieser Stelle setzen agile Entwicklungsmethoden ein, um den Gesamtprozess zu definieren. Natürlich können Aufwände belastbarer geschätzt und Deadlines gehalten werden. Das geht sogar mit viel Spaß an der Sache und einem kontinuierlichem Projektfortschritt, der allen Beteiligten zeigt, wie die Anwendung Stück für Stück wächst. Und genau über dieses “wie” wird die TOP TECHNOLOGIES auf der #dwx14 berichten! In der Session “Football, Poker, PM oder: Wir führen Scrum ein!” werden wir anhand von Scrum zeigen, wie man ein Projekt durchführen und dabei sogar ohne schiefe Blicke zu ernten Pokern kann!

Über die Autoren

Christian Jacob ist Leiter des Geschäftsbereiches Softwarearchitektur und -entwicklung und zieht als Trainer im Kontext der .NET Entwicklung sowie ALM-Themen Projekte auf links.

Marcus Jacob fokussiert sich auf die Entwicklung von Office-Addins sowie Windows Phone Apps und gilt bei uns als der Bezwinger von Windows Installer Xml.

Martin Kratsch engagiert sich für das Thema Projektmanagement mit dem Team Foundation Server und bringt mit seinen Java- und iOS-Kenntnissen Farbe in unser ansonsten von .NET geprägtes Team.

Aktuelle Kommentare

Comment RSS