Een onderwerp waar ik graag met mijn collega developers hier op GoT over wilt sparren: Documentatie, waar dient deze geplaatst te worden, en in welk formaat.
Sinds kort zijn wij echt goed begonnen met documenteren, als onderdeel van een meer professionele werkwijze. Niet dat wij eerst niet documenteerden, maar ik ben er nu persoonlijk een stuk meer op naar het sturen. Eerst unit tests, daarna CI, toen CD en nu documenteren. Alles in stapjes
Het gaat mij hier voornamelijk om technische documentatie met betrekking tot een softwaresysteem. Denk hierbij aan UML diagrammen, database ontwerp, en technische uitleg hoe een onderdeel van een systeem in elkaar zit. Denk bijvoorbeeld aan hoe versiebeheer van entiteiten in bepaalde software in elkaar zit.
Recent is door o.a. mijn inspanningen in de documentatie bij ons de discussie opgelaaid over waar deze documentatie te plaatsen én in welk formaat.
Op het moment maak ik de documentatie in Markdown (en ik schrijf ze in Markdownpad), maar dat terzijde). Deze documentatie stop ik vervolgens in versie beheer. Voor UML diagrammen gebruik ik de ingebouwde tools in Visual Studio. Ook deze diagrammen check ik in versiebeheer. Mijn argumenten voor dit is dat de documentatie, gezien deze zwaar technisch van aard is, dichtbij bij de code moet zijn en met de code mee moet leven. De drempel om documentatie bij te werken moet zo laag mogelijk zijn. Ook valt dankzij versiebeheer makkelijk terug te vinden hoe een onderdeel van het systeem in elkaar zat in een bepaalde punt in tijd. Beide formaten zijn sowieso text-based dus makkelijk te diff-comparen.
Het bedrijf waar ik werk is een grote accountant en de regel is daar om de documentatie en deliverables van een project in een rigide mappenstructuur te plaatsen, ver weg, diep in een share. Omdat wij als ontwikkelaars een apart gescheiden netwerk van het bedrijfsnetwerk hebben, kunnen wij indien aangesloten niet op het bedrijfsnetwerk komen. Eén van mijn collega's wilt graag dat ik juist mijn documentatie in de genoemde mappenstructuur plaats, waardoor we voor elk softwareproject moeten afvragen hoe we bij de documentatie moeten komen. Mijn tegenvoorstel is om aan het 'einde' van elk project de documentatie te exporteren en bij de deliverables te voegen, al ben ik ook van mening dat zulke technische documentatie niet daar thuishoort.
Hoe kijken jullie hier tegenaan, en hoe ontwikkelen jullie (technische) documentatie?
Sinds kort zijn wij echt goed begonnen met documenteren, als onderdeel van een meer professionele werkwijze. Niet dat wij eerst niet documenteerden, maar ik ben er nu persoonlijk een stuk meer op naar het sturen. Eerst unit tests, daarna CI, toen CD en nu documenteren. Alles in stapjes
Het gaat mij hier voornamelijk om technische documentatie met betrekking tot een softwaresysteem. Denk hierbij aan UML diagrammen, database ontwerp, en technische uitleg hoe een onderdeel van een systeem in elkaar zit. Denk bijvoorbeeld aan hoe versiebeheer van entiteiten in bepaalde software in elkaar zit.
Recent is door o.a. mijn inspanningen in de documentatie bij ons de discussie opgelaaid over waar deze documentatie te plaatsen én in welk formaat.
Op het moment maak ik de documentatie in Markdown (en ik schrijf ze in Markdownpad), maar dat terzijde). Deze documentatie stop ik vervolgens in versie beheer. Voor UML diagrammen gebruik ik de ingebouwde tools in Visual Studio. Ook deze diagrammen check ik in versiebeheer. Mijn argumenten voor dit is dat de documentatie, gezien deze zwaar technisch van aard is, dichtbij bij de code moet zijn en met de code mee moet leven. De drempel om documentatie bij te werken moet zo laag mogelijk zijn. Ook valt dankzij versiebeheer makkelijk terug te vinden hoe een onderdeel van het systeem in elkaar zat in een bepaalde punt in tijd. Beide formaten zijn sowieso text-based dus makkelijk te diff-comparen.
Het bedrijf waar ik werk is een grote accountant en de regel is daar om de documentatie en deliverables van een project in een rigide mappenstructuur te plaatsen, ver weg, diep in een share. Omdat wij als ontwikkelaars een apart gescheiden netwerk van het bedrijfsnetwerk hebben, kunnen wij indien aangesloten niet op het bedrijfsnetwerk komen. Eén van mijn collega's wilt graag dat ik juist mijn documentatie in de genoemde mappenstructuur plaats, waardoor we voor elk softwareproject moeten afvragen hoe we bij de documentatie moeten komen. Mijn tegenvoorstel is om aan het 'einde' van elk project de documentatie te exporteren en bij de deliverables te voegen, al ben ik ook van mening dat zulke technische documentatie niet daar thuishoort.
Hoe kijken jullie hier tegenaan, en hoe ontwikkelen jullie (technische) documentatie?
[ Voor 7% gewijzigd door Sebazzz op 09-04-2015 21:43 ]
[Te koop: 3D printers] [Website] Agile tools: [Return: retrospectives] [Pokertime: planning poker]