Ik ben voor mijn afstudeerproject aan het bekijken of van een groot programma (paar miljoen regels code) alles wordt getest, wat kan met code coverage. Vervolgens kan een analyse worden losgelaten op de code zelf, om te bekijken welke stukken als eerste nieuw getest moeten worden. Een van de dingen is de leeftijd: als een functie al lang niet gewijzigd is, zal daar waarschijnlijk geen storende fout inzitten.
Tot zover de inleiding. Wat ik dus wil doen is met een CVS annotate-achtige functie de leeftijd van een functie bepalen (functie lijkt me een mooi detailniveau). Per regel is geen probleem: in elke HTML-CVS interface zit dat wel. Verbouw zo'n open-source projectje naar XML-output, en je hebt bruikbare info. Echte probleem zit hem in het bepalen van begin en eind van de functie, en de functienaam.
Ik ben al bezig geweest met het verbouwen van CTAGS, tot dusver zonder suc6. De c-code zit voor mij te lastig in elkaar om in 2 dagen volledig te begrijpen (duh), wat wel nodig is. Dit pakket kan niet eens de volledige functieomschrijving te pakken krijgen, als ik dat ga aanpassen kan ik net zogoed zelf iets nieuws beginnen.
cccc is een open-source projectje, wat op zich over die informatie zou moeten beschikken: Lines Of Code per functie etc. Ik ben net begonnen me in die source te verdiepen, wat makkelijker lijkt (netjes gestructureerd C++).
Weten jullie nog meer van dergelijke open-source tools? Of misschien een kant-en-klaar pakket dat de leeftijd per functie kan bepalen?
Ik wilde trouwens starten met de laatste wijziging per functie, verfijning is natuurlijk pas stap 2.
Tot zover de inleiding. Wat ik dus wil doen is met een CVS annotate-achtige functie de leeftijd van een functie bepalen (functie lijkt me een mooi detailniveau). Per regel is geen probleem: in elke HTML-CVS interface zit dat wel. Verbouw zo'n open-source projectje naar XML-output, en je hebt bruikbare info. Echte probleem zit hem in het bepalen van begin en eind van de functie, en de functienaam.
Ik ben al bezig geweest met het verbouwen van CTAGS, tot dusver zonder suc6. De c-code zit voor mij te lastig in elkaar om in 2 dagen volledig te begrijpen (duh), wat wel nodig is. Dit pakket kan niet eens de volledige functieomschrijving te pakken krijgen, als ik dat ga aanpassen kan ik net zogoed zelf iets nieuws beginnen.
cccc is een open-source projectje, wat op zich over die informatie zou moeten beschikken: Lines Of Code per functie etc. Ik ben net begonnen me in die source te verdiepen, wat makkelijker lijkt (netjes gestructureerd C++).
Weten jullie nog meer van dergelijke open-source tools? Of misschien een kant-en-klaar pakket dat de leeftijd per functie kan bepalen?
Ik wilde trouwens starten met de laatste wijziging per functie, verfijning is natuurlijk pas stap 2.