Jaka jest różnica między rozwiązywaniem problemów, testowaniem i debugowaniem?
Poświęć dowolny czas na pracy lub graniu na komputerach, a wkrótce usłyszysz trzy słowa Bandior o: Rozwiązywanie problemów , testowanie i debugowanie . Chociaż pierwsze dwa są wystarczająco powszechne, ich znaczenia mogą wydawać się niewyraźne, a nawet synonimowe. W praktyce każde z tych działań jest inne, choć powiązane.
Rozwiązywanie problemów jest zmorą użytkownika końcowego i technika obsługi klienta, i zaczyna się, gdy oprogramowanie lub sprzęt nie działa zgodnie z oczekiwaniami, co daje nieoczekiwany lub w inny sposób niezadowolony wynik. W wielu przypadkach błąd użytkownika jest winny.
Pierwszym krokiem w rozwiązywaniu problemów jest pokrycie podstaw. Czy oprogramowanie lub sprzęt jest poprawnie zainstalowane? Czy jest to prawidłowo skonfigurowane? Czy przeczytałeś instrukcję i przestrzegałeś wszystkich instrukcji? Może zmieniłeś coś w swoim układzie, co spowodowało problem? Czy używasz tego produktu przez cały czas, czy jest to nowa instalacja?
Jeśli jest to nowa instalacja, możesz prawie być pewien, że TroubLE leży w procesie instalacji, szczególnie w przypadku sprzętu. Sprzęt wymaga sterownika urządzenia (plik oprogramowania), który działa jako most lub interfejs między sprzętem a systemem operacyjnym. Jeśli sterownik urządzenia nie powiedzie się, sprzęt nie może poprawnie komunikować się z innymi komponentami systemowymi. Sterowniki urządzeń mogą nie być obecne lub mogły zostać zainstalowane w niewłaściwej kolejności w stosunku do urządzenia.
Jeśli problem leży w sprzęcie, który działał idealnie do chwili obecnej, przyczyną może być uszkodzenie sterownika urządzenia. Ponowna instalacja sterownika może rozwiązać problem. Zaktualizowany sterownik może również załatwić sprawę. Innym razem, ponowne oskarżenie komponentu na płycie głównej poprzez zasilanie komputera, wyodrębnienie komponentu, a następnie ponowne zainstalowanie go, zajmuje się tym problemem.
Rozwiązywanie problemów w systemach operacyjnych Windows ™ jest również dostępne za pośrednictwem Menedżer urządzeń i menu pomocy . Żółty okrzyk obok komponentu w menedżerze urządzeń wskazuje problem.
Oprogramowanie, które zaczyna źle się zachowywać, może być również uszkodzone. Ponowna instalacja może czasem pomóc, ale jeśli program zaczął działać po zainstalowaniu nowego, niepowiązanego oprogramowania, może istnieć konflikt między nimi. Zapory ogniowe i programy antywirusowe są znane z tego, że nie grają razem ładnie i prawdopodobnie rozsądnie jest trzymać się tylko jednego programu w każdej z tych kategorii, chyba że jesteś zaawansowanym użytkownikiem.
Ogólnie rzecz biorąc, rozwiązywanie problemów zwykle obejmuje czytanie instrukcji lub plików pomocy, przeglądanie podstaw w celu wyeliminowania błędu użytkownika jako potencjalnej przyczyny oraz korzystanie z wyszukiwarki w celu zbadania, w jaki sposób inni rozwiązali problem. Jeśli jest jedna rzecz, na którą zawsze możesz liczyć jako użytkownik końcowy, to ktoś wcześniej chodził w twoich butach. Społeczność internetowa jest bardzo dobra w zapewnianiu pomocy, aw większości przypadków odpowiedzi można znaleźć DiliPoszukiwanie gent.
Testowanie jest prekursorem debugowania. Testowanie jest zwykle stroną programistów i zaawansowanych użytkowników i występuje, gdy produkt jest nowy lub jest aktualizowany i należy je przełożyć, aby wyeliminować potencjalne problemy. Testy identyfikują „błędy” lub niedoskonałości, aby można je było poprawić w procesie debugowania, przed [następnym] oficjalnym wydaniem produktu. Te „nieoficjalne” wydania są znane jako beta (np. 3.0 b ), a publiczni wolontariusze są znani jako testery beta.
Testowanie beta jest cennym zasobem dla programistów ze względu na zróżnicowane systemy komputerowe, w połączeniu z samą liczbą godzin i scenariuszy, w których program jest używany. To wypłuca nieprzewidziane problemy w sposób, którego nie można skutecznie osiągnąć za pomocą tylko debuggerów domowych. Faza testowania beta daje autorom dobry pomysł na gotowość produktu do domeny publicznej.
Sprzęt jest również testowany w wersji beta, ale ponieważ finansowo zabroniono zapewnienie bezpłatnego sprzętu beta publicznego, testowanie sprzętu i debugowanie są powszechnie wykonywane w domu. Produkty beta mogą być jednak miały premierę, aw niektórych przypadkach dystrybuowane w ograniczonej liczbie do osób z branży na konferencjach takich jak Comdex.
Oprogramowanie beta jest specjalnie udostępniane do testowania i nie jest uważane za stabilne wydanie. Testerzy beta instalują oprogramowanie beta na własne ryzyko i aby pomóc programistom oprogramowania w określeniu źródła problemu, muszą dostarczyć zdrową ilość informacji podczas zgłaszania błędu. Wymagane dane różnią się, ale ogólnie obejmują specyfikacje systemu, wersję i kompilację beta, dokładne warunki, w których wystąpił błąd, oraz zawartość komunikatu o błędzie.
debugowanie jest stroną programistów i programistów i polega na ustaleniu samego kodu oprogramowania w celu wyeliminowania błędów lub błędów. Deweloperzy próbują powtórzyć błędy zgłoszone przez betaw systemach domowych w celu ich wyeliminowania.
Chociaż istnieje wiele rodzajów narzędzi do debugowania, prostym przykładem jest narzędzie, które pozwala programistowi monitorować kod programu przy jednoczesnym manipulowaniu go w celu wykonywania różnych poleceń i procedur. Jednym z podstawowych podejść jest w jak największym stopniu uprościć kod w podejrzewanym niespokojnym miejscu, przy jednoczesnym odtworzeniu problemu, zwężenie skupienia się na potencjalne linie problemowe. W rzeczywistości debugowanie jest złożonym procesem, który wymaga różnych podejść opartych na takich czynnikach, jak złożoność i długość samego kodu oprogramowania oraz język, z którym jest napisany.
Debugowanie może być męczącym zadaniem, chociaż niektóre języki są łatwiejsze do debugowania niż inne. Na przykład Java zawiera procedury, które obsługują błędy wyjątku. Błąd wyjątku występuje, gdy program napotyka sytuację, którą należy rozwiązać, zanim program będzie mógł poprawnie kontynuować. W tym przypadku wbudowana rutyna inicjuje „wyszukiwanie” w różnych LAyers kodu oprogramowania, szukając odpowiedzi na problem. Jeśli nie można znaleźć poprawki, występuje błąd wyjątku , a program się wyłącza. Wynikowy komunikat o błędzie może zawierać adres pamięci lub inne kryptyczne dane, które nie pomogą użytkownikowi, ale mogą być cenne do debugowania. Dobrze napisane programy nie powinny mieć śmiertelnych błędów.
Starsze języki programowania, takie jak c lub montaż nie są tak przezroczyste i nie obsługują błędów tak skutecznie. Programy debugowania napisane w tych językach mogą przetestować umiejętności i cierpliwość debuggera.
Na szczęście dla użytkownika końcowego dostępne na rynku oprogramowanie zostało już debugowane z głównymi wadami. Z tego samego powodu większość problemów napotkanych przez użytkownika końcowego mieści się w zakresie rozwiązywania problemów i można je naprawić za pomocą wcześniej wspomnianych. Przy tych przypadkach, w których użytkownik końcowy napotyka błąd, przechodzenie ruchów rozwiązywania problemów może ujawnić obejście do B, aż do BUG jest ustalany przez programistę.
, prosząc o pomoc na forum internetowym lub grupie dyskusyjnej, koniecznie zrób pracę domową z wyprzedzeniem. Rozwiązywanie problemów jest czasochłonne, a ludzie, którzy zgłaszają się na ochotnika, doceniają kogoś, kto starał się znaleźć odpowiedzi. Pytanie o problem, o który wielokrotnie pytano, nie wygra znajomych i jest uważane za słabą Netiquette.