Normy programowania - sposób na programistę indywidualistę?

Osoby takie mają zazwyczaj spory autorytet w zespołach, w których pracują. Ułatwia im to wpływanie na współpracowników. Wykorzystanie tego nie jest jednak proste, gdyż wymaga przełamania sporej dozy nieufności, jaką okazują oni wszelkim przejawom działań, które w ich przekonaniu mogą ograniczyć ich swobodę twórczą.

Wymaga to włączenia tych specjalistów do działań podejmowanych w celu wypracowania własnych reguł tworzenia programów. Włączenie to musi odbywać się na takich zasadach, które dadzą im autentyczny wpływ na tworzone reguły i pozwoli zawrzeć w nich również ich własne doświadczenia. Całość związanych z tym działań winna stanowić dość długi proces, w którym przyszłe reguły będą stopniowo, w wielu iteracjach, doskonalone.

Stworzenie reguł programowania nie gwarantuje jednak ich pełnej akceptacji i tego, że od momentu ich wprowadzenia w życie będą one stosowane. Wymaga to - z kolei - stworzenia mechanizmów kontrolnych i braku pobłażania dla tych, którzy reguły te omijają.

Kontrola przestrzegania reguł z tego zakresu jest praktycznie możliwa tylko za pomocą wyspecjalizowanych narzędzi. Można je opracować we własnym zakresie, ale też skorzystać z gotowych produktów, gdyż takie są już dostępne na rynku. Dobre produkty tego rodzaju umożliwiają kontrolę przestrzegania kilkuset elementarnych reguł programowania z uwzględnieniem języka, w jakim napisano poszczególne moduły analizowanego programu. Narzędzia te umożliwiają również dokładanie własnych reguł, charakterystycznych dla firmy czy ośrodka, gdzie takie narzędzia kontrolne się stosuje.

Kontrola tego rodzaju, aby była skuteczna, musi być sformalizowana i nie może być formą samokontroli (nie wyklucza to jednak udostępnienia odpowiednich narzędzi programistom, gdyż może ono być pomocne w uczeniu reguł i ich wdrażaniu). Oznacza to, że czynność tę musi wykonywać ktoś w tym się specjalizujący i dobrze zorientowany w obowiązujących w danej organizacji regułach.

Związane z tym dodatkowe nakłady z pewnością szybko się zwrócą w postaci lepszej jakości kodu programów i - co za tym idzie - niższych nakładów na ich tworzenie, testowanie i przyszłe zmiany.


TOP 200