Narzędziadla Visual Studio

Pojawiły się nowe narzędzia dla programistów korzystających z Visual Studio 2008: pakiet open source Clone Detective i komercyjny TX Chrono opracowany na Białorusi.

Pojawiły się nowe narzędzia dla programistów korzystających z Visual Studio 2008: pakiet open source Clone Detective i komercyjny TX Chrono opracowany na Białorusi.

Interesujące narzędzie do analizy kodu - Clone Detective 1.0 for Visual Studio pojawiło się na utrzymywanej przez Microsoft stroniehttp://www.codeplex.com. Jest to pakiet open source udostępniany bezpłatnie. Licencje na Clone Detective 1.0 for Visual Studio są oparte na zasadach licencjonowania Apache 2.0. Jednocześnie nowa, utworzona w 2007 r. firma TeamExpand specjalizująca się w opracowywaniu narzędzi rozszerzających funkcjonalność Microsoft Visual Studio Team System wprowadziła do sprzedaży narzędzie TX Chrono umożliwiające zbieranie, analizowanie i prezentowanie szczegółowych zależności czasowych podczas realizowania projektów angażujących duże zespoły.

Odnaleźć zduplikowany kod...

Clone Detective 1.0 for Visual Studio, a dokładniej jego wersja 1.0.0.0, umożliwia programistom automatyczne wyszukiwanie powtarzających się, czyli zduplikowanych fragmentów kodu aplikacji budowanych przy wykorzystaniu języka C#. "Powtarzający się kod źródłowy może być oznaką niskiej jakości oprogramowania i przyczyną późniejszych problemów" - wyjaśnia Immo Landwerth odpowiedzialny za koordynację i zarządzanie projektem open source Clone Detective. Jeśli ten sam algorytm jest wykorzystywany w różnych miejscach w tej samej postaci, to z reguły później - w wyniku kolejnych modyfikacji - pojawiają się różne jego wersje, to zaś powoduje wzrost ilości pracy niezbędnej do utrzymania oprogramowania, a z czasem może doprowadzić do poważnych niezgodności i niestabilności aplikacji.

Przyczyny pojawiania się zduplikowanego kodu są różne. Czasami jest to lenistwo programisty, który niedbale wycina i wkleja fragmenty kodu, często wynikają one jednak z architektury, która narzuca odpowiednie ograniczenia lub problemów wynikających ze stosowanej metodologii. Clone Detective ma być lekarstwem na tego typu problemy. Narzędzie to wyszukuje bowiem duplikujące się fragmenty kodu i prezentuje wizualizację ich lokalizacji w kodzie źródłowym.

...i oznaczyć go

Narzędziadla Visual Studio
Wiadomo jednak, że nie zawsze takie fragmenty kodu można łatwo usunąć, bo np. jest to nieopłacalne ze względu na konieczność dużej modyfikacji całego projektu. Twórcy programu przewidzieli również taką sytuację. Clone Detective jest wyposażony w funkcję trwałego znakowania powtarzających się elementów kodu, aby przy późniejszych modyfikacjach, poprawkach i aktualizacjach programista widział, które fragmenty były zduplikowane. W efekcie, wprowadzając zmiany, łatwo można skontrolować, czy nie należy ich powtórzyć w innych miejscach aplikacji.

Clone Detective wykorzystuje zestaw narzędzi ConQUAT (Continuous Quality Assessment Toolkit) opracowany na Politechnice w Monachium. Obecnie oprogramowanie może analizować tylko kod C#, ale wkrótce mają się pojawić jego aktualizacje umożliwiające skanowanie programów pisanych przy wykorzystaniu języków Visual Basic.NET oraz C++. Przygotowywana jest także znacznie bardziej zaawansowana wersja Clone Detective, która będzie mogła wyszukiwać tzw. klony rozmyte, czyli fragmenty kodu, które są podobne, ale nie identyczne. Może to być przydatne narzędzie do wykrywania niezgodności lub sprzeczności w już istniejącym kodzie, a w efekcie ulepszania niezawodności działania aplikacji.

Chronometr projektów

TeamExpand TX Chrono to komercyjne narzędzie umożliwiające zbieranie, analizowanie i prezentowanie szczegółowych zależności czasowych podczas realizowania zespołowych projektów przy wykorzystaniu Visual Studio.Net. Oprogramowanie współpracuje z Microsoft TFS (Team Foundation Server) - serwerem do zarządzania czasem życia aplikacji. Jak twierdzą przedstawiciele TeamExpand, funkcje oferowane przez TX Chrono istotnie rozszerzają możliwości TFS m.in. o zaawansowane funkcje pracy grupowej i raportowania oraz mechanizmy automatycznego powiadamiania o problemach. Licencja na TX Chrono kosztuje 15 USD miesięcznie za jedno stanowisko. TeamExpand jest oddziałem Altoros Systems, amerykańskiej firmy, która centrum rozwoju oprogramowania zlokalizowała na Białorusi.

Funkcje TX Chrono:
  • automatyczne generowanie powiadomień i alarmów odnoszących się do projektu lub indywidualnych aktywności członków zespołu,
  • funkcje tworzenia zestawień i planów przewidywanego czasu realizacji procesów i etapów projektu, które mogą być analizowane i zatwierdzane,
  • możliwość tworzenia planów indywidualnych lub niestandardowych (np. opartych na nietypowych rozkładach czasu pracy dziennej lub tygodniowej),
  • zaawansowane mechanizmy raportowania.

  • TOP 200