27 Ağustos 2014 Çarşamba

Makale: Uygulama çözümleri ve çözüm kalıpları

Bu yazımda size var olan bir uygulamaya bir çözüm sürecinin uygulanmasındaki tekniklerden bahsedeceğim. Bu yöntemler kimi zaman yazılımcıyı ilgilendiren kimi zaman ise kullanıcıyı ilgilendiren hususlardır. Ancak bir yazılıma çözüm üretme sürecinde iseniz bu hususları bilmeniz gerektiğini düşünmekteyim.


 Uygulama ön çözümü (pre solutions): Bu kavramda bir bilginin bir veri kümesine eklenmesi gibi bir ihtiyaçta oluşabilir. Bu çözümlerde genellikle uygulamaya hiç müdehale edilmez, yapılacak işlem ilgili veriyi kullanılmayan bir alanda tutmak veya dinamik olarak tanımlanmak için referans alanlar gibi uygulama imkanlarınca değerlendirmekle oluşur. Çözüm hiç bir şekilde yazılıma yansıtılmaz, gerekli alan en fazla raporlamada filtre, toplama, gruplama gibi işlevlere katılır. Yazılım dünyasında çözüm olarak kabul edilmemesine rağmen bir çok çözüm bu şekilde sonuçlandırılmıştır.

Uygulama içi çözüm (solutions): Bu kavramda bilgi ilişkisellik gerektiren daha karmaşık bir yapıdadır. Uygulama bu aşamada yeni bir geliştirmeye ihtiyaç duyabilmektedir. Yeni bir veri kümesi oluşturulur, CRUD yapısı kurularak uyulama içi veriler işlenir. Uygulamayı enine geliştirdiği için uygulama içi çözüm olarak uygulamanın bizzat kendisini etkilemektedir. Bu çözüm genellikle süre ve ekonomi açısından pahalı çözümlerdir. Bazı yazılımlar gelişmiş araçlarla bu tarz çözümleri ön çözüm sürecine taşıyabilmiştirler. Bu sayede uygulama içi gelişmesi gereken bir husus ön çözüm denilen yöntemdeki gibi dinamik oluşturulabilir. Bu süreyi ve ekonomiyi düşürmektedir.

Uygulama yan çözüm (friendly solutions): Bu kavramda uygulama içi çözümün pahalı, uzun sürebilmesi veya teknolojik olarak uygulama içi mümkün olmayan durumlarda kullanılan yan uygulama mantığındadır. Bu tarz uygulamalar ana uygulamaya bağımlı yaşayan mantarlar gibidir. Ancak hızlı, düşük maliyetli üretilirken aynı zamanda alternatif teknolojileri rahatlıkla (örneğin win32 uygulamasına paralel mobil uygulama gibi) uygulamak mümkün olabilmektedir. En çok uygulamanın teknolojisine uygun olmayan durumlarda kullanılmaktadır. Bunun dışında ise bir çözümün test edilmesi ve gerçekçiliğini saptanması için uygulama içi bir çözüme giderek kaybedilecek zaman, ekonomi ve enerjiyi düşük maliyetlerle bu yöntemle test etmek mümkündür. Ayrıca Ar-Ge yapılması durumunda bir çözümün gerçekçiliğinin tespiti ve birden fazla süreci kapsayan projelerde prototip olarak da kullanılır. Çözüm bu amaçla kullanılmış ise çözüm yaşam döngüsü uygulama içi çözüm üretilene kadar sürdürülür.

Uygulama arkası çözüm (back-end solutions): Bu kavramda çözüm uygulamanın daha çok teknolojik kısmını ilgilendirmektedir. Uygulama için düşünülen çözüm yan çözüm sürecini tamamladıktan sonra ispatlanmış bir teknolojiyi ana uygulamaya taşımak veya ana uygulamayı yenilemek ile süreç devam eder. Genelde çok pahalı bir çözüm olan bu tarz çözümlerde hedeflenen noktalar, teknoloji, hız, esneklik, yeniden geliştirilebilirlik gibi hususlardır. Bu gelişim için yan çözüm geliştirilip test edilmiş olması nerede ise mecburidir.

Bu yazımda çözüm süreçlerinde ki bu kalıplardan biraz bahsetmiş olsam da önemli bir noktada bazen uygulama ön çözümü uygulama arkası çözüme kadar gereksizce sürüklenebilir. Bunun sebebi çözümün çözümüdür. Yani biri bir çözüme ihtiyaç duyduğunda çözümün çözümü için çalışmaya başlanılması uygulama önünde ki basit bir ihtiyacı arka plandaki teknolojik bir dinamizim gibi kuramla geliştirmeye kadar sürükler. Bu durumlara dikkat edilmeli, öncelikle çözüm tamamlanmalı sonra çözüm süreçleri değerlendirilip Ar-Ge yapılmalı ardından çözümün çözümü düşünülmelidir.

Bir sonraki yazımda görüşünceye dek esenlikle kalın...

0 yorum: