Hepimizin de bildiği gibi Bilgisayar Bilimleri Problem Çözme ve Algoritma Geliştirme ile ilgilenmektedir. İstenen bir problemi çözebilmek için gerekli adımları
şu şekilde özetleyebiliriz :
- Problemin Tanımlanması
- Algoritmanın Tanımlanması Geliştirilmesi
- Algoritmanın Analiz Edilmesi
- Algoritmanın Uygulanması
- Test Edilmesi
- Bakım ve İdame Edilmesi
Geliştirilen Algoritmalar değerlendirilirken aşağıdaki kriterler gözönünde bulundurulur:
- İstenen problemi çözüyor mu?
- İyi bir şekilde tanımlanmış mı?
- İstenen çıktıyı üretebiliyor mu?
- Kabul edilebilir bir sürede sonlanıyor mu?
Algoritma Geliştirme noktasında HIPO Chart (Hierarchy of Inputs Processes & Outputs) yaklaşımı kullanılabilir. Bu yaklaşımda önce
a) Girdiler tanımlanır :
Hangi verilere ihtiyacım var?
Verileri nereden elde edeceğim?
Veriler hangi formatta olacak?
b) Süreçler Tanımlanır:
Verilerle anlamlı sonuçları nasıl elde edeceğim?
c) Çıktılar Tanımlanır :
Çıktılarım neler olacak?
Çıktılar hangi formatta olacak?