Cykl życia oprogramowania – Software Development Life Cycle

Cykl życia oprogramowania (and. Software Development Life Cyckle – SDLC) jest usystematyzowanym podejściem do tworzenia, rozwoju oraz wycofywania danego programowania. Dzięki procesowemu podejściu wspartego przez narzędzia IT zarządzamy zarówno tym oprogramowaniem, podnosimy jakość, zmniejszamy dług technologiczny oraz zwiększamy dojrzałość organizacji wytwarzania oprogramowania.

SDLC może składać się z kilku procesów:

  1. Analiza wstępna – faza inicjalna dla każdego projektu biznesowego czy informatycznego. Określamy potrzeby, wymagania, potencjalne koszty, możliwości, zasoby potrzebne do realizacji czy ryzyka dla danego projektu. Jego potencjalne korzyści biznesowe, ramy czasowe czy opłacalność (ROI).
  2. Analiza szczegółowa, spis wymagań – szczegółowa analiza wymagań odnośnie systemów, ich integracji, kosztów, harmonogramu prac, zwrotów z inwestycji, ryzyk projektowych, itd. Analiza aspektów technologicznych, UX (User Experience), prawnych, bezpieczeństwa czy operacyjnych np. zmiany w procesach Biura Obsługi Klienta (BOK), itd.
  3. Projektowanie oprogramowania – projektowanie architektury systemów, ich integracji, bezpieczeństwa, skalowalności, zasad kodowanie, frameworków czy interfejsu użytkownika (UI – User Interface).
  4. Wytwarzanie oprogramowania (kodowanie) – najdłuższa faza projektu realizowania wg. wybranej metodyki zarządzania projektem np. Scrum. Podczas tej fazy jest tworzony kod aplikacji zgodnie z zasadami i wymaganiami ustalonymi we wcześniejszych fazach np. tworzenie testów jednostkowych czy automatycznych, dokumentacji, itd.
  5. Integracje i testy – testowanie zarówno interfejsów, szybkości działania, wydajności, bezpieczeństwa czy poprawności integracji danych.
  6. Wdrożenie na produkcję – wdrożenie oprogramowania na produkcję zgodnie z wcześniej ustaloną strategią wdrażania np. testy AB na mniejszej ilości klientów, itd. Testowanie poprawności systemu, integracji oraz infrastruktury tele-informatycznej.
  7. Utrzymanie systemów – utrzymanie systemów łącznie z wykrywaniem i łataniem błędów, zwiększonym ruchem czy większą ilością użytkowników. Zmiany w infrastrukturze tele-informatycznej oraz zwiększanie bezpieczeństwa systemu.
  8. Dalszy rozwój systemu – procedura zgłaszania zmian rozwojowych, ich wdrożenie, testowanie i ich wpływa na działanie systemu czy integracji.
  9. Wyłączenie systemów – upgrady systemów, ich archiwizacja, wyłącznie, migracja danych, itd.

Zapraszamy do zapoznania się z naszą ofertą doradztwa technologicznego i audytów aplikacji

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 300 zadowolonych klientów

Audyt projektu wdrożenia systemu

Czemu tak często klienci poszukują wsparcia podczas wdrożenia corowych systemów takich jak systemy ERP, platformy eCommerce, systemy logistyczno-magazynowe TMS i WMS czy aplikacji dedykowanych i obsługujących corowe procesy klienta?

Powodów jest wiele:

  • Brak określenia docelowych procesów biznesowych przez klienta i częsta ich zmiana w trakcie
  • Niezrozumienie przez dostawcę procesów i potrzeb klienta
  • Problemy w komunikacji wynikającej m.in. z obłożenia klienta pracą operacyjną lub dostawcy z uwagi na ilość prowadzonych projektów
  • Brak dedykowanego zespołu wraz odpowiednim poziomem decyzyjności po stroni klienta
  • Ograniczone moce wytwórcze i analityczne po stronie dostawcy oprogramowania
  • Przeciągające się fazy odbiorów i testów modułów często wynikające z niechęci na branie odpowiedzialności za końcową decyzję przez klienta
  • Duża ilość błędów podczas testów i przerzucanie testów na klienta
  • Przekroczenia budżetu w wyniku zmian poza umową
  • Nierealne terminy przyjęte przez klienta i zaakceptowane przez dostawcę liczącego na przeciągnięcie projektu
  • Brak konsultacji wewnętrznej u klienta odnoście interfejsu wdrażanego systemu
  • Brak analizy integracji systemów
  • Brak analizy migracji systemów
  • Brak etapu tzw. czyszczenia danych przygotowującego dane do przeniesienia do nowego systemu.
  • Brak analizy ryzyka wdrożenia systemu i aktualizacja ryzyk w trakcie wdrożenia
  • Brak raportowania stanu wdrożenia systemu i reagowania na odchylenia, zmiany
  • Brak silnych umów regulujących sprawne wdrożenie systemu
  • itd.

