Bright Answers

Bright Answers biedt branchespecifieke ICT oplossingen en maatwerk aangepast op jouw bedrijfsvoering. Wij helpen bedrijven op het gebied van:

Gerelateerde onderwerpen

Softwareontwikkeling - terug naar de oorsprong voor de revolutie

Dit artikel is gepubliceerd op: 04-11-2015

Niet alleen in de hoogwaardige technologie gaan ontwikkelingen snel. Ook de softwareontwikkeling maakt een stormachtige ontwikkeling door. Veel bedrijven en organisaties hebben moeite om de ontwikkeling van software binnen de bandbreedtes van oorspronkelijke afspraken over budget en doorlooptijd te houden. Sommige geleerden schatten zelfs dat 50% van de ontwikkelingen van software fout gaat. De traditionele watervalmethode raakt achterhaald. Bedrijven en gebruikers vragen om flexibele, schaalbare en modulaire softwareoplossingen die kunnen inspelen op snel wijzigende omstandigheden en processen.

Tegenwoordig is het SaaS, iteratief, agile en cloud wat de klok slaat. Dat zorgt ervoor dat pure maatwerk ontwikkeltrajecten niet altijd meer nodig zijn, ook niet voor complexe automatiseringsuitdagingen. Tegelijkertijd blijft het nodig om veel tijd en energie te steken in het formuleren van realistische functionele eisen van een softwaresysteem. Wat wil je ermee, wat moet het kunnen en wie moeten er mee werken? De markt wordt namelijk overspoeld door schaalbare en modulaire (standaard)oplossingen die naar wens zijn in te richten en waar volgens leveranciers alles mee valt te automatiseren. Eerst een eisen- en wensenpakket samenstellen en team van gebruikers en beslissers samenstellen voordat je een marktverkenning gaat doen, is ons devies.

Van watervalmethoden naar iteratief ontwikkelen

Nog niet zo lang geleden was de watervalmethode dé manier om (maatwerk) software te ontwikkelen. Deze methode gaat uit van elkaar opvolgende ontwerp- en ontwikkelstappen, waarbij je moeilijk (althans niet zonder veel kosten en tijd) terug kunt naar de vorige stap. Een ontwikkelproces volgens deze methode loopt in veel gevallen uit de klauwen, leert de geschiedenis bij bedrijven en overheden. De methode volgt de stappen ontwikkeling, test, acceptatie en productie. Het is een uitstekende methode als de (interne)klant / gebruiker net als bij een bouwproject in de analysefase goed kan vertellen wat hij wil. Als men nog zaken vrij wilt laten of later wilt wijzigen is het minder geschikt. Een ander nadeel is dat het lang duurt voor het systeem opgeleverd wordt waardoor soms de situatie al zodanig is veranderd dat het systeem niet (meer) voldoet. Hiervoor zijn overigens wel gedeeltelijk oplossingen gevonden zoals het gebruik van prototyping om de wensen duidelijker boven tafel te krijgen.

Bij iteratief of cyclisch ontwikkelen wordt niet alles in een groot project opgeleverd, maar in kleinere behapbaardere gedeelten. Iteratief ontwikkelen wordt ook wel de evolutionaire methode genoemd omdat dezelfde fases of stappen herhaald worden. Ontwikkelaars en gebruikers werken als gelijkwaardige partners aan de ontwikkeling van software.

Weer terug naar iteratief en agile

Een van eerste antwoorden op de niet-flexibele watervalmethode was de Rapid Application Development methode in de jaren 80 en 90 van de vorige eeuw. Door middel van snelle cyclische stappen en prototypes wordt stap voor stap software ontwikkeld en verbeterd. Die leidde weer tot terugkeer naar agile ontwikkelmethoden, die momenteel steeds meer worden gehanteerd. Deze methoden hebben hun oorsprong in de vroege historie van softwareontwikkeling. Ze werden lichtgewicht methodes genoemd omdat ze zo weinig regels hebben.

In zekere zin zijn de uitdagingen die in de vroegere ontwikkeling van software moesten worden aangegaan goed vergelijkbaar met de uitdagingen vandaag de dag. Destijds ging het om omvangrijke automatiseringsoperaties om handmatig werk te automatiseren. Vandaag de dag zijn schaalvergroting, grootschalige digitalisering van processen en ketenautomatisering vergelijkbare grote uitdagingen die vragen om flexibele ontwikkelmethoden.

Dus is scrum dat stamt uit 1986 weer helemaal terug en worden de agile methoden steeds verder geoptimaliseerd. Agile ontwikkelmethoden zijn gebaseerd op de grondbeginselen van iteratief ontwikkelen. De meeste agilemethoden proberen risico’s te verminderen door software te ontwikkelen in korte overzichtelijke perioden, die iteraties worden genoemd.

Lean softwareontwikkeling

Binnen de Agile ontwikkelmethoden willen we een methode uitlichten: de Lean ontwikkelmethode. Deze methode wint aan populariteit in het bedrijfsleven en bij de overheid vanwege de aandacht voor verspilling en de focus op ontwikkeling in teamverband. De Lean ontwikkelmethode legt verantwoordelijkheid bij de teams als geheel en wakkert betrokkenheid en enthousiasme aan. Belangrijke succesfactoren voor software als eindproduct. Mensen die met de software moeten werken zitten in de teams en draaien mee aan de knoppen.

Lean kent zeven principes:

  1. Voorkom verspilling
  2. Versterk het leereffect
  3. Beslis zo laat mogelijk
  4. Lever zo snel mogelijk
  5. Geef het team verantwoordelijkheid
  6. Kwaliteit
  7. Focus op het geheel

Alles wat geen waarde toevoegt voor de klant of gebruiker wordt gezien als verspilling. Zoals: onduidelijke requirements, bureaucratie en langzame interne communicatie, te weinig tests, onnodige code en functionaliteit.

Gebruik van standaard softwarecomponenten

Veel bedrijven en overheden maken meer en meer gebruik van standaard softwarepakketten en –modules om hun processen te ondersteunen, zowel open source als closed source. Agile ontwikkelprocessen zijn ook uitstekend toe te passen op ontwikkelprocessen waarbij van standaard softwarecomponenten gebruik wordt gemaakt. Complete bedrijfsprocessen kunnen zo met behulp van standaard software ingericht worden. Tegenwoordig bieden die componenten allerlei mogelijkheden om op maat ingericht te worden. Door softwareontwikkeling op basis van standaard software met een agile methode aan te pakken, besparen bedrijven kosten en tijd. Ze zien veel sneller resultaat en kunnen zo beter op actuele ontwikkelingen en veranderingen inspelen.

Door selfserviceportalen zijn huurders, woningzoekenden, aannemers, opzichters en toezichthouders in staat online zelf allerlei zaken te regelen. Daarmee kunnen we corporaties helpen hun processen efficiënter in te richten. Samen met uw medewerkers, ontwikkelaars en huurders kunnen we in een efficiënt ontwikkelproces een optimale inrichting van de software realiseren.


Gerelateerde onderwerpen

KlantportalenContextApps bouwen

Andere artikelen over Klantportalen

Andere artikelen over Context

Andere artikelen over Apps bouwen


 

Reacties

Er zijn nog geen reacties.

 

Plaats nieuwe reactie

Velden met een gemarkeerd met een * zijn verplicht.
 
 
 
­