Czym jest system CMS i kto z niego skorzysta?
Oprogramowanie klasy CMS (ang. Content Management System) to software, który pozwala w łatwy i przyjazny sposób tworzyć, edytować oraz aktualizować zawartość strony bez umiejętności programistycznych. Przykładem takiego oprogramowania jest np. WordPress, Joomla, Drupal lub Squarespace.
Dla przedsiębiorcy korzystanie z CMS to duże ułatwienie i możliwość znacznego obniżenia kosztów prowadzonej działalności gospodarczej. Nie musi on sięgać po kosztowne wsparcie software house’u, ponieważ obsługi CMS może nauczyć się każdy, nawet osoba, która nigdy wcześniej nie miała kontaktu z programowaniem. Takie szkolenie można nawet przewidzieć w ramach umowa na stworzenie systemu CMS.
W praktyce można wyróżnić kilka rodzajów CMS. Statystycznie najczęściej spotyka się darmowy software (np. WordPress) jako system zarządzania. Dostępne są również usługi SaaS, jak Shoper jeśli chodzi o najpopularniejsze systemy CMS. Jeżeli klientowi zależy na unikalnej funkcjonalności, niezbędne będzie stworzenie systemy CMS od podstaw, jako firmowy serwis internetowy (autorski CMS dla stron www lub strony wizytówki czy też jako system zarządzania treścią). To oczywiście droższe rozwiązanie, ale dające też największe możliwości.
Kto korzysta z systemu CMS? Systemy klasy CMS to narzędzie przydatne dla wszystkich firm, które muszą zadbać o częstą aktualizację strony internetowej i zarządzają dużą ilością treści. Zazwyczaj posiada nawet panel administracyjny systemów CMS do zarządzania treścią na stronach internetowych i nie tylko, jak inne popularne systemy CMS (w tym systemy autorskie jesli chodzi o łatwość obsługi w przeciwieństwie do darmowy CMS dla sklepów internetowych typu open source czy jeśli chodzi o fora dyskusyjne czy bazy danych).
Jakie moduły znajdują się w systemie CMS?
Rozważając zlecenie stworzenia CMS na potrzeby firmy, warto rozważyć, które spośród wielu różnych modułów mogą okazać się przydatne. Od ich liczby i stopnia skomplikowania będzie zależał nie tylko czas realizacji zamówienia oraz wynagrodzenie wykonawcy, ale także pozostałe postanowienia umowne, jak np. zakres przeniesienia praw autorskich. Do typowych elementów CMS można zaliczyć moduł pozwalający na:
- zarządzanie menu oraz SEO;
- prowadzenie bloga, jego moderację oraz kompleksowe zarządzanie wpisami;
- dodawanie zdjęć do poszczególnych podstron oraz uploadowanie plików do pobrania;
- lokalizację działalności na mapach;
- zarządzanie treściami na stronie, aktualnościami;
- zarządzanie uprawnieniami dla poszczególnych użytkowników;
- podgląd historii modyfikacji na stronie;
- publikację strony oraz jej zawartości w różnych wersjach językowych.
Jakie elementy powinny znaleźć się w umowie o stworzenie systemu CMS?
Stworzenie systemu CMS łączy w sobie zarówno prace programistów, jak i grafików i powinno to znaleźć odzwierciedlenie w treści umowy.
Jak określić przedmiot umowy i obowiązki stron?
Przedmiotem umowy w omawianym przypadku będzie zaprojektowanie i wdrożenie oprogramowania klasy CMS. Z uwagi na to, że zamawiający doskonale zdaje sobie sprawę z tego, jakiego rezultatu oczekuje, nie ma tutaj potrzeby stosowania metodyk zwinnych i ciągłych testów, ponieważ założenia projektowe znane są od samego początku. Z tego względu przedmiot umowy można dokładnie opisać w załącznikach do kontraktu, wskazując na jego:
- poszczególne moduły i funkcje;
- charakterystyczne elementy, np. szatę graficzną;
- rozwiązania techniczne, jakie mają być zastosowane, np. maksymalna liczba użytkowników, wariant aplikacji dla wersji mobilnej.
Strony mogą również poszerzyć zakres obowiązków wykonawcy, np. o obsługę powdrożeniową, testy, szkolenia pracowników zamawiającego czy audyt stacku technologicznego, który ma na celu znalezienie optymalnych rozwiązań wdrożeniowych.
Podstawowym obowiązkiem zamawiającego jest oczywiście zapłata umówionego wynagrodzenia, a także współpraca z wykonawcą, m.in. poprzez dostarczenie dokumentacji technicznej lub delegowanie pracowników do współpracy podczas prac wdrożeniowych.
Czas wykonania umowy
Umowa powinna określać również termin realizacji prac wykonawcy lub poszczególnych ich etapów w przypadku wyjątkowo złożonych projektów. Dzięki temu zamawiającemu łatwiej jest zaplanować rozwój firmy, ale też zapanować nad budżetem. W praktyce poszczególne funkcje systemu CMS często wdrażane są w określonej kolejności, skorelowanej z terminami ukończenia prac.
Przeniesienie praw autorskich do stworzonego systemu CMS
Program komputerowy tworzony na zamówienie stanowi utwór w rozumieniu ustawy o prawie autorskim i prawach pokrewnych. Pierwotnie całość praw autorskich przysługuje twórcy. Aby zamawiający mógł korzystać z niego bez ograniczeń, niezbędne jest przeniesienie autorskich praw majątkowych do utworu. Taka umowa powinna być zawarta w formie pisemnej pod rygorem nieważności i obejmować następujące elementy:
- dokładne oznaczenie utworu;
- moment przejścia praw autorskich na nabywcę;
- ewentualne wynagrodzenie za przeniesienie praw autorskich majątkowych;
- wskazanie pól eksploatacji, czyli dopuszczalnego zakresu korzystania z utworu.
Przeniesienie praw autorskich – w przeciwieństwie do umowy licencji – ma charakter nieodwołalny.
Warto zwrócić uwagę, że prawa autorskie do programu komputerowego zostały uregulowane w szczególny sposób, dlatego w rzeczywistości umowa powinna określać:
- zasady przeniesienia praw autorskich do programu komputerowego (rozumianego jako kod źródłowy);
- zasady przeniesienia praw autorskich do pozostałych utworów regulowanych ustawą, jak np. elementy graficzne.
Przeniesienie praw autorskich do programu komputerowego
Pola eksploatacji w zakresie praw autorskich do programu komputerowego zostały opisane w art. 74 ustawie o prawie autorskim. Zgodnie z tym przepisem obejmują one prawo do:
- trwałego lub czasowego zwielokrotniania programu komputerowego;
- wprowadzania zmian w programie komputerowym;
- rozpowszechniania, w tym użyczenia lub najmu programu komputerowego.
Z powyższego wynika, że nabywca programu może np. zlecić innej firmie wprowadzenie zmian w programie, a także rozpowszechniać software bez konieczności każdorazowego udzielania zgody przez twórcę. Jeżeli strony mają zamiar ograniczenia dopuszczalnego zakresu korzystania z utworu, należy wskazać to w umowie.
Korzystanie z podwykonawcy przez developera
Umowa o stworzenie oprogramowania może przewidywać skorzystanie z usług podwykonawcy przez developera. W ten sposób wiele firm z branży IT zabezpiecza możliwość zagospodarowania części zasobów przy innych projektach. Jak w takiej sytuacji zabezpieczyć interes zamawiającego? Warto zadbać, aby umowa obligowała wykonawcę do:
- poinformowania klienta o planie przekazania prac lub ich części innemu podmiotowi oraz uzyskania pisemnej zgody w tym zakresie;
- wykazania kwalifikacji podwykonawcy, które odpowiadają założeniom przyjętym w umowie.
Strony mogą się także umówić, że przekazanie wykonawstwa może obejmować wyłącznie części oprogramowania inne niż kluczowe oraz, że wykonawca odpowiada za działania podmiotu trzeciego jak za własne.
Jak określić wynagrodzenie wykonawcy?
Wynagrodzenie wykonawcy może zostać określone na kilka różnych sposobów. Podstawowym modelem jest kwota określona ryczałtowo. Alternatywne rozwiązanie stanowi tzw. time & material, czyli rozliczenie według rzeczywiście przepracowanych godzin. Pierwsze rozwiązanie jest bardziej atrakcyjne dla zamawiającego, drugie dla wykonawcy.
Ustalając wysokość wynagrodzenia należy doprecyzować również ewentualną płatność za:
- naniesione poprawki;
- przeniesienie praw autorskich;
- implementację funkcjonalności nieujętych w harmonogramie prac.
Oprócz wysokości wynagrodzenia istotne znaczenie na też termin płatności oraz jej sposób. Zamiast wypłaty jednorazowej umowa może przewidywać wypłatę wynagrodzenia w transzach, np. po wdrożeniu każdego modułu CMS.
Procedura zmiany umowy
Przedsiębiorcy, który zamawia wykonanie aplikacji dopasowanej do swoich potrzeb, zwykle zależy, aby móc zacząć z niej korzystać w przewidywalnym terminie. Zachowaniu dynamiki prac sprzyja utrzymanie względnie liberalnej procedury zmiany umowy.
Skutecznym rozwiązaniem jest przeniesienie ciężaru decyzyjnego na kierowników niższego szczebla, podczas gdy kadra kierownicza decyduje o najważniejszych kwestiach, jak np.:
- limit budżetu;
- całkowity czas realizacji umowy;
- podwykonawstwo.
W umowie warto zastrzec, że formy pisemnej wymagają jedynie najważniejsze zagadnienia, podczas gdy – co do zasady – wystarczająca będzie wymiana nowych ustaleń drogą mailową. Dzięki temu strony eliminują ryzyko, że skomplikowany proces decyzyjny spowoduje nieplanowane opóźnienia.
Odbiór prac i zgłaszanie zastrzeżeń
Większość kontraktów z branży IT zawiera definicję wykonania projektu (ang. Definition of Done, DoD). Im jest ona bardziej precyzyjna, tym mniejsze ryzyko sporu co do tego, czy prace zostały wykonane w sposób prawidłowy. W jaki sposób może wyglądać przykładowy proces odbioru prac?
- Ukończenie określonego etapu projektu przez wykonawcę i poinformowanie o tym fakcie zamawiającego w sposób opisany w umowie (np. drogą mailową wraz z przesłaniem wersji testowej);
- Po otrzymaniu informacji wraz z załącznikiem zamawiający dysponuje określonym w umowie czasem na przeprowadzenie testów i zgłoszenie uwag (np. 7 dni);
- W razie braku uwag dany etap prac uważa się za zakończony;
- W przypadku uwag wykonawca ma obowiązek ich uwzględnienia w umownym terminie, chyba że uważa, że rezultat prac spełnia wymagania DoD.
Przy wdrażaniu programów takich, jak CMS, z reguły etapów odbioru prac jest kilka z uwagi na stopień rozbudowania software’u.
Jak skutecznie zabezpieczyć wykonanie umowy o stworzenie oprogramowania?
Praktyka pokazuje, że nawet 90% kontraktów IT nie jest realizowanych na czas (niekoniecznie z winy wykonawcy). Dla zamawiającego każde opóźnienie może oznaczać straty finansowe. Z kolei software house jest zmuszony angażować swoich pracowników do pracy nad projektem przez dłuższy czas, niż pierwotnie zakładał. W jaki sposób strony mogą zabezpieczyć swoje interesy? Wśród wielu różnych rozwiązań można wymienić m.in.:
- kary umowne;
- wstrzymanie wypłaty części wynagrodzenia;
- zadatek;
- odstąpienie od umowy;
- wykonanie zastępcze;
- potrącenie.
Każdy z tych środków ma w umowie swoje miejsce i chroni interesy strony w nieco innym zakresie.
Stworzenie oprogramowania klasy CSMS to wymagające zadanie. Niedociągnięcia mogą doprowadzić do tego, że zarządzanie zawartością witryny będzie nieintuicyjne lub możliwości w tym zakresie będą ograniczone, co może przełożyć się na wynik biznesowy przedsiębiorstwa. Aby zminimalizować ryzyko nieprzewidzianych komplikacji, sporządzenie takiego kontraktu IT warto zlecić doświadczonym specjalistom.Pytania i odpowiedzi
Najprostszym sposobem jest zawarcie umowy NDA zobowiązującej drugą stronę kontraktu do zachowania informacji w tajemnicy. Taka umowa powinna określać w szczególności – rodzaj informacji niejawnych i standardy ich ochrony, czas trwania zobowiązania oraz sankcje za jego naruszenie.
Nie ma takiej konieczności. Sąd Najwyższy zwrócił uwagę, że klauzula kary umownej nie musi określać maksymalnej wysokości zobowiązania (vide: uchwała SN z dnia 9 grudnia 2021 r., sygn. III CZP 16/21.
Zaufali nam: