Yazılım Geliştirme Aşamaları

                        Yazılım Geliştirme Aşamaları

Yazılım Geliştirme Aşamaları

Problem: Herhangi bir işlemin/ hesabın/ otomasyonun vs bilgisayar vasıtası ile çözülmesinin gerektiği durumdur. Bir problemin çözümü, insan tarafından yapıldığında çok zorlanacağı veya yapılamayacağı durumlarda bilgisayar ortamında çözüm aranır.

Çözümleme/Planlama: Analiz olarak da adlandırılmaktadır. Belirsizlik kalmayacak şekilde çözülmesi istenen problem anlaşılır hale gelir ve ardından yazılımın gerçekleştirilmesine yönelik hazırlıklar yapılır.

•Bir sistemin bileşenlerini (olaylar, kurallar, insanlar, makineler), bileşenlerin birbiri ile ilişkilerini, amaçlarını, önceliklerini belirleyerek sorunların tanımlanması amacıyla yapılan çalışmalardır.

•Çözülecek soru tam olarak anlaşılmalıdır.

•Yanlış anlaşılmış bir sorunun çözümü yanlış olacak ve istenileni vermeyecektir.

•Analizde yapılacak ufak hatalar daha sonraki adımların yeni baştan yapılmasını gerektirebilir.

•İstenenler iyi belirlenmeli ve bunların var olan bilgiler ile ilişkileri öğrenilmelidir.

•Yapılacak işlemler belirlenir. Mümkün ise örnek veriler ile elde edilen sonuçlar değerlendirilmelidir.

•Soru tanımını tam olarak yaptıktan sonra, çözüm için yol aramak gerekir. Genellikle bir sorunun birden fazla çözüm yolu olabilir. Bunlardan en uygunu seçilmeye çalışılır. Soru ne kadar karışık olursa olsun, alt birimlere bölünür. Her birimin çözümü ayrı, ayrı yapılır. Bu yapılırken birimler arası ilişki sürekli olarak korunur.

•Algoritma bir sorunun çözümü için izlenecek yolun tanımıdır. Kısaca algoritma mevcut bilgilerden istenilenlere erişme yöntemidir.

Örnek 1-)

algoritma örnek

•Sonuçların dış ortama, dolayısıyla insana aktarımı düzgün bir biçimde yapılmalıdır. Programcı program çıktısı olarak almak istediği dökümün biçimini tasarlar. Bir döküm biçimi tasarlanırken anlaşılır ve kullanılabilir olmasına özen gösterilmelidir. Genellikle programa, çözdüğü soruna ilişkin bazı verilerin dışarıdan verilmesi gerekir. Örneğin bir denklem takımının kökleri bulunacaksa, ilgili katsayıların programa verilmesi gibi.

akış şeması

•Akış Şemasını Çizme: Akış şeması belirli bir işin yapılabilmesi için, basit işlemlerle şema halinde gösterilmesidir. Kısaca algoritmanın şemalarla gösterilmesidir. Algortima geliştirildikten sonra, daha iyi anlaşılabilir olması ve programlama dillerine aktarımı daha kolay olması nedeniyle, akış şeması haline getirilir. Böylece sorunun çözüm basamakları, birbirleri ile ilişkileri ve bilgi akışı daha kolay görülebilir ve yanlışlıklar düzeltilebilir.

•Tasarım: Bu aşamada gayemiz, gerçek dünyadaki problemin bilgisayarda temsil edilebilecek soyut bir modelinin oluşturulmasıdır. Çözümün hangi unsurlardan oluşacağı ve bu parçaların nasıl modelleneceği tamamen programlama yöntemine bağlıdır.

•Tasarım sonrası ortaya çıkacak olan yazılımın kalitesini doğrudan etkilediğinden bu aşamada kaliteli ve doğru bir çözümün oluşturulması çok önemlidir. Bu sebeple, kodlama aşamasına geçilmeden evvel kurulan modelin sağlaması yapılmalıdır.

•Yapılan çözümlemeye göre Sistemin bilgi akışı, girdiler, çıktılar şematik olarak ortaya konur. Algoritmalar geliştirilir. Akış şemaları, karar tabloları vb. şemalar üretilir.

•Doğruluğunun mantıksal sınaması yapılır.

Kodlama: Tasarım aşamasında oluşturulan model / sorunun yapısına uygun bir programlama dili seçilerek bilgisayara aktarılması aşamasıdır.

Dokümantasyon: Yazılım projesinin her aşamasında yapılan işleri açıklayan dokümanların belli bir sistem içerisinde hazırlanarak saklanması gereklidir.

Test: Son aşamada programın olası giriş değerleri için nasıl davrandığı incelenir. Sonuçları daha önceden bilinen veriler girilerek, eldeki sonuçlarla çıkan sonuçlar karşılaştırılır. Program, istenilen sonuçları üretmezse başa dönülür ve ardından problem çözümlenmesi ve algoritma/akış şeması diyagramı gözden geçirilerek gerekli değişiklikler yapılır.

Bakım: Programın, problemin kendisindeki veya çözüm yolundaki değişiklikler nedeni ile işlevselliğini devam ettirebilmesi için veya çözüm için kullandığı teknolojilerin yenilenmesi için gerekli düzenlemeleri (güncelleme) içeren bir konudur.



EN ÇOK ZİYARET EDİLEN KONULAR:

----------------------------------------------------------------------------------------------------------------


Yorumlar