Co to jest analiza oprogramowania?
Benchmarking oprogramowania zazwyczaj odnosi się do procesu, w którym cykl rozwoju producenta oprogramowania jest porównywany z innymi przedsiębiorstwami w celu ustalenia wydajności firmy. Często odbywa się to w celu ustalenia, gdzie można wprowadzić ulepszenia w procesie rozwoju, oraz w celu zapewnienia maksymalnej wydajności firmy. Porównania te mają zazwyczaj charakter ilościowy, ponieważ dotyczą wartości liczbowych i liczb, aby ocenić, jak szybko i skutecznie firma działa. Tego typu testowania oprogramowania nie należy mylić z testowaniem sprzętu komputerowego, który ocenia skuteczność różnych urządzeń i komputerów.
Podstawowym celem testów porównawczych oprogramowania jest określenie, jak dobrze radzi sobie jeden programista w porównaniu z innym. Początkowo informacje o deweloperze muszą zostać zebrane i rozpatrzone w sposób ilościowy. Czas potrzebny na stworzenie przez tę firmę najnowszego programu, czas na naprawę błędów i wydanie łatek, a także liczbę programistów zaangażowanych w te procesy. Po zebraniu tych danych można je wykorzystać do analizy porównawczej oprogramowania w porównaniu z innymi firmami stosującymi porównywalne wskaźniki.
Firmy zewnętrzne często biorą udział w testowaniu oprogramowania, zbierając informacje o wielu programistach, które często są dostarczane przez te firmy do porównania. Firma zajmująca się testami porównawczymi może mieć dane od kilkudziesięciu, a nawet stu programistów, wyszczególniające mierzalne wartości czasu spędzonego na programowaniu, kosztów tego procesu i osiągnięć na podstawie liczby programistów. Organizacja dokonuje następnie porównań między tymi różnymi programistami i wykorzystuje do ustalenia liczby wartości dla każdej z nich. Po zakończeniu tego procesu każda firma może zostać powiadomiona o tym, jak dobrze sobie radziła w ramach tej większej puli, i może użyć danych z testów porównawczych oprogramowania, aby określić ulepszenia, które należy wprowadzić w przyszłych projektach.
Ten rodzaj testów wydajności oprogramowania jest nieco podobny do testów wydajności sprzętu, ale nie należy ich mylić. Testy sprzętowe są często określane przez uruchamianie różnych konfiguracji komputerów i elementów sprzętu poprzez różne testy w celu wygenerowania danych o tych urządzeniach. Dane te są następnie wykorzystywane do porównywania różnych elementów sprzętu w celu ustalenia, które procesory lub karty graficzne są teoretycznie lepsze od innych w danym kontekście.
Istnieje pewna forma analizy porównawczej oprogramowania, która może być przeprowadzana w podobny sposób, chociaż częściej jest uważana za część testów wsparcia. Ten sam program można uruchomić na wielu komputerach z różnymi konfiguracjami urządzeń i urządzeń, aby sprawdzić, z jakimi systemami jest kompatybilny. Ten typ testów porównawczych jest często wykorzystywany do określenia minimalnych wymagań dla programu i zapewnienia, że jak największa liczba użytkowników może uruchomić oprogramowanie.