Niektóre książki na temat metryk, które prawdopodobnie zawiera biblioteka uczelni, obejmują metryki oprogramowania oraz metryki i modele w inżynierii jakości oprogramowania . Te 2 powinny dać ci miejsce wyjściowe. W świecie przemysłowym bardzo niewiele firm w ogóle ma program pomiaru metrycznego.
Czy większość firm ma jakiś sposób, nie musi być eleganckim programem do mierzenia znaczących wskaźników?
Visual Studio zawiera narzędzia do analizy kodu, które mogą pomóc Ci zacząć. Większość firm nawet nie ma czegoś, co zmierzyłoby najgorszą możliwą miarę: linie kodu. „Po prostu załatw to” wydaje się być dominującą siłą napędową w branży, a obawy związane z utrzymaniem są bardzo krótko zwracane na obawy menedżerów dotyczące „czy dostanę mój bonus w tym roku?” i „czy to się stanie w czasie, gdy obiecałem?” Nawet w przypadku produktów, które przenoszą się z roku na rok z przyrostowymi zmianami, te 2 obawy rozwiały obawy deweloperów dotyczące konserwacji i wykrywania / zapobiegania błędom.
Które wskaźniki, pojedyncze lub połączone, pomagają zawęzić zakres projektów i szacunki?
Uważam, że złożoność cykliczna i sprzężenie są silnymi wskaźnikami tego, jak błędne lub jak trudne będzie utrzymanie kodu. Jeśli cykliczność złożoności wynosi około 20, stwierdzę, że prawie niemożliwe będzie przetestowanie (ponieważ będzie zawierać do 2 ^ 20 ścieżek w kodzie) i należy ją rozłożyć na mniejsze części. Nie można wyeliminować złożoności, ale można ją pokroić na łatwiejsze do zarządzania części.
Jeśli szukasz oszacowania , prawdopodobnie chcesz zbadać punkty funkcji .
% Pokrycia kodu drastycznie obniża każdą iterację, czy ostrzegasz programistów o problemie
Uważam, że większości menedżerów zależy na liczbie meldowań i liczbie naprawianych błędów. Mój obecny menedżer jest przeciwny testom jednostkowym (uważa, że to strata czasu), a mój poprzedni menedżer uważał, że czas poświęcony na testy jednostkowe był czasem, który powinien był poświęcić na napisanie go w pierwszej kolejności.
Argument kanoniczny używany przez programistów jest taki, że jeśli coś zmierzysz, to tylko to otrzymasz. Argument ten wynika z założenia, że jedyną miarą są linie kodu.
In the industrial world, very few companies have any sort of metric measurement program at all.
Każda firma z oceną CMMI 2 lub wyższą będzie miała program do pomiaru / analizy danych. Zbieranie pomiarów i metryk jest wymaganiem poziomu 2 dojrzałości. Poziom dojrzałości CMMI 4 wymaga ilościowego zarządzania projektami, opartego na tych pomiarach i pomiarach, a także takich rzeczy, jak analiza przyczyn źródłowych w celu podjęcia działań w odpowiedzi na zidentyfikowane problemy. Istnieje duża liczba organizacji ocenionych na poziomie CMMI 4 (lub 5).Rozmawiałem o metrykach oprogramowania, w których mówca przedstawił pewne, wnikliwe uwagi IMHO. Mając małe doświadczenie z tymi rzeczami, wciąż intrygowałem i inspirowałem, ale nie mogę powiedzieć, czy to źle, czy dobrze.
Głównymi pomysłami były:
Aby rozwiązać ten problem:
W ten sposób, gdy bilety są szybko naprawiane, można sprawdzić, czy jakość kodu spadnie. Ponadto, gdy wydaje się, że niewiele dzieje się z bazą danych błędów, jakość kodu może wzrosnąć w miarę dokonywania refaktoryzacji.
Podsumowując: ten rodzaj zachowania dynamicznego jest ważny i daje informacje zamiast surowych danych (co byłoby wartością pojedynczej metryki).
Planuję umieścić niektóre wykresy zgodnie z tym schematem na szerokoekranowym telewizorze obok naszych lamp lawowych z CI. ;)
źródło