Applicaties worden steeds belangrijker voor organisaties, en daarmee worden ook veiligheid, stabiliteit en uitbreidbaarheid daarvan steeds belangrijker. Zo’n applicatie ontwikkelen (of configureren) is één ding, maar waar moet je nu op letten wanneer je het beheer en de doorontwikkeling van de applicatie wil uitbesteden? Wij verzorgen al meer dan 15 jaar het beheer en onderhoud van applicaties voor verschillende klanten en in deze periode hebben we veel ervaring opgebouwd met het in beheer nemen van applicaties die door anderen ontwikkeld zijn. In deze blog probeer ik aan de hand van vier concrete aandachtspunten handvatten te geven hoe je daar bij uitbesteden mee om kan gaan.
(Technische) kwaliteit
Veiligheid, stabiliteit en uitbreidbaarheid van applicaties is sterk afhankelijk van de techniek en hoe die techniek door de ontwikkelaars is ingezet. Net zoals de schilder die over een slecht stuk hout heen kan verven, kan een ontwikkelaar ook slechte code schrijven. Om te voorkomen dat een applicatie technisch verslechterd, is het slim om gebruik te maken van onafhankelijke en geautomatiseerde controles. Wij bewaken de kwaliteit van onze broncode (de techniek) geautomatiseerd, en rapporteren aan de klant of de kwaliteit veranderd is sinds de vorige release. Zo sturen we op een steeds betere kwaliteit en voorkomen we ‘achterstallig onderhoud’.
(Not invented here)-syndroom
Bij het ontwikkelen van software zijn veel technische keuzes mogelijk, en vrijwel iedere ontwikkelaar heeft uit al die mogelijkheden een combinatie van technieken gekozen waarmee de software ontwikkeld wordt. Wanneer je dan een applicatie bij een andere partij in onderhoud geeft, loop je het risico dat die partij na een paar maanden met allerlei ‘verbeteringen’, ‘noodzakelijk onderhoud’ of ‘niet meer ondersteunde frameworks’ op de proppen komt. Met natuurlijk de bedoeling om die onderdelen opnieuw te bouwen in de techniek die de betreffende ontwikkelaar wel graag gebruikt, met de nodige kosten en risico’s van dien.
Hoewel je dit risico niet helemaal vooraf kunt uitsluiten, kun je wel kiezen voor een leverancier die bestaande applicaties van andere ontwikkelaars in beheer neemt en verschillende technieken ondersteunt. Beide is namelijk een indicatie van een ontwikkelaar die meer open staat voor ideeën en technieken van andere ontwikkelaars.
Begrijpt de nieuwe ontwikkelaar mijn business en applicatie wel?
Hoewel er veel nuances te maken zijn met betrekking tot de drijfveren van ontwikkelaars, zie ik een duidelijk verschil tussen mensen die graag de nieuwste technieken inzetten en mensen die de waarde voor de klant het belangrijkst vinden. Ik zou niet te veel kijken naar de referenties van organisaties (vaak wordt er namelijk door heel andere mensen aan jouw applicatie gewerkt), maar vooral of de mensen geïnteresseerd zijn in jouw business en of die ontwikkelaars vast in dienst zijn.
Vaste medewerkers bouwen immers kennis op van jouw business en applicatie, terwijl je er bij een (flexibele) projectorganisatie rekening mee moet houden dat er over een jaar weer iemand anders aan jouw applicatie werkt.
Hoe kan ik vooraf weten wat de kosten en risico’s van uitbesteden zijn?
Uitbesteden van onderhoud en beheer van applicaties kent grofweg drie dimensies: de transitie van broncodes en kennis, het dagelijks beheer en toekomstige uitbreidingen of aanpassingen. En net zoals bij de aanschaf van een huis is een ‘bouwtechnisch onderzoek’ een goed middel om risico’s, kosten en verwacht onderhoud goed in kaart te brengen.
Wij starten bij het in beheer nemen van een bestaande applicatie altijd met een Quick Scan waarin we de omvang van de applicatie (hoeveel code en functionaliteit zit er in), de kwaliteit van de applicatie en het noodzakelijk onderhoud op korte termijn in kaart brengen. Daarmee heb je na een korte keuring van je applicatie (denk aan enkele dagen) een goed beeld van de kosten voor transitie, beheer en noodzakelijk onderhoud het komende jaar.
Wil je meer weten over hoe wij jouw organisatie kunnen helpen met het beheren en onderhouden van je software? Laat het me weten, ik kom graag langs om de mogelijkheden te bespreken.