Software refactoring

"door software refactoring brengen wij uw legacy naar een hoger niveau"
Onderzoek, advies en uitvoer van het ombouwen of herbouwen van uw software applicaties naar de modernste platformen.
  • FoxPro en Visual FoxPro
  • Delphi
  • VB6 und VB.NET
  • Web-Portering

De ontwikkelingen op het gebied van software gaan steeds sneller. Dit betekent dat de levensduur en dus de terugverdientijd van software applicaties ook korter wordt. De technische levensduur van deze applicaties is vaak nog niet voorbij, maar de omgeving zorgt ervoor dat er iets moet veranderen. Een groot deel van de maatwerk software ontwikkeling die wij doen is het ombouwen of nieuw bouwen van bestaande applicaties, hier samengevat onder de term "software refactoring".

Wat is refactoring van software?

Volgens de meeste definities houdt refactoring van software in dat de interne structuur van de source code van bestaande programma's wordt verbeterd, terwijl de software (functioneel) hetzelfde blijft doen. Volgens de definitie gaat het dus niet om het oplossen van fouten of het herschrijven van code. In de praktijk wordt er echter vaak een combinatie van problemen opgelost. Niet alleen de structuur van de code wordt verbeterd, maar er wordt ook direct gekeken naar het oplossen van fouten, verbeteren van performance, aanpassingen aan de interface etc.

Hoe pak je software refactoring aan?

Elke situatie is weer anders als het gaat om het probleem dat moet worden aangepakt of de omgeving waarin dit moet worden gedaan. Dit betekent dat elke refactoring op een andere manier moet worden gedaan. Vooraf zal er gezamenlijk bepaald moeten worden hoe we het traject voor software refactoring aanpakken in termen van werkverdeling, scope, planning, fasering en techniek. Alleen met een goede voorbereiding kan het traject ook daadwerkelijk slagen.

Ook kunnen wij opdrachtgevers ondersteunen bij het maken van de juiste keuzes.

  • Hoe gaan we om met de lopende business, want tijdens de verbouwing blijft de winkel open?
  • Wat is de meest optimale fasering in termen van tijd, middelen, geld en techniek?
  • Wat is de rol van Technosoft en wat is de rol van de opdrachtgever?
  • Hoe zit het met het testen van de kwaliteit? In hoeverre kunnen we zorgen dat onze huidige gebruikers zo weinig mogelijk last hebben van de refactoring?
  • Hoe gaan we om met nieuwe features die we willen inpassen?

Allemaal vragen die een onderbouwd antwoord behoeven. Deels kunnen deze op basis van onderzoek en onze ervaring worden beantwoord en deels zullen deze als randvoorwaarden worden meegenomen in het traject.

Goedkoper en beter dan u zelf kan?

Het uitstellen van refactoring heeft vaak twee belangrijke redenen.

  • Het huidige systeem is zo betrouwbaar, dat het risico van een nieuwe applicatie te groot lijkt.
  • De kosten zijn moeilijk te overzien of worden te hoog ingeschat.

Beide argumenten zijn zeer valide en zullen afgewogen moeten worden om een besluit te nemen. Onze ervaring is echter dat de gevolgen van een refactoring wel te overzien zijn. Het is vaker een kwestie van het willen toevoegen van nieuwe functionaliteiten (en dus verbetering ten opzichte van de oude situatie), dan dat het ombouwen zelf een risicovolle en/of tijdrovende klus is. Voor wat betreft de betrouwbaarheid zal er veel aandacht besteed moeten worden aan Quality Assurance. Voor wat betreft de kosten is een oplossing via Technosoft zeker kosten efficiënt door het inzetten van ervaren mensen op dit gebied tegen zeer aantrekkelijke tarieven. Een herberekening op basis van onze uitgangspunten is zeker de moeite waard.

Ervaring met de volgende systemen

  • FoxPro und Visual FoxPro
  • Delphi
  • VB6 und VB.NET
  • Omzetten naar webapplicaties
  • Is uw applicatie ontwikkeling geschikt voor outsourcing?
  • Vrijblijvend haalbaarheidsonderzoek
  • Vergelijk uw inschatting met die van ons

Bas Strijker - Directeur operations

Bij Technosoft zijn wij ooit begonnen met het refactoren van een aantal van onze eigen applicaties waaronder onze ERP-Projectmanagementapplicatie. Eigenlijk betrof het een complete rewrite op basis van een nieuwe technology stack, maar wel ter vervanging van een bestaande applicatie. Met deze ervaring zijn we andere bedrijven gaan ondersteunen bij het refactoren of nieuw bouwen van hun software. Dit zijn vaak langjarige trajecten en voor een aantal klanten zijn wij hier al jaren mee bezig.

Opbouwen van een partnership

Een traject van refactoring of rewrite heeft vele facetten. In het begin wordt er veel aandacht besteed aan het doorgronden van de uitgangssituatie en het neerzetten van de juiste architectuur en aanpak. Eventuele integratie en migratie, vaak onontkoombaar, zijn hierbij ook belangrijke aspecten. Als deze fase is doorlopen kan er gestart worden met de eerste fase van de ontwikkeling. Onze mensen zijn gewend aan het werken in verschillende nieuwe omgevingen en gaande het traject wordt er kennis opgebouwd van het toch vaak specifieke domein van de klant. Die ervaring gaat dan meetellen in verdere ontwikkeling.
Wij vinden het heel belangrijk dat wij pro-actief zijn in een samenwerking. Het is ook onze taak om de opdrachtgever scherp te houden, te wijzen op zaken die niet goed gaan of beter kunnen en te komen met nieuwe inzichten. Hiermee leggen we de basis voor een echt partnership.

 

Een voorbeeld uit de praktijk

Wij waren op zoek naar een software partner die ons kon ondersteunen bij het vernieuwen en uitbreiden van onze applicatie InvalPool. Niet alleen technische kennis was hier van belang, maar ook een bedrijf dat er voor kan zorgen dat een samenwerking op afstand zeker gaat werken. Technosoft heeft ons vanaf het begin hierin goed begeleid en gezorgd dat het werken op afstand geen drempel is maar een toegevoegde waarde.
Axilium - Jan Jonquiere
Directeur - eigenaar

Wilt u advies over het refactoren van uw software?

Met onze jarenlange ervaring denken wij graag met u mee over de mogelijkheden van het refactoren van uw software.

Wilt u een afspraak maken?

Bekijk de ontwikkeling van Technosoft

1977 Vandaag
2001
Start verkoop AxisVM
1983
Registratie merk Technosoft
1984
Start ontwikkeling CAD software
2000
Overname activiteiten door Brunel en vestiging in Deventer
2007
Technosoft Duitsland
2009
Technosoft Moldavië
2015
Technosoft Roemenië
1993
Van DOS naar Windows platform
2014
Introductie 3Muri aardbevingssoftware + eerste KOMO certificering
2013
Start Business unit Quality Assurance & testing
2011
Overstap naar Eurocode software
2012
Start van nearshoring onder de naam In-shore
2006
Technosoft door Brunel verkocht door middel van een Management Buy Out
1998
Projectmanagement software