Hoe

Organisaties en eindgebruikers zijn gebaat bij kwalitatief goede software die gedurende lange tijd naar tevredenheid en kosteneffectief blijft werken. Met andere woorden: duurzame software. Taiga vult het begrip duurzame software in met de volgende uitgangspunten:

Verandering als uitdaging

Veel software wordt gebouwd volgens het vaste stramien dat achtereenvolgens bestaat uit analyse, ontwerp, ontwikkeling, testen en oplevering. In de verschillende stadia komen echter vaak nieuwe inzichten naar voren waar initieel geen rekening mee gehouden is. Vaak kost het dan veel tijd en moeite om achteraf nog weer zaken te veranderen met als gevolg budgetoverschrijdingen en niet-optimale software.

Taiga hanteert juist het uitgangspunt dat veranderingen onvermijdbaar zijn. In onze wijze van software ontwikkelen heeft dit aspect een grote invloed.

Pragmatisch agile

In essentie betekent agile softwareontwikkeling het in korte iteraties plannen, ontwerpen, ontwikkelen en testen van gedeeltes van de uiteindelijke complete softwareoplossing. Hierbij levert elke iteratie een werkend testbaar geheel op. Door de korte iteraties kan er al in een vroeg stadium gereageerd worden op mogelijke veranderingen waar dan de planning weer op aangepast wordt. Op deze manier wordt het risico op verkeerde functionaliteit en budgetoverschrijdingen zo klein mogelijk gehouden.

Er bestaan verschillende ontwikkelmethodieken die passen bij agile softwareontwikkeling zoals XP, Scrum of DSDM. Taiga gebruikt geen specifieke methode maar houdt vooral vast aan de uitgangspunten zoals deze in het Agile Manifesto gedefinieerd zijn. De uiteindelijke toegepaste methode is afhankelijk van de context waarbinnen een project uitgevoerd wordt waarbij we proberen zo goed mogelijk aan te sluiten bij de aanwezige situatie, vandaar pragmatisch agile.

Bewuste keuze ontwikkeltools en architectuur

In veel organisaties is het gebruikelijk om vooraf een keuze te maken voor de te gebruiken ontwikkeltools en architectuur, waarbij vaak voor één leverancier als bijvoorbeeld Microsoft of Oracle wordt gekozen. Dit lijkt een veilige oplossing, maar in de praktijk blijkt nogal eens dat dit beperkingen met zich mee brengt (afhankelijkheid van leverancier, logheid, gebrek aan innovatie) waardoor niet het optimale resultaat voor eindgebruikers wordt bereikt. We zijn van mening dat we met de juiste gebalanceerde mix van ontwikkelgereedschappen (inclusief Open Source) beter in staat zijn opdrachtgevers van dienst te zijn. In het geval van Open Source tools stellen we de voorwaarde dat er zich een gezonde, voldoende grote community omheen moet bevinden zodat de continuiteit op langere termijn geen risico vormt.