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

Poka Yoke

Poka Yoke w języku japońskim poka błędy, yokeru zapobieganie. Poka Yoke jest także określana jako mistake proofing czy error proofing (zapobieganie błędom). Poka Yoke to metoda na tworzenie z myśleniem o zapobieganiu nieumyślnym błędom. Jest widoczna od bankomatów czy telefonów komórkowych do systemów drogowych czy produkcyjnych. Do najbardziej widocznych dla nas są np. znaki i blokady wjazdu wysokich samochodów pod niskie wiadukty drogowe poprzez zastosowanie żółtych pasów czy znaków, umieszczania karty SIM w telefonie poprzez wycięcie jednego rogu karty lub poprzez uniemożliwienie zatankowania paliwa innego niż to co jest przeznaczone dla danego samochodu poprzez odpowiednie końcówki.

Metoda Poka Yoke z uwagi na stworzenie jest dla przemysłu głównie dla automotive jest tam najczęściej stosowana. Zastosowanie Poka Yoke może być podzielone jako:

1. Funkcje regulacyjne (regulatory functions)
1.1. Metody kontroli / sterowania (control methods)
1.2. Metody ostrzegania (warning methods)

2. Funkcje ustawiające (setting functions)
2.1. Metody kontaktu (contact methods)
2.2. Metody ustalonej wartości (fixe value methods)
2.3. Metody koniecznego kroku (motion step methods)

Zastosowane w Poka Yoke urządzania pozwalają na uproszczenie procesu np. produkcyjnego lub obsługi innych urządzeń. Zapobiegają i eliminują niepotrzebne błędy wynikające z braku wiedzy użytkowników lub braku ich czasu na poznanie dokładnej instrukcji wykonania danej czynności.

Jeśli potrzebujesz wsparcie w procesach produkcyjnych lub intralogistycznych zapraszamy do kontaktu.

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 300 zadowolonych klientów

Doradztwo Przemysł 4.0

Przemysł 4.0 (Industry 4.0) jest stałym trendem wpisującym się w strategie cyfrowej transformacji (Digital Transformation) zarówno firm przemysłowych jak i logistycznych.

Koncepcja Przemysłu 4.0 koncentruje się na wykorzystaniu technologii w procesach biznesowych jak produkcja, łańcuch dostaw (Supply Chain Management), logistyka, procesy magazynowe, procurment, itd.

Nasze doradztwo Przemysł 4.0 koncentruje się na wykorzystaniu technologii do optymalizacji procesów logistycznych, magazynowych, sprzedażowych i produkcyjnych. Przykładowe technologie wykorzystywane w Przemyśle 4.0:

Zobacz ofertę na

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Modernizacja systemów

Zaplanowania modernizacja systemów informatycznych często jest rezultatem nowej strategii biznesowej, dużych kosztów utrzymania i rozwoju systemów, niskiego poziomu bezpieczeństwa, wydajności czyli często określenia długu technologicznego. Określenie wielkości długu technologicznego i ryzyka z nim związane są często elementem zarządzania ryzykiem w firmie (Risk Management) oraz są uwzględnione w planie zachowania ciągłości biznesowej (Business Continuity Plan -BCP). Systemy zastane Legacy są obecnie jednym z poważniejszych wyzwań dla działów IT utrudniających rozwojów biznesowy.

Nowe strategie cyfrowe czy transformacje cyfrowe (Digital Transformation) wymagają od IT wysokoskalowalnych systemów, natychmiastowych zmian biznesowych, łatwych integracji oraz bezpieczeństwa danych. Dodatkowo presja na systemy IT jest ciągle w obszarze kosztów utrzymania tych systemów i ich rozwoju. Każda Strategia IT powinna obejmować elementy architektury systemów, ich rozwoju, a w przypadku długu technologicznego corowych systemów ich modernizację lub wymianę.

Modernizacja systemu jest często planowana na podstawie wykonanego audytu jakości kodu źródłowego, wydajności, architektury czy bezpieczeństwa.

Strategie IT realizowane przez Dyrektorów IT (CIO) odnosnie systemów Legacy

Strategie odnośnie systemów Legacy są związane m.in. z ważnością systemu, ilością wprowadzanych zmian, wystawieniem na ryzyko np. wycieku danych, ryzykiem wydajności systemu, itd. Strategie Legacy:

  • Strategia nie rób nic z systemem – utrzymanie
  • Eliminacja kluczowych problemów np. wydajnościowych czy bezpieczeństwa
  • Strategia modernizacji – refaktoring
  • Strategia wymiany systemu

Częste kierunki modernizacji systemów Legacy

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Architektura Cloud Native

