In de softwareontwikkeling moet de ‘klassieke’ watervalmethode voor steeds meer plaats maken voor relatief nieuwe agile methodieken als Scrum. Agile softwareontwikkeling kenmerkt zich door een iteratief ontwikkelingsproces, waarin in mindere mate wordt gewerkt met uitgebreide (functionaliteits)specificaties en ontwerpen die voor het schrijven van de programmatuur worden vastgesteld.
De agile (agile betekent: lenig, wendbaar) ontwikkeling van software kenmerkt zich door het feit dat in het begin van een automatiseringtraject nog niet tot in detail duidelijk is wat er wordt ontwikkeld. Agile softwareontwikkeling vindt daarnaast plaats in een korte, zich herhalende en overzichtelijke periodes. Het resultaat van zo’n iteratie is in principe geteste werkende software of softwareonderdeel. Bij het ontwikkelen en testen wordt de opdrachtgever intensief betrokken: hij heeft een bijsturende rol. De koers kan gedurende het traject wijzigen. Daarbij hoeft dat wat aan het begin van een iteratie is gespecificeerd, vanwege voortschrijdend inzicht niet per definitie te worden gebouwd voor een geslaagde iteratie. Hiermee wordt getracht om software op te leveren die werkelijk beantwoord aan de behoeften van de opdrachtgever.
Voor softwareleveranciers (en opdrachtgevers) die volgens agile methodieken software tot stand brengen, is het raadzaam om ook bij enkele juridische aandachtspunten stil te staan. Een daarvan is de conformiteit van hetgeen wordt opgeleverd: in hoeverre kunnen daarover afspraken worden gemaakt, op het moment dat aan het begin van het ontwikkelingstraject niet vaststaat welke specificaties en functionaliteit het eindproduct moet hebben? Toch is het, mede met het oog op het voorkomen van (kostbare) geschillen, aan te raden om hier aandacht aan te besteden in het contract tussen leverancier en opdrachtgever.
Verder kan het zijn dat een softwareleverancier, zeker wanneer zijn klant ter zake niet deskundig is, verantwoordelijkheden heeft op het gebied van advisering en informatievoorziening. Ook is hij verantwoordelijk voor een goede samenstelling van het ontwikkelteam en voor het bewaken van termijnen. Uit deze verantwoordelijkheid kan aansprakelijkheid voortvloeien voor de schade die ontstaat op het moment dat de software niet voldoet aan hetgeen de opdrachtgever er redelijkerwijs van mocht verwachten. Een softwareleverancier zit in de meestal niet op dergelijke aansprakelijkheid te wachten. Het is dan voor hem wenselijk om de aansprakelijkheid contractueel uit te sluiten. Ook bij agile softwareontwikkeling, is het met het oog op het kunnen afdwingen van kwaliteit en het beperken van risico’s dus aan te bevelen om trajecten in te gaan op basis van een degelijk contractsrelatie. Ons team kan u hierbij ondersteuning bieden.