Krzysztof Olszewski
Dyrektor Technologii i Architektury Oprogramowania
Krzysztof Olszewski
Dyrektor Technologii i Architektury Oprogramowania
Przynajmniej trzy obszary opisywanego wcześniej standardu ISO/IEC 9126 (niezawodność, użyteczność i efektywność) odnoszą się do zagadnień wydajności systemów. Z mojego punktu widzenia i jak myślę z punktu widzenia nas – „it-meów” z kręgów ERP, zagadnienia wydajności można opisać w inny bardziej praktyczny sposób. Według mnie myśląc o wydajności, powinniśmy zwrócić uwagę na następujące zagadnienia:
- wydajność sensoryczna – wydajność systemu odczuwalna bezpośrednio przez użytkowników mających z systemem kontakt, związana jest ona z czasem reakcji UI systemu w odpowiedzi na działania użytkownika.
- wydajność obsługi sesji – zdolność systemu do skalowania się pod względem ilości jednoczesnych sesji użytkowników.
- wydajność jednostkowa – zdolność do wykonania jednostkowych operacji w założonym czasie, skorelowanym ze sposobem pracy użytkowników systemu.
- wydajność przetwarzania danych – zdolność systemu do przetwarzania określonej ilości danych w określonej jednostce czasu.
- wydajność na zasobach współdzielonych – zdolność do przetwarzania danych na założonym poziomie wydajności, przy operacjach dotyczących zasobów współdzielonych mogących wymagać kontroli jednoczesnego dostępu.
- odporność przeciążeniowa – sposób zachowania systemu w sytuacji wzrostu obciążenia ponad założone wartości graniczne.
- odporność przeciążeniowa wsteczna – sposób zachowania systemu w sytuacji spadku zasobów poniżej zakładanych wartości granicznych.
- krzywa wydajności – wykres obrazujący wpływ zmniejszania się stosunku zasobów do obciążenia na wydajność systemu w różnych obszarach wydajności.
- zarządzanie obciążeniem – zdolność do kategoryzacji żądań pod względem priorytetów ważności i odpowiednia strategia szeregowania w przypadkach brzegowych.
- odporność na awarie – zdolność do zachowania założonego czasu przywrócenia działania systemu po wystąpieniu awarii jednego lub wielu z zasobów.
W następnych wpisach postaram się omówić wybrane zagadnienia, a także przedstawić ogólnodostępne i te mniej oczywiste rozwiązania pozwalające zapewnić wysokie parametry wydajności i skalowalności.