Przejdź do treści
Wszystkie artykuły

Znaczenie inżynierii oprogramowania we współczesnej infrastrukturze IT

autor: Ghazi Triki · 2 min czytania

Inżynieria oprogramowania

W tradycyjnym, a z pewnością najpopularniejszym ujęciu procesu tworzenia oprogramowania programiści w firmach technologicznych nie są traktowani jak projektanci, lecz jak osoby, które realizują projekty przygotowane przez innych. W końcu zadaniem programisty jest pisanie kodu. Kodowanie uchodzi za czynność „budowlaną”, a wszyscy wiedzą, że architektura musi być gotowa, zanim rozpocznie się budowa.

Właściwą pracę projektową wykonują wyspecjalizowani projektanci oprogramowania. Inżynierowie tworzą projekty i przekazują je programistom, którzy przekładają je na kod zgodnie ze specyfikacją inżyniera oprogramowania. W tym ujęciu programiście wystarczy tyle umiejętności z zakresu architektury oprogramowania, by zrozumieć przekazane mu projekty.

Wyspecjalizowani inżynierowie oprogramowania zajmują się faktycznym projektowaniem. RIADVICE na przykład opanowała sztukę projektowania oprogramowania: tworzymy projekty, a następnie przekazujemy je naszym programistom, którzy przekładają je na kod zgodnie z instrukcjami projektanta. W takim przypadku programista potrzebuje jedynie umiejętności projektowych wystarczających do zrozumienia otrzymanych projektów, a inżynierowie oprogramowania ułatwiają programistom kształtowanie kodu.

Weźmy przykład spektrum „rzeczywistości” w tworzeniu oprogramowania. Opisana wyżej sytuacja znajduje się na jednym jego końcu. Model oparty na przekazywaniu projektów jest częstszy w większych, bardziej złożonych przedsięwzięciach oraz w firmach z długo ugruntowaną, tradycyjną kulturą inżynierii oprogramowania.

Na drugim końcu spektrum nie ma inżynierów, są tylko programiści, i to oni odpowiadają za projekt systemu.

Pomiędzy tymi dwiema skrajnościami istnieje wiele innych rzeczywistości.

  1. a) czysta, tradycyjna, podzielona na etapy inżynieria oprogramowania, w której programiści otrzymują niezwykle szczegółowe „kompletne projekty”,
  2. b) mikrozespoły deweloperskie, w których to programiści grają pierwsze skrzypce. Projektanci, główni programiści lub „architekci” działają w „rzeczywistości pośredniej” między tymi biegunami.

RIADVICE obejmuje wszystkie te aspekty w ramach kompleksowych usług zwinnej inżynierii oprogramowania (Agile): od prototypowania i architektury oprogramowania, przez projektowanie i UI/UX, po zapewnienie jakości, zgodnie z zasadami Agile.

Ponadto pomagamy firmom technologicznym osiągać cele projektowe dzięki dodatkowym usługom, takim jak rozwój produktów, modernizacja oprogramowania i rozwiązania dla przedsiębiorstw.

Pełną ofertę usług z zakresu projektowania i inżynierii oprogramowania znajdą Państwo na naszej stronie poświęconej inżynierii oprogramowania.

Udostępnij ten artykuł