| Termin | Definicja |
|---|---|
| nieczytelna struktura danych z formularza | Nieczytelna struktura danych z formularza to wynik braku walidacji i jednolitego nazewnictwa pól po stronie źródła. Jak powstaje nieczytelna struktura danych z formularzaNieczytelna struktura danych z formularza pojawia się wtedy, gdy informacje wprowadzone przez użytkownika nie mają ustalonego, jednoznacznego i powtarzalnego układu. Formularz może zawierać pola o niejasnych nazwach, różne określenia tej samej wartości albo elementy, których znaczenie zależy od kolejności występowania. Przykładem jest jednoczesne użycie pól „telefon”, „numer kontaktowy” i „tel”, mimo że każde z nich przechowuje tę samą informację. Problem powstaje również wtedy, gdy raz zapisywana jest pełna nazwa urządzenia, a innym razem tylko skrót lub numer modelu. Źródłem takiego stanu jest najczęściej brak walidacji po stronie formularza oraz brak wspólnego schematu danych. Walidacja powinna sprawdzać między innymi, czy wymagane pole zostało wypełnione, czy wartość ma odpowiedni typ oraz czy mieści się w ustalonym zakresie. Bez takich kontroli do dalszego przetwarzania mogą trafić puste ciągi znaków, przypadkowe spacje, różne formaty daty, numery zapisane jako tekst albo wartości rozdzielone przecinkiem w jednym polu. Sama obecność danych w żądaniu nie oznacza więc, że dane mają strukturę przydatną dla kolejnego programu. Nazwy pól, typy wartości i relacje między elementamiCzytelność struktury zależy od konsekwentnego nazewnictwa. Nazwa pola powinna wskazywać, jaką wartość zawiera, a nie opisywać sposób jej wyświetlenia. Pole „wartosc” jest mniej jednoznaczne niż „numer_seryjny”, „adres_email” albo „data_zgloszenia”. W systemie wymiany danych warto ustalić również, czy nazwy zapisuje się małymi literami, z podkreśleniami, czy w zapisie wielowyrazowym. Mieszanie form, takich jak device_name, modelUrządzenia i „nazwa sprzętu”, utrudnia mapowanie danych oraz zwiększa ryzyko pominięcia właściwego elementu. Znaczenie ma także typ wartości. Numer telefonu, kod pocztowy lub numer seryjny może być przechowywany jako tekst, ponieważ może zawierać znak „+”, spacje, myślniki albo początkowe zero. Z kolei liczba sztuk, pojemność dysku wyrażona w ustalonej jednostce lub rozmiar pliku może wymagać typu liczbowego. Data powinna mieć jeden uzgodniony format, a pole wielokrotnego wyboru powinno być przekazywane jako lista, a nie jako nieopisany ciąg znaków. Jeżeli formularz przesyła kilka urządzeń, każdy rekord powinien mieć własny zestaw pól, zamiast łączenia wielu urządzeń w jednym polu tekstowym. Skutki braku walidacji przy odczycie formularzaNieuporządkowane dane powodują błędy na kolejnych etapach obsługi. Program może odczytać pustą wartość jako poprawną, przypisać opis usterki do niewłaściwego urządzenia albo potraktować tekst zawierający kilka informacji jako pojedynczy atrybut. Błąd może być widoczny jako niepełne zgłoszenie, brak możliwości wyszukania rekordu lub niespójny komunikat w interfejsie. Jeżeli różne formularze przesyłają tę samą informację pod innymi nazwami, kod odbierający dane musi zawierać dodatkowe wyjątki i warunki, co utrudnia późniejsze testowanie. Analiza problemu powinna rozpocząć się od porównania formularza, żądania wysyłanego przez przeglądarkę oraz kodu, który odbiera wartości. Należy sprawdzić nazwy atrybutów name, sposób kodowania formularza, obecność pól ukrytych, wartości domyślne oraz reakcję na brak pola. Następnie trzeba porównać oczekiwany schemat z rzeczywistymi danymi dla kilku wariantów: pustego formularza, pełnego formularza, formularza z niepoprawnym formatem oraz formularza zawierającego kilka elementów. Pomocne jest rejestrowanie nazw pól i typów wartości, bez zapisywania całej treści zgłoszenia. Dzięki temu można ustalić, czy problem powstaje w interfejsie, podczas przesyłania, czy dopiero w module przetwarzającym. Porządkowanie struktury w aplikacji serwisowejNaprawa wymaga ustalenia jednego kontraktu danych dla formularza i wszystkich elementów, które go obsługują. Kontrakt powinien określać nazwy pól, typy wartości, pola wymagane, dozwolone formaty oraz sposób reprezentowania brakujących danych. Walidacja po stronie przeglądarki poprawia komunikację z użytkownikiem, ale nie zastępuje walidacji po stronie aplikacji odbierającej dane. Ta druga musi ponownie sprawdzić zawartość, ponieważ żądanie może zostać wysłane poza standardowym formularzem albo zmodyfikowane przed obsługą. Przy zgłoszeniach dotyczących laptopów i komputerów PC warto oddzielić dane kontaktowe, opis urządzenia, model, objawy oraz informacje organizacyjne na osobne pola o jasno określonym znaczeniu. Zmniejsza to ryzyko pomylenia opisu usterki z nazwą podzespołu i ułatwia dalszy odczyt zgłoszenia przez człowieka oraz program. Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów, komputerów PC i ich podzespołów, dlatego czytelne dane z formularza mogą ułatwić prawidłowe przekazanie informacji o urządzeniu oraz przygotowanie dalszej diagnostyki. |