Cloud Native to technologia wykorzystania chmury przy tworzeniu własnych aplikacji. Technologia korzystające z mikroserwisów, kontenerów czy usług bezserwerowych tzw. Serverless.

Planując architekturę Cloud Native należy zacząć m.in od pytania o stopień „przenaszalności” aplikacji pomiędzy dostawcami chmury (Vendor-lock). Kolejne pytania dotyczą apliakacji, które będziemy tworzyli lub przenosili. Dostawca chmury powinien być dopasowany do tych aplikacji, aby wykorzystać najlepiej ich możliwości.

W przypadku chęci uniezależnienia się od dostawcy chmury często stosuje się popularne kontenery np. na Kubernetes czy Amazon Elastic Container Service (Docker). Kontenery pozwalają na łatwą przenaszalność aplikacji pomiędzy środowiskami, budowanie mikroserwisów czy niemal nieograniczoną skalowalność.

Innym typem budowania aplikacji dla technologii Cloud Native jest wykorzystanie funkcjonalności chmur typu Serverless. Usługi tego typu są dostarczane przez wszystkich dostawców chmur jak AWS, Google GCP czy Microsoft Azure.

Aplikacje Cloud Native (Native Cloud Application – NCA) są tworzone zgodnie z zasadą rozdzielania zadań na usługi (mikroserwisy, mikrousługi) i zgodnie z zasadą oddzielania ich od infrastruktury np. z wykorzystaniem kontenerów czy funkcji serverless.

Jeśli potrzebujesz wsparcia w architekturze systemów czy audycie swoich aplikacji zapraszamy do kontaktu.

Zobacz także: doradztwo strategiczne IT

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Ocena innowacyjności

Często ocena innowacyjności czy opinia o innowacyjności produktu czy usługi jest kluczowym elementem dla startupów czy projektów badawczo-rozwojowych. Opinie takie są zarówno potwierdzeniem wymyślenia innowacyjnego w skali kraju czy świata produktu czy usługi i wykorzystywane są zarówno na potrzeby wewnętrzne, pozyskania kapitału np. poprzez dotację ze środków unijnych czy poprzez fundusze typu Bridge Alfa czy Venture Capital w fazie zalążkowej seed. Obecne dotacje bazują na przyznawaniu środków na projekty B+R Badanie i Rozwój (R&D – Research and Development) głównie projektom, które wykazują innowacje w zakresie procesowym, produktowym czy organizacyjnym.

W przypadku tego typu środków opinie o innowacyjności lub wręcz B+R Due Diligence są must have. Co powinna zawierać opinia o innowacyjności? Zakres powinien uwzględniać opis produktu czy usługi, technologii, opis zespołu odpowiedzialnego za stworzenie technologii, jego doświadczenia i kompetencje, opis innowacji wg. np. wg. definicji wykorzystywanej przez Narodowe Centrum Badań i Rozwoju lub przez podręcznik Oslo Manual.

Jeśli potrzebujesz wsparcia technologicznego w swoich projektach B+R zapraszamy do kontaktu. Zrealizowaliśmy kilkadziesiąt projektów typu Due Diligence.

Zobacz naszą ofertę doradztwa technologicznego dla Startupów

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Hiperautomatyzacja

Hiperautomatyzacja (Hyper-Automation) to zbiór wielu technologii czy narzędzi automatyzujących wiele procesów biznesowych w firmach. Hiperautomatyzacja jest jednym z elementów strategii cyfrowej transformacji (Digital Transformation) i często jest wdrażana razem z innymi projektami transformacyjnymi.

W skład technologii, które można zaliczyć do pojęcia Hipeautomatyzacji mogą wchodzić:

  • RPA – Robotic Process Automation – automatyzacja procesów poprzez zastosowanie robotów, obecnie bardzo popularna technologia.
  • Chatboty, Voiceboty – narzędzia do automatycznej komunikacji z klientami używane już powszechnie w kontakcie z klientem przez stronę internetową i systemy Call Contact Center.
  • iBPMS – Intelligent Business Process Management Systems – inteligentne systemy do zarządzania procesami biznesowymi.
  • Process and Data Mining dla Big Data – narzędzia do eksploracji procesów biznesowych.
  • OCR – Optical Character Recognition – narzędzia do rozpoznawania tekstu, stosowane od dawna, ciągle potrzebne i wchodzące w kolejne obszary procesów biznesowych.
  • LowCode – systemy do budowania aplikacji bez konieczności kodowania lub z niewielką ilością kodu, które są przyszłością developmentu.
  • AI – Artificial Intelligence czyli narzędzia sztucznej inteligencji szukające szerokiego zastosowania w większości obszarów biznesowych firm.

Jeśli potrzebujesz doradztwa lub audytu procesów pod katem wykorzystania narzędzi Hiperautomatyzacji w przedsiębiorstwie to zapraszamy do kontaktu.

