Web Design Blog / Aplikacje:

Idealna aplikacja internetowa

Jakiś czas temu wpadłem na pomysł stworzenia aplikacji internetowej do obsługi faktur, magazynu i płatności. Na początku może się to wydawać śmieszne, skoro kilkadziesiąt, jak nie setki podobnych aplikacji już istnieje i co więcej, są ciągle rozwijane przez duże firmy.

Zamiast tworzyć kolejnego klona, od samego początku podszedłbym do problemu w nieco inny sposób, mianowicie: usability za wszelką cenę. Nie chcę znów zaczynać od krytyki, ale jako zawodowy sprzedawca i użytkownik wielu programów, które z założenia mają pomóc i ułatwić moją pracę, większość czasu poświęcam walce (mówię dosłownie) z nimi.

Chodzi mi tutaj głównie o błędny projekt programu i komunikacją na trasie program-użytkownik. Co więcej, większość pomyłek i przeoczeń, która powoduje realne koszty a przede wszystkim stratę czasu – ponieważ muszą być one później usunięte lub naprawione – to wina w dużej mierze nieprzemyślanego interfejsu a także implementacji poszczególnych modułów.

Aplikacja webowa – dlaczego?

Dla tych, którzy nie widzą tego wyraźnie, opowiem krótką anegdotę. Otóż pewnego razu przyszedł do mnie przedstawiciel pewnej firmy (nie powiem jakiej, nie będziemy się naśmiewać), który miał do zaproponowania rzekomo bardzo dobry produkt. Jest to bardzo popularny kombajn do wystawiania faktur, obsługi magazynu, płatności, zamówień, różnych ewidencji – takie tam. Po krótkiej prezentacji zapytałem: „Czasem zachodzi potrzeba zrobić czegoś w domu, np korekty lub pilnego zlecenia w weekend, czy państwa oprogramowanie to rozwiązuje?”. Od mojego gościa dowiedziałem się, że do tego celu musimy uruchomić serwer, który cały czas będzie włączony i podłączony do Internetu. Co więcej, obsługa programu odbywa się poprzez pulpit zdalny. Boże, pomyślałem sobie, mogłeś od razu powiedzieć, że ten program nie obsługuje synchronizacji ani wielu kont użytkowników.

W przypadku aplikacji webowej takie problem w ogóle nie występuje. Mając do dyspozycji dowolne urządzenie i połączenie internetowe mamy kontakt z właściwą aplikacją, która w niczym nas nie ogranicza. System jest zainstalowany na bezpiecznym, profesjonalnym hostingu, który automatycznie wykonuje kopie zapasowe i daje do nich dostęp wtedy kiedy zachodzi taka potrzeba. Może pracować nawet sto osób naraz zakładając, że program wykorzystuje tzw. transakcyjne przetwarzanie danych.

Do wszystkiego czyli do niczego

Głównymi ideami w moim projekcie byłyby przede wszystkim specyficzna grupa docelowa: małe i średnie firmy. To logiczne a wręcz oczywiste, że nie sposób stworzyć aplikacji, która swoją funkcjonalnością jest w stanie sprostać wymaganiom dużego przedsiębiorstwa i jednocześnie nie obciążać swoim bogactwem (opcji tudzież możliwości konfiguracji) małych firm, które np. wykorzystują oprogramowanie do wystawienia faktur VAT na góra 15 różnych artykułów i usług.

W tym wątku chodzi mi szczególnie o możliwości personalizacji. O ile możemy dokonać prostych ustawień dotyczących interfejsu i wyglądu poszczególnych raportów lub wydruków to z samym „silnikiem” aplikacji nie zdziałamy niczego rewolucyjnego. System, który od początku będzie dedykowanych małym firmom będzie działał bardzo szybko a obsługa będzie wygodniejsza. Z drugiej strony, wykonanie bardziej skomplikowanych procesów może być trudne do zrealizowania lub nawet niemożliwe, jeżeli aplikacja została zaprojektowana do innych celów.

Aplikacja, która od początku ma załóżmy, kompleksowo obsługiwać hurtownię spożywczą, będzie zaprojektowana w inny sposób. Obsługa takiej aplikacji będzie polegała na naturalnym oddaniu przebiegu procesów w takiej firmie, np wprowadzenie kontrahenta, kupno, sprzedaż, magazyn. Zapewniając poprawne działanie wszystkich modułów, (bo już nie wystawimy faktury na towar, którego nie ma w magazynie) zrzekamy się wystawiania faktur w trybie Free-For-All, czyli tak jakbyśmy wypełniali ją na druczku ;).

