Estimeret læsetid: 4 Minuttet
Mærkeligt, at jeg overhovedet skal skrive denne artikel... eller vil! For siden jeg begyndte at arbejde med Navision, altså siden 1993, har jeg arbejdet agilt... 8 år, før dette begreb Agil overhovedet trådt ind i softwareudvikling.
Hvad er agil softwareudvikling?
agil/aˈɡiːl,agíl Adjektiv „vidner om stor bevægelighed; være livlig og smidig. Eksempel: “En agil forretningsmand„. Mange kender måske også Agil fra hundesport eller ridesport.
Agil softwareudvikling opstod som et svar på den hidtil gængse vandfaldsudvikling (som igen var afledt af samlebåndsproduktionen hos Henry Ford).
I agil softwareudvikling, er det f.eks. vigtigt at tilbyde hurtige løsninger i små trin. Agil softwareudvikling er en idé, ikke en snævert definerbar proces. I bund og grund refererer Agil softwareudvikling til følgende principper, ikke kun for projekter relateret til Navision eller Business Central:
- Personer og interaktioner har forrang frem for processer og værktøjer.
- Fungerende software har forrang frem for omfattende dokumentation.
- Samarbejde med kunden har forrang frem for kontraktforhandlinger.
- At forholde sig til ændringer har forrang for at følge en plan.
Hvad virksomhederne gør ud af det, er for det meste alt andet end agil. Derefter gælder „Agil“, nøjagtigt som Scrum, i dag også mere eller mindre som død. Er det „i sig selv allerede dumt“, da Agile, ligesom Scrum, blot er en samling ideer, kan det hverken være dødt eller dårligt. Det afhænger af, om og hvad man tilegner sig derfra.
Hvad forbinder Navision / Business Central med agil softwareudvikling?
Især de tidligere versioner (Native Navision) op til version 2009R2 havde alle én ting til fælles: Udviklingsmiljøet inklusive compileren var en integreret del af hver enkelt Navision-session. Skulle en kolonne i hovedbogssaldoen gøres bredere i en rapport, fordi omsætningen havde overskredet grænsen på 99 mio.? Direkte i klienten Ctrl+F2, Vis/Sektioner, bred kolonnen med musen, Esc Esc Gem?: Ja – færdig! Blev et eksisterende felt ikke vist i ordreposterne? Ctrl+F2, vælg feltet og indsæt, Esc, gem?: Ja – færdig!
Siden RTC (Navision 2013 til Dynamics 2019, egentlig 2018) er denne uovertrufne og ret enestående fordel desværre fortid. Der blev skelnet mellem et stadig utroligt hurtigt udviklingsmiljø og brugerfladen. Da brugerfladen nu blev betjent af en server-service, var dette skridt nødvendigt. Om det var godt eller skidt? Mhmmm…
Med mit AL & Extensions har Microsoft opgivet enhver fordel ved denne tætte integration. Business Central præsenterer sig selv for udvikleren som et normalt udviklingsmiljø, og de fleste nye programmører forstår slet ikke, at der også kører et bogholderi i baggrunden. Det mærker jeg på efterspørgsler, når en frisk „jeg kan også fullstack!“ lige har byttet debet og kredit i en ekstra omkostningspost.
Hvorfor er Navision, eller Business Central der naturlige partnere for agil softwareudvikling?
Selvom jeg ikke bifalder udviklingen mod AL, medbringer Navision / Business Central stadig noget, som Java, Python, PHP, C++, C# osv. osv. i denne form (lad os kalde det „perfektion“) ikke kan eller vil medbringe af natur: datadrevethed. Det forbinder stadig Business Central eller Navision med milepæle inden for IT-udvikling som dBase (Clipper), Access, AS/400 med DB2 og den legendariske Siemens Nixdorf med Comet. Systemet sikrede, at data var konsistente, de kunne let hentes ud efter foruddefinerede kriterier og sorteringer. Programmøren behøvede og behøver ikke at bekymre sig om transaktioner, indkapslinger osv. Men selv her fortjener Microsoft en stor tak: Takket være udvidelser er transaktioner i Navision endelig ikke længere sikre og kræver en god portion faglig viden for ikke at skabe tabte datastrukturer.
Ah ja... datadrevethed... Kender nogen stadig UniVerse/UniData/D3 eller deres Urvater PickPick fungerede sandsynligvis stadig meget aktivt i den amerikanske brugtvognshandel i dag, selvom næppe nogen kender dette navn. Det hed så snarere „Mentor“ eller „Zebra“ eller „Revelation“. Jeg tror, at hverken originalen eller afarterne nogensinde nåede til Tyskland. Fra programmeringen i Basic og fleksibiliteten burde også her den „stadig mest sandsynligt naturlige efterfølgere“ også Navision eller Dynamics Business Central BC365 sein… hvor Pick allerede har en unik position, fordi den er tættere på NoSQL end på strukturerede databaser i normalform (eller var det).
Min holdning til programmørers kvalifikationer siden ca. 1995: Jeg kan bedre uddanne en tilstrækkelig dygtig programmør ud af en bogholder end at uddanne en bogholder af ringe kvalitet ud af en programmør.
Det må og skal dog ikke aflede fra, at NAVISION eller BUSINESS CENTRAL stadig er det naturlige miljø for datadrevne applikationer som lagerstyring, ERP og finansiel regnskabsføring. Blot fordi Navision og dets efterfølger Business Central bliver dårligere og dårligere i denne henseende, betyder det (desværre) ikke, at der findes noget bedre!
