IT i Tech

Izrada ugovora o razvoju softvera: Zaštita intelektualne svojine i klauzule od esencijalnog značaja

Koje klauzule svaki ugovor o razvoju softvera mora imati? Vodič kroz zaštitu IP prava, vlasništvo nad kodom i rešavanje sporova za naručioce i developere.

Ugovor o razvoju softvera je možda najvažniji dokument koji potpisujete kada angažujete programerski tim ili kada primate angažman kao razvojni tim. Ipak, u praksi se često potpisuju previše kratki, nejasni sporazumi koji naknadno postaju izvor skupih sporova — posebno kada odnos između naručioca i izvršioca postane napet.

Ovaj tekst je informativnog karaktera i ne zamenjuje individualni pravni savet.


Zašto su ugovori o razvoju softvera specifični?

Za razliku od ugovora o isporuci fizičkih dobara, razvoj softvera je kreativni, iterativni i nematerijalan proces. Rezultat rada — izvorni kod, dokumentacija, dizajn — spada u sferu intelektualne svojine (IP, intellectual property). Opšte pravilo autorskog prava je da autorsko pravo pripada autoru, a ne naručiocu rada. Srpski Zakon o autorskom i srodnim pravima, međutim, sadrži posebno pravilo za računarske programe stvorene po narudžbini: naručilac stiče prava iskorišćavanja programa, osim ako ugovorom nije drugačije određeno, dok moralna prava ostaju autoru. Uporednopravna rešenja se pritom razlikuju — u mnogim jurisdikcijama autorska prava na naručenom softveru ostaju kod developera ako ugovor ne predviđa prenos — pa se na zakonska podrazumevana pravila ne treba oslanjati bez izričite ugovorne klauzule, naročito u prekograničnim angažmanima.

Bez eksplicitne klauzule o prenosu prava ili ustupanju licence u ugovoru, obim ovlašćenja naručioca da slobodno koristi, menja ili dalje licencira softver koji je finansirao ostaje predmet tumačenja — što je čest izvor sporova.


Definisanje obima posla (Scope of Work)

Osnova svakog ugovora o razvoju je precizna specifikacija šta se isporučuje. Nebulozne formulacije poput „razvoj web aplikacije” mogu dovesti do beskonačnih sporova o tome da li je određena funkcionalnost bila uključena u dogovorenu cenu.

Kvalitetna specifikacija obima posla treba da obuhvati: listu funkcionalnosti (feature list) sa opisom korisničkih priča (user stories) ili tehničkih zahteva, tehničke specifikacije (tehnološki stack, integrisane sisteme trećih strana, performansne zahteve), definiciju kriterijuma prihvatanja (acceptance criteria) za svaku isporučenu celinu, i vremenski okvir sa milestones.

Ugovor treba da sadrži i jasan change management proces — proceduru kojom se naknadno dogovaraju izmene obima posla, uvek u pisanoj formi i uz dogovor o uticaju na cenu i rokove.


Vlasništvo nad izvornim kodom i prenos IP prava

Ovo je najkritičnija klauzula u svakom ugovoru o razvoju softvera. Postoje dva osnovna modela:

Prenos autorskih prava (assignment): Sva imovinska autorska prava na kodu koji nastane tokom angažmana prenose se sa izvršioca na naručioca po isplati naknade. Ovo je model koji naručioci najčešće žele. Klauzula mora biti eksplicitna, jer se autorski ugovori, kojima se vrši prenos imovinskih autorskih prava, prema srpskom Zakonu o autorskom i srodnim pravima po pravilu zaključuju u pisanoj formi.

Licenciranje: Umesto prenosa vlasništva, naručilac dobija licencu za korišćenje softvera. Licenca može biti ekskluzivna ili neekskluzivna, vremenski ograničena ili neograničena, teritorijalno ograničena ili globalna. Ovo je često model koji IT agencije preferiraju, jer zadržavaju vlasništvo nad kodom koji mogu ponovo koristiti.

Posebno pitanje je tretman unapred postojećeg koda (pre-existing IP) — biblioteke, moduli ili komponente koje developer unosi u projekat, a koje su nastale pre angažmana. Ove komponente treba eksplicitno izlistati u ugovoru i regulisati licencu kojom se naručiocu dopušta korišćenje u okviru isporučenog softvera.

Treba razmotriti i open-source komponente: ako softver koristi biblioteke pod GPL (GNU General Public License) licencom, to može imati implikacije na mogućnost komercijalne distribucije krajnjeg proizvoda.


Poverljivost i ne-otkrivanje (NDA)

Ugovor o razvoju softvera gotovo uvek treba da sadrži odredbe o poverljivosti, ili se uz njega potpisuje poseban NDA (Non-Disclosure Agreement, ugovor o poverljivosti). Naručilac otkriva poslovne tajne, poslovne planove, baze korisnika i tehničke arhitekture izvršiocu tokom saradnje. Izvršilac sa druge strane može imati poverljive tehničke procese i metodologije.

Klauzula poverljivosti treba da definiše: šta se smatra poverljivim informacijama, koje informacije su izuzete (opštepoznate informacije, informacije dobijene od trećih strana), ko ima pristup poverljivim informacijama (subugovarači, zaposleni), trajanje obaveze poverljivosti i posledice kršenja.


Garancije, odgovornost i klauzule o ograničenju odgovornosti

Ugovor treba da reguliše:

Garanciju ispravnosti: Period u kome se izvršilac obavezuje da besplatno ispravi greške u isporučenom softveru. Uobičajeni period se kreće od 30 dana do 12 meseci od primopredaje, zavisno od obima i složenosti projekta.

Ograničenje odgovornosti: Gotovo svaki profesionalni ugovor o razvoju softvera sadrži klauzulu kojom se ograničava maksimalna odgovornost izvršioca na vrednost ugovora ili određeni višekratnik mesečne naknade. Bez ove klauzule, izvršilac bi bio izložen potencijalno neograničenoj odgovornosti za posledične štete.

Odgovornost za povredu prava trećih strana: Izvršilac treba da garantuje da isporučeni kod ne krši prava intelektualne svojine trećih lica, i da će braniti naručioca od zahteva trećih strana koji iz toga proisteknu.


Česta pitanja (Q&A)

Može li developer zadržati pravo na portfolio prikaz koda koji je razvio? Da, ukoliko je to eksplicitno dogovoreno. Tipično rešenje je da developer može pomenuti projekat u portfoliju, ali ne sme objaviti sam kod ako je klasifikovan kao poverljiv. Ovo treba regulisati posebnom odredbom.

Šta se dešava sa pravima na softver ako ugovor bude raskinut pre završetka? Ovo je pitanje koje se mora eksplicitno regulisati. Uobičajen pristup je da naručilac dobija prava nad isporučenim deliverables-ima koji su plaćeni, dok neoplaćeni rad ostaje vlasništvo izvršioca.

Da li je dovoljno potpisati ponudu ili predračun kao ugovor? Ponuda ili predračun nisu zamena za ugovor. Oni regulišu cenu i opisuju uslugu, ali gotovo nikada ne sadrže odredbe o IP pravima, poverljivosti, garancijama i ograničenjima odgovornosti. U slučaju spora, to ostavlja obe strane bez jasnog pravnog okvira.

Šta je klauzula o nekonkurenciji i da li je legalna? Klauzula kojom se developer obavezuje da u određenom vremenskom periodu neće raditi za direktne konkurente naručioca je legalna, ali mora biti razumno ograničena po trajanju i geografskom opsegu da bi bila primenljiva. Preširoke klauzule sudovi mogu proglasiti ništavima.


Zaključak

Ugovor o razvoju softvera je dokument koji štiti obe strane. Naručioci bez jasnog IP sporazuma rizikuju neizvesnost u pogledu obima prava nad proizvodom koji su finansirali. Developeri bez klauzule o ograničenju odgovornosti izloženi su nesrazmernim rizicima.

Ulaganje u kvalitetno izrađen ugovor pre nego što počne razvoj višestruko se isplati u odnosu na troškove eventualnog spora.

Zakaži konsultaciju sa našim timom — izrađujemo prilagođene ugovore o razvoju softvera za naručioce i IT firme.


Izvori

Sadržaj sajta je informativnog karaktera i ne predstavlja pravni savet. Za konkretne pravne savete obratite se direktno advokatu. Kancelarija posluje u skladu sa Zakonom o advokaturi i Kodeksom profesionalne etike advokata.

Scroll to Top