Tworzenie oprogramowania na zamówienie. Czy naprawdę warto? 

Początków oprogramowania (ang. software) możemy doszukiwać się już w XIX wieku, kiedy to matematyczka Ada Lovelace napisała algorytm dla Silnika Analitycznego, czyli maszyny wymyślonej i zaprojektowanej przez jej przyjaciela — a zarazem uzdolnionego naukowca — Charlesa Babbage’a. Chociaż projekt nigdy nie został ukończony, to przez wielu uznawany jest za pierwszy programowalny komputer, a diagram wykonany przez Lovelace za pierwowzór programów komputerowych. Dzisiaj tworzenie oprogramowania na zamówienie to jedna z podstawowych usług software house’ów, a przyspieszona transformacja cyfrowa tym bardziej wymusza na firmach korzystanie z takich ofert. Czy dedykowane aplikacje, tworzone na potrzeby konkretnego przedsiębiorstwa, są opłacalną inwestycją? Szczególnie kiedy na rynku dostać można tak wiele gotowych rozwiązań?

Tworzenie oprogramowania na zamówienie

Czytaj dalej, a dowiesz się: 

Czym jest oprogramowanie na zamówienie? 

Oprogramowanie na zamówienie to rozwiązanie informatyczne, które zespół programistyczny tworzy z myślą o indywidualnych potrzebach danego klienta. Prace programistyczne poprzedzają różne procesy poznania oraz zrozumienia domeny biznesowej jego firmy (np. poprzez warsztaty Event Storming), a następnie opracowanie funkcjonalności i specyfiki tworzonego oprogramowania.  

W przeciwieństwie do gotowych rozwiązań dedykowane oprogramowanie jest elastyczne i dopasowane do realnych potrzeb przedsiębiorstwa. Powstaje z myślą usprawnienia codziennej pracy jego przyszłych użytkowników oraz ulepszenia procesów biznesowych firmy. Często posiada zaimplementowane funkcje i rozwiązania, których nie oferują ogólnodostępne programy komputerowe.  

[su_service title=”Ważne!” icon=”icon: check-circle” icon_color=”#bbe2ef” size=”36″]Dedykowane oprogramowanie jest alternatywą dla gotowych rozwiązań, jakie firma może wykupić na zasadzie licencji. Skorzystanie z obu opcji ma swoje plusy i minusy, które należy rozważyć przed podjęciem ostatecznej decyzji. [/su_service]

Czym jest oprogramowanie pudełkowe?  

Rozwiązania pudełkowe powstają z myślą o masowej obsłudze procesów biznesowych. Tworzone są pod daną branżę lub np. konkretne zapotrzebowanie rynkowe i najczęściej całkiem dobrze sprawdzają się w swojej określonej roli. Problematyczne stają się dopiero w momencie, kiedy wymagania firmy są szersze lub bardziej specjalistyczne niż gotowy program, procesy się rozrastają oraz ulegają przeobrażeniom, biznes szybko się rozrasta i poszerza swoją ofertą albo producent oprogramowania znika z rynku. Zamknięty kod oprogramowania często nie pozwala na większe zmiany — a jeśli nawet to są one bardzo kosztowne — a firma tak naprawdę nie ma żadnych praw do aplikacji.  

Gotowe rozwiązania pomagają w automatyzacji zdefiniowanych odgórnie procesów biznesowych, ale niekoniecznie będą odpowiedzią na 100% potrzeb danej firmy. Korzystanie z systemów pudełkowych niesie za sobą ryzyko takie samo, jak w przypadku każdego gotowego schematu – musimy się w niego w pewien sposób wpasować.  

[su_service title=”Ważne!” icon=”icon: check-circle” icon_color=”#bbe2ef” size=”36″]W czasach, kiedy rozwiązania technologiczne nierzadko są kluczem do uzyskania przewagi konkurencyjnej, postawienie na gotowe oprogramowanie może w dłuższej perspektywie spowolnić rozwój naszej firmy. [/su_service]  

Wady i zalety obu rozwiązań 

Zarówno systemy pudełkowe, jak i oprogramowanie tworzone na zamówienie mają swoje wady i zalety. Na dedykowanych rozwiązaniach zyskają przede wszystkim duże i średnie przedsiębiorstwa, które nastawione są na stały rozwój. Małe firmy, dopiero wchodzące na rynek i mające ściśle określoną ofertę, raczej postawią na gotowy system. Nie obciąży ich to finansowo na start, a pozwoli zacząć automatyzować i kontrolować pierwsze procesy.  

Zalety 1

Tworzenie oprogramowania na zamówienie — cena 

Tworzenie oprogramowania na zamówienie to rozbudowana podróż, obejmująca wiele etapów. Od koncepcji i walidacji pomysłu, przez analizę wymagań i przełożenie ich na architekturę systemu, aż po wycenę, realizację, automatyzację, testy, wdrożenie, utrzymanie i ewentualny rozwój. Przy czym coraz częściej nie dzieje się to krok po kroku, ale w bardziej zwinnym podejściu (ang. agile), które z jednej strony pozwala na tworzenie bardziej wydajnych systemów, ale z drugiej utrudnia jednoznaczne określenie budżetu.  

Aby oszacować ogólne ramy czasowe i budżetowe dla danego projektu, należy wcześniej wykonać tzw. backlog, a więc spriorytetyzowaną listę wszystkich zadań, które trzeba będzie wykonać na poszczególnych etapach (sprintach), aby otrzymać finalny produkt. To dużo więcej zaangażowania między firmą a software housem niż w przypadku gotowego rozwiązania, które najczęściej posiada określoną cenę, zależną np. od liczby stanowisk, użytkowników czy zaimplementowanych funkcji.  

Początkowa cena dedykowanego rozwiązania prawie zawsze jest znacznie wyższa niż cena wykupienia licencji – trudno z tym dyskutować. Z góry określona i stosunkowo niewysoka roczna stawka licencyjna oraz szybki proces wdrożenia pudełkowego systemu są chyba najbardziej kuszącymi czynnikami, działającymi na plus dla gotowych rozwiązań. Co jednak z ukrytymi opłatami? 

[su_service title=”Ważne!” icon=”icon: check-circle” icon_color=”#bbe2ef” size=”36″]W przypadku gotowego rozwiązania rzadko płacimy wyłącznie za licencję. Często dochodzi szereg ukrytych opłat, w tym za: [/su_service]

  • Odnowieniową opłatę licencyjną (jeżeli licencja nie jest wieczysta),
  • Okresowe aktualizacje oprogramowania,
  • Pełne opłaty licencyjne za dodatkowych użytkowników (nawet jeżeli korzystają wyłącznie z kilku funkcjonalności oprogramowania),
  • Wsparcie techniczne i umowę serwisową,
  • Migrację danych i transfer do nowego oprogramowania,
  • Integrację z pozostałymi systemami,
  • Dostosowanie systemu do potrzeb użytkowników (jeżeli w ogóle istnieje taka opcja),
  • Konsultacje wdrożeniowe,
  • Zarządzanie projektem;
  • Szkolenia użytkowników,
  • Testy oprogramowania.

To tylko kilka przykładów potencjalnych kosztów, które składają się na cenę rozwiązań pudełkowych. Jak widać, aby zyskać pełen obraz końcowej ceny inwestycji, należy wziąć pod uwagę o wiele więcej czynników, niż mogłoby się wydawać na początku. W rezultacie, obliczając roczne lub kilkuletnie wydatki, może okazać się, że różnica między gotowym systemem a tworzonym na zamówienie, wcale nie jest aż tak znacząca.

Na sam koniec podkreślmy jeszcze jeden aspekt: co w momencie, kiedy gotowe oprogramowanie przestaje odpowiadać na potrzeby firmy lub producent znika z rynku i przestaje wspierać swój projekt? Zamknięty kod oprogramowania nie pozwala na dalsze prace nad aplikacją we własnym zakresie i firma pozostaje z systemem legacy, który bardziej ją spowalnia, niż rozwija. Należy w takiej sytuacji liczyć się z kosztami przejścia na kolejny pudełkowy produkt lub np. działaniem na zasadzie naszego Smart Decouplingu. W przypadku dedykowanego rozwiązania otwarty kod pozwala na dalsze modyfikacje systemu. Czy to we własnym zakresie (przez wewnętrzny dział IT), czy to we współpracy z zespołem tworzącym rozwiązanie lub z innym software housem w przyszłości.

Co jest dla mnie lepsze: gotowy system czy system szyty na miarę?  

Na to pytanie nie ma jednej i prostej odpowiedzi. Nie każdy system opłaca budować się od podstaw, ale też nie warto obawiać się rozmów z software house’ami czy korzystania z usługi konsultingu IT. W końcu inwestycja w system to nierzadko decyzja na lata, której celem jest usprawnić, przyspieszyć i zautomatyzować pracę Twojego przedsiębiorstwa, tak aby docelowo zyskać przewagę konkurencyjną! 

 Na jakie pytania warto odpowiedzieć sobie przed wyborem gotowego lub dedykowanego rozwiązania?

  • Czy strategia firmy może w przyszłości ulegać przemianom? 
  • Czy w ostatnim czasie oferta przedsiębiorstwa poszerzyła się lub uległa innym zmianom?
  • Czy firma rozrasta się i aktywnie zatrudnia nowych pracowników? 
  • Czy ostatnio firma stanęła przed nowymi wyzwaniami, które były dla niej pewnego rodzaju zaskoczeniem? 
  • Czy firma korzysta już z jakichś systemów, które będą potrzebować integracji z nowym oprogramowaniem? 
  • Czy w przyszłości planowane jest wprowadzanie jeszcze innych systemów? 
  • Czy planowane są różne stopnie dostępu do oprogramowania (np. w zależności od stanowiska)? 
  • Czy planowana jest migracja danych do nowego oprogramowania?  

Jeśli na większość pytań udzieliłeś twierdzącej odpowiedzi, prawdopodobnie oprogramowanie tworzone na zamówienie będzie dla Ciebie korzystniejszym wyborem.