Postawy, które staram się utrzymać:
- Absolutna pewność, że przyczyna i skutek działają i nic nie jest magią. Nie dzieje się nic dziwnego, tylko rzeczy, których nie rozumiem.
- Absolutna pewność, że jeśli będę ją dalej naciskać, to ją rozwiążę (może to obejmować przekazanie jej komuś bardziej kompetentnemu, uczenie się, proszenie o pomoc, ciężką pracę itp.).
- Narzekanie na to, że konfiguracja, program lub scenariusz jest źle zaprojektowany lub naprawdę głupi, po prostu nie pomaga, więc nie rób tego. (Uważam to za trudne, narzekanie jest zabawne).
Są to postawy, które pomagają mi utrzymać - powstrzymują mnie od wyrzucania rąk w powietrze, ogłaszania czegoś „dziwnego”, a następnie poddawania się lub odczuwania nieszczęścia, ponieważ wydaje się to „nierozwiązywalne”.
Sposoby myślenia o rozwiązywaniu problemów:
- Systemy składają się z wielu części, jeśli są ze sobą połączone lub skonfigurowane losowo, nie będą działać zgodnie z oczekiwaniami. Istnieje jedna lub dwie bardzo specyficzne konfiguracje, które będą działać - spośród wszystkich milionów sposobów układania cegieł i metalu, tylko kilka jest mostami, a tylko jedna lub dwie są wystarczająco dobrymi mostami. Przyczyną może być znak w pliku tekstowym lub uszkodzony serwer, ale każda część musi być odpowiednia, aby wszystko działało poprawnie. W razie potrzeby muszę być dokładny i skrupulatny. Systemy nie mogą zrobić „show musi trwać”.
- Zaczynasz z całym systemem, takim jak mapa, wyobrażasz sobie chmurę prawdopodobieństwa unoszącą się nad mapą, reprezentującą „gdzie jest problem”, a Twoim zadaniem jest wykorzystanie doświadczenia i znalezienie testów, aby odepchnąć prawdopodobieństwo od niektórych obszarów w kierunku innych i aby skondensować go do punktów, w których występują problemy z dużym prawdopodobieństwem, a następnie zaatakować je. Wraca to do przyczyny i skutku - problem tkwi w systemie, to nie jest magia. Jest to problem, który istnieje, więc musi gdzieś istnieć.
- Wszystko można skonfigurować w dowolny sposób. Jedynym sposobem, w jaki możemy zdefiniować jedno zachowanie jako „OK”, a drugie jako „problem”, jest to, że ktoś dostaje to, czego nie chce. Musisz zrozumieć, czego chcą, co otrzymują w sposób jasny i konkretny.
Proces rozwiązywania problemów:
- Jaki jest problem. Upewnij się, że to się dzieje i możesz to samodzielnie odtworzyć, aby nie doszło do nieporozumień. Tak często problemy napotykały wiele osób w naszym centrum pomocy, zanim do mnie dotarły, ale nikt nie jest w stanie wyjaśnić mi, na czym tak naprawdę polega problem.
- To jest rekurencyjna bisekcja od nowa - dziel i zwyciężaj, wyszukiwanie binarne - wymyślisz test, który udowodni, czy problemem jest ta strona testu, czy ta strona, i sprawisz, aby test wyeliminował w jak największym stopniu. Powtarzaj aż do rozwiązania.
- Nie ucz się, czy możesz tego uniknąć - lepiej zablokować konto bazy danych i udowodnić, że problem nadal występuje, gdy baza danych nie jest zaangażowana, niż spędzać godziny na nauce korzystania z bazy danych.
- Zbyt łatwo jest mi myśleć „nie wiem, co robić dalej”. Zauważ, kiedy to nastąpi, i wróć do wymyślania testów, które zlokalizują problem.
Internet nie działa? Sprawdź problem, znajdź witrynę, do której nie mogą się dostać. Szybkie testy obejmują ich połączenie internetowe (działa), czy to dla mnie ładuje (nie). Szybkie testy wskazują, że jest to witryna. Widząc, że problem mi się zdarza, szybko odsunąłem prawdopodobieństwo od komputera, przeglądarki, DNS, zapory biurowej konta użytkownika itp.
Więc strona się nie ładuje, co teraz? Tego jeszcze nie da się naprawić, więc poszukaj miejsc, w których możesz wyrzeźbić problem na mniejszy. Czy serwer jest włączony? Czy to ping? działa DNS? Tak. Czy usługa odpowiada na porcie 80? Nie. Czy usługa jest uruchomiona? Nie. Czy to się zaczyna? Nie. Czy wyświetla błędy w dzienniku zdarzeń / plikach dziennika? Tak! Co oni mówią?
Jest to wydajne i szybkie rozwiązywanie problemów, ponieważ nieustannie koncentruje się na zawężeniu zakresu problemu. Gdybym zaakceptował ich raport, że Internet nie działa, zostałbym wprowadzony w błąd, sądząc, że to błąd połączenia. Gdybym zaakceptował moje pierwsze stwierdzenie, że nie ładuje się dla nich, traciłbym czas na komputerze, sądząc, że to wina.
Wytnij fragmenty „rzeczy, których nie może być”, tak duże, jak to możliwe.
Zrozum system. Im bardziej ogólna wiedza na temat systemu, tym łatwiej. Tam, gdzie mam słabe zrozumienie, problemy są bardziej zastraszające, trudniejsze, wolniejsze i bardziej prawdopodobne jest, że skończą się obejście niż poprawka lub z dużym głupim powolnym naprawieniem (ponowna instalacja) niż mała, precyzyjna poprawka chirurgiczna.