Zobacz naszą ofertę wsparcia kluczowych projektów ERP, eCommerce i systemów dedykowanych: Zarządzanie kluczowymi projektami

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Startupy a kryzysy technologiczne

Startupy to technologia, a technologia wymaga posiadania odpowiednich kompetencji i ciągłego ich rozwijania. Technologia musi być wydajna oraz spełniać oczekiwania klienta. Produkt startupu musi działać, ale tak jak tego sobie życzy klient. Startupy tworzą zarówno aplikacje mobilne, sklepy internetowe, systemy SaaS (Software as a Service), platformy Marketplace, urządzenia IoT czy inne urządzenia hardwarowe. Wszystkie te produkty wymagają wysokiej dojrzałości technologicznej. Wiedza członków startupu czy założycieli (founderów) często koncentruje się na sprzedaży, klientach czy marketingu lub na aspekcie technologicznym. Idealnym połączaniem jest, kiedy zespół założycielski posiadający wszystkie te kompetencje. Oczywiście faza początkowa rozwoju startupu charakteryzuje się posiadaniem małego budżetu, małej ilości czasu na dopracowanie produktu technologicznego oraz braki zasobowe i kompetencyjne. Z tego też powodu kryzysy technologiczne przychodzą szybciej niż nam się wydaje.

Jakie kryzysy technologiczne przechodzą startupy?

Poniżej lista zaobserwowanych kryzysów technologicznych w startupach fazy seed i eary grow:

  • Wydajność aplikacji, sklepu czy platformy SaaS – brak myślenia co będzie za rok, jak zwiększy się liczba danych czy klientów. Wymaga często zmiany infrastruktury lub co trudniejsze architektury systemów – zobacz doradztwo w obszarze wydajności, doradztwo w zakresie cloud, doradztwo w zakresie architektury
  • Hardware – częsty brak budżetu na wersję nr 2 prototypu związaną ze zmianami technologicznymi, potrzebami klientów czy trendami
  • Brak bezpieczeństwa danych i systemów – zobacz doradztwo w obszarze bezpieczeństwa
  • Odejście kluczowej osoby takiej jak CTO czy senior developer
  • Brak dokumentacji systemu utrudniający wdrożenie nowych członków zespołu
  • Brak skutecznego zarządzania projektami czy zmianami np. pseudo agile podejście (Scrum) – zobacz doradztwo w obszarze zarządzania projektami
  • Duży i często niespodziewany przyrost danych Big Data powodujący problemy z bazami danych i aplikacjami – zobacz doradztwo Big Data
  • Użyteczność interfejsu (UX – User Experience, UI – User Interface) – zobacz audyty UX, UI, eCommerce
  • Brak regularnych upgradów wykorzystywanych frameworków powodujących dług technologiczny trudny do naprawy – zobacz doradztwo dług technologiczny
  • Brak przyjętych zasad kodowania, architektury czy testowania
  • Brak API
  • itd.

Zobacz więcej o doradztwie technologicznym dla Startupów

Jeśli potrzebujesz wsparcia technologicznego i procesowego w Twoim startupie, zapraszamy do kontaktu.

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Uczenie maszynowe – Machine Learning, Uczenie głębokie – Deep Learning

Pojęcia Uczenie maszynowe (Machine Learning), Głębokie uczenia (Deep Learning) czy Sztuczna Inteligencja (AIArtificial Intelligence) pojawiają się w ostatnich dość często i są grupowane jako technologie automatyzujące, predykcyjne oraz wspierające podejmowanie decyzji. Technologie opierają się na sieciach neuronowych. To one budzą zarówno zachwyt jak i przerażenie.

Machine Learning i sieci neuronowe

Machine Learning jest podstawą obecnych systemów Sztucznej Inteligencji i zajmuje się eksploracją danych (Data Mining). Machine Learning koncentruje się na wyszukiwaniu wzorców danych w dużych zbiorach danych zasilanych przez różne systemy lub procesy. Uczenie maszynowe często z uwagi na potrzebę dużej mocy obliczeniowej korzysta z chmur obliczeniowych (Cloud) lub specjalistycznych superkomputerów.

