«Расчет» индекса владения кодом с использованием TFS SDK 2010 - PullRequest
2 голосов
/ 12 декабря 2011

Мне нужна ваша помощь в отношении идеи, которая недавно пришла мне в голову.

Говоря в терминах TFS, я пытаюсь придумать формулу, которая может определить индекс владения для некоторого файла, управляемого исходным кодом (т.е. кто является разработчиком, наиболее ответственным за этот файл).

Вот почему я ищу критерии, которые можно использовать для расчета этого индекса собственности.Пока что единственно возможная вещь, которая приходит мне в голову, - это суммировать количество проверок, но этот критерий кажется сомнительным.Другим критерием является суммирование всех строк кода, которые проверял каждый разработчик, однако 1) Я не уверен, возможно ли это с TFS SDK 2010 и 2) Строки документации должны бытьпропускаются.

Итак, мой вопрос, наверное, таков:

Достаточно ли вышеуказанных критериев (количество проверок + строки кода) достаточно для расчета индекса владения или мне нужно что-то еще?

Ответы [ 2 ]

7 голосов
/ 12 декабря 2011

Я принимал участие во многих проектах по передаче программного обеспечения, в которых одна команда передавала источники другой. При таких обстоятельствах жизненно важно определить, кто является истинным экспертом для данного исходного файла / компонента программного обеспечения.
Итак, я усвоил трудный путь, согласно которому разработчик, являющийся привратником, часто не тот, у кого самый высокий отток, коммитер большинства наборов изменений, лучший решатель ошибок, лучший реализатор функций и т. Д.

Вы должны были бы познакомиться с программным модулем, определить его хардкорные части, а затем отправиться на поиски тех, кто их совершил. Я полагаю, что эти шаги не могут быть автоматизированы - ни в TFS, ни в каком-либо другом наборе.

Небольшая возможность - найти того, кто сконструировал модуль, который вставил его в хранилище. Если этот первоначальный коммит имеет плоть и кости (это не огрызок), у вас точно есть кандидат, который много знает об этом. Это может быть получено через TFS API.
Это также помогает поговорить с командой по этому вопросу.

3 голосов
/ 12 декабря 2011

Тебе нужно что-то еще. Представьте себе библиотечный класс, который делает что-то с данным типом объекта. Если бы кто-то сделал автоматическое переименование метода этого объекта, он мог бы претендовать на значительную долю собственности в библиотеке, даже не преднамеренно изменяя ее.

...