Jaka jest różnica między usterką a błędem?
terminology
quality-attributes
maz3tt
źródło
źródło
Odpowiedzi:
Błąd jest wynikiem błędu kodowania
Wada jest odchyleniem od wymagań
Oznacza to, że wada niekoniecznie oznacza błąd w kodzie , może to być funkcja, która nie została zaimplementowana, ale zdefiniowana w wymaganiach oprogramowania.
Ze strony Wikipedii na temat testowania oprogramowania :
źródło
Cytując Ilene Burnstein z książki Praktyczne testowanie oprogramowania (zalecane), która rozstaje się z definicją w „IEEE Standards Collection for Software Engineering” (1994) i „IEEE Standard Glossary of Software Engineering Terminology” (standard 610.12, 1990):
Błąd
Usterki (wady)
Awarie
Możesz przeczytać cały rozdział w Książkach Google, tutaj .
źródło
Istnieje kilka różnych terminów związanych z błędami oprogramowania. Fragment kursu, który wziąłem:
Błąd : ludzkie działanie lub zaniechanie, które powoduje błąd.
Usterka : Usterka to wada oprogramowania (niepoprawna definicja kroku, procesu lub danych), która powoduje awarię.
Błąd : taki sam jak błąd.
Błąd : niezdolność oprogramowania do wykonania wymaganych funkcji w ramach określonych wymagań wydajnościowych.
Zgodnie z tym nie ma różnicy między wadą a błędem. Jednak niektórzy twierdzą, że błąd jest błędem, który zostanie wykryty przed wydaniem oprogramowania, podczas gdy wada zostanie wykryta przez klienta.
Nie mogłem się powstrzymać od opublikowania słynnego „pierwszego faktycznego przypadku znalezienia błędu”.
źródło
O jej.
W dawnych czasach - wadliwe działanie komputera było spowodowane przez różnego rodzaju rzeczy - w tym szczury żujące przewody i prawdziwe błędy (stworzenia) wchodzące do prac.
Termin BUG utknął jako termin, który oznacza, że coś nie działa zgodnie z oczekiwaniami.
BŁĄD należy traktować jako termin żargonowy oznaczający wadę.
Wada jest technicznie poprawnym terminem, co oznacza, że rzecz nie działa tak, jak powinna.
Tam, gdzie to możliwe, użycie DEFECT zamiast BUGA niesie ze sobą konotację, że uznajemy nasze awarie (nasze wady, nasze niezrozumienie wymagań użytkownika lub rzeczy, które przeoczyliśmy przy wdrażaniu) zamiast ubierać go jako bardziej trywialny „błąd” „.
Użyj WADY.
Staraj się nie używać terminu BŁĄD. Jest głupi, nieistotny, historyczny i trywializujący.
źródło
Ze standardowego słownika terminologii inżynierii oprogramowania IEEE, która jest cytowana w Korpusie wiedzy inżynierii oprogramowania KA ds. Testowania oprogramowania i jakości oprogramowania:
Myślę, że definicja awarii jest najbardziej odpowiednia. Wszystko zaczyna się od pomyłki, niezależnie od tego, czy chodzi o wymagania, projekt, implementację, czy przypadek testowy / procedurę. Jeśli ten błąd przejawia się w oprogramowaniu, staje się usterką. Awaria jest spowodowana istnieniem jednego lub więcej błędów w oprogramowaniu.
Nie jestem jednak zwolennikiem formalnej definicji błędu. Bardzo wolę definicję podaną przez dukeofgaming w jego odpowiedzi , jednak ta w tej odpowiedzi jest standardową definicją błędu IEEE.
źródło
Odpowiedź Dana McGratha trafiła w sedno.
Może przykład by to wyjaśnił.
Przykład: Klient chciał, aby formularz internetowy mógł zapisać i zamknąć okno.
Scenariusz nr 1: Formularz internetowy ma przycisk Zapisz i inny przycisk Zamknij. Wynik: wada, ponieważ klient chciał, aby przycisk 1 zapisał i zamknął okno. Deweloper źle zrozumiał i stworzył osobno. Ponieważ oba przyciski spełniły swoje wymagania, nie jest to błąd, ale wada, ponieważ nie spełniał wymagań klienta.
Scenariusz # 2: Formularz internetowy ma przycisk Zapisz i zamknij, ale tylko zapisuje, ale nie zamyka. Wynik: błąd. Ponieważ przycisk nie działa zgodnie z wymaganiami / oczekiwaniami. Deweloper wie, że powinien dać taki wynik, ale ostatecznie tego nie zrobił. (być może błąd kodowania)
Nie jestem pewien, czy to czyni to jaśniejszym.
p / s: z punktu widzenia dewelopera (byłem kiedyś), zarówno wady, jak i błędy są równie ważne. Nadal to naprawimy.
Napotkaliśmy nawet dziwne anomalie, które podzieliliśmy na kategorie pod kątem błędów i nieustannie staramy się ustalić, co jest przyczyną i jak to naprawić. Określenie go błędami nie czyni go trywialnym w porównaniu do wad.
źródło
Różnica polega na tym, że termin „pluskwa” brzmi magicznie. Jakby program mógł losowo zawierać błędy po zakończeniu programowania. Jeśli ma losowe błędy, oznacza to, że nie spełniłeś specyfikacji i twój program jest w błędzie.
Wada oznacza błąd, w którym program nie jest zgodny ze specyfikacjami. Jest to poważniejsze i, mówiąc w zasadzie, każdy błąd stanowi ogromny problem z programem, a to oznacza, że program nie nadaje się do wydania.
Różnica polega na nastawieniu programistów, którzy używają terminów. Istnieją miliony programów, które są wydawane z błędami, a ludzie są w porządku, ponieważ akceptują z jakiegoś powodu, że błąd jest magiczny i losowy i że każdy program zawiera co najmniej jeden błąd. Jednak programista, który używa terminu „defekt”, może stać się niekomfortowy w wydaniu programu z defektem, ponieważ termin ten oznacza większą dotkliwość.
Implikacje preferowania jednego terminu nad drugim wpływają na nas codziennie.
źródło
Według niezawodności: podstawowe pojęcia i terminologia :
Wadę rozumiem jako kolejną nazwę winy.
Błąd jest mylący i może reprezentować usterkę lub awarię w zależności od kontekstu.
Pamiętaj, że nie ma wzmianki o specyfikacji: nawet specyfikacja może być wadliwa.
źródło
Oto, co zrobiłem wcześniej dla mojego pracodawcy Q-LEAP w oparciu o słownictwo ISTQB, a także sprawdziłem słownictwo IEEE. Cieszyć się.
Błąd i wada? To samo, chociaż można o tym nieskończenie dyskutować. Mamy naprawdę inne rzeczy do zmartwienia, życie jest już wystarczająco skomplikowane itp.
Przykład użycia tego terminu na wolności, z „How Google Tests Software” str. 113. Otwórz artykuł „Oprogramowanie IEEE”, z którego korzysta się w ten sam sposób. Rzeczywiście w prawdziwym życiu rzadko spotyka się słowo „wada”.
źródło
Poza konkretnym wystąpieniem błędu / zadania / biletu / usterki / problemu / jakiejkolwiek instancji systemu śledzenia, słowa te nie mają dokładnego znaczenia, dlatego omawianie różnic między nimi jest bezcelowe. Podczas rozliczania przepływu pracy należy ustalić terminologię i podać opisy.
W moim obecnym środowisku „defektem” jest dowolny element Jira. Wygląda na to, że sama Jira używa terminu „problem”. Być może odziedziczyliśmy to po wcześniejszym systemie. „Błąd” jest rodzajem problemu, gdy coś nie działa zgodnie z oczekiwaniami i zostało opisane w dokumentacji. „Żądanie funkcji”, gdy coś działa zgodnie z oczekiwaniami, ale pożądane jest ulepszenie (może być oczywiste i ważne, ale jeśli zostanie opisane obecne zachowanie, nadal jest to prośba o funkcję). Istnieje więcej typów, ale te 2 są używane przez osoby spoza zespołu programistów, aby o coś zapytać.
Jeśli wybierasz nazwy typów problemów, „błąd” i „wada” brzmią podobnie do mnie. Różnica między nimi jest stylistyczna. Ponieważ angielski nie jest moim językiem ojczystym, tak naprawdę nie widzę go wiele i nie jestem pewien, czy to, co widzę, jest prawidłowe.
źródło