UAT czyli Testy Akceptacyjne

UAT (User Acceptance Tests) to testy akceptacyjne, które pozwalają odebrać stworzone oprogramowanie lub ich fragment przez osoby odpowiedzialne za procesy biznesowe lub klienta końcowego. Pozwalają one w prosty sposób określić dany ekran lub funkcjonalność jest zgodna z oczekiwaniami wszystkich odbiorców oprogramowania.

Testy akceptacyjne powinny uwzględniać np. za ISTBQ:

  • Wymagania użytkowników końcowych
  • Wymagania systemowe
  • Przypadki użycia
  • Procesy biznesowe

Przykłady testów akceptacyjnych UAT:

  • Testy akceptacyjne przez użytkownika wewnętrznego – czy product spełnia wymagania
  • Testy akceptacyjne przez klienta (CAT – Customer Acceptance Test) – czy oprogramowanie spełnia wymagania klienta
  • Testy Alfa – testy wewnętrzne deweloperów np. u wykonawcy
  • Testy Beta – testy poza zespołem wytwarzającym testy np. wśród użytkowników końcowych, itd.
  • Testy zgodności z podpisaną umową
  • Testy zgodności z prawem (legalności)
  • Testy akceptacyjne produkcyjne – testy na środowisku produkcyjnym, w różnych warunkach np. podczas obciążenia, awarii, problemów z danymi, itd.

W metodyce zwinnej Scrum UAT może być częścią Definition of Done czyli opisem jak ma wyglądać oddany produkt. Testy akceptacyjne UAT są w gestii odpowiedzialności Product Ownera i powinny być częścią sprintów Scruma.

Zobacz naszą ofertę doradztwa w zakresie projektów informatycznych

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Audyt bezpieczeństwa API

Obecnie większość systemów posiada API (Application Programming Interface) lub integruje się z innymi systemami w inny sposób. API w przypadku systemów firm typu Omnichannel, eCommerce, Retail, banków, aplikacji mobilnych czy platform SaaS (Software as a Service) staje się elementem krytycznymi (bezpieczeństwo i wydajność) i naraża firmę na straty finansowe i utratę reputacji.

Projekt OWASP (Open Web Application Security Project) w 2019 r. zdefiniował następujące najważniejsze ryzyka i ataki związane z API:

  • Broken Object Level Authorization
  • Broken Authentication
  • Excessive Data Exposure
  • Lack of Resources & Rate Limiting
  • Broken Function Level Authorization
  • Mass Assignment
  • Security Misconfiguration
  • Injection
  • Improper Assets Management
  • Insufficient Logging & Monitoring

Ataki na API pozwalają na zdobycie nieautoryzowanego dostępu do danych i systemów łączenie z przejęciem całego dostępu do nich co pozwala na manipulację danymi czy wykasowanie danych. Ataki na API często wykorzystuje się w celu uzyskania dostępu do danych prywatnych celem kradzieży tożsamości (phishing) potrzebnej do zakładania fałszywych kont bankowych i innych usług. Inne przestępstwa to ujawnienie danych wrażliwych lub osób korzystających z danych usług cyfrowych. API staje się także często ofiarą ataków typów DoS (Denial of Services) lub DDoS (Distributed Denial of Services), które powodują braki odpowiedzi API dla innych usług czy użytkowników poprzez ich przeciążenie.

Zobacz naszą ofertę doradczą dla aplikacji, systemów, platform SaaS, sklepów internetowych w zakresie jakości kodu, bezpieczeństwa i wydajności:

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Metodyka rozwoju oprogramowania DevOps

Nazwa DevOps pochodzi od słów „development” czyli wytwarzanie oprogramowania i „operations” czyli operacje, eksploatacji systemów. Metodyka DevOps ma połączyć światy wytwarzania, testowania, wdrażania, administrowania i utrzymania, często inne, o innych celach i kompetencjach. Kładzie ona nacisk na komunikację pomiędzy działem utrzymania (administratorami systemów) oraz programistów i testerów oprogramowania.

Włączenie administratorów do rozwoju oprogramowania ma ewidentne zalety:

  • Pozwala na szybsze wdrażanie zmian „na produkcję” dzięki czemu biznes osiąga więcej korzyści np. częstsze wdrożenia zmian w platformie eCommerce (sklep internetowy) lub na platformie SaaS
  • Pozwala na lepsze wykorzystaniu posiadanych zasobów serwerowych i obniżeniu kosztów
  • Zwiększa wydajność i bezpieczeństwo systemów obniżając koszty utrzymania.

Metoda DevOps wykorzystuje szeroko zdalne narzędzia do komunikacji pomiędzy członkami zespołu jak wiki, wideokonferencje, czaty, itd. Dlatego bardzo dobrze sprawdza się w okresie pandemii wirusa corona Covid-19.

Metodyka i inżynierowie DevOps lubą pracować ze zwinnymi metodykami wytwarzania oprogramowania (Agile np. Scrum) czy z środowiskami chmurowymi (np. Microsoft Azure, Google GCP, Amazon AWS).

Metodyka DevOps pozwala na lepsze zarządzania cyklem życia aplikacji (oprogramowania), gdzie już w fazie planowania przewidujemy przyszłość i rozwój systemu w kolejnych latach.

Zobacz także:

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Progressive Web Application (PWA)

Progressive Web Application (PWA) jest nowym standardem łączącym zalety stron internetowych i aplikacji mobilnych. Jest następcą standardu RWD (Responsive Web Design) czyli responsywnych stron internetowych dostosowujących się do różnych urządzeń szczególnie mobilnych takich jak smartphone czy tablety.

Dzięki PWA strony internetowe mogą zachowywać się tak jakby były aplikacją mobilną. Są szybkie, dostosowane do ekranu urządzenia mobilnego, z ikonką aplikacji na pulpicie czy z trybem pełnoekranowym bez menu przeglądarki. Frontend PWA może także cashować odwiedzane strony i działać offline w przypadku braku internetu lub jego zaniku. Strony PWA cechują się także lepszym interfejsem (UIUser Interface) bardziej dostosowanym do użytkownika (UXUser Experience).

Jeśli wahasz się czy wybrać PWA, RWD przy Twoim kolejnym redesignie strony www czy sklepu internetowego zapraszamy do kontaktu. Pomagamy wybrać technologię, wspieramy przy wyborze najlepszego Software House-u, wspieramy w project managemencie kluczowych projektów.

Zobacz także naszą ofertę doradztwa technologicznego:


Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Zasady kodowania w aplikacjach

Konwencje / standardy / zasady kodowania są niezbędnym elementem w poprawnym kodowaniu. To jak jazda samochodem z wiedzą o zasadach ruchu drogowego lub bez niego. Zasady kodowania pozwalają na pisanie kodu przez różnych programistów w ten sam sposób, dzięki temu łatwiej można go modyfikować np. poprzez nowych członków zespołu programistycznego. Dodatkowo jeśli korzystamy z zewnętrznych zasobów np. z Software House-u to jasne, z góry ustalone i zaakceptowane przez zespół zasady pomagają we wspólnej pracy. Stosowanie standardów kodowania powoduje też mniejsze starzenie się aplikacji, a dług technologiczny jest mniejszy.

Przykładowe zasady kodowania to:

  • Zasady dotyczące formatowania kodu – dla łatwej czytelności kodu źródłowego np. szerokość wcięć, maksymalna długość wierszy czy liczba pustych miejsc pomiędzy klasami czy funkcjami.
  • Konwencje nazewnicze – zarówno plików, funkcji, klas, zmiennych, modułów, przestrzeni nazw, itd.
  • Komentowanie kodu – bardzo ważny, a często zaniedbywany element zasad dobrego kodowania. Zasady opisywania algorytmów, czy komentowania zmian.
  • Konstrukcje programistyczne – zasady dla danego języka programistycznego.

Zobacz naszą ofertę doradczą w zakresie wytwarzania aplikacji:


Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 150-ciu zadowolonych klientów

Audyt Code Review (Audyt Inspekcji Kodu)

Code Review to przegląd (inspekcja) kodu napisanego przez programistę przez innego programistę, audytora, senor developera, architekta czy innego członka zespołu, który ma taką przypisaną rolę i kompetencje do przeprowadzenia audytu. Code Review przeprowadzamy przed dodaniem kodu do repozytorium, przed testowaniem.

Czemu ma służyć Code Review?

Code Review pozwala na zwiększenie jakości pisanego kodu poprzez ciągłe jego sprawdzania, udoskonalanie.

Jakie są wady Code Review?

Największą to czas powięcony na sprawdzanie kodu zarówno czas programistów jak i czas oddania kodu, aplikacji czy systemu na produkcję. Dlatego często code review jest wykonywany sporadycznie lub nawet bardzo rzadko.

Jakie są korzyści stosowania stałego Code Review?

  • Łatwość czytania kodu przez innych programistów – czyli łatwiejsze zmiany, łatwiejsze wprowadzenie nowych osób do zespołu, itd.
  • Świetna nauka i wymiana doświadczeń pomiędzy członkami zespołu o różnym doświadczeniu i stażu pracy nad systemem.
  • Wyłapanie błędów lub znajdywanie prostszych metod kodowania.
  • Dojrzałość systemów wymaga najlepszych standardów i praktyk, a zatem Code Review też jest potrzebny.

Audyt Code Review

GoTechnologies wykonuje Audyty oraz Doradztwo Code Review pod kątem najlepszych standardów przeglądu kodu.

Zobacz naszą ofertę na Audyt Aplikacji, Audyt kodu źródłowego, Audyt architektury systemów

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 150-ciu zadowolonych klientów

Audyt Backend

Audyty aplikacji webowych, sklepów internetowych czy systemów SaaS (Software as a Service) często dzielą się na audyt Frontend, Backend i API (Application Programming Interface). W skład takiego audytu może wchodzić audyt kodu źródłowego, audyt zastosowania najlepszych praktyk kodowania, audyt wydajności, audyt bezpieczeństwa czy audyt RODO.

Zakres audytów backend:

  • Ocena długu technologicznego związanego ze starą technologią, architekturą i konsekwencje wynikające z długu czyli zwiększające się koszty utrzymania systemu, zwiększające się koszty zmian i czasu potrzebnego na wdrożenie zmian, luki w bezpieczeństwie czy problemy wydajnościowe. Zobacz więcej o długu technologicznym
  • Ocena bezpieczeństwa systemu i aplikacji pozwala na ocenę jak nasz system jest odporny lub podatny na ataki z zewnątrz np. DoD (Denial of Service) lub DDoS (Distributed Denial of Service) czyli próby wyłączenia systemu poprzez generowanie dużego ruchu, ataki na bazy danych np. poprzez formularze czy wyciek danych np. danych osobowych. Zobacz więcej Audyt Bezpieczeństwa i Testy Penetracyjne OWASP.
  • Ocena jakości kodu i zgodności z najlepszymi praktykami kodowania. Zobacz szczegóły Audyt Code Review (inspekcji kodu) oraz Audyt Kodu Źródłowego.
  • Ocena zgodności z RODO (GDPR) – Zobacz szczegóły Audytu RODO dla aplikacji.
  • Ocena i rekomendacje w zakresie poprawy wydajności zarówno po stronie kodu źródłowego, konfiguracji serwerów jak i infrastruktury tele-informatycznej (Data Center, Cloud, serwery). Zobacz więcej o Audyt Wydajności (Testy obciążeniowe aplikacji)

Zobacz także:

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Audyt Front-end, interfejs UI

Audyt dla sklepów internetowych (eCommerce), dedykowanych systemów CRM, ERP, systemów typu Portal, Intranet, Marketplace lub innych dedykowanych rozwiązań tworzonych in-house lub przez zewnętrzny Software House. Jeśli masz system i rozważasz zmianę front-endu zapraszamy do wykonania szybkiego lub kompleksowego audytu i rekomendacji zmian zarówno w obszarach Front-end jak i Back-end.

Celem audytu front-end jest:

  • Ocena istniejącej technologii i rekomendacje zmian np. na PWA (Audyt interfejsu UI) – API, PWA, Mobile Access, itd.
  • Ocena użyteczności interfejsu (Audyt Usability – Audyt Użyteczności Aplikacji)
  • Ocena User Experience (Audyt UX)
  • Ocena bezpieczeństwa interfejsów (Audyt bezpieczeństwa aplikacji, api i interfejsu)
  • Audyt łatwości zmiany interfejsu na PWA (Audyt PWA)
  • Audyt wydajności Front-endu
  • Rekomendacje rozwojów systemów i architektury informatycznej

Audytu Frontend:

Zobacz także doradztwo dla eCommerce, Omnichannel i Retail:

Zapraszamy do kontaktu:

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

UX, UI czyli aplikacje, interfejsy i użytkownicy

Projektowanie nowych aplikacji jest lub powinno być skoncentrowane nie tylko na funkcjonalnościach biznesowych czy wydajności a także na dostosowaniu aplikacji do potrzeb danej grupy użytkowników obsługujących te aplikacji. Często firmy zapominają o projektowaniu pod użytkowników (UX designUser Experience) i często można spotkać aplikacje, które ciągle sprawiają użytkownikom końcowym wiele problemów w ich obsłudze. Zdarzają się nawet przypadku, choć już marginalne aplikacji, których interfejs został źle zaprojektowany np. aplikacja dotykowa w kiosku na linii produkcyjnej, gdzie użytkownicy pracują w rękawicach roboczych, co zmusza ich do ciągłego zdejmowania rękawic ochronnych.

UI (User Interface) zatem jest bardzo ważnym elementem aplikacji. Musi być prosty, szybki i dostosowany do środowiska pracy. Nawet najlepsza aplikacja źle zaprojektowanym interfejsem nie spełni oczekiwań biznesowych. Ważny jest dostęp dostosowany dla potrzeb użytkownika np. dostęp mobilny, gdzie aplikacja lub interfejs (responsywny, PWA) musi spełniać oczekiwanie grupy docelowej.

Zapraszamy do naszego zespołu projektującego aplikacje GoSoftware lub do skorzystania z naszych usług doradczych np. w zakresie Audytu UX.

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 150-ciu zadowolonych klientów

Business Continuity a Systemy IT

Business Continuity czyli zapewnienie ciągłości usługom biznesowym realizowanym m.in. przez systemy tele-informatyczne. BCP (Business Continuity Plan) oraz DRP (Disaster Recovery Plan) to jedne z elementów zapewniania ciągłości biznesowej firm. BCP powinien uwzględniać kluczowe systemy, dane, usługi czy procesy oraz skategoryzowane ryzyka wystąpienia awarii czy zakłóceń w ich działaniu.

Problemy, które mogą mieć wpływ na działanie biznesu to np.:

  • Zakłócenia w dostawie prądu (piętro, budynek, dzielnica, miasto)
  • Zakłócenia w działaniu internetu
  • Awarie urządzeń sieciowych
  • Awarie Data Center np. pożar, przecięcia kabli, itd.
  • Ataki hakerskie w tym wycieki danych
  • Ataki na usługi np DoS lub DDoS
  • Sabotaż
  • Błędy ludzkie
  • itd.

Jakie elementy powinny być uwzględniane w planach Business Continuity:

  • Disaster Recovery Plan – plany na wypadek wystąpienia awarii mających wpływ na systemy biznesowe takie jak awarie prądu, ataki hakerskie, awarie urządzeń, itd. DR Plan uwzględnia także politykę backupów.
  • Podział na usługi kluczowe ze względu priorytetów biznesowych, bezpieczeństwa, prawa, etc.
  • Selekcja dostawców systemów i ich zdolność do realizacji planów DR
  • Zdolność wewnętrznego działu IT do realizacji działań DR
  • Zapasowe centra przetwarzania danych
  • Polityka bezpieczeństwa z zakresie DR
  • Polityka zapewnienia dostaw prądu, etc. do np. Data Center
  • Strategia wykorzystania Cloud dla systemów biznesowych
  • itd.

Plan BCP przygotowuje się zarówno z członkami działów IT jak i z biznesem. BCP powinien uwzględniać ryzyka wystąpienia danych zdarzeń, aktualny stan zabezpieczeń dla każdego ryzyka, skutki wystąpienia ryzyka oraz rekomendacje zmian celem minimalizacji wystąpienia przestoju lub zmniejszenia czasu przestoju.

GoTechnologies wspiera przedsiębiorstwa w tworzeniu planów Disaster Recovery czy planów Business Continuity. Wykonujemy także audyty ciągłości biznesowej (Audyt BCP).

Zobacz usługi doradztwa strategicznego IT

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów