Logo’da Teknoloji: Logo 3 Serisi Ürün Ailesi Doğuyor

Logo’da Yazılım Mimarisi Direktörü olarak çalışan İsmail Duran, Logo’da Teknoloji serimizdeki bu yazıda Logo 3 Serisi ürün ailesinin nasıl ortaya çıktığını, nasıl geliştirildiğini bizlere anlatıyor. Aynı zamanda Logo-Netsis birleşmesinin (kaynaşmasının) teknik takımlar açısından gerçekleşme serüvenine de ışık tutmuş oldu

NewUI3-1024x607

                Logo 3 Serisi geliştirmelerini yapabilmek ve her iki ürün ailesine ortak hizmet sunabilmek adına öncelikle Logo – Netsis çalışanlarımızdan “Milli Takım” oluşturduk. Ama bu sanıldığının aksine sadece organizasyonel bir yapılanma değil şirket kültürlerinin birbirinin içine geçmesi harmanlanıp Logo kültürünün daha da zengin hale getirilmesi adına bir adımdı.

                Serüven İzmir – Urla otobanında yol üzerindeki meşhur kahve dükkanında Tuğrul Bey ile birlikte kahve eşliğinde planlama ile başladı. Devamı ise Urla ofis toplantı odasında fikrin yeni takım (Netsis ekibi) arkadaşlarımıza anlatılması olarak gelişti. Burada iki şirket kültürü ilk defa teknik anlamda karşı karşıya geliyor ve bilgi birikimleri masada ikna için terazinin kefelerine konuyordu. Hepimizin bildiği üzere teknik insanların en genel özelliği analitik düşünmeye yatkın olması ve risk almayı pek sevmemeleridir.

                 Hatta yazılım geliştirmenin ilk kuralı “If it works don’t touch anything”; yani “çalışıyor ise dokunma”dır. Ancak teknik borcun ödenmesi ve/veya yeni bir şey oluşturmak eylemi, çalışan sisteme dokunmayı, risk almayı gerektirir. Bu nedenle toplantımızın ilk aşaması Logo 3 Serisi’nin yapılamayacağı veya yapılmaması gerektiğini düşünen arkadaşlarımızı hem teknik olarak yapılabileceğine, hem de yapılması gerektiğine ikna süreci ile geçti.

                 Artık hepimiz işin yapılması gerektiğinde hemfikirdik. Şimdi sırada işin hangi ekip ile ve nasıl (hangi takvimde) gerçekleştirileceği sorusu vardı. Burada Tuğrul Bey’in aldığı hızlı kararlar ile bir anda Logo-Netsis karması “Milli Takım” oluşturuldu ve genel olarak takvime bağlandı. Hedefimiz kısaca ortak altyapı ile teknik borcu azaltmak; iki ayrı şirket bünyesinde geliştirilmiş ürünlerin aynı ailenin fertleri gibi görünmesini sağlamaktı.

logoekip
Hasan Odabaşı: En lezzetlisini yemeyi gayret edinen gurme, aklına koyduğunu yapacak kadar inatçı ve yaşamayı çok seven ihtiyar delikanlı. Serhat Ulusoy: Heyecanlı, özgür, sürekli yeni bir şeyler kovalayan ve yapacağım dedikten  sonra engellemek biraz zor . Zeki Güven: Çalışkan, sabırlı, dürüst.

        Ürünlere uygulanması toplam iki kelime söylemesi kolay ama yapmak pek o kadar kolay olmadı 😊. Temel zorluk, Netsis ve Logo ana ürün ailelerinin Delphi miras kodu olması ve farklı mühendislik yaklaşımları üzerine inşa edilmiş olmasıydı. Bir tanesi “Object Oriented”, diğeri daha çok “Procedural”; her iki yapıya da hizmet edecek ortak yapıların mimari açıdan var edilmesi oldukça zorlu bir süreçti. Her iki ürün ailesi de yaklaşık 5.500.000 satır kod büyüklüğüne sahipti (toplam 11.000.000 satır) ve bu kadar kompleks kodun ürün kararlılığını/tutarlılığını bozmadan yeniden yapılandırılması gerekiyordu. Bunun için öncelikle temel LDesktopBase sınıfı geliştirildi. Nesne tabanlı yaklaşım için virtual metotlar ile genişletilme uçları var edildi ancak procedural yaklaşım için bu mümkün değildi. Bu nedenle benzer bir mekanizma Windows Message yapısı ile implement edildi. Devamın da tekil uygulama ve çoklu DLL yapısındaki uygulama yaklaşımı için ortak yapı kurgulandı. Delphi ile şeffaf form oluşturmak ve ikonları pürüzsüz çizebilmek için oldukça emek harcandı. Ortak menü yapısı ve genel arama fonksiyonları var edildi.Şimdi hedef netti: Bize düşen hedefe koşmak üzere takım arkadaşlarımızı organize etmek ve çalışmaya başlamak! İlk adım UX-kullanıcı deneyimi çalışmasıydı. Emre Senan hocamızın desteği ile öncelikle “Logo Tasarım Kılavuzu” hazırlandı. Sinem Zenginçelebi, Eylül Ertan, Uğur Yıldız ve ürün yöneticisi arkadaşlarımızın yoğun çabası ile (çaba yoğun ise isimleri de yazmak lazım: Ümit Yazan, Berna Tokay, Medi Ventura) ilk kavramsal model var edildi. Daha sonra kullanıcı geri bildirimleri toplandı. Sertaç Tuncel’in ortaya koyduğu efor ile revize edilmiş versiyon tasarlandı ve ürünlere uygulandı.

Yazı içeriği Logo Yazılım Blog sayfasından alınmıştır. Yazının devamını bu siteden okumak için..

%d blogcu bunu beğendi: