Tijdens het ontwikkelen en onderhouden van een programma, worden er vaak aanpassingen gemaakt in de broncode-bestanden van een programma. Deze aanpassingen worden niet altijd op een enkele plek gemaakt daarom kunnen broncode bestanden van elkaar verschillen. Aangezien broncode bestanden betrekkelijk klein zijn, is het mogelijk met behulp van vergelijkingstools te onderzoeken welke aanpassingen gemaakt zijn en welke verschillen er zijn tussen projectversies Bovendien is het mogelijk om aanpassingen en veranderingen tussen versies samen te voegen.
Vergelijkbare problemen treden ook op bij de omgevingen waar de programma's zijn uitgerold. Verschillende beheerders maken aanpassingen aan omgevingen welke vaak niet gedocumenteerd zijn. Hierdoor kan het gebeuren dat het programma op de test omgeving wel functioneert, maar op de productie omgeving niet.
In dergelijke situaties gaat er veel tijd zitten in het bepalen van de verschillen tussen de twee omgevingen.
Om de verschillen sneller te kunnen bepalen zou het wenselijk zijn om, net als met de broncode, automatisch de verschillen te kunnen bepalen tussen twee verschillende omgevingen.
Bij het vergelijken van twee omgevingen komen er alleen een aantal uitdagingen naar voren die het vergelijken van broncode bestanden niet heeft:
Bepaal op basis van vooronderzoek welke informatie binnen een omgeving invloed heeft op de werking van een programma en dus nodig is in het vergelijken van de omgeving.
Ontwerp d.m.v een functioneel en technisch ontwerp een diff tool die twee omgevingen met elkaar vergelijken kan.
Analyseer de toepasbaarheid, veiligheid, schaalbaarheid en technische beperkingen van een dergelijke oplossing.
Het eindproduct is een goed gedocumenteerde diff tool met een heldere motivatie van de bruikbaarheid in verschillende situaties.

Afstudeeropdrachten .NET