
Kaynak kod mülkiyeti, özel yazılım projelerinde en az konuşulan ama en pahalıya mal olabilen konudur. Şirket yüz binlerce lira ödeyip bir sistem yaptırır, üç yıl sonra tedarikçiyle yolları ayrılmak ister ve o anda kodun kendisine ait olmadığını, hatta elinde bir kopyasının bile bulunmadığını öğrenir. Bu senaryo nadir değildir ve neredeyse her seferinde sözleşmedeki bir eksiklikten kaynaklanır.
Bu yazıda kaynak kod mülkiyetinin ne anlama geldiğini, sözleşmede hüküm yoksa kodun kime ait sayıldığını, mülkiyet ile lisans arasındaki farkı, sözleşmede mutlaka bulunması gereken maddeleri, üçüncü taraf bileşenlerin durumunu, verinin mülkiyetini ve kod tesliminin nasıl yapılması gerektiğini ele alacağız. Hukuki danışmanlık yerine geçmez; hukukçunuza götüreceğiniz soru listesini hazırlar.
Kaynak kod mülkiyeti ne demektir?
Kaynak kod mülkiyeti, yazılımın insan tarafından okunabilir kodu üzerindeki mali hakların, yani çoğaltma, değiştirme, dağıtma ve başka bir ekibe geliştirtme yetkisinin kime ait olduğunu ifade eder. Kod size aitse onu istediğiniz ekibe verebilir, değiştirebilir, başka bir sunucuya taşıyabilirsiniz; ait değilse bunların her biri için tedarikçinin iznine bağlısınız.
Yazılım, hukuken bir eser olarak korunur ve eser üzerindeki haklar, aksi kararlaştırılmadıkça onu yazana ait olma eğilimindedir. Bu, birçok şirket sahibinin sezgisiyle çelişir: 'parasını ödedim, benim' düşüncesi, yazılı bir devir olmadığında hukuken karşılık bulmayabilir. Türkiye'de fikri haklara ilişkin mevzuat, mali hakların devrinin yazılı yapılmasını arar; bu yüzden sözlü anlaşma ya da e-posta yazışması güvenli bir dayanak değildir.
Mülkiyetin bir de pratik boyutu vardır. Kod hukuken size ait olsa bile fiilen elinizde değilse, derleme ortamı ve belgeleri yoksa, kullanamazsınız. Bu yüzden sözleşmede mülkiyet maddesi kadar teslim maddesi de önemlidir.
Sözleşme yoksa kaynak kod kimin olur?
Sözleşmede açık bir hüküm yoksa kaynak kod üzerindeki mali haklar, genel eğilim olarak yazılımı geliştiren tarafta kalır ve müşteri yalnızca yazılımı kullanma hakkına sahip sayılabilir. Bu durum tedarikçiye göre değişmez; sözleşmenin sessiz kalması müşteri lehine yorumlanmaz. Kesin durum için hukuk danışmanına başvurulmalıdır.
Bu eğilimin pratik sonucu şudur: kodun size ait olmasını istiyorsanız bunu sözleşmeye açıkça, mali hakların devri biçiminde yazdırmanız gerekir. 'Yazılım müşteriye teslim edilir' gibi bir cümle yeterli değildir; çünkü teslim, mülkiyet devri anlamına gelmez. 'Çoğaltma, işleme, yayma ve umuma iletim dahil tüm mali haklar süresiz ve yer sınırı olmaksızın müşteriye devredilir' türünde bir ifade aranır.
Çalışan tarafından yazılan kodda ise durum farklıdır; iş ilişkisi içinde üretilen eserler, genellikle işverene ait sayılır. Ancak dışarıdan hizmet alınan geliştirici ya da yazılım şirketi bir çalışan değildir ve bu kural onlar için kendiliğinden işlemez. Serbest çalışanlarla yapılan işlerde bu ayrım özellikle atlanır.
Mülkiyet ile lisans arasındaki fark ne?
Mülkiyet, kodun tüm mali haklarının size geçmesidir; lisans ise kodun tedarikçide kalıp size belirli koşullarla kullanma izni verilmesidir. Lisans süreli ya da süresiz, münhasır ya da münhasır olmayan, değiştirme hakkı içeren ya da içermeyen olabilir. Sözleşmede hangisinin yazdığı, tedarikçi değiştirme özgürlüğünüzü belirler.
Her lisans kötü değildir. Tedarikçinin birçok müşteride kullandığı ortak bir altyapı ya da çekirdek kütüphane varsa bunun mülkiyetini devretmesi beklenemez; bu durumda çekirdek için süresiz, geri alınamaz ve değiştirme hakkı içeren bir lisans, size özel geliştirilen kısımlar için ise tam mülkiyet makul bir dengedir. Kritik olan bu ayrımın sözleşmede kalem kalem yazılmasıdır.
Tehlikeli olan, tüm yazılımın 'lisanslandığı' ve lisansın bakım sözleşmesine bağlandığı yapıdır. Bakım ödemesi kesildiğinde lisans da sona eriyorsa, yazılım fiilen kiralanmış demektir ve yıllarca ödenen geliştirme bedelinin karşılığında kalıcı bir varlık elde edilmemiştir.
Sözleşmede hangi maddeler bulunmalı?
Kaynak kod mülkiyetini güvence altına alan sözleşmede en az şu maddeler bulunmalıdır: mali hakların yazılı ve süresiz devri, hangi bileşenlerin devredilip hangilerinin lisanslandığının listesi, kodun ve belgelerin teslim biçimi ile zamanı, üçüncü taraf ve açık kaynak bileşenlerin lisans durumu, verinin mülkiyeti ve dışa aktarım hakkı, anlaşma sona erdiğinde teslim yükümlülüğü.
Devir maddesinin ödeme koşuluna bağlanması yaygındır ve makuldür: 'son ödeme tamamlandığında haklar devredilir' biçiminde bir hüküm iki tarafı da korur. Ancak devrin gerçekleşme anı ve bu andan önce müşterinin kodun bir kopyasına erişimi net yazılmalıdır. Proje uzarsa ya da anlaşmazlık çıkarsa, kodun tamamen tedarikçide durması müşteriyi pazarlık gücünden yoksun bırakır.
Teslim maddesi kodun 'çalışır halde' teslimini tanımlamalıdır: depo erişimi, derleme talimatı, ortam değişkenleri, veritabanı şeması ve kurulum belgeleri. Yalnızca kod dosyalarını sıkıştırılmış bir dosya olarak almak, çoğu zaman başka bir ekibin haftalarca uğraşması anlamına gelir.
Üçüncü taraf ve açık kaynak bileşenlerde durum ne?
Modern yazılımlar açık kaynak kütüphaneler ve üçüncü taraf servisler üzerine kurulur; bunların mülkiyeti size devredilemez, ancak lisansları yazılımı kullanmanıza, değiştirmenize ve ticari olarak işletmenize izin vermelidir. Sözleşmede tedarikçi, kullandığı bileşenlerin lisanslarının bu kullanıma uygun olduğunu taahhüt etmelidir.
Açık kaynak lisansları birbirinden farklıdır. Bazıları serbestçe ticari kullanıma izin verir, bazıları ise değiştirilmiş kodun da açık kaynak yapılmasını şart koşar. İkinci türden bir kütüphanenin sistemin kalbine girmesi, size özel yazılan kodun kamuya açılması gibi istenmeyen bir sonuç doğurabilir. Tedarikçiden kullanılan bileşenlerin ve lisanslarının listesini istemek, sözleşmenin ekine koymak yerinde bir adımdır.
Ücretli üçüncü taraf servislerde (SMS, ödeme, harita, e-fatura sağlayıcısı) hesabın kimin adına açıldığı da önemlidir. Bu hesaplar tedarikçi adına açılmışsa, ayrılık durumunda servisler kesilebilir. Hesapların müşteri adına açılması ve erişim bilgilerinin müşteride durması, sözleşmede ayrı bir madde olmalıdır.
Veri kimin olur ve nasıl alınır?
Yazılımın içinde biriken veri, tartışmasız müşteriye aittir; ancak sözleşme, verinin istenildiğinde standart ve okunabilir bir biçimde dışa aktarılacağını, tedarikçinin veriyi başka amaçla kullanmayacağını ve anlaşma sona erdiğinde tam bir kopyanın teslim edilip tedarikçi sistemlerinden silineceğini açıkça yazmalıdır.
Veri mülkiyeti, kaynak kod mülkiyetinden ayrı bir başlıktır ve bazen daha kritiktir. Kodunuzu yeniden yazdırabilirsiniz ama beş yıllık müşteri, sipariş ve tahsilat geçmişini yeniden üretemezsiniz. Verinin yalnızca uygulama ekranından değil, veritabanı yedeği ya da dışa aktarım dosyası olarak alınabilmesi sözleşmede yer almalıdır.
KVKK açısından veri işleyen ve veri sorumlusu rolleri de sözleşmede tanımlanmalıdır. Tedarikçi çoğu zaman veri işleyen konumundadır; bu, verinin nasıl saklandığı, kimin erişebildiği ve olay durumunda kimin bildirim yapacağı gibi yükümlülükleri beraberinde getirir.
Kod teslimi nasıl yapılmalı?
Kod teslimi, müşterinin kendi adına açılmış bir kod deposuna tam erişimle, derleme ve kurulum belgeleriyle, veritabanı şemasıyla ve çalışan bir test ortamıyla yapılmalıdır. Teslim, projenin sonunda tek seferlik bir olay değil, geliştirme boyunca süren bir erişim olmalıdır; kod her an müşterinin görebildiği bir yerde durmalıdır.
En sağlıklı düzen, kod deposunun projenin ilk gününden itibaren müşteri adına ya da müşterinin erişimi olan bir hesapta tutulmasıdır. Böylece teslim diye ayrı bir adım kalmaz; tedarikçi ayrıldığında erişim yalnızca kapatılır. Depoya ek olarak barındırma hesabı, alan adı ve üçüncü taraf servis hesaplarının da müşteri kontrolünde olması gerekir.
Teslim sırasında bir başka geliştiricinin kodu alıp çalıştırabildiğini doğrulamak yerinde bir kontroldür. Bir günlük bir 'devralma provası', teslimin gerçekten çalışır halde olup olmadığını gösterir ve eksik belgeleri tedarikçi hâlâ masadayken tamamlatır.
Rezon'da kaynak kod kime aittir?
Rezon, şirketlere özel CRM, ERP ve bayi portalı sistemleri kuran, kendi SaaS ürünlerini canlıda işleten İstanbul merkezli bir yazılım çözümleri şirketidir. Özel projelerde kaynak kod ve veri müşteriye aittir; bunu sözleşmede açık bir devir maddesi olarak yazar, kod deposunu müşterinin erişebildiği bir hesapta tutar ve üçüncü taraf hesaplarını müşteri adına açarız. Bakım anlaşması bitse bile yazılım çalışmaya devam eder; çünkü yazılım kiralanmış değil, satın alınmıştır.
Bu yaklaşımı benimsememizin nedeni basit: sizi elimizde tutmanın yolu kodu rehin almak değil, iyi iş çıkarmak olmalı. Çözümler sayfamızdaki özel yazılım bölümünde sözleşme yaklaşımımızı görebilir, iletişim sayfamızdan mevcut bir sözleşmenizle ilgili sorularınızı iletebilirsiniz; hukuki görüş vermeyiz ama hukukçunuza götüreceğiniz teknik soruları netleştirebiliriz.
Sık sorulan sorular
+Parasını ödediğim yazılımın kodu otomatik olarak benim olmaz mı?
Kendiliğinden olmayabilir. Mali hakların devri yazılı sözleşmede açıkça yer almalıdır; kesin durum için hukuk danışmanınıza başvurun.
+Mülkiyet ile lisans arasında ne fark var?
Mülkiyette haklar size geçer; lisansta kod tedarikçide kalır ve size kullanım izni verilir. Lisansın süresiz ve geri alınamaz olup olmadığı belirleyicidir.
+Tedarikçinin ortak altyapısı da bana devredilmeli mi?
Genellikle devredilmez, bunun yerine süresiz ve değiştirme hakkı içeren bir lisans verilir. Size özel yazılan kısımlar ise tam mülkiyetle devredilmelidir.
+Kod teslimi nasıl olmalı?
Müşteri adına açılmış kod deposuna tam erişim, derleme ve kurulum belgeleri, veritabanı şeması ve çalışan test ortamıyla. En iyisi deponun ilk günden müşteri erişiminde olmasıdır.
+Veri mülkiyeti ayrıca yazılmalı mı?
Evet. Verinin size ait olduğu, standart biçimde dışa aktarılabileceği ve anlaşma bitince teslim edilip tedarikçide silineceği ayrı bir madde olmalıdır.