Deep Learning a ludzie

Deep Learning jako „dziecko” Machine Learningu pozwala skoncentrować się na człowieku i jego zachowaniach. Deep learning potrafi wchodzić w interakcję z człowiekiem, słucha dźwięków, muzyki, głosu, obserwuje np. rozpoznając obrazy. Deep Learning jest bardzo popularny z uwagi na koncentracji na zachowaniach człowieka, co w przypadku obecnych biznesów jest kluczowe.

Gdzie najprościej wykorzystać Machine Learning?

W organizacjach gdzie są spełnione dwa elementy. Są zbierane duże ilości danych (Big Data) oraz, w których innowacja jest w DNA firmy. Duże ilości aktualnych danych pozwalają „uczyć” systemy zachowań np. użytkowników czy linii produkcyjnej. Czym więcej danych na początku tym lepsze wyniki uczenia. Jeśli danych jest mniej systemy muszą za każdym razem kiedy wystąpi nieoczekiwana sytuacja uczyć się, co wydłuża proces wdrożenia i produkcyjnego wykorzystania tychże systemów.

Zobacz naszą ofertę doradztwa technologicznego:

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Smart Home – inteligentne domy

Inteligentne domy (Smart Homes) to trend, który rozpoczął się na dobre kilka lat temu m.in. w Polsce z uwagi na dostępność w kraju internetu, szczególnie na peryferiach i wioskach, gdzie dużo Polaków zaczęło stawiać swoje domy, z dala od zgiełku miejskiego. Drugą przyczyną rozwoju urządzeń dla inteligentnych domów jest dostępność technologii, ciągły spadek ich cen oraz coraz szersza gama produktów, które są prostsze w użyciu czy montażu. Produkty te są dostarczane przez duże firmy zachodnie i polskie jak i startupy technologiczne, których liczba ciągle rośnie. Na rynku widoczne są też projekty typu spin-off czy Joint Venture firm, których efektem są spółki czy produkty dla inteligentnych domów czy inteligentnych miast (Smart City).

Dostęp do internetu, także 5G (zobacz Startupy 5G) spowodował rozkwit urządzeń Internetu Rzeczy (IoTInternet of Things). Za pomocą aplikacji mobilnej możemy sterować urządzeniami na odległość np. ogrzewaniem, otwieraniem okien czy podlewaniem trawnika. A nasza lodówka potrafi zaproponować nam produkty do kupienia.

Dane z urządzeń Internetu Rzeczy są zazwyczaj przechowywane w chmurze (Cloud). Nowe urządzenia potrafią przewidywać nasze zachowania za pomocą algorytmów sztucznej inteligencji (AIArtificial Intelligence) wraz uczeniem maszynowym (Machine i Deep Learning). Rodzi to nowe obszary do innowacji oraz zagrożenia. Największymi zagrożeniami jest dostęp do danych, nieuprawnione działania hackerów czy złodziei. Dzięki danym mogą przewidzieć czy ktoś jest w domu, kiedy może wrócić do domu, jakie są zabezpieczenia, itd.

Jeśli jesteś Startupem technologicznym, który tworzy innowacyjne produkty czy Software Housem i masz wyzwania technologiczne i biznesowe dla swojego produktu zapraszamy do kontaktu.

Zobacz naszą ofertę doradztwa technologicznego:

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

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

Wybór platformy eCommerce B2C- Sklep internetowy

Cyfrowa transformacja biznesu wymusza na nas posiadania cyfrowych kanałów sprzedażowych, komunikacji z klientami, wzmacniania marki, itd. Powszechne pytanie jakie zadają nasi klienci zarówno korporacyjni jak i początkujące biznesy to jaką platformę, sklep internetowy czy marketplace mają wybrać. Kolejne pytanie dotyczą systemu rozliczeń z klientami (ERPEnterprise Resources Management), form wysyłki, User Experience (UX), użyteczności (UIUser Interface, usability) magazynów (WMSWarehouse Management System), zarządzaniem produktów w Omnichannel (PIMProduct Management System), SEO (Search Engine Optimization), systemu zarządzania relacjami z klientami CRM Customer Relationship Management, Marketing Automation czy systemem zarządzania zamówieniami OMS – Order Management System, itd.

Dojrzali klienci obecni posiadający już sklep internetowy zadają pytania jak zwiększyć konwersję, zmniejszyć koszty pozyskania klienta, zwiększyć Cross-Selling i Up-Selling (Audyty eCommerce), jak zoptymalizować procesy eCommerce np. procesy magazynowe, jak bezpiecznie wykonać Redesign sklepu internetowego bez utraty klientów oraz jak uporządkować architekturę systemów informatycznych w organizacji (Audyt Architektury Systemów eCommerce).

