Zamówienie skierowane do software house w Poznaniu ma zwykle jedną z dwóch postaci: firma chce zbudować system od zera albo rozbudować program, który już działa i nie nadąża za procesami. Zakres usługi wynika z tego, jak duża jest organizacja. Mała firma kupuje zazwyczaj jedną aplikację i jej utrzymanie. Średnia zamawia system połączony z programem finansowo-księgowym, a często także z magazynem obsługiwanym na urządzeniach mobilnych.
Poniższy opis porządkuje, co składa się na taką usługę u wykonawcy działającego jako software house i jak wygląda podział pracy między zamawiającym a zespołem. Osobno opisano stos technologiczny oraz organizację współpracy zespołowej, tutaj uwaga skupia się na zakresie i modelu usługi.
Software house Poznań - cztery obszary usługi
W ofercie SoftwareStudio, opisanej w tym serwisie i na stronie oprogramowania na zamówienie, powtarzają się cztery obszary. Każdy z nich ma osobny rezultat i osobny sposób rozliczenia.
- Oprogramowanie na zamówienie - aplikacje webowe i bazodanowe pisane pod proces zamawiającego, z dokumentacją techniczną.
- Wsparcie i utrzymanie - naprawy błędów i drobne zmiany funkcji oraz nadzór nad kopiami zapasowymi.
- Integracje - połączenia aplikacji z ERP oraz z systemami kurierskimi przez interfejsy lub bazę pośrednią.
- Hosting i licencje - uruchomienie aplikacji w chmurze prywatnej wykonawcy i rozliczanie w abonamencie miesięcznym lub rocznym.
| Obszar | Wynik dla zamawiającego | Typowy sposób rozliczenia |
|---|---|---|
| Oprogramowanie na zamówienie | działająca aplikacja z dokumentacją | wycena zakresu, etapy z odbiorami |
| Wsparcie i utrzymanie | stabilne środowisko produkcyjne | abonament albo godziny wg zgłoszeń |
| Integracje | dane przepływają między systemami bez przepisywania | wycena interfejsu, potem utrzymanie |
| Hosting i licencje | dostęp przez przeglądarkę bez własnej serwerowni | opłata miesięczna lub roczna |
Granice między obszarami są płynne. Aplikacja napisana na zamówienie potrzebuje utrzymania, a integracja bez hostingu wymaga po stronie klienta serwera z uprawnieniami do bazy. Umowy w tym modelu zwykle opisują całość jako projekt z etapem wdrożeniowym i osobną częścią serwisową.
Oprogramowanie na zamówienie od analizy do odbioru
Najobszerniejszą częścią usługi jest wytworzenie aplikacji. SoftwareStudio deklaruje w swoich materiałach specjalizację w aplikacjach internetowych i bazodanowych, co oznacza, że większość prac dotyczy modelu danych i logiki procesu, a nie samego wyglądu ekranów. Szersze omówienie tematu znajduje się na stronie o dedykowanym oprogramowaniu na zamówienie oraz w opisie tworzenia aplikacji webowych.
Analiza wymagań
Prace zaczynają się od opisu procesu, który ma być obsłużony. Na tym etapie powstaje lista dokumentów i ról użytkowników. Analitycy zapisują też dane wejściowe oraz miejsca, w których obecny proces się zatrzymuje. Zespół sprawdza także istniejące systemy, bo od nich zależy, czy aplikacja będzie musiała się z nimi integrować, czy je zastąpi.
Wytworzenie i testy
Po zatwierdzeniu zakresu programiści budują aplikację w iteracjach. Każda kończy się fragmentem, który da się uruchomić i obejrzeć, a testy obejmują logikę w bazie oraz interfejs. W praktyce najwięcej błędów wykrywa się przy danych przenoszonych ze starego systemu, dlatego migrację warto traktować jako osobne zadanie z własnym harmonogramem.
Reguła: zakres etapu musi być opisany tak, aby odbiór dało się sprawdzić bez interpretacji, czyli listą dokumentów i statusów, które mają działać.
Wdrożenie i przekazanie
Wdrożenie obejmuje instalację na środowisku docelowym, import danych początkowych i szkolenie użytkowników. Po odbiorze zamawiający dostaje dokumentację techniczną oraz opis konfiguracji, dzięki czemu wiedza nie zostaje wyłącznie w głowach programistów. Ten element odróżnia usługę software house od jednorazowego zlecenia dla freelancera, choć obie formy mają swoje miejsce.
| Etap | Dokument lub artefakt | Kto zatwierdza |
|---|---|---|
| Analiza | opis procesu i lista wymagań | zamawiający |
| Projekt | model danych i szkice ekranów | zamawiający i architekt |
| Wytworzenie | wersja testowa aplikacji | osoby odpowiedzialne za proces po stronie klienta |
| Wdrożenie | protokół odbioru i dokumentacja | zamawiający |

Wsparcie i utrzymanie po wdrożeniu
System wdrożony do produkcji zaczyna się starzeć od pierwszego dnia: zmieniają się przepisy i procedury w firmie, a także wersje przeglądarek. Utrzymanie oznacza więc regularną pracę, a nie wyłącznie gaszenie awarii. W materiałach SoftwareStudio wsparcie posprzedażowe jest częścią oferty aplikacji dedykowanych, a szczegóły zakresu ustala się indywidualnie w umowie.
Rodzaje zgłoszeń
W praktyce zgłoszenia dzielą się na błędy, prośby o zmianę i pytania o obsługę. Błąd to zachowanie niezgodne z odebraną specyfikacją i zwykle naprawia się go w ramach gwarancji lub abonamentu. Prośba o zmianę dotyczy nowej funkcji lub innego przebiegu procesu i podlega wycenie. Pytanie o obsługę trafia do wsparcia pierwszej linii.
Parametry umowy serwisowej
Umowa serwisowa opisuje czas reakcji i czas usunięcia usterki dla poszczególnych priorytetów, okno serwisowe na aktualizacje oraz sposób zgłaszania. Konkretne wartości ustalają strony, dlatego w tym opisie nie podaje się liczb. Warto natomiast rozróżnić dwa parametry: czas reakcji, czyli moment pierwszej odpowiedzi, oraz czas naprawy, czyli moment przywrócenia działania.
- Czas reakcji - liczony od zgłoszenia do pierwszej merytorycznej odpowiedzi wykonawcy.
- Czas naprawy - liczony od zgłoszenia do przywrócenia funkcji, także rozwiązaniem obejściowym.
Szersze spojrzenie na obsługę informatyczną jako osobną usługę daje strona o outsourcingu IT w Poznaniu, gdzie punkt ciężkości leży na infrastrukturze, a nie na kodzie aplikacji.
Kopie zapasowe i ciągłość działania
Usługa software house obejmuje też decyzje o tym, ile danych można utracić i jak długo aplikacja może być niedostępna. Pierwszy parametr to RPO, czyli maksymalny wiek danych, które da się odtworzyć po awarii. Drugi to RTO, czyli czas od awarii do ponownego uruchomienia systemu. Obie wartości wynikają z procesu biznesowego, a nie z możliwości techniki, dlatego zamawiający powinien je podać już na etapie analizy.
Dla bazy SQL Server podstawą jest pełna kopia z sumą kontrolną i regularne sprawdzanie, czy plik da się odczytać. Sama obecność pliku kopii niczego nie dowodzi, bo uszkodzona kopia wychodzi na jaw dopiero przy odtwarzaniu. Polecenia poniżej to przykład ilustracyjny, a pełny opis opcji znajduje się w dokumentacji instrukcji BACKUP.
BACKUP DATABASE Aplikacja
TO DISK = N'D:\Kopie\Aplikacja_full.bak'
WITH CHECKSUM, INIT;
RESTORE VERIFYONLY
FROM DISK = N'D:\Kopie\Aplikacja_full.bak'
WITH CHECKSUM;
Reguła: kopia zapasowa jest wiarygodna dopiero po próbnym odtworzeniu na osobnym serwerze, a nie po samym zakończeniu zadania bez błędu.
Integracje z systemami zewnętrznymi
Aplikacja na zamówienie rzadko działa sama. Zwykle pobiera zamówienia z jednego programu, a wyniki oddaje do innego. Podstawy tego zagadnienia opisuje strona o integrowaniu aplikacji webowych. Poniższa tabela zestawia mechanizmy spotykane najczęściej, a dokumentacja ASP.NET Core Web API pokazuje, jak wystawia się interfejs REST po stronie serwera.
| Mechanizm | Jak działa | Główne ryzyko |
|---|---|---|
| Interfejs REST (JSON) | system źródłowy wysyła żądanie POST, aplikacja odpowiada kodem 200 albo 4xx z opisem błędu | brak ponowienia po przerwie w łączności |
| Baza pośrednia | jeden system zapisuje rekord, drugi odczytuje go w zadaniu cyklicznym | duplikaty i rekordy w stanie niedokończonym |
| Plik w katalogu współdzielonym | system źródłowy zapisuje plik, a aplikacja importuje go co określony czas | odczyt pliku, który jeszcze jest zapisywany |
Przy integracji przez bazę pośrednią ważne jest zabezpieczenie przed dublowaniem. Ten sam dokument może zostać przesłany dwukrotnie, gdy system nadawcy powtórzy wysyłkę po przerwie w łączności. Rozwiązaniem jest unikalny indeks na numerze zewnętrznym, który odrzuci duplikat już na poziomie bazy.
CREATE TABLE dbo.ImportZamowien (
Id INT IDENTITY(1,1) PRIMARY KEY,
NumerZewnetrzny NVARCHAR(50) NOT NULL,
Tresc NVARCHAR(MAX) NOT NULL,
Status TINYINT NOT NULL DEFAULT 0, -- 0 nowy, 1 przetworzony, 2 błąd
UtworzonoUtc DATETIME2(0) NOT NULL DEFAULT SYSUTCDATETIME()
);
CREATE UNIQUE INDEX UX_ImportZamowien_Numer
ON dbo.ImportZamowien (NumerZewnetrzny);
To przykład ilustracyjny, a nie schemat produktu. Pokazuje jednak zasadę: kontrola powtórzeń należy do warstwy danych, bo kod aplikacji nie zawsze widzi równoległe żądania.
Chmura prywatna i licencja subskrypcyjna
W oryginalnym opisie oferty SoftwareStudio model chmurowy oznacza brak zakupu licencji na własność i brak instalacji oraz administracji oprogramowaniem po stronie klienta. Aplikacje działają w profesjonalnym centrum danych ATM w Warszawie, na środowisku wirtualizacyjnym VMware vSAN. Szczegółowo temat rozwija strona o programach na zamówienie a chmurze i VMware.

Dla zamawiającego oznacza to inną strukturę kosztów. Zamiast jednorazowego zakupu licencji i sprzętu pojawia się opłata miesięczna lub roczna za dostęp do wybranej aplikacji i jej funkcji. Model ten ogranicza koszty utrzymania własnej serwerowni, ale wymaga spokojnej oceny, czy przy wieloletnim użytkowaniu łączna kwota nie przekroczy ceny zakupu na własność.
| Cecha | Licencja na własność | Abonament w chmurze |
|---|---|---|
| Wydatek początkowy | wysoki (licencja oraz sprzęt) | niski, opłata cykliczna |
| Administracja serwerem | po stronie klienta | po stronie wykonawcy |
| Aktualizacje | planowane i instalowane przez klienta | wdrażane przez wykonawcę |
| Dostęp do danych | lokalnie, w sieci firmowej | przez przeglądarkę, z uwierzytelnieniem |
Aplikacje mobilne na terminale i telefony
Część projektów wymaga pracy poza biurem: w magazynie, na placu lub u klienta. Dawniej takie rozwiązania powstawały dla kolektorów danych z systemami Windows CE i Windows Mobile, co opisuje strona o aplikacjach dla Windows CE i Mobile. Od 2015 roku oferta obejmuje aplikacje na terminale z systemem Android w wersji 4.x lub nowszej, a przykład zastosowania w magazynie pokazuje opis aplikacji magazynowej na Androida.

Praktyczna uwaga dotyczy wersji systemu: wersja 4.x była wskazywana jako minimalna w czasie wprowadzenia oferty w 2015 roku, a dziś o doborze urządzeń decyduje wsparcie producenta terminala i aktualny cykl wydań Androida, który opisuje dokumentacja dla programistów Android. Przy nowych wdrożeniach wybiera się więc sprzęt z aktualną wersją systemu.
Wycena i granice odpowiedzialności wykonawcy
SoftwareStudio wycenia projekty indywidualnie, ponieważ koszt zależy od liczby funkcji i integracji oraz od wymaganego terminu. Ogólne omówienie dostawcy usług o takim profilu zawiera strona o firmie informatycznej, a przy niejasnym zakresie pomaga wcześniejsza rozmowa doradcza opisana w artykule o doradztwie przy tworzeniu systemów IT.
Modele rozliczenia i podział ról
Ten sam zakres można kupić na kilka sposobów. Wybór modelu rozliczenia wpływa na to, kto ponosi ryzyko zmiany wymagań w trakcie prac, dlatego wart jest osobnego omówienia przed podpisaniem umowy.
| Model | Na czym polega | Kiedy pasuje |
|---|---|---|
| Stała cena za zakres | kwota za opisany etap, zmiany wymagań wyceniane osobno | zakres jest stabilny i dobrze opisany |
| Czas i materiał | rozliczenie godzin zespołu wg stawek | wymagania będą się zmieniać w trakcie prac |
| Abonament | stała opłata za utrzymanie i określoną pulę zmian | system działa już produkcyjnie |
Niezależnie od modelu podział ról pozostaje podobny. Zamawiający wskazuje właściciela procesu, który zatwierdza wymagania i odbiera etapy. Wykonawca odpowiada za projekt techniczny i jakość kodu. Sposób pracy zespołu w iteracjach opisuje osobno strona o współpracy z zespołem w Poznaniu.
Co wchodzi w wycenę
Rzetelna wycena zaczyna się od pytań, na które zamawiający potrafi odpowiedzieć bez wiedzy technicznej: ilu użytkowników będzie pracować w systemie, ile dokumentów dziennie przechodzi przez proces i z jakimi programami aplikacja ma się łączyć. Odpowiedzi pozwalają oszacować obciążenie bazy i liczbę interfejsów, a więc dwa czynniki, które najmocniej wpływają na pracochłonność.
Wycena obejmuje pracę analityczną i programistyczną oraz testy, do których dolicza się koszty wdrożenia. Osobno liczy się hosting, jeśli aplikacja ma działać w chmurze wykonawcy, i osobno utrzymanie. Rozdzielenie tych pozycji ułatwia porównanie ofert, bo część firm łączy je w jedną kwotę, co utrudnia ocenę.
Czego nie obejmuje usługa
Poza zakresem wykonawcy pozostają decyzje o przebiegu procesu. Nie należą do niego także dane wejściowe oraz uprawnienia w systemach zewnętrznych. Jeśli ERP klienta nie udostępnia interfejsu, integracja wymaga zgody i czasu dostawcy tego programu. Podobnie baza danych musi działać na wersji SQL Server objętej wsparciem: SQL Server 2016 zakończył okres rozszerzonego wsparcia w lipcu 2026, co potwierdza tabela cyklu życia w Microsoft Learn, więc starsze zalecenia dotyczące wersji 2012 i 2016 należy czytać z tą poprawką.
Reguła: przed podpisaniem umowy warto ustalić na piśmie, kto odpowiada za dane, kto za środowisko, a kto za integracje z programami trzecimi.
Demonstracja działania gotowych systemów SoftwareStudio jest dostępna w demo online, co pozwala ocenić styl aplikacji przed rozmową o zakresie projektu.