Zapraszamy do zapoznania się z ofertą Doradztwa Strategicznego IT i Strategii IT

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Ratowanie projektów?

Ratowanie projektów (project recovery) jest dość częstym tematem rozmów z klientami. Projekty, nawet jak korzystamy z dobrych firm wdrożeniowych często napotykają na problemy często nie do przejścia. Ratowanie projektów dotyczy głównie projektów wdrożenia corowych systemów jak systemów ERP, CRM, MES, WMS, TMS, itd., platform eCommerce czy systemów dedykowanych. Wdraża się je wewnętrznie lub zewnętrznie lub w modelu hybrydowym. Z uwagi na ilość systemów jednym z ważniejszych elementów jest też integracja z systemami wewnętrznymi.

Jakie są przyczyny szukania zewnętrznego wsparcia przez klienta?

  • Konflikt z dostawcą
  • Zbyt luźnie przeprowadzona analiza przedwdrożenowa
  • Zbyt długo ciągnąca się analiza przedwdrożeniowa z uwagi na brak wizji końca przez klienta
  • Przekraczanie harmonogramu wdrożenia – np. ryzyko nieskończenia przed sezonem sprzedażowym
  • Przekroczenia budżetu finansowego
  • Brak uwzględnienia w planie wdrożenia kluczowych integracji czy migracji danych
  • Brak stosowanych zapisów w mowach chroniących klienta
  • Źle dobrany dostawca
  • Problemy komunikacyjne po stronie klienta i dostawcy
  • Brak zarządzania ryzykiem (risk management) w projektach
  • Zbyt duża liczba obowiązków pracowników klienta prowadzących projekt
  • Zbyt duża liczba projektów równocześnie prowadzonych przed dostawce
  • itd.

Częstą usługą wykonywaną w takich przypadkach są doradztwo projektowe lub audyt wdrożeniowy projektu lub audyt powdrożeniowy systemu.

Zobacz naszą ofertę doradczą w zakresie Realizacji Kluczowych Projektów.

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 zadowolonych klientów

Architektura systemów pod Big Data

Duże ilości danych wymagają zaplanowania architektury pod kątem ich zbierania, przechowywania, ich analizy czy udostępniania do innych systemów. W tradycyjnym modelu dane są zbierane przez hurtownie danych z systemów np. ERP, CRM, eCommerce, WMS, itd. a analizowane w systemach klasy Business Inteligence.

Poniżej przykładowy flow od źródeł danych, poprzez ich zbieranie, transformację, przechowywanie i analizę.

Źródła danych dla Big Data

  • Aplikacje mobilne
  • Aplikacje dedykowane
  • Systemy ERP, WMS, CRM, POS, MES, MRP, APS, TMS, itd.
  • Systemy eCommerce jak sklepy internetowe, marketplace
  • Bazy OLTP
  • Bazy logów, eventów
  • API innych firm
  • itd.

Zbieranie i transformacja danych

  • Konektory
  • Zbieranie danych
  • Workflow Manager
  • Platforma Spark
  • Python Libs
  • Batch Query Engine
  • Event Streaming

Przechowywanie danych

  • Data lake
  • Data warehouse

Analiza danych, predictive, sztuczna inteligencja (AI – Artificial Intelligence), uczenie maszynowe (Machine Learning)

  • Data Science Platform
  • Biblioteki Machine Learning
  • Analityka czasu rzeczywistego

Rezultaty analizy danych

  • Dashboardy
  • Wbudowana analityka
  • Rozszerzona analityka
  • Aplikacje wbudowane, frameworki app

Powyższy schemat architektury pozwala na zbieranie danych biznesowych, wyciąganie danych z systemów operacyjnych, dostarczanie danych do magazynów danych wg. określonych schematów, transformację danych dla narzędzi analitycznych, przechowywanie danych aby mogły być one używane do analizy z uwzględnieniem kosztów przechowywania, czasów dostępów czy czasów dostarczenia danych, analizę danych poprzez systemy lub platformy do analizy, analizy historyczne i próby przewidywania przyszłości (predictive) aż do prezentacji wyników analizy danych dla wewnętrznych lub zewnętrznych użytkowników np. w systemach czy aplikacjach.

Jakie są najnowsze trendy w architekturze Big Data?

  1. Zmiana systemów On Prem na Cloud Data Warehouse
  2. Zmiana Hadoop na Data Lakes
  3. Zmiany ETP (Extract Transform Load) na ELT (Extract Load Transform)
  4. Zmiana Workflow Manager na Dataflow Automation

Zobacz także:

Zapraszamy do kontaktu:

pfederowicz@gotechnologies.pl

Ponad 200 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