Size daha iyi bir deneyim sunmak için çerez kullanıyoruz. Yalnızca zorunlu çerezler her zaman aktiftir. Analitik ve pazarlama çerezleri seçeneğinizi bekliyor.Analitik ve pazarlama çerezleri için onayınızı istiyoruz.
Yazılım Devralma ve Kurtarma: Kanıta Dayalı Analiz
Yazılımcısına artık ulaşılamayan, kaynak kodu eksik ya da hiç dokümantasyonu olmayan bir programa bağımlı çalışıyorsanız; o sistemi devralır, nasıl çalıştığını kanıta dayalı olarak çıkarır ve yeniden yaşatılabilir hâle getiririz. Yazılım devralma için bu sayfayı hazırlayan Pan Innovation House, Gaziantep merkezli bir yazılım şirketidir; mevcut ERP'nin yanında çalışan işletmeye özel yazılım geliştirir.
Hazırlayan: Pan Innovation House, Gaziantep merkezli yazılım şirketi · Son gözden geçirme:
Fiyatı mı soracaksınız? Kapsamı kısa bir görüşmede dinler, bütçe çerçevesini ve süreyi yazılı olarak paylaşırız. Tüm yazılım türleri
Türkiye'de üretim yapan pek çok işletme, on beş yirmi yıl önce tek bir yazılımcıya yazdırdığı özel bir programla çalışmaya devam ediyor. Sistem çalıştığı sürece sorun görünmez; ancak yazılımcı emekli olduğunda, iletişim koptuğunda ya da ilişki bozulduğunda ortaya çıkan tablo aynıdır: kaynak kod ya yoktur ya eksiktir, kimse programın içinde hangi hesabın nasıl yapıldığını bilmemektedir, yeni bir özellik eklenemez ve küçük bir hata bile üretimi durdurma riski taşır.
Bu durum bir yazılım geliştirme problemi değil, bir arkeoloji problemidir. Yeni bir program yazmak, çalışan sistemin yerini alacak doğru davranışın ne olduğunu bilmeden mümkün değildir; o davranış da yazılı hiçbir yerde durmaz, yalnızca çalışan kodun ve veritabanının içinde yaşar. Dolayısıyla işin ilk adımı kod yazmak değil, kanıt toplamaktır: derlenmiş uygulamadan iş mantığının çıkarılması, veritabanındaki nesnelerin haritalanması ve hangi bilginin kesin, hangisinin çıkarım olduğunun açıkça ayrılması.
Devralma çalışmalarında yöntemimiz şudur: derlenmiş uygulamayı ve veritabanını yalnız yazılımın haklarına sahip olduğunuzu ya da hak sahibinden yazılı izin aldığınızı belgelediğiniz durumda inceleriz. Çıkan her bulgu kanıt seviyesine göre etiketlenir: koddan doğrudan okunan bilgi doğrulanmış, birden çok bağımsız dolaylı izin kesişiminden gelen bilgi olası, kaynağı yetersiz olan bilgi ise doğrulanmamış olarak işaretlenir. Doğrulanmamış bir bulgu, doğrulanmış gibi devredilmez. Bir sistemi devralırken en tehlikeli şey, tahmini kesin bilgiymiş gibi devretmektir; yöntemimizin merkezinde bu ayrım vardır.
Kimler için?
Yazılım Devralma ve Kurtarma kimler için uygun?
Yazılımcısına ulaşılamayan fabrikalar
Üretim, kesim, sipariş veya hakediş takibi tek kişinin yazdığı bir programla yürüyen ve o kişiye artık ulaşılamayan işletmeler. Sistem hâlâ çalışıyor olabilir; ama değiştirilemiyor, taşınamıyor ve arızalandığında müdahale edecek kimse yok.
Tedarikçisiyle yolları ayrılan işletmeler
Yazılım firmasıyla ticari ilişkisi biten ya da hizmet kalitesinden memnun olmayan şirketler. Devir sürecinde kaynak kodun eksiksiz teslim edilip edilmediğini doğrular, sistemi bağımsız olarak ayağa kaldırabildiğimizi göstererek geçişi güvenli hâle getiririz.
Anahtar kişi bağımlılığı taşıyan şirketler
Kritik sistemi tek bir çalışanın veya danışmanın taşıdığı işletmeler. Bu kişi ayrılmadan önce bilgiyi kuruma aktarmak, ayrıldıktan sonra çıkarmaya çalışmaktan çok daha ucuzdur; devir dosyası bu bağımlılığı ölçülebilir biçimde azaltır.
Devralma ve yatırım öncesi inceleme yapanlar
Bir şirketi, bölümü veya yazılım varlığını satın almadan önce teknik durumunu bağımsız olarak görmek isteyenler ile ikinci kuşağa geçen aile şirketleri. Neyin devralındığını, hangi riskin taşındığını ve devamlılığın neye bağlı olduğunu yazılı hâle getiririz.
Ne geliştiriyoruz?
Yazılım Devralma ve Kurtarma kapsamında neler yapıyoruz
Modülün yetenekleri ve karşılığı
Yetenek
Ne sağlar
Çalışan sistemden iş kuralı çıkarma
Derlenmiş uygulamanın çözümlenmesi, ekran ve menü hiyerarşisinin yeniden kurulması, hangi ekranın hangi tabloya dokunduğunun ve hesapların hangi sırayla yapıldığının çıkarılması. Sonuç, programın ne yaptığını anlatan okunabilir bir iş kuralı haritasıdır.
Kayıp veritabanı nesnelerinin yeniden kurulması
Kaynağı bulunamayan saklı yordam, fonksiyon ve görünümlerin; çağrıldıkları yerlerden, aldıkları parametrelerden ve ürettikleri sonuçlardan yola çıkarak yeniden yazılması. Her nesne için sözleşme ile gövde ayrı ayrı ele alınır; çıkan sonuç canlı veriden alınmış kopya üzerinde mevcut çıktılarla karşılaştırılır, doğrulanamayan nesne raporda doğrulanmamış olarak işaretlenir.
Çalışır derleme ortamının yeniden kurulması
Bağımlılıkların, lisansların ve yapılandırmanın tespiti; projenin sıfırdan derlenip çalıştırılabildiği bir ortamın kurulması. Bu adım tamamlanmadan devir tamamlanmış sayılmaz; değiştiremediğiniz bir yazılıma fiilen bağımlı kalırsınız.
Kanıt seviyeli devir raporu
Her bulgunun kaynağıyla birlikte etiketlendiği bir rapor: koddan doğrudan okunan kesin bilgi, birden çok dolaylı bulgunun kesişiminden gelen olasılık ve kaynağı yetersiz olduğu için doğrulanamayan alanlar ayrı ayrı gösterilir. Böylece neyi bildiğiniz kadar neyi bilmediğinizi de bilirsiniz.
Acil müdahale ve sistemi ayakta tutma
Devir süreci boyunca sistemin çalışmaya devam etmesi: kritik hataların kapatılması, yedekleme ve geri dönüş provası, üretimi durduran arızalara öncelikli müdahale. Analiz sürerken işletme durmaz.
Kademeli modernizasyon ve paralel koşma
Karar yeniden yazma yönünde çıkarsa, eski ve yeni sistem bir süre yan yana çalıştırılır; aynı girdiyle üretilen çıktılar birebir eşleşene kadar geçiş tamamlanmış sayılmaz. Tek seferde kapatma yerine, geri dönüşü mümkün bir geçiş kurgularız.
Karar rehberi
Yazılımcısına ulaşılamayan programınız için hangi yol size uygun?
Yazılımcısına ulaşılamayan ya da desteği biten her program için devralma gerekmez. Eski yazılımcıya veya firmaya hâlâ ulaşılabiliyorsa genellikle ilk denenecek yol onlarla anlaşmaktır; programın yaptığı iş standartsa hazır bir pakete geçmek de mantıklı olabilir. Aşağıdaki ilk tablo dört yolu, hangi durumda yettiğini ve nerede zorlandığını yan yana koyar. İlk görüşmede aynı soruları sorar, devralmanın gerekmediği yerde bunu açıkça söyleriz.
Dört yol, dört farklı durum
Seçimi en çok üç soru belirler: elinizde ne var (hak sahipliği belgeleri, kaynak kod, veri tabanı), program işinize ne kadar özgü ve sistemin daha ne kadar yaşaması gerekiyor.
Yol
Ne zaman yeterli
Nerede zorlanır
Maliyet yapısı
Eski yazılımcı ya da firmayla anlaşmak
Karşı tarafa hâlâ ulaşılabiliyor; kaynak kodun, derleme ortamının ve belgelerin teslimine ya da desteğin sürmesine açık. Sistemin yalnız kısa bir süre daha ayakta kalması gerekiyorsa süren destek tek başına yetebilir.
Yazılımcı emekli olmuş, firma kapanmış ya da ilişki bozulmuşsa yürümez. Teslim edilen kaynağın eksiksiz olduğu ve derlenebildiği ayrıca doğrulanmadıkça bağımlılık sürer. Kaynak kodu teslim almak, hakların da devredildiği anlamına gelmeyebilir; anlaşmanın kaynak kodla birlikte hangi hakları kapsadığını yazılı hâle getirin, kapsamı bir avukatla netleştirmenizi öneririz.
Karşı tarafla yapılacak anlaşmaya bağlıdır: devir bedeli ya da süren destek ücreti. Teslimin eksiksizliğini bağımsız bir gözle doğrulatmak ayrı bir kalemdir.
Devralma: kanıt seviyeli analiz ve devir
Program işinizi hâlâ doğru yürütüyor, içindeki kurallar yıllar içinde birikmiş ve hiçbir yerde yazılı değil, sistemin daha uzun süre ayakta kalması gerekiyor; yazılımın hak sahibi olduğunuzu ya da hak sahibinden yazılı izin aldığınızı belgeleyebiliyorsunuz.
Programın kurallarından ne kadarının çıkarılabileceği ancak ilk aşamanın sonunda bilinir. Hak sahipliği ya da yazılı izin belgelenemiyorsa bu yol açılmaz.
Her biri ayrı fiyatlanan, sabit kapsamlı aşamalar; ardından isteğe bağlı bakım sözleşmesi.
Baştan yazma
Program artık işinizi karşılamıyor, altındaki teknoloji desteklenmiyor ya da süreçleriniz baştan tanımlanacak kadar değişti; yeni sistemin uzun yıllar büyüyerek yaşaması bekleniyor.
Eski programın yaptıkları tam olarak görülmeden yazılan yeni sistem bazı işleri atlayabilir; yazılı olmayan kurallar ancak canlıya geçişte su yüzüne çıkabilir. Geçiş boyunca eski sistemin ayakta kalması gerekir.
Proje bedeli, eski sistemden veri göçü, geçiş boyunca eski sistemin ayakta tutulması ve bakım sözleşmesi. Eski sistemin analizi atlanırsa bunun maliyeti sonradan değişiklik talebi olarak geri gelebilir.
Hazır pakete geçiş
Programın yaptığı iş sektörünüzde standart; süreci pakete uyarlamaya razısınız ve hızlı başlamak öncelikli.
Size özgü hesaplar, raporlar ve onay akışları pakete sığmayınca uyarlama gerekir; neyin standart geldiği ürüne ve sürüme göre değişir, bunu üreticinize sorun. Eski veriyi pakete taşımak ayrı bir iştir.
Lisans ya da abonelik; kalıcı lisansta varsa yıllık bakım ve güncelleme bedeli; kurulum ve uyarlama; üstüne veri göçü. Kalemler ürüne ve lisans modeline göre değişir; güncel koşulları üreticinize sorun.
Devralma ve baştan yazma yollarının ikisinde de şu kural geçerlidir: Bizim yazdığımız kaynak kod ve verileriniz sözleşmede tanımlandığı biçimde size devredilir; üçüncü taraf ve açık kaynak bileşenler kendi lisanslarına tabidir. Devralınan programın kendisi üzerindeki haklarınız mevcut hak durumunuza bağlıdır; inceleme bu durumu değiştirmez.
Yazılımcınıza ulaşılamıyorsa: ilk 48 saatte yapılacaklar
Karar vermeden önce kaybı durdurmak gerekir. Bu adımlar için bize ya da başka bir ekibe bağlı olmanız gerekmez; her biri sonraki her yolu kolaylaştırır.
Adım
Neden
Dikkat
Veri tabanının yedeğini alın ve açılabildiğini deneyin
Program bozulsa bile işinizin kaydı veridedir.
Yedeği programın çalıştığı makineden ayrı bir yerde saklayın; açılıp açılmadığını ayrı bir ortamda deneyin.
Erişimlerin listesini çıkarın
Sunucu, veri tabanı, alan adı, barındırma, e-posta ve uzak erişim hesaplarının kimde ve kimin adına olduğu belirsizse küçük bir arızaya bile müdahale edilemez.
Şifreleri değiştirmeden önce programın bu hesaplara bağlı çalışıp çalışmadığını kontrol edin; aksi hâlde program durabilir.
Sözleşme ve hak sahipliği belgelerini bulun
Kaynak kod ya da derlenmiş program üzerinde çalışmanın ön koşuludur.
Belge yoksa durumu bir avukatla netleştirin; biz hukuki görüş vermeyiz.
Eski yazılımcıya yazılı olarak ulaşmayı deneyin
Kaynak kodun, derleme ortamının ve belgelerin teslimi en kısa yol olabilir.
Talebinizi ve cevabı yazılı tutun; teslim edilen her şeyi listeleyin.
Değişikliği dondurun, hataları not edin
Bilinmeyen bir sistemde yapılan her değişiklik riski büyütür.
Kullanıcılardan hatanın ekranını, tarihini ve ne yapılırken çıktığını not etmelerini isteyin; bu notlar analizde kullanılır.
Bu sayfa size özel yazılmış programlar içindir. Logo, Netsis, Mikro gibi paket programların lisans, sürüm yükseltme ve resmî destek işleri ürünün yetkili iş ortakları üzerinden yürür.
Devralma öncesi kontrol listesi
Hak sahipliği belgeleri ilk aşama başlamadan önce gerekir. Diğer kalemlerin hiçbiri tek başına işi durdurmaz; ama her biri kapsamı, süreyi ve neyin kesin olarak çıkarılabileceğini doğrudan etkiler. Bunlardaki eksiklerin envanterini ilk aşamada birlikte çıkarırız.
Kalem
Neye bakılır
Neden önemli
Eksikse ne olur
Hak sahipliği belgeleri
Yazılımı yaptırırken imzalanan sözleşme ve varsa mali hakların devrine ilişkin hükümler; hak sahibi başkasıysa onun yazılı izni. Fatura ve yazışmalar destekleyici belgelerdir; hak sahipliği için yeterli olup olmadıklarını avukatınız değerlendirir.
Derlenmiş programı ve veri tabanını incelemenin ön koşuludur; bu yüzden ilk aşamadan önce istenir.
Çalışma başlamaz. Belge bulunamıyorsa durumu bir avukatla netleştirmeniz gerekir; biz hukuki görüş vermeyiz.
Kaynak kod ve derleme ortamı
Kaynak kodun son hâli ya da elde kalan parçaları, kullanılan geliştirme aracı ve sürümü, üçüncü taraf bileşenler ve lisansları, kurulum dosyaları.
Değiştiremediğiniz bir yazılıma fiilen bağımlı kalırsınız; devir ancak proje sıfırdan derlenip çalıştırılabildiğinde tamamlanmış sayılır. Elinizdeki kodun canlıda çalışan sürümle aynı olup olmadığı ayrıca karşılaştırılır; birebir doğrulanamayan farklar raporda belirtilir.
İş mantığı derlenmiş uygulamadan çıkarılmaya çalışılır; ne kadarının çıkarılabileceği programın yazıldığı dile, derleme biçimine ve kodun gizlenip gizlenmediğine bağlıdır. Bu yol daha uzun sürer ve bazı bilgiler geri getirilemeyebilir. Eski bileşenlerin lisansı ya da kurulumu bulunamazsa yerlerine ne konacağı ayrıca planlanır.
Veri tabanı yedeği ve şeması
Güncel ve geri yüklenerek denenmiş bir yedek; tablolar, saklı yordamlar, fonksiyonlar ve görünümler. Zamanlanmış işler, oturum açma hesapları ve bağlı sunucular gibi sunucu düzeyindeki ayarlar birçok veri tabanı sisteminde (ör. SQL Server'da) bu yedeğe girmez; ayrıca dışa aktarılmaları gerekir.
Programın kurallarının bir kısmı veri tabanı nesnelerinde yaşayabilir. Analiz, canlı sisteme dokunmadan bu yedeğin kopyası üzerinde yürütülür.
Önce yedekleme ve geri dönüş güvence altına alınır. Kaynağı bulunamayan nesneler, çağrıldıkları yerlerden yola çıkılarak yeniden kurulmaya çalışılır; sonuçları, canlı veriden alınmış kopya üzerinde mevcut çıktılarla karşılaştırılır. Doğrulanamayanlar raporda doğrulanmamış olarak işaretlenir.
Sunucu ve lisans erişimleri
Sunucu ve veri tabanı yönetici hesapları, alan adı ve barındırma paneli, işletim sistemi ve veri tabanı lisansları, varsa uzak erişim ve yedekleme hizmetleri.
Erişimi yalnız eski yazılımcıda kalan bir sisteme küçük bir arızada bile müdahale etmek çok zorlaşır. Taşıma ve yenileme imkânı, lisansın kimin adına olduğuna ve lisans koşullarına göre değişir; bunu lisans sağlayıcınıza sorun.
Size ait hesaplara erişimin, sağlayıcının resmî kurtarma yollarıyla nasıl geri alınacağı ilk aşamada belirlenir. Kimin adına kayıtlı olduğu belirsiz hesaplar için ilgili sağlayıcıyla sizin görüşmeniz gerekebilir.
Kullanıcı ve iş akışı bilgisi
Programı her gün kullanan kişiler, hangi ekranla hangi işin yapıldığı, gün sonu ve ay sonu adımları, bilinen hatalar ve elle yapılan düzeltmeler.
Koddan okunan kural, sahadaki kullanımla eşleştirildiğinde anlam kazanır; programın hangi bölümünün gerçekten kullanıldığını kullanıcılar söyleyebilir. Böylece kimsenin kullanmadığı bölümlere daha az zaman harcanır.
Analiz yalnızca koda dayanır; kullanılmayan kod ile kritik akış birbirinden geç ayrılır ve öncelik sırası yanlış kurulabilir.
Üçüncü taraf bir ticari ürünün lisansı tersine mühendisliği ya da derlenmiş kodun incelenmesini yasaklıyorsa o ürün üzerinde bu çalışmayı yapmayız.
İlk görüşmeden önce ne hazırlamanız işe yarar?
Bunlar hazırsa ilk görüşmede durumu daha gerçekçi değerlendirir, ilk aşamanın kapsamını daha net yazarız. Hak sahipliği belgeleri ilk aşama başlamadan önce gerekir; diğer eksiklerin envanterini ilk aşamada birlikte çıkarırız.
Yazılımı yaptırırken imzalanan sözleşme; varsa hak sahibinin yazılı izni. Fatura ve yazışmalar da tabloyu tamamlamaya yardımcı olur; hak sahipliği için yeterli olup olmadıklarını avukatınız değerlendirir.
Elinizde ne olduğunun kısa listesi: kurulum dosyası, kaynak kod ya da parçaları, veri tabanı yedeği ve son yedeğin tarihi.
Programın çalıştığı ortam: sunucu ya da bilgisayar, işletim sistemi, veri tabanı türü ve sürümü; biliniyorsa programın yazıldığı dil.
Programı her gün kullanan bir iki kişi ve en çok kullandıkları ekranların listesi.
Bugünkü sorunlar: sık görülen hatalar, eklenemeyen özellikler, elle yapılan düzeltmeler ve son arızanın ne zaman yaşandığı.
Eski yazılımcı ya da firmayla son durum: ulaşılabiliyor mu, neye açık, bugüne kadar teslim edilen bir şey oldu mu?
Teknolojiler
Kullandığımız teknolojiler
Decompile analizi
.NET / WinForms
SQL Server
T-SQL
ADO.NET
Sorgu planı analizi
Veri göçü
Git
Docker
Otomatik test
Kanıt etiketli raporlama
Süreç
Keşiften canlıya nasıl ilerliyoruz
01
Durum tespiti ve sistemi ayakta tutma
Önce riski durdururuz: elinizde ne var (kurulum dosyası, kaynak kod parçaları, veritabanı yedeği, lisanslar ve yazılım üzerindeki haklarınızı ya da hak sahibinin yazılı iznini gösteren belgeler) envanterini çıkarır, yedeklemeyi ve geri dönüşü güvence altına alırız. Bu aşamanın çıktısı, işin gerçekten yapılabilir olup olmadığına dair gerçekçi bir ön değerlendirmedir.
02
Kanıta dayalı çözümleme
Uygulama ve veritabanı satır satır çözümlenir; ekranlar, roller, tablolar ve hesap akışları birbirine bağlanır. Her bulgu kanıt seviyesiyle etiketlenir; sınıf veya dosya adı tek başına kanıt sayılmaz, çıkarımlar birden çok bağımsız izin kesişimine dayandırılır.
03
Eksiklerin yeniden kurulması
Kaynağı bulunamayan veritabanı nesneleri ve kod parçaları yeniden kurulmaya çalışılır; sonuç canlı veriden alınmış kopya üzerinde mevcut çıktılarla karşılaştırılır. Doğrulanamayan alanlar rapora eksik olarak işlenir; kapatılmış gibi gösterilmez.
04
Çalışır ortam ve devir dosyası
Projenin derlenip çalıştığı bir ortam kurulur; kurulum adımları, bağımlılıklar, yapılandırma ve bilinen riskler yazılı hâle getirilir. Devir dosyası, sizden başka birinin de bu sistemi sürdürebilmesi için gereken asgari bilgiyi içerir.
05
Yol ayrımı kararı
Elde edilen tabloyla birlikte iki seçeneği rakamlarıyla koyarız: mevcut sistemi yaşatmak mı, kademeli olarak yeniden yazmak mı. Karar sizindir; her iki yolun maliyeti, süresi ve riski aynı belgede karşılaştırılır.
Sıkça sorulan sorular
Yazılım Devralma ve Kurtarma hakkında merak edilenler
Kaynak kod elimizde yok. Yine de yapılabilir mi?
+
Çoğu durumda evet. Derlenmiş uygulama ve veritabanı elinizdeyse, programın ne yaptığı büyük ölçüde çıkarılabilir. Ancak bazı bilgiler yalnızca kaynakta yaşar ve derlenmiş halden geri getirilemez. Bu yüzden ilk aşamanın çıktısı bir taahhüt değil, neyin çıkarılabildiğini ve neyin çıkarılamadığını gösteren bir haritadır.
Sistemi kurtaracağınıza dair garanti veriyor musunuz?
+
Hayır, ve garanti veren birine temkinli yaklaşmanızı öneririz. Elimizdeki malzemeye bakmadan sonucu taahhüt etmek mümkün değil. Bizim taahhüdümüz süreyle ve kapsamla ilgilidir: sabit süre sonunda ne bulduğumuzu, sistemin hangi bölümlerinin yeniden kurulabildiğini ve bundan sonrasında hangi yolların açık olduğunu içeren bir rapor teslim ederiz. Bu rapor, kurtarma mümkün değilse de değerlidir; çünkü yeniden yazma kararını körlemesine değil bilerek verirsiniz.
Ne kadar sürer, maliyeti nedir?
+
Uygulamanın büyüklüğüne, veritabanının karmaşıklığına ve elinizdeki malzemeye göre değişir. Bu yüzden işi sabit süreli ve sabit kapsamlı paketler halinde kurguluyoruz; süre bitiminde ne çıktığını görüp devam edip etmeyeceğinize karar veriyorsunuz. Böylece ucu açık bir danışmanlık faturasıyla karşılaşmıyorsunuz.
Analiz sırasında üretim durur mu?
+
Hayır. Çözümleme, sistemin kopyası ve veritabanı yedeği üzerinde yürütülür; canlı ortama yalnızca sizin onayınızla ve önceden konuşulmuş bakım pencerelerinde dokunulur. Devir süreci boyunca üretimi durduran bir arıza çıkarsa öncelikli müdahale kapsamdadır.
Bu iş hukuken sorun yaratır mı?
+
İnceleme yalnız yazılımın haklarına sahip olduğunuzu ya da hak sahibinden yazılı izin aldığınızı belgelediğiniz durumda yapılır; belirleyici olan yazılımın kime ait olduğudur. Program sizin siparişinizle, sizin için yazıldıysa devralma çoğunlukla kendi varlığınız üzerinde çalışmak anlamına gelir; ancak mali hakların devri sözleşmede açıkça yazılı değilse durum tartışmalı hâle gelebilir. Çalışmaya başlamadan önce mevcut sözleşmenizi birlikte gözden geçirir, gerekiyorsa bir avukatla netleştirmenizi isteriz. Üçüncü taraf bir ticari ürünün lisansı bu tür bir incelemeyi yasaklıyorsa o ürün üzerinde çalışmayız. Hukuki belirsizliğin üzerine iş kurmayız.
Sonunda elimize tam olarak ne geçiyor?
+
Dört şey: programın ne yaptığını anlatan kanıt seviyeli bir analiz raporu, yeniden kurulmuş veritabanı nesneleri, projenin derlenip çalıştığı bir ortam ve başka bir ekibin de devam edebilmesi için gereken devir dosyası. Bizim yazdığımız kaynak kod ve verileriniz sözleşmede tanımlandığı biçimde size devredilir; üçüncü taraf ve açık kaynak bileşenler kendi lisanslarına tabidir.
Mevcut sistemi yaşatmak mı, sıfırdan yazmak mı daha doğru?
+
Bu kararı analiz bitmeden vermek doğru değil. Çalışan bir sistemin içinde, yıllar içinde birikmiş ve hiçbir yerde yazılı olmayan çok sayıda iş kuralı bulunur; bunları görmeden yazılan yeni program genellikle eskisinden daha eksik çıkar. Önce ne olduğunu çıkarır, sonra iki seçeneği maliyet ve risk olarak yan yana koyarız.
İletişim
Yazılım Devralma ve Kurtarma projenizi konuşalım
İhtiyacınızı dinler, özel yazılım mı hazır çözüm mü gerektiğini söyleriz. İlk 30 dakikalık görüşme ücretsizdir; yerinde saha keşfinin kapsamı ve varsa bedeli bu görüşmede yazılı olarak netleşir.