Sneller Innoveren Door Stap-Voor-Stap

Je Oude Software Te Vervangen

Herken je jouw organisatie in deze symptomen?

Lees dan gauw verder!

  • Wordt er in jouw organisatie vaak om bestaande software heen gewerkt?
  • Is het lastig om nieuwe applicaties te koppelen aan jouw huidige software?
  • Komen nieuwe digitale initiatieven lastig van de grond binnen jouw bedrijf?
  • Is toevoegen van nieuwe functionaliteiten en oplossen van fouten een ingewikkeld en lang proces?
  • Heb je het idee dat jouw interne applicatielandschap eerder een last is dan dat het je verder helpt?
Dij office

Wist je dat de ontwikkeling van nieuwe digitale oplossingen vaak wordt afgeremd door bestaande software?

Jouw organisatie moet investeren in nieuwe digitale toepassingen om de concurrentie voor te blijven. Om die reden gaat de investering vaker naar nieuwe mogelijkheden in plaats van onderhoud aan het bestaande. Best zonde, want met een goede langetermijn strategie zorgen we er samen gewoon voor dat jouw bestaande infrastructuur niet aanvoelt als een last, maar juist als een groeiversneller!

Ok, hoe gaat dat dan in zijn werk?

Hoe ga je van je oude software systeem weer een bruisend hart van digitale innovatie maken? Bij DIJ hebben we vaker met dat bijltje gehakt en delen we hieronder graag één van onze strategieën met je.

Kleine Disclaimer

Onderstaande aanpak is zeker niet de enige weg naar Rome. Mail gerust jouw specifieke uitdaging, wij bijten ons er graag in vast tijdens dit vrijblijvende digitale spreekuur.

Opbrengst

Concrete mogelijkheden om digitale oplossingen in te zetten om sneller te innoveren door je oude software stap-voor-stap te vervangen.

Investering

4 uur van je tijd, verdeeld over 2 sessies van 2 uur.

Voor Wie

MKB+ bedrijven met digitale uitdaging of ambitie.

Stap 1: Inzicht

Voordat we ook maar met één vinger aan je bestaande applicaties zitten, zorgen we eerst voor inzicht. We willen weten wat er gebeurt op je platform. Dit doen we door zoveel mogelijk lagen te voorzien van logging en te centraliseren met behulp van bijvoorbeeld ELK-stack of Datadog. Hierbij kan je denken aan het netwerk, de servers, de webservers, de database en diverse andere applicaties die draaien op je platform.

Daarnaast brengen we je landschap in kaart, voor zover dat nog niet is gedaan, om een goed beeld te krijgen van de configuratie en afhankelijkheden.

Stap 2: Geautomatiseerd testen

We realiseren ons als geen ander dat jouw applicaties bedrijfskritisch zijn. Zonder deze applicaties breekt binnen je organisatie paniek uit. Om dit te voorkomen kiezen we ervoor de meest kritische functionaliteit onder te brengen in automatische tests.

Wat dit doet is in principe een gebruiker simuleren die een bepaald proces doorloopt. Zolang deze tests slagen weten we zeker dat het kritieke proces nog draait. Wat dit enorm krachtig maakt is dat we dit in de ontwikkelstraat kunnen implementeren en automatisch kunnen draaien bij elke wijziging zodat we de kwaliteit kunnen waarborgen

Stap 3: Automatiseer alles

We optimaliseren je nieuwe ontwikkelstraat zodat we sneller kunnen ontwikkelen. Dit is mogelijk door een geautomatiseerde pijplijn neer te zetten die security, kwaliteit en stabiliteit van de oplossing borgt. (DevOps)

Code Release Cycle

Bron: Hackernoon