Kategorie dostępnych systemów / platform eCommerce (sklep internetowy):

  • Sklepy internetowe typu Open Source
  • Sklepy internetowe typu SaaS (Software as a Service)
  • Sklepy internetowe dedykowane

Sklepy internetowe Open Source

Sklepy internetowe na darmowej licencji Open Source jak np. Magento czy PrestaShop. Posiadają także licencje płatne Enterprise dla klientów wymagających lub potrzebujących większych możliwości rozwoju.

  • Zalety: Duża możliwość zmian w systemie (customizacji), duża liczba dostawców wdrożeniowych w Polsce, duża liczba gotowych darmowych i płatnych modułów.
  • Wady: Często duże koszty utrzymania i wprowadzania zmian, szybszy dług technologiczny w przypadku niekontrolowanych zmian czy źle dobranego dostawcy informatycznego.

Sklepy internetowe typu SaaS (Software as a Service)

Platformy SaaS umożliwiają praktycznie uruchomienie sklepu internetowego z dnia na dzień, bez ponoszenia dużych kosztów na starcie. Płatności za używanie sklepu są realizowane w modelu abonamentowym i często uzależnione od zużycia zasobów czy ilości sprzedaży.

  • Zalety: Szybki czas wdrożenia sklepu internetowego (praktycznie z dnia na dzień), mniejsze koszty utrzymania w początkowym okresie, dużo funkcjonalności standardowych.
  • Wady: Brak możliwości wprowadzania większych zmian, użycie standardowych procesów eCommerce, w przyszłości potencjalnie duże koszty utrzymania często uzależnione od ilości sprzedaży, całkowite uzależnienie od jednego dostawcy, ograniczona możliwość integracji z systemami zewnętrznymi (API).

Sklepy internetowe dedykowane

Sklepy budowane przez agencje lub Software House tworzone pod klienta. Często bardzo customizowane i bardzo skomplikowane.

  • Zalety: Bardzo duża customizacja, możliwość napisania sklepu od zera.
  • Wady: Uzależnienie od jednego dostawcy, brak dostępnych na rynku programistów od technologii sklepu.

Zobacz także: Wybór platformy eCommerce typu Marketplace.

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

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

PWA, AMP, RWD czy MOBILE

Dostęp do urządzeń mobilnych oraz szybkość i zasięg internetu sprawiły, że przez ostatnie lata urządzenia te są powszechnie używane. Rośnie także z roku na rok ilość transakcji dokonywanych przez te urządzenia czy to przez mobilne sklepy internetowe, platformy typu Marketplace czy inne usługi cyfrowe. Trend ten też jest określany jako Mobile First i promowany przez duże organizacje.

Jakie technologie wybrać aby nasz sklep internetowy, strona www była użyteczna (usability, UXUser Experience) o przyjaznym interfejsie (UIUser Interface)?

  • PWAProgressive Web Application – najnowszy standard pozwalający na tworzenie strony internetowej bardzo przypominającej aplikację mobilną. Rozwiązanie to zarówno może mieć ikonę na pulpicie, ładować dane offline w przypadku braku internetu, działać w trybie pełnoekranowym, dostosowywać się do różnych urządzeń mobilnych, itd.
  • AMPAccelerated Mobile Pages – czyli przyśpieszone strony mobilne, standard Open Source promowany przez Googla promowany od 2015 roku. jego zaletą jest być szybkość ładowania się stron mobilnych. Może też być używany do zwykłych stron internetowych.
  • RWDResponsive Web Design – responsywne strony mobilne dostosowujące się do danego urządzenia mobilnego. Obecnie bardzo popularny standard.
  • Strona internetowa w wersji mobilnej – podobnie jak RWD strony mobilne dostosowują się do ekranu urządzenia mobilnego, ładują się szybko i często w adresie url mają na początku literkę „m” jak mobile np. m.costamtam.pl
  • Dedykowana aplikacja mobilna – dedykowana aplikacja mobilna tworzona dla danego typu systemu operacyjnego np. Android czy IOS. idealnie dostosowana do urządzenia, szybka, itd.

Dla naszych klientów oferujemy usługi doradcze jaką technologie wybrać, jak stworzyć Redesign swojego sklepu internetowego, wsparcie w project managemencie (wsparcie w kluczowych projektach), wyborze firm typu Software House, itd.

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

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