Najgorszym rozwiązaniem jest produkcja oprogramowania, które np. daje możliwość zmiany zasad działania samej siebie. Obsługa takiej funkcjonalności wymaga zastosowania ciągłej pętli, która sprawdza czy tak czasem nie zmieniono ustawień. To nic egzotycznego, w końcu tak działają systemy operacyjne. Ale chyba każdy się domyśla, że ma to spory (negatywny) impakt na szybkość działania takiej aplikacji. W związku z tym aplikacja działa po prostu wolniej, tylko dlatego, że jest adresowana do szerokiego grona. Są oczywiście techniki, które są bardziej wydajne ale niestety wiązały by się z większymi kosztami produkcji.

Wydajność

Aplikacja webowa rozwiązuje wiele problemów, np. multiplatformowość, co akurat w przypadku aplikacji webowej nie jest trudne. Dla wygody użytkownika wystarczy zastosować ideę Responsive Web Design. Interfejs powinien być przyjazny, jednak nie ma miejsca na bezsensowne animacje i inne wodotryski. Rozsuwane panele zastosowane w przemyślany sposób i poprawna obsługa zdarzenia hover to coś co pozwala utrzymać flow przy korzystaniu z oprogramowania. Aplikacja internetowa w żaden sposób nie powinna odbiegać funkcjonalnością od desktopowych odpowiedników dlatego nie powinno zabraknąć walidacji formularzy, podpowiedzi w postaci np. dymków itp.

Szybkość i elastyczność

Tak jak w przypadku stron internetowych prędkość działania to sprawa kluczowa. O ile na stronie opóźnienia są co najwyżej niewygodne lub irytujące, to o tyle w przypadku aplikacji to czynnik, który decyduje czy użytkownik jest wstanie go na co dzień używać, czy też nie. Na prędkość działania danej aplikacji składają się dwie istotne kwestie. Jedną z nich są opóźnienia spowodowane odpowiedziami serwera na zapytania a drugą sposób komunikacji na trasie aplikacja – użytkownik. Np. bezsensu umieszczać okienko dialogowe z napisem „czy na pewno wykonać operację?”, jeżeli w 99% przypadków jest to odpowiedź potwierdzająca lub konieczność otworzenia formularzu do wprowadzania danych skoro na pewno będą wprowadzane. Podobne przykłady – jak zwykle – można mnożyć.

Bezpieczeństwo

Jedyne co można zarzucić aplikacjom internetowym to fakt zagrożenia nieautoryzowanym dostępem. To co jest głównym atutem staje się poniekąd wadą, która ku naszej uciesze, może być zminimalizowana prawie do zera. Wystarczy zapewnić w miarę rozsądny sposób logowania się do aplikacji, wyposażyć się w serwer zaufanej firmy i możemy spać spokojnie.

Podsumowanie

W przypadku projektowania aplikacji internetowej niebezpieczne jest zarówno przeintelektualizowanie danej kwestii jak i niedopracowanie poszczególnych modułów. To co wpływa na jakość aplikacji internetowej to: jasne i proste komunikaty, wygoda i funkcjonalność, pomoc przy wprowadzaniu danych, szybkość działania i bezpieczeństwo. Zapewniając sprawne działanie aplikacji i zadowolenie użytkowników możemy śmiało powiedzieć, że stworzyliśmy idealną aplikację internetową.

Idealna aplikacja internetowa
4.67 (93.33%) głosów: 3

Autor: (28 lat)

Pamiętaj, że służę pomocą w razie wykonania lub odnowienia strony lub sklepu internetowego dla twojej firmy. Niech potwierdzeniem moich kompetencji będzie fakt, że jesteś na mojej stronie mimo, że jestem z całkiem innej części Polski ;)

Tego typu wpisy piszę w wolnych chwilach lub pomiędzy projektami. Tylko pomyśl co mogę dla Ciebie zrobić w ramach płatnej usługi bez pośredniczących nastawionych wyłącznie na własny zysk agencji reklamowych.

Otrzymuj powiadomienie o nowych artykułach

*Bez obaw, nie udostępniam nikomu twojego adresu e-mail