Algoritma, verilerin bilgisayara hangi çevre biriminden girileceğinin, problemin nasıl çözüleceğinin, hangi basamaklardan geçirilerek sonuç alınacağının ve sonucunun nasıl/nereye yazılacağının sözel olarak ifade edilmesidir. Algoritmaların, görsel sembollerle ifade edilmiş şekline “flowchart” yani “akış şeması” denir.
Akış şemaları iş akışlarının ve programların basitçe tasarlanması ve dokümante edilmesinde kullanılır. Diğer diyagramlarda olduğu gibi, bir süreç içerisinde neler olduğunun görselleştirilmesine yardımcı olur, böylece bir iş akışının anlaşılmasına yardım eder ve bu akış içerisindeki sorunlu alanları veya gözden kaçan noktaları görmemizi sağlar.
Problem çözümleme, verinin girişi (input), alınan verilerin işlenmesi (process) ve çıktıyı (output) göstermeyi gerektirir. Bu süreçte programcı bazı kararlar verir. Bu durumda da, verinin girişi (input) kabul etme, giriş verisini işleme (processing), çıktıyı gösterme (output) ve karar verme (decision) aktiviteleri için sembollere ihtiyaç duyar. Bu sembollerle gösterme bazı kurallara dayanır.
Farklı organizasyonları birbirleriyle ilişkilerinin gösterilmesinde de akış şemaları kullanılır. Bu tip diyagramlardaki her bir sütun organizasyondaki her bir birimi temsil eder. Bu yöntemle, her bir birim içerisinde alınan kararları, bu kararların hangi aksiyonlar sonucu ortaya çıktığını ve bu aksiyonlardan kimlerin sorumlu olduğu gözlemlenebilir.
Tarihçesi
1921’de doküman işlemeyle ilgili ilk planlanmış yöntem, Frank ve Lillian Gilbreth tarafından “İşlem Grafikleri: Çalışırken en iyi yolu bulmak için ilk adım” başlığıyla yayınlandı. Frank ve Lillian Gilbreth’in bu aracı, hızla endüstri mühendisliği müfredatında kendisine yer buldu.
1930’ların başında, bir endüstri mühendisi olan Allan H. Mogensen, endüstri mühendisliğinde kullanılan bazı araçlarla ilgili “İş Basitleştirme Konferansı” adıyla eğitimler vermeye başladı.
1944’te mezun olan Mogensen‘in öğrencisi Art Spinanger, sözkonusu araçları Procter & Gamble için kullanmaya başladı ve “Planlı Yöntem Değişim Programı”nı ortaya çıkardı. Yine bir 1944 mezunu olan Standard Register Industrial mühendislik yöneticisi Ben S. Graham, birden çok dokümanı ve birbiriyle ilişkilerini gözlemleyen bir çoklu-akış işlem diyagramı geliştirerek, akış işlem diyagramı fikrini bilgi işlemle bütünleştirdi.
1947’de ASME Gilbreth’in orjinal çalışmasına sembolleri de ekleyerek, “ASME Standartları: Operasyon ve İş akışı Süreç Grafikleri” adlı standartları yayınladı.
1970’lerde, interaktif bilgisayar terminallerinin ve üçüncü jenerasyon yazılım dillerinin programlamada yaygınlaşmasıyla akış şemalarının yazılım dünyasındaki popülaritesi azaldı.
Günümüzde akış şemaları hala bilgisayar algoritmalarını açıklamak için kullanılıyorlar. UML aktivite diagramları ve Drakon diyagramları gibi modern teknikler de geleneksel akış şemalarının uzantıları olarak kullanılmaktalar.