Co to jest inżynieria wydajności?
Inżynieria wydajności to proces, w którym systemy są budowane i utrzymywane w celu spełnienia kryteriów określonych przez ich użytkowników. W przeciwieństwie do wielu procesów systemowych, nietechniczny aspekt działalności biznesowej stanowi punkt odniesienia, na podstawie którego testowany jest system. Zadaniem zespołu technicznego jest terminowe osiągnięcie tych celów. Ogólnym celem inżynierii wydajności jest stworzenie szczupłego i responsywnego systemu komputerowego, który ułatwia pracownikom i zwiększa produktywność.
Prawie wszystkie firmy mają jeden ogólny cel: zarabianie pieniędzy. Inżynieria wydajności dobrze wpisuje się w ten cel, usprawniając systemy i zwiększając wydajność. Odbywa się to na wiele sposobów, przede wszystkim poprzez skrócenie czasu oczekiwania na informacje oraz poprzez stworzenie niezawodnych, przyjaznych dla użytkownika systemów, które skracają czas szkolenia, konserwacji i przestojów. Chociaż wiele zmian spowodowanych tymi procesami jest niewielkich, razem mogą one stanowić ogromną poprawę.
W większości przypadków pierwszym krokiem planu inżynierii wydajności jest aspekt biznesowy firmy. Podczas tej początkowej fazy problemy są identyfikowane z punktu widzenia użytkownika. Często problemy te mają nietechniczne definicje, takie jak „przyspieszenie” procesu lub „pobranie nowej wersji” programu. Otwartość tych specyfikacji pozwala na późniejsze korzystanie z pokoju wiggle.
Ta lista wniosków i pomysłów na pranie trafia następnie do zespołu technicznego odpowiedzialnego za drugą stronę procesu inżynierii wydajności. Zespół przejrzy prośby i wymyśli, jak je przełożyć na konkretne zadania. Na przykład, jeśli wspólny proces zostanie uznany za „zbyt wolny” podczas wstępnego planowania, zespół techniczny sprawdzi proces, aby zobaczyć, jak obecnie działa. Możliwe może być skrócenie fizycznej odległości transmisji, zwiększenie priorytetu funkcji, a nawet skonfigurowanie nowego systemu wtórnego do obsługi tego konkretnego żądania.
W tym przypadku nietechniczna część inżynierii wydajności może dobrze działać dla wszystkich. Zespół niezwiązany z technologią chce efektu, ale nie obchodzi go, jak to się dzieje. Pozostawia to stronę techniczną do działania w ramach obecnych wytycznych i budżetów, które uzna za stosowne. Dopóki cel końcowy zostanie osiągnięty, wszyscy są szczęśliwi.
Kolejnym powszechnym krokiem w inżynierii wydajności są testy. Zespół techniczny określa najlepsze możliwe metody ulepszenia systemu, harmonogramy konserwacji i procedury aktualizacji. Gdy dostępnych jest wiele opcji, inżynierowie przetestują opłacalność każdej zmiany w zamkniętym środowisku. Ponieważ systemy biznesowe są często wyjątkowo złożone, niewielkie zmiany w jednym obszarze mogą przynieść nieoczekiwane rezultaty w innym. Po zakończeniu testowania zmiany są przenoszone zarówno do działających systemów, jak i harmonogramów pracy, a proces rozpoczyna się od nowa.