Door geautomatiseerde tests hierin te hangen en pas wanneer alle tests slagen de oplossing volautomatisch naar productie te brengen (deployment), zorgen we ervoor dat er niets misgaat. Daarnaast kunnen we in deze pijplijn nog veel meer interessante quality assurance technieken toepassen zodat we feedback loops verkorten en nog sneller en veiliger nieuwe functionaliteit kunnen realiseren.

Daarnaast kunnen we de releases linken aan het verkregen inzicht in stap 1 om te kijken of alles soepel verloopt en welke impact de wijzigingen hebben op de performance van het geheel.

Stap 4: Heroverweeg je architectuur

Bij beleggen of in het casino is een succesvolle strategie om goed te spreiden. In software development hebben we dat de afgelopen jaren niet goed gedaan. We hebben vaak 1 groot systeem gebouwd die steeds groter en complexer is geworden en uiteindelijk onbeheersbaar. Daarnaast is het onmogelijk om slechts alleen een deel van de applicatie te vervangen zonder de andere onderdelen aan te raken.

Wij adviseren om verschillende lagen uit elkaar te trekken en onder te brengen in verschillende onderdelen, met in gedachte dat ze onafhankelijk van elkaar moeten kunnen opereren. (microservices)

Monolithic architecture vs Microservice architecture

Bron: BMC

Dit zorgt ervoor dat we een aantal problemen oplossen. Dit maakt het beter onderhoudbaar, minder gevoelig voor een brain-drain en creëert de mogelijkheid voor makkelijker kunnen toepassen van nieuwe technologieën.

Verder is de stap naar cloudtechnologie als Google Cloud, Microsoft Azure en Amazon Web Services hiermee kleiner en is schaalbaarheid ook een groot voordeel van deze aanpak.

Stap 5: Stap-voor-stap refactoren

Het is afhankelijk van de situatie, maar onze voorkeur heeft het project op te delen in een aantal logische onderdelen en per onderdeel stap voor stap te gaan vernieuwen.

Overigens kan het natuurlijk zijn dat er onderdelen zijn waarbij een stuk standaardsoftware de beste optie is. Dit hoeft in deze strategie geen enkel probleem te zijn.

Het oude en het nieuwe landschap kan naast elkaar draaien en per onderdeel kan je gebruikers routeren. Door middel van de automatische tests weten we of het nog steeds doet wat het moet doen en door het inzicht van we hebben in alle lagen van het systeem weten we of er zich vreemde situaties voordoen.

Kan dit bij jou allemaal niet?

Is je applicatie closed-source, te oud of te groot? Je kan er ook voor kiezen om het bestaande te laten voor wat het is. Zolang je bijvoorbeeld een nieuw te bouwen applicatie toegang kan geven tot dezelfde data, kun je op een zelfde manier langzaam stap-voor-stap migreren naar een nieuwe omgeving.

En dan?

Zodra je door alle onderdelen bent kun je op een gegeven moment de conclusie trekken dat de oude oplossing uitgezet kan worden. Feest! Als mooi bijproduct heb je dan een ontwikkelstraat staan die continu kwaliteit kan leveren.

Wil je weten wat voor jou een goede strategie is om stap-voor-stap jouw oude software te vervangen?



Meld je dan snel aan voor ons vrijblijvende digitale spreekuur!

Digitaal Spreekuur

Samen met jou dokteren we uit waar voor jou de kansen van online innovatie liggen en welke praktische projecten je het eerste kan oppakken voor het grootste effect.

Opbrengst

Concrete mogelijkheden om digitale oplossingen in te zetten om sneller te innoveren door je oude software stap-voor-stap te vervangen.

Investering

4 uur van je tijd, verdeeld over 2 sessies van 2 uur.

Voor Wie

MKB+ bedrijven met digitale uitdaging of ambitie.

Meld je aan voor de DIJ nieuwsbrief

Alles waar we trots op zijn en nog meer, bundelen we op onregelmatige basis in een klapper van een nieuwsbrief. Deze wil je echt niet missen,
meld je daarom snel aan voor onze nieuwsbrief!