Czym charakteryzuje się Dobry Software?

Co powoduje, że oprogramowanie które tworzymy jest dobre? Czy to tylko chodzi o jakość kodu, który został wytworzony przez programistów? Czy chodzi o kwestie wizualne? Czy może o to, że mamy wszystkie najpopularniejsze featury? Dziś postanowiłem pochylić się nad tym tematem.

Czym charakteryzuje się Dobry Software?

Co powoduje, że oprogramowanie które tworzymy jest dobre? Czy to tylko chodzi o jakość kodu, który został wytworzony przez programistów? Czy chodzi o kwestie wizualne? Czy może o to, że mamy wszystkie najpopularniejsze featury? Dziś postanowiłem pochylić się nad tym tematem.

Przecież stworzyć aplikacje w tych czasach może niemal każdy. Jest mnóstwo kursów, bootcampów, szkoleń przybliżających kwestie techniczne. Tylko czy dobra aplikacja/dobry soft to jedynie ładnie napisany kod?

Z perspektywy programisty z wieloletnim doświadczeniem z całą stanowczością mogę powiedzieć, że kod nie determinuje, czy nasz produkt będzie dobrym i chętnie używanym oprogramowaniem ale bez niego nie jesteśmy w stanie żadnej aplikacji stworzyć. Zatem co powoduje, że to nad czym pracujemy będziemy mogli nazwać dobrym software'm?

Zagłębiając się w ten temat można zidentyfikować ogromną ilość mniejszych lub większych składowych. Ja dziś przybliżę 7 moim zdaniem najważniejszych z nich.

Zaczynamy!

  1. Dobre oprogramowanie jest innowacyjne

    Stare oprogramowanie aktualizujmy o najnowsze trendy technologiczne, by nadążać za zmianami i usprawniać to co już mamy. Nowe oprogramowanie twórzmy za pomocą sprawdzonych rozwiązań, dopasowanych do potrzeb, tak aby wprowadzać je na rynek szybko i bez większych potknięć po drodze.

    Ogólnie starajmy się wprowadzać do naszego świata coś nowego, inspirujmy się użytkownikami i ich potrzebami, tak aby to co robimy zmieniało ich życie i było im faktycznie potrzebne
  2. Dobre oprogramowanie jest użyteczne

    To co tworzymy powinno być naprawdę przydatne dla naszych potencjalnych użytkowników. Badajmy i mierzmy, czy to co robimy przynosi ludziom wartość i są tym czego potrzebują, a rzeczy zbędne eliminujmy
  3. Dobre oprogramowanie jest estetyczne

    Estetyka jest ważna w wielu aspektach aplikacji. Po pierwsze ważne, żeby była ona estetyczna dla użytkowników, wiec dbajmy o UI i UX, tak aby użytkownik łatwo i bez większy problemów był w stanie korzystać z aplikacji. Jeśli chodzi o techniczną stronę naszego projektu to kod, nad którym pracują programiści, także powinien być estetyczny, tak aby praca była dla nich przyjemnością. Im łatwiej i czytelniej jest utrzymywany kod w projekcie, tym łatwiej będzie do niego dodać nowe funkcje
  4. Dobre oprogramowanie jest łatwe do zrozumienia

    Użytkownicy muszą mieć łatwość poruszania się po aplikacji, którą dla nich tworzymy. Wszystkie element powinny być rozmieszczone w zrozumiały sposób, więc dbajmy o UX. Również programiści muszą mieć odpowiednią ilość czasu, aby przygotować kod, w taki sposób, aby było im łatwo do niego wrócić i zrozumieć o co chodziło.
  5. Dobre oprogramowanie jest dopracowane w najdrobniejszych szczegółach

    Musimy mieć pewność, że każda sytuacja w naszej aplikacji jest odpowiednio obsłużona. Upewnijmy się, że każdy błąd jest obsłużony w sposób dający użytkownikom odpowiednie informacje. Im więcej jasnych informacji użytkownik dostanie, tym mniej frustracji będzie pojawiać się w jego głowie.
  6. Dobre oprogramowanie jest przyjazne dla środowiska

    Zadbajmy o to, aby nasza aplikacja nie zużywała niepotrzebnych zasobów. Nadmiarowe wykorzystanie serwerów pod kątem pamięci czy zasobów, może spowodować, że serwer będzie musiał zużywać więcej energii elektrycznej niż powinien w optymalnych warunkach. Dbajmy o to aby monitorować na bieżąco co się dzieje jeśli chodzi o zasoby na serwerze i optymalizujmy!
  7. Dobre oprogramowanie to takie, które zawiera jak najmniej oprogramowania

    Ten punkt może wydawać się enigmatyczny. Chodzi tutaj o to, że jeśli tworzymy nowe oprogramowanie, to musimy dbać o to, żeby nie spędzać ogromnej ilości czasu żeby tworzyć maksymalną ilość funkcjonalności, które wcale nie muszą być atrakcyjne dla użytkowników. Im mniej niepotrzebnego kodu wytworzymy, tym lepiej. Poznawajmy naszych userów i dostarczajmy dla nich odpowiednie rozwiązania skrojone do potrzeb

Tworząc produkt należy pamiętać, że nie zawsze ilość napisanego kodu i ilość funkcji, które mamy w aplikacji jest najważniejszą sprawą. Musimy sie skupiać na naszych użytkownikach. Dostarczać takie funkcjonalności, które będą odpowiadać ich potrzebom i nieść za sobą wartość. Każda duża firma jak google, czy facebook, bada rozwiązania i stosuje tylko takie, które mają racje bytu.