| Termin | Definicja |
|---|---|
| zły przypadek w personalizacji | Zły przypadek w personalizacji to błąd odmiany imienia, przez który wstawiona forma brzmi nienaturalnie. Na czym polega zły przypadek w personalizacjiZły przypadek w personalizacji występuje wtedy, gdy system wstawia imię, nazwę firmy albo inną spersonalizowaną wartość w formie niezgodnej z funkcją zdania. W języku polskim nie wystarczy samo podstawienie tekstu przechowywanego w bazie danych. Forma imienia zależy od przypadka, liczby, rodzaju oraz konstrukcji gramatycznej użytej w komunikacie. Zdanie „Dziękujemy, Piotr” może być poprawne jako zwrot do odbiorcy, natomiast „Witaj, Piotra” zawiera nieprawidłową odmianę. Podobny problem pojawia się w komunikatach generowanych automatycznie, na przykład w tytułach wiadomości, powiadomieniach aplikacji, formularzach i dokumentach tworzonych z szablonów. Źródłem błędu jest najczęściej traktowanie imienia jak nieodmiennego ciągu znaków. Program pobiera wartość z pola, na przykład „Piotr”, i wstawia ją bez analizy otaczającego tekstu. Jeżeli szablon wymaga dopełniacza, potrzebna byłaby forma „Piotra”; jeżeli celownika — „Piotrowi”; a jeżeli miejscownika — „Piotrze”. Nie wszystkie imiona odmieniają się jednak według tego samego wzorca. Dotyczy to także nazwisk, nazw firm, pseudonimów oraz imion obcojęzycznych, których odmiana może zależeć od przyjętej konwencji językowej. Skąd aplikacja bierze błędną formę imieniaPersonalizacja może być zbudowana na kilku różnych mechanizmach. Najprostszy wykorzystuje jedno pole tekstowe, takie jak Druga możliwość to automatyczna odmiana wykonywana przez moduł językowy. Taki moduł może korzystać ze słownika fleksyjnego, reguł morfologicznych albo modelu przetwarzania języka naturalnego. Sam fakt użycia analizatora morfologicznego nie gwarantuje poprawnego wyniku. System musi najpierw rozpoznać, jaką rolę pełni imię w konkretnym zdaniu. Reguła działająca dla komunikatu „Wysłano wiadomość do Piotra” nie może zostać bezpośrednio użyta w szablonie „Piotr, masz nowe powiadomienie”. Błąd może też powstać na granicy komponentów: baza przechowuje formę podstawową, API przekazuje ją bez informacji o przypadku, a warstwa interfejsu zakłada, że otrzymała już formę gotową do wyświetlenia. Testowanie odmiany w szablonach i interfejsieWeryfikację należy rozpocząć od zebrania wszystkich miejsc, w których dane personalizacyjne są łączone z tekstem. Należą do nich między innymi wiadomości e-mail, komunikaty ekranowe, nazwy plików, etykiety przycisków, powiadomienia push, raporty oraz teksty generowane po stronie serwera. Dla każdego szablonu trzeba określić oczekiwany przypadek. Następnie warto przygotować testy obejmujące imiona męskie i żeńskie, imiona zakończone na różne głoski, imiona nieodmienne oraz wartości zawierające znaki diakrytyczne. Przykładowy zestaw może sprawdzać, czy dla danych „Anna”, „Piotr”, „Michał” i „Agnieszka” generator zwraca formy zgodne z konkretnymi zdaniami, a nie tylko z pojedynczą tabelą odmiany. Test powinien obejmować także brak danych, wartość pustą, nietypową pisownię i ręcznie zmieniony tekst. Jeżeli imię nie ma rozpoznanej odmiany, bezpieczniejszym rozwiązaniem jest użycie konstrukcji niewymagającej odmiany, na przykład „Dzień dobry!” zamiast automatycznego utworzenia niepewnej formy. W aplikacji internetowej trzeba dodatkowo sprawdzić kodowanie UTF-8, ponieważ błędna obsługa znaków takich jak „ł”, „ś” lub „ą” może zmienić wartość jeszcze przed etapem odmiany. Przydatne są testy jednostkowe dla funkcji odmieniającej oraz testy integracyjne, które przechodzą pełną drogę od rekordu użytkownika przez API i silnik szablonów do końcowego komunikatu. Sam poprawny wynik funkcji pomocniczej nie potwierdza poprawności całego przepływu danych. Naprawa błędu i kontrola efektu po zmianieNaprawa powinna rozpocząć się od ustalenia właściciela informacji o przypadku. Jedna warstwa systemu powinna decydować, czy odmiana jest wykonywana podczas zapisu danych, podczas generowania komunikatu, czy dopiero w warstwie prezentacji. Mieszanie tych podejść prowadzi do podwójnej odmiany, na przykład przekształcenia prawidłowej formy „Piotra” w niepoprawny wynik. Warto również przechowywać formę podstawową oddzielnie od form zależnych od przypadka albo przekazywać do generatora jawny parametr określający oczekiwaną funkcję gramatyczną. Reguły powinny mieć ścieżkę awaryjną dla imion nierozpoznanych, aby aplikacja nie tworzyła pozornie poprawnych, lecz nienaturalnych słów. Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów, komputerów PC i popularnego oprogramowania, dlatego przy zgłoszeniu dotyczącego błędnej personalizacji można sprawdzić zarówno sam program, jak i jego konfigurację oraz sposób wyświetlania komunikatów. Diagnostyka obejmuje odtworzenie problemu na konkretnych danych, porównanie wartości zapisanej w systemie z wartością przekazaną do szablonu oraz ustalenie, na którym etapie pojawia się nieprawidłowa forma. Po wdrożeniu poprawki należy ponownie przetestować wszystkie warianty językowe, kanały komunikacji i sytuacje brzegowe, a także sprawdzić, czy zmiana nie wpłynęła na inne szablony korzystające z tego samego pola. |