Merhaba arkadaşlar,

bugün sosyal medya üzerinden de çokça sorulan bir soruya cevap olabilecek bir konuya değineceğiz. Bir yazılım projem var, nereden başlamalıyım, ilk adım ne olmalı? Evet…Bir yazılım projeniz var. Bu proje bireysel bir proje de olabilir, bir müşteriye de yapıyor olabilirsiniz. Aşağıda başlıklar halinde bir yazılım projesine başlarken göz önüne almanız, düşünmeniz gereken konuları açıklamaya çalıştık.

Analiz

Bir yazılım geliştirmeye başlamadan önce cevaplamanız gereken ilk soru “Bu yazılım hangi ihtiyacı karşılayacak?” sorusudur. Yani, söz konusu yazılım projesini yapmanızı isteyen müşteriniz ile teknik olarak ilk konuşmanız gereken konu budur. Yazılım projelerinin ilk aşamasını oluşturan analiz konusu bu yüzden doldukça önemlidir. Bu yazılım ürününün kaç tip kullanıcısı olacağı yani yazılımın aktörleri, bu aktörlerin yazılımı kullanırken neler yapabileceği, sisteme hangi verileri sağlayacakları gibi pek çok konunun bu aşamada netlik kazanması gerekmektedir. Kısaca, analiz aşaasında “Bu yazılım ürünü hangi ihtiyacı karşılayacak, ne yapacak?” sorusunu yanıtlamış olmalısınız.

Tasarım

Tasarım aşamasının yanıt bulması gereken soru “Nasıl?” sorusudur arkadaşlar. Analiz aşamasında ne yapacağınızı anladınız. Nasıl yapacağınız ise tasarım aşaması ile ilgilidir. Kullanıcı arayüzleri, veri modeli, yazılım mimarisinin oluşturulması gibi pek çok konu bu aşamada ele alınmalıdır. Bu aşamanın başarısı analiz aşamasının ne kadar doğru yürütüldüğüne bağlıdır. Eğer siz, kullanıcının ihtiyacını tam olarak anlayamamışsanız o zaman yapacağınız tasarım da yanlış sorulara yanıt verecektir.

Kodlama

Artık elinizde bir tasarım var. Örneğin; nesne tabanlı bir yazılım geliştirme anlayışı uygulayacaksanız elinizde artık class diyagramları, sequence ve collaboration diyagramları gibi önemli UML diyagramları var demektir. Kısacası, “Ne yapacağım” ve “Nasıl Yapacağım” sorularının yanıtları artık elinizdedir. Kodlama aşamasına geçebilirsiniz. Kodlama aşamasına geçerken hangi yazılım geliştirme teknolojilerini ve platformlarını kullanacağınıza da karar vermeniz gerekir. Teknolojiye karar verdikten sonra çok net bir kodlama süreci yürütmelisiniz arkadaşlar. Yazacağınız kodlar evrensel standartları mümkün olduğunca içermelidir. Bir değişkeni, fonksiyonu ya da sınıfı doğru adlandırmak, bu konudaki standartlara uymak, source control araçları kullanmak, comment yazmak ve test projesi oluşturmak gibi pek çok önemli adımı uygulamanız gerekmektedir. Bu adımlar, yazdığınız kaynak kodların yönetimi, bu kodlardan sağlıklı bir proje çıkması ve bu projenin ileride sağlam bir şekilde devam ettirilebilmesi için gereklidir.

Test

Projenizi geliştirdiniz, kaynak kodlarınız tamamlandı. Bu kodları yazarken test de yaptınız. Ancak sizin test yapmanızdansa bu projeye tarafsız bir göz ile bakabilen ve gerçek bir kullanıcı gibi davranabilen kişilerin test yapması çok daha önemlidir. Bu önemli testi, kaynak kodu yazan kişi değil başka bir kullanıcı yapmalıdır. Çünkü siz “bilinçli test” yapacaksınızdır oysa başka bir kullanıcı sizin normalde yapmayacağınız işlemleri yapacak ve sizin kendi testiniz sırasında hiç almadınınız hata mesajları alacaktır. O nedenle bu aşama son derece önemlidir. Bu aşamada çıkacak hataları ise düzenli olarak, gerekli notları (comment) yazarak düzeltmeniz gerekmektedir.

Devreye Alma

Kaynak kodlarınız hazır, testleriniz yapıldı ve uygulamanız son haline geldi. Artık devreye alma zamanı. Uygulamanızı müşterinin makinesine kuracak ve çalıştıracaksınız. Sorunsuz bir devreye alma çok nadirdir arkadaşlar 🙂 Genellikle, kullanıcının makinesinin konfigürasyonu sizin yazılım geliştirdiğiniz makinenin konfigürasyonundan farklıdır. Yazılımınızın, kullanıcının makinesinde çalışabilmesi için o makineye bazı kütüphaneler, altyapılar kurmanız gerekebilir ve siz bunları kurmayı unutmuş olabilirsiniz. O nedenle bu sürece başlamadan önce, yani müşteriye gitmeden önce müşterinin ortamını kendi tarafınızda sanal makine ortamında bile olsa kurgulamanız ve kurulumları ve devreye alma testlerini önce kendi bünyenizde yapmanız bu süreci daha az sancılı atlatmanızı sağlayacaktır.

Sonuç olarak arkadaşlar, yazılım projeleri analiz aşamasından devreye alma aşamasına kadar pek çok aşamayı içeren, pek çok ayrıntıyı düşünmeniz gereken projelerdir. Hangi yazılım projesi olursa olsun, ilk anlamanız gereken konu o yazılım projesinin neye çare olması gerektiğidir.

Sevgiler

Share on FacebookTweet about this on TwitterShare on LinkedInShare on Google+