Agile Softwareentwicklung mit Navision / Business Central

Voraussichtliche Lesedauer: 4 Minuten

Schon komisch, dass ich diesen Artikel überhaupt schreiben muss… oder will! Denn seit ich mit Navision arbeite, also seit 1993, arbeite ich agil… 8 Jahre, bevor dieser Begriff Agil überhaupt Einzug in die Softwareentwicklung genommen hat.

Was ist agile Softwareentwicklung?

agil/aˈɡiːl,agíl Adjektivvon großer Beweglichkeit zeugend; regsam und wendig sein“. Beispiel: „Ein agiler Geschäftsmann“. Viele kennen Agil vielleicht auch aus dem Hundesport oder dem Reitsport.

Agile Softwareentwicklung entstand als Antwort auf die bis dahin übliche Wasserfallentwicklung (welche selbst wiederum von der Serienfertigung von Henry Ford abgeleitet wurde).

Bei agiler Softwareentwicklung kommt es z.B. darauf an, schnelle Lösungen in kleinen Schritten anzubieten. Agile Softwareentwicklung ist eine Idee, kein fest definierbarer Ablauf. Im Wesentlichen bezieht sich agile Softwareentwicklung auf folgende Leitsätze, nicht nur bei Projekten rund um Navision oder Business Central:

  • Personen und Interaktionen haben Vorrang vor Prozessen und Tools.
  • Funktionsfähige Software hat Vorrang vor umfassender Dokumentation.
  • Zusammenarbeit mit dem Kunden hat Vorrang vor Vertragsverhandlungen.
  • Eingehen auf Veränderungen hat Vorrang vor dem Befolgen eines Plans.

Was die Firmen daraus machen, ist meistens alles andere als Agil. Drum gilt „Agil“, genauso wie Scrum, heute auch mehr oder weniger als Tot. Was „In sich bereits dumm ist, denn da Agil, genauso wie Scrum, lediglich eine Ideensammlung ist, kann diese weder tot noch schlecht sein. Es hängt halt davon ab, ob und was man sich daraus aneignet.

Was verbindet Navision / Business Central mit agiler Softwareentwicklung?

Ganz besonders die früheren Versionen (Native Navision) bis zur Version 2009R2 hatten alle eines gemeinsam: Die Entwicklungsumgebung inklusive Compiler war fester Bestandteil jeder einzelnen Navision-Sitzung. In einem Bericht musste eine Spalte in der Summen Salden liste verbreitert werden, weil der Umsatz die 99Mio Grenze überschritten hat? Direkt im Client Strg+F2, Ansicht/Sections, Spalte mit der Maus verbreitern, Esc Esc Speichern?: Ja – fertig! Ein Feld fehlte in den Auftragszeilen? Strg+F2, Feld auswählen und einfügen, Esc, Speichern?: Ja – fertig!
Seit RTC (Navision 2013 bis Dynamics 2019, eigentlich 2018) ist dieser unschlagbare und ziemlich einmalige Vorteil leider Geschichte. Es wurde zwischen einer immer noch rasend schnellen Entwicklungsumgebung und der Oberfläche unterschieden. Da die Oberfläche nun vom einem Server-Service bedient wurde, war dieser Schritt dafür notwendig. Ob das Gut oder schlecht war? Mhmmm…

Mit AL & Extensions hat Microsoft jeglichen Vorteil dieser engen Verzahnung aufgegeben. Business Central stellt sich dem Entwickler wie eine ganz normale Entwicklungsumgebung da, und die meisten neuen Programmierer verstehen gar nicht, das da auch noch eine Finanzbuchhaltung im Hintergrund werkelt.

Warum ist Navision bzw. Business Central der natürliche Partner für agile Softwareentwicklung?

Auch wenn ich die Entwicklung zu AL nicht gutheiße, bringt Navision / Business Central immer noch etwas mit, was Java, Python, PHP, C++, C# usw. usw. in dieser Form (nennen wir es mal „Perfektion“) von ihrer Natur her gar nicht mitbringen können (wollen): Die Datengetriebenheit. Das verbindet Business Central bzw. Navision noch heute mit Meilensteinen der EDV Entwicklung wie dBase (Clipper), Access, AS/400 mit DB2 und der legendären Siemens Nixdorf mit Comet. Das Sytem stellte sicher, das Daten konsistent waren, sie leicht nach vorgegebenen Kriterien und Sortierungen abrufbar waren. Der Programmierer musste und muss sich nicht um Transaktionen, Kapselungen etc. kümmern. Doch auch hier gehört Microsoft ein großartiges Dankeschön ausgesprochen: Dank Extensions sind Transaktionen in Navision endlich nicht mehr sicher und benötigen eine gehörige Portion Fachwissen, um keine verlorenen Datenstrukturen zu erzeugen.
Meine Aussage dazu seit ca. 1995: Ich mache eher aus einem Buchhalter einen ausreichend guten Programmierer als aus einem Programmierer einen wie auch immer schlecht gearteten Buchhalter.
Das darf und soll aber nicht davon ablenken, dass NAVISION bzw. BUSINESS CENTRAL noch heute die natürliche Umgebung für Datengetriebene Applikationen wie Warenwirtschaft, ERP und Finanzbuchhaltung ist. Nur weil Navision und sein Sohn Business Central diesbezüglich immer schlechter werden, heist das (leider) nicht, dass es etwas Besseres gibt!