Jeśli działa, nie naprawiaj
Wszyscy to słyszeliśmy, prawda? “Jeśli działa, nie naprawiaj.” Ludzie używają tego wszędzie jako sposobu na zniechęcenie do usprawnień, modernizacji lub refaktoryzacji. Wiele osób tak mówi i jak w przypadku wielu tego rodzaju powiedzeń, na powierzchni wydaje się to rozsądne. Jednak w zastosowaniu praktycznym tak nie jest, a przynajmniej nie w sposób, w jaki jest zwykle używane, ponieważ nie jest dobrze rozumiane.
Jest to bardzo podobne do koncepcji mówienia ludziom, żeby nie wkładali wszystkich jajek do jednego koszyka, gdzie częściej niż nie jest stosowane do sytuacji, w których analogia jajek i koszyka nie ma zastosowania lub jest odwrócona od rzeczywistości. Ale ponieważ jest to wyuczona fraza, zapominają, że istnieje metafora, która musi się sprawdzać, żeby to miało sens. Może prowadzić do fatalnych decyzji, ponieważ wywołuje irracjonalny strach oparty na niczym.
Podobnie idea nienapsrawiania rzeczy, które nie są zepsute, pochodzi z teorii, że coś, co jest doskonale dobre i funkcjonalne, nie powinno być rozkładane na części i grzebane w nim tylko dla samego grzebania. Ma to sens. Ale z jakiegoś powodu ta logika prawie nigdy nie jest stosowana do rzeczy, w których miałaby sens (nawet nie jestem pewien dobrego przykładu), a zamiast tego jest stosowana do złożonych urządzeń, które wymagają regularnej konserwacji i pielęgnacji, aby działać poprawnie.
Oczywiście, jeśli twój but nie jest zepsuty, nie rozkładaj go na części i nie próbuj go z powrotem sklejać. Ale systemy infrastruktury biznesowej nie przypominają w niczym buta. Są to żywe systemy o ogromnym poziomie złożoności, które funkcjonują w stale zmieniającym się środowisku. Wymagają stałej konserwacji, nadzoru, aktualizowania i tak dalej, aby pozostać w dobrej kondycji. Podobnie jak samochód, ale znacznie bardziej.
Nigdy, mamy nadzieję, nie słyszysz, żeby ktoś mówił ci, że nie musisz wymieniać oleju w samochodzie, dopóki silnik się nie zatarł. Oczywiście, że nie; chociaż jeszcze nie jest zepsuty, chodzi o to, żeby wykonywać konserwację, aby zapobiec jego zepsuciu. Wiemy, że jeśli poczekamy aż się zepsuje, będzie to naprawdę poważna awaria. Podobnie nie odmówimy pompowania opon dopóki płaskie opony nie zostaną oderwane od felg. To po prostu nie ma sensu.
Mówienie komuś, żeby nie konserwował systemów, dopóki nie będzie za późno, to to samo, co mówienie mu, żeby je zepsuł. Prawidłowo utrzymywany samochód może przejechać setki tysięcy kilometrów, może miliony. Ten bez oleju będzie miał szczęście, jeśli dojedzie przez miasto. Kupowanie nowego silnika co kilka dni zamiast dbania o ten, który się ma, oznacza, że możesz przez całe życie nie zniszczyć silnika.
To samo dotyczy infrastruktury biznesowej. Kod się starzeje, systemy się zużywają, pojawia się nowa technologia, istnieją nowe potrzeby, sieć wchodzi w interakcje ze światem zewnętrznym, potrzebne są nowe funkcje, identyfikowane i naprawiane są luki i słabości, pojawiają się aktualizacje, opracowywane są nowe ataki i tak dalej. Nawet gdyby nigdy nie tworzono nowych funkcji, systemy muszą być pilnie zarządzane i konserwowane, aby zapewnić bezpieczne i niezawodne działanie – jak samochód, ale tysiąc razy bardziej złożone.
W kategoriach systemów IT, zepsuty oznacza zbędne narażenie na włamania, kradzież danych, utratę danych, przestoje i nieefektywności. W realnym świecie powinniśmy rozważać system jako zepsuty w momencie, gdy potrzebna jest konserwacja. Ile oprogramowania ransomware nie byłoby dziś zagrożeniem, gdyby systemy były po prostu prawidłowo utrzymywane? Jako specjaliści IT musimy stanąć i wyjaśnić, że nieutrzymywane systemy są już zepsute, katastrofa po prostu jeszcze nie nadeszła.
Gdybyśmy mieli podążać za mantrą “jeśli działa, nie naprawiaj” w IT, czekalibyśmy *aż* nasze dane zostałyby skradzione, żeby łatać luki bezpieczeństwa, albo czekalibyśmy aż dane byłyby nie do odzyskania, żeby sprawdzić, czy mamy działające kopie zapasowe. Oczywiście to nie ma sensu. Ale właśnie to jest często sugerowane, gdy ludzie mówią ci, żebyś nie naprawiał systemów, dopóki się nie zepsują – mówią ci, żeby pozwolić im się zepsuć! Sprzeciwiaj się temu, nie przyjmuj takich rad. Wyjaśnij, że celem dobrej konserwacji IT jest unikanie awarii systemów, kiedy tylko jest to możliwe. Unikanie katastrofy, a nie zapraszanie jej.