Wydajność w systemach i aplikacjach

Wydajność jest jednym z ważniejszych elementów funkcjonowania systemów, aplikacji czy usług informatycznych. Problemy z wydajnością są odczuwalne od razu, widoczne przez klienta i potrafiące wpłynąć na nasze przychody czy zyski np. poprzez niezrealizowanie umownego poziomu SLA (Service Level Agreement).

Problemy z wydajnością mogą dotyczyć:

  • Niepoprawnie stworzonej aplikacji lub zapytań sql do bazy
  • Ataków na dostępność i wydajność usług (Ataki DoS i DDos – Denial of Service)
  • Niepoprawnych konfiguracji bazy danych
  • Braki w zasobach sprzętowych serwerów czy macierzy
  • Niepoprawne konfiguracje serwerów i ich usług

Najczęstsze problemy spotykany w ostatnim roku związane z systemami i wydajnością:

  • Mało wydajne środowisko serwerowe
  • Brak rozdzielanie serwerów bazodanowych od aplikacyjnych
  • Pojedyncze bazy danych, brak separacji
  • Niewydajne API
  • Niepoprawne konfiguracja baz danych np. mała alokacja pamięci RAM
  • Niezoptymalizowane zapytania do baz danych
  • Brak wykorzystania cachowania
  • Brak wykorzystania narzędzi typu CDN czy Cloud dla aplikacji internetowych
  • Brak wykorzystania modularności czy mikrousług w architekturze platform czy sklepów internetowych
  • Problemy wydajnościowe na poziomie intergacji i wymiany danych pomiędzy sklepami internetowymi a systemami ERP czy WMS.

Zobacz także:

Jeśli potrzebujesz wsparcia w zakresie architektury systemów, poprawy wydajności czy audycie kodu źródłowego zapraszamy do kontaktu.

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Strategia MultiCloud

Strategia Multicloud jest często wdrażana z powodów dywersyfikacji i uniknięcia uzależnienie do jednego dostawcy (tzw. Vendor Lock). Uzależnienie do może być w obszarze jakości usług, cen czy zakłócenia ciągłości biznesowej (Business Continuity) – awarie, odtwarzanie po awarii (DR – Disaster Recovery), wysoka wydajność (HA – High Availability), itd. Strategia z uwagi na różne zakresy usług dostawców chmur musi uwzględniać wszystkie ich aspekty jak: koszty za storage czy moc obliczeniową, różnorakie platformy czy aplikacje, moduły bezpieczeństwa, itd. Usługi te muszą być wpisane zarówno w politykę bezpieczeństwa jak i architekturę tele-informatyczną firmy.

Oprócz dywersyfikacji, vendor-lockingu częstym powodem dla międzynarodowych firm jest zwiększenie ciągłości biznesowej zarówno w dostępie (np. wydajność) do infrastruktury z dowolnej części świata, jak i jej odporność na awarie i ataki.

Strategia chmurowa jest jednym z elementów Strategii IT wspierającej cele biznesowe. Jest ona zasadna w przypadku rozproszonych globalnie systemów, klientów, pracowników, wysokich parametrów SLA dla usług i systemów oraz dużej dojrzałości organizacji.

Zobacz naszą ofertę doradztwa strategicznego IT

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Przykładowy harmonogram prac wdrożenia eCommerce B2B, B2C

Harmonogram w każdym projekcie jest bardzo ważnym elementem projektu, nawet w przypadku projektów zwinnych wykorzystujących np. metodyki Scrum. Harmonogram bezpieczny dla eCommerce to wdrożenie produkcyjne z zapasem czasu na testy, przed pikiem sprzedażowym czy sezonem. Jeśli mamy już gotowy zakres projektu, ramy czasowe, budżet, zespół projektowy oraz cele biznesowe do osiągnięcia to pozostaje nam wybór dostawcy (zobacz proces wyboru dostawcy). Dostawca postrzegany jako partner jest kluczowym elementem powodzenia projektu. Po jego wyborze, procesie negocjacyjnym rozpoczynamy tworzenie harmonogramu prac i wdrożenia produkcyjnego.

Przykładowy proces wdrożenia platformy B2C/B2B może wyglądać następująco:

  • Warsztaty z Dostawcą – Customer Map Journey, Persony (segmentacja klienta)
  • Makiety – projektowanie UX (User Experience) i UI (User Interface)
  • Testy użyteczności makiet – testy na użytkownikach wewnętrzne, jakościowe, ilościowe zewnętrzne
  • Projekt graficzny wraz z akceptacjami klienta
  • Konfiguracja środowisk developerskich i testowych
  • Kodowanie Frontendu – kodowanie w wybranej technologii (frameworki)
  • Kodowanie API – np. do integracji Frontend z Backend
  • Kodowanie Backendu, CMS (Content Management System)
  • Integracja z ERP (Enterprise Resources Management) – integracja np. stanów magazynowych, zamówień, danych klientów, statusów płatności, itd.
  • Integracja z PIM (Product Information Management) – integracja contentu
  • Integracja z CRM (Customer Relationship Management) i Marketing Automation
  • Integracja z WMS (Warehouse Management System) – integracja stanów magazynowych i rezerwacji, procesów zwrotów, itd.
  • Integracja z płatnościami – integracja z płatnościami elektronicznymi i procesami rozliczeniowymi w ERP
  • Integracja z kurierami – integracja systemów kurierskich
  • Testy SIT (System Integration Testing) – testy integracyjne kodu plus testy jednostkowe czy systemowe
  • Testy UAT (User Acceptance Test) – testy akceptacyjne czy aplikacja, system jest wykonana zgodnie z założeniami
  • Konfiguracje SEO – przekierowania, seo, itd.
  • Konfiguracja środowiska produkcyjnego
  • Wdrożenie produkcyjne
  • Testy produkcyjne – m.in. testy wydajnościowe, konfiguracyjne
  • Optymalizacja systemu, tuning, rozwój

Zobacz naszą ofertę doradztwa:

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Audyt Frontend

Frontend wraz z Backendem tworzą aplikację internetową, sklep internetowy, stronę www czy aplikację typu SaaS (Software as a Service).

Dlaczego do frontendu trzeba przyłożyć więcej wagi niż do innych części naszych systemów?

  • Frontend jest naszą wizytówką
  • Frontend zarabia dla nas pieniądze

Dlatego frontend musi mieć dopracowany UX (User interface), UI (User Interface), musi być szybki, wydajny, działający na wielu różnych ekranach (aplikacja mobilna), użyteczny dla użytkownika końcowego. Frontend jest często łączony z Backendem poprzez API (Application Programming Interface), który umożliwia podłączenie backendu do wielu frontendów np. desktop, mobile, itd.

Oferta Audytu Frontend:

Zobacz także:

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

M-Commerce – doradztwo technologiczne

Mobile commerce (M-Commerce lub mCommerce) jest częścią eCommerce czyli handlu elektronicznego (cyfrowego, internetowego), gdzie dostęp do zasobów jest realizowany przez smartphony, tablety i inne urządzenia kieszonkowe.

Dostęp mobilny dzięki coraz lepszemu dostępowi do sieci internet, szybszym telefonom oraz lepszym aplikacją pozwala na zwiększanie usług i produktów oferowanych klientom mobilnym. Obecnie nikt nie wyobraża sobie życia bez map na telefonie, gdzie możemy pokazywać biznesy w pobliżu i sprzedawać produkty. Użytkownicy aktywnie korzystają z usług finansowych (banki, porównywarki) czy portali sprzedażowych (np. Allegro czy OLX). Rośnie też większa aktywność w tym obszarze przez sklepy internetowe m.in. dzięki technologią RWD (Responsive Web Design), mobile i PWA (Progressive Web Application). Obecnie każdy sklep internetowy musi mieć wersję mobilną sklepu internetowego umożliwiającego pełną ścieżkę zakupową.

Oferta technologiczna w obszarze M-Commerce:

Zobacz także naszą ofertę doradztwa technologicznego dla eCommerce:

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Audyt i doradztwo CMS (Content Management System)

Systemy CMS (Content Management System) służą do zarządzania treścią zarówno w sklepach internetowych, stronach internetowych, stronach mobilnych jak i w platformach SaaS (Software as a Service). Są często nazywane Backend i oddzielone często od Frontendu poprzez np. API (Application Programming Interface).

Systemy CMS spotykane w organizacjach często charakteryzują się dużym długiem technologicznym, który powoduje wiele negatywnych skutków dla pracy zespołu programistów i firmy. Dług technologiczny powoduje:

  • Podatność systemów na ataki zewnętrzne i wewnętrzne spowodowane brakiem aktualizacji bezpieczeństwa i narażenie firmy na wyciek danych (patrz Audyt RODO) i utratę zaufania klientów i reputację firmy. Ataki te np. DDoS (Distributed Denial of Service – patrz Testy Penetracyjne) mogą także spowodować zatrzymanie się stron www czy sklepu internetowego i narazić zyski firmy (Business Continuity).
  • Zmiany funkcjonalne w startych systemach CMS powodują zarówno opór zespołów programistycznych, którzy lubią pracować w nowoczesnych technologiach jak i zwiększone koszty zmian z powodu braku dokumentacji, znajomości kodu przez nowych programistów, brak kompetencji starych technologii itd.

Obecnie spotykane systemy CMS to przeważnie otwarte platformy Open Source lub systemy dedykowane. Popularne platformy CMS to:

  • WordPress ze sklepem internetowym WooCommerce
  • Wix
  • Squarespace
  • Joomla
  • Shopify
  • Drupal
  • Prestashop
  • Blogger
  • Magento
  • Bitrix
  • Typo3
  • Textpattern
  • itd.

Audyt platformy CMS pozwala na zmniejszenie długu technologicznego, określenie i ocena ryzyka używania takiej platformy, wskazuje rekomendacje zmian lub migracji na inną platformę CMS, itd.

Przykładowy zakres audytu CMS:

  • Analiza Core CMS
  • Analiza code review pod kątem zgodności ze standardami wytwórczymi CMS
  • Audyt Architektury systemu CMS
  • Ocena Maintability (łatwość konserwacji)
  • Ocena Violations (naruszenia)
  • Ocena bezpieczeństwa platformy CMS
  • Ocena zastosowania dobrych praktyk dla wdrożeń CMS
  • Audyt API (Application Programming Interface)
  • Audyt Frontend PWA, RWD, mobile, itd.
  • Ocena hostingu dla platformy CMS
  • Ocena dostawcy platformy CMS

Zobacz także:

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

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

Doradztwo Data Center – Kolokacja, zdalny Backup, Wydajność sezonowa serwisów internetowych, ERP w cloudzie, etc.

GoTechnologies wspiera firmy z branż eCommerce, Retail oraz firmy logistyczne i przemysłowe w wykorzystaniu zewnętrznych usług kolokacyjnych, Data Center i chmurowych (cloud).

Przykładowe doradztwo Cloud ( AWS, Azure czy Google GCP) i Data Center:

  • Konfiguracje usług chmurowych w przygotowaniu na zwiększone piki sprzedażowe (np. black friday, cyber monday)
  • Konfiguracje usług chmurowych pod kątem optymalizacji kosztów
  • Analiza możliwości migracji systemu klasy ERP, CRM, MES, WMS, APS, eCommerce (np. Magento) do usług chmurowych
  • Benchmarking kosztów Data Center, Cloud czy inwestycji we własne DC
  • Projekt przechowywania backupów w zewnętrznym Data Center
  • Wybór dostawców kolokacji
  • Analiza umów z dostawcami Data Center
  • Wykorzystanie aplikacji i usług biznesowych np. Office 365, systemów HCM czy CRM
  • Wykorzystanie chmur obliczeniowych
  • Audyt przechowywania danych w Cloudzie pod kątem RODO

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 150-ciu zadowolonych klientów