← Hizmetler Devralma & Kurtarma

Yarım Kalan Yazılım Projesini Devralma

Yazılımcın ortadan kayboldu, ajans işi teslim etmedi ya da proje aylardır aynı yerde duruyor. Bu noktadaki en pahalı karar, aceleyle yeni birine "bitir şunu" demek. Yarım kalan yazılım projesini devralmadan önce yapılması gereken şey, elindekinin gerçekten ne olduğunu bilmek. Biz de tam olarak oradan başlıyoruz.

Nasıl İlerliyoruz

Teşhis

Kod, veritabanı ve altyapı incelenir; ne var, ne çalışıyor, ne eksik.

Karar

Devralmak mı, kısmen yeniden yazmak mı, baştan başlamak mı — gerekçesiyle.

Devir

Sunucu, kod deposu ve mağaza hesapları senin adına taşınır.

Tamamlama

Eksikler kapatılır, yayına çıkılır, sonrasında bakım sürer.

Önce Teşhis, Sonra Teklif

Devralma işlerinde bir firmanın kodu görmeden fiyat vermesi kötü bir işarettir. Elindeki proje iki uçtan birinde olabilir: makul kurulmuş, okunabilir ve eksikleri belli bir kod tabanı; ya da dağınık, belgesiz, kimsenin dokunmaya cesaret edemediği bir yığın. İkisinin maliyeti arasında kat farkı var.

Bu yüzden işe kısa bir inceleme ile başlıyoruz. Sonunda sana yazılı bir teşhis veriyoruz: hangi kısımlar çalışıyor, hangileri yarım, mimari sağlıklı mı, güvenlik açısından acil bir şey var mı ve tamamlamak için gerçekçi olarak ne kadar iş kaldı.

Bu incelemenin sonucu bazen "devralalım" olur, bazen "bu kodu kurtarmak baştan yazmaktan pahalıya gelir" olur. İkincisini söylemek işimizi kaybettirse de söylüyoruz — çünkü kurtarılamaz bir kodu devralmak iki tarafı da altı ay sonra aynı yere getiriyor.

En Sık Karşılaştığımız Beş Durum

Hesaplar sende değil. Sunucu, alan adı, mağaza hesabı ya da kod deposu eski geliştiricinin adına açılmış. Teknik olarak çözülebilir ama önce fark edilmesi gerekiyor — çoğu işletme bunu ancak geliştiriciyle yolları ayrılınca öğreniyor.

Kaynak kod yok, sadece çalışan sistem var. Bu durumda yazılımı kullanabilir ama geliştiremezsin. Sözleşmende kaynak kod devri yazıyorsa talep hakkın var; yazmıyorsa hukuki tarafı tartışmalı ve bir avukata danışman gerekir.

Yüzde 80 bitmiş görünüyor ama son yüzde 20 yok. Devralma projelerinin klasiği. Ekranlar duruyor, akış tamamlanmamış. Genelde kalan işin büyüklüğü sanıldığından fazla oluyor çünkü zor kısımlar sona bırakılmış.

Belge yok. Kimse neyin neden öyle yapıldığını bilmiyor. Devralma süresinin önemli bir kısmı bunu çözmeye gidiyor; bu yüzden analiz aşamasını atlamıyoruz.

Güvenlik ve veri riski. Açıkta kalmış anahtar, korumasız uç nokta ya da KVKK açısından sorunlu veri saklama. Devralırken ilk baktığımız yerlerden biri.

Devralmak mı, Baştan Yazmak mı?

Bu kararı duyguyla değil üç kriterle veriyoruz.

Kod okunabilir mi? Bir geliştirici makul sürede ne olduğunu anlayabiliyorsa devralmak mantıklı. Her değişiklik arkeolojik kazıya dönüşüyorsa değil.

Veri modeli sağlam mı? Arayüz kötüyse yeniden yazılır, bu ucuzdur. Ama veri modeli yanlış kurulmuşsa üstüne inşa edilen her şey de yanlış olur; bu durumda devralmak borç almaktır.

Ne kadarı gerçekten bitmiş? "Bitti" denen kısımların gerçekten çalışıp çalışmadığını test ederiz. Genelde tablo iddia edilenden daha az iyimser çıkar.

Üçünde de yanıt olumluysa devralmak ciddi tasarruf sağlar. İkisi olumsuzsa dürüst olan, seçici bir yeniden yazım önermek — çalışan parçaları korumak, sorunlu çekirdeği değiştirmek.

Devir Sonrası: Bir Daha Aynı Yere Düşmemek

Projeyi devralmak yarısı; ikinci yarısı aynı durumun tekrarlanmaması. Bunun için baştan üç şeyi kuruyoruz: tüm hesaplar senin adına, kod deposu senin erişiminde ve temel bir belgelendirme.

Böylece yarın bizimle çalışmayı bıraksan bile projeni başka bir ekibe sorunsuz devredebilirsin. Müşteriyi teknik bağımlılıkla tutmak kısa vadede işe yarayan ama uzun vadede itibar bitiren bir yöntem; biz o tarafta durmuyoruz.

Devralınan projelerin çoğu sonrasında düzenli bir bakım ve destek ilişkisine dönüşüyor — ki bu ikisi için de daha sağlıklı bir düzen.

Nasıl Çalışırız

01
İnceleme
Kod, veri ve altyapı gözden geçirilir.
02
Teşhis
Yazılı durum raporu ve gerçekçi iş tahmini.
03
Devir
Hesaplar ve erişimler senin adına taşınır.
04
Tamamlama
Eksikler kapatılır, yayına çıkılır, bakım başlar.

Neden Bağımsız Bir Stüdyo?

Devralma işleri büyük ajanslar için cazip değildir — belirsizdir, standart bir sürece oturmaz ve satış tarafında hikâyesi zayıftır. Tek freelancer'lar ise çoğu zaman devralmaktansa baştan yazmayı tercih eder, çünkü başkasının kodunu okumak zor iştir.

Bağımsız stüdyo bu iki uç arasındaki yer: doğrudan konuşursun, işi aynı ekip sahiplenir ve kararı ticari kaygıyla değil teknik gerçeklikle veririz. Yayındaki işlerimiz ne tür sistemlere hâkim olduğumuzu gösteriyor.

Sık Sorulanlar

Başkasının yazdığı yazılımı devralıyor musunuz?

Evet, düzenli olarak yapıyoruz. Ama önce kodu inceleyip kurtarılabilir mi yoksa baştan yazmak mı daha ucuz, onu açıkça söylüyoruz. İkisi de olabilir ve ikisini de dürüstçe söylemek işimizin parçası.

Kaynak koda erişimim yok, ne yapmalıyım?

Kaynak kod olmadan yazılım geliştirilemez, sadece kullanılabilir. Sözleşmende kaynak kodun devri yazıyorsa hukuki olarak talep hakkın var. Yazmıyorsa durum tartışmalı; bu noktada bir avukatla konuşman gerekir, biz hukuki tavsiye vermiyoruz.

Devralma analizi ne kadar sürer?

Kodun boyutuna göre değişmekle birlikte genelde birkaç gün. Sonunda ne var, ne çalışıyor, ne eksik ve ne kadar iş kaldığını yazılı olarak veririz.

Devralmak baştan yazmaktan ucuz mu?

Her zaman değil. Kod okunabilir ve mimari makulse devralmak ciddi tasarruf sağlar. Kod dağınıksa, belgesizse ve testi yoksa devralmak bazen daha pahalıya gelir. Analiz tam da bunu ölçmek için var.

Eski geliştiriciyle görüşmemiz gerekir mi?

Gerekmez. İdeal durumda kısa bir devir görüşmesi işi hızlandırır ama çoğu projede bu mümkün olmuyor ve biz de buna göre çalışıyoruz.

Yarısı bitmiş projeyi tamamlar mısınız yoksa sadece bakım mı yaparsınız?

İkisini de yapıyoruz. Tamamlayıp yayına çıkarabilir, sonrasında bakımını sürdürebilir ya da sadece ayakta tutma sorumluluğunu alabiliriz.

Mevcut sunucu ve hesaplar ne olacak?

Hepsini senin adına taşırız. Devralma projelerinde en sık gördüğümüz sorun, sunucunun ve mağaza hesaplarının eski geliştiricinin adına açılmış olması; ilk düzelttiğimiz şey bu oluyor.

Eski uygulamamı yenilemek de bu kapsamda mı?

Evet. Çalışan ama eskimiş bir uygulamanın modernizasyonu da benzer bir süreçle ilerliyor: önce mevcut durumun analizi, sonra kademeli yenileme.

Elindeki projeye birlikte bakalım

Ne zaman durdu, elinde kod var mı, hangi teknolojiyle yazılmış — birkaç cümle yeter; dürüst bir teşhisle dönelim.

Teklif Al →