Anahtar Sözcükler: Algoritmalar, bilgisayar programlama, internet tabanlı eğitim, bilgisayar eğitimi, çalıştırma tablosu

Benzer belgeler
WebALGO: Algoritma Öğreniminde Internet Tabanlı Bir Eğitimsel Materyal Geliştirilmesi

4. Bölüm Programlamaya Giriş

EM205 26/9/2014. Programlamaya giriş Algoritmalar. Amaçlar

BMT 101 Algoritma ve Programlama I 3. Hafta. Yük. Müh. Köksal GÜNDOĞDU 1

BİLİŞİM SUÇLARIYLA MÜCADELEDE ÜNİVERSİTE VE EMNİYET İŞBİRLİĞİ: BİR EĞİTİM SÜRECİ

Yazılım Mühendisliğinin Temelleri (SE 100) Ders Detayları

3. Bölüm Algoritmalar

SOFTWARE ENGINEERING PRACTICE Ders İzlence Formu. Kodu: CSE401 Dersin Adı: SOFTWARE ENGINEERING PRACTICE Toplam Saat

DERS BİLGİLERİ Haftalık Dersin Adı Kodu Yıl Yarıyıl TUL Saati Kredi AKTS

Dr.Öğr.Üyesi HACER ÖZYURT

TEMEL BİLGİTEKNOLOJİLERİ

MÜFREDAT DERS LİSTESİ

ALGORİTMA TASARIMI VE SCRATCH UYGULAMASI

SOFTWARE ENGINEERING Ders İzlence Formu. Kodu:CSE400 Dersin Adı: SOFTWARE ENGINEERING Toplam Saat

SİNYAL TEMELLERİ İÇİN BİR YAZILIMSAL EĞİTİM ARACI TASARIMI A SOFTWARE EDUCATIONAL MATERIAL ON SIGNAL FUNDAMENTALS

Bilişim Suçlarıyla Mücadelede Üniversite ve Emniyet İşbirliği: Bir Eğitim Süreci

Algoritmalar ve Programlama. Algoritma

Sistem Modelleme ve Simülasyon (SE 360) Ders Detayları

Arş. Gör. Raziye SANCAR

EĞİTİM-ÖĞRETİM YILI MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ (İNGİLİZCE) BÖLÜMÜ DERS PROGRAMINDA YAPILAN DEĞİŞİKLİKLER

MÜHENDİSLİK FAKÜLTESİ / ENSTİTÜSÜ / YÜKSEKOKULU BİLİŞİM SİSTEMLERİ MÜHENDİSLİĞİ BÖLÜMÜ /ABD LİSANS PROGRAMI - 2 ( yılı öncesinde birinci

Nesne Tabanlı Programlama (COMPE 225) Ders Detayları

1.1 Metodolojiyi Gerçeklemek Üzere Geliştirilen Altyapı

Temel Bilişim Eğitiminin Yükseköğretimdeki Yeri: Analizi

BÝLDÝRÝ KÝTABI EJER CONGRESS 2014 EJER CONGRESS 2014 CONFERENCE PROCEEDINGS NISAN 2014 Istanbul Üniversitesi Kongre Merkezi

BİLİŞİM TEKNOLOJİLERİ 6. SINIF DERS NOTLARI 2

Nesne Tabanlı Programlama (COMPE 225) Ders Detayları

Arş. Gör. Dr. Mücahit KÖSE

Yazılım Mühendisliği 1

ANKARA ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ

Açık ve Uzaktan Öğretimde Farklılaştırılmış Öğretim. Hasan UÇAR, Bilecik Şeyh Edebali Üniversitesi Doç. Dr. Alper Tolga KUMTEPE, Anadolu Üniversitesi

Yaz.Müh.Ders Notları #6 1

Bilgisayar Programlama Öğretiminde Yapay Zekâ Tabanlı Bir Yazılım Sisteminin GeliĢtirilmesi ve Değerlendirilmesi

PROBLEM ÇÖZME PROGRAMLAMA ve ÖZGÜN ÜRÜN GELİŞTİRME

İleri Java Programlama (COMPE 515) Ders Detayları

Temel Bilişim Eğitiminin Yükseköğretimdeki Yeri: Analizi

DERS BİLGİ FORMU DERS BİLGİLERİ. Türü Zorunlu/ Seçmeli DERS PLANI

Internet Programlama (ISE 311) Ders Detayları

AKIŞ ŞEMASI AKIŞ ŞEMASI AKIŞ ŞEMASI ŞEKİLLERİ GİRİŞ

Uzaktan Eğitim ve E-Öğrenme (ISE 424) Ders Detayları

Kitlesel Açık Çevrimiçi Derslerde tasarımın önemi (editöre mektup)

GEZİNME ADAPTASYONU: NEDEN VE NASIL?

Bilgisayarlara ve Programlamaya Giriş (COMPE 101) Ders Detayları

Lise Göztepe Anadolu Kız Meslek Lisesi Bilgisayar Bölümü, İzmir,

Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan

TEMEL BİLGİSAYAR BİLİMLERİ. Programcılık, problem çözme ve algoritma oluşturma

BİLİŞİM TEKNOLOJİLERİ ALANI THE INFORMATION TECHNOLOGIES DEPARTMENT

Üniversitelerde Temel Bilişim Eğitimi Nereye Gidiyor? : Analizi

EĞİTİM FAKÜLTESİ Ortaöğretim Fen ve Ortaöğretim Fen ve ENSTİTÜSÜ

EĞİTİM Doktora Orta Doğu Teknik Üniversitesi, Ankara Eğitim Fakültesi, Bilgisayar Öğretimi ve Teknolojileri Bölümü

Mobil Uygulama Geliştirmeye Giriş (ISE 407) Ders Detayları

Yrd.Doç.Dr. ÖZEL SEBETCİ

Yrd.Doç.Dr. Özlem Çakır

Doç.Dr. EYLEM YILDIZ FEYZİOĞLU

EĞİTİM ÖĞRETİM MÜNEVVER ÖZTÜRK ORTAOKULU II. DÖNEM BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ DERS NOTLARI

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ (Algoritma Geliştirmek, Satır Kod)

Yönetim Bilişim Sistemleri (Karma) - 1. yarıyıl Hukukun Temelleri Fundamentals of Law TR

Bilgisayar Mühendisliğine Giriş (COMPE 111) Ders Detayları

Fundamentals of Object-Oriented Programming (COMPE 723) Ders Detayları

ÖZGEÇMİŞ VE ESERLER LİSTESİ

Educational On-line Programmes for Teachers and Students

Bilgisayarlara ve Programlamaya Giriş (COMPE 101) Ders Detayları

Açık ve uzaktan öğrenmede destek hizmetleri

T.C. ERCİYES ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ EĞİTİM ÖĞRETİM YILI DERS KATALOĞU

Görev Unvanı Alan Üniversite Yıl Prof. Dr. Elek.-Eln Müh. Çukurova Üniversitesi Eylül 2014

EĞİTİM FAKÜLTESİ Ortaöğretim Fen ve Ortaöğretim Fen ve ENSTİTÜSÜ

Ders Adı Kodu Yarıyılı T+U Saati Ulusal Kredisi AKTS

T.C. MALTEPE ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ YAZILIM MÜHENDİSLİĞİ LİSANS PROGRAMI Bahar Yarıyılı

Java Temel Özellikleri

ANKARA ÜNİVERSİTESİ A ÖĞRENCİ İŞLERİ DAİRE BAŞKANLIĞI

Yazılım Mimarisi (SE 322) Ders Detayları

Bilgisayarlara ve Programlamaya Giriş (COMPE 101) Ders Detayları

PROGRAMLAMAYA GİRİŞ VE ALGORİTMA. Yazılım Nedir Algoritma Akış Seması Örnekler

Yazılım Çeşitleri. Uygulama Yazılımları. İşletim Sistemleri. Donanım

İnşaat Mühendisliği Bölüm Başkanlığı na

ÖZGEÇMİŞ. Derece Alan Üniversite Yıl. Y. Lisans Matematik Eğitimi University of Warwick 2010 Y. Lisans Matematik Eğitimi University of Cambridge 2012

BÖLÜM 2: ALGORİTMALAR

Eğitim ve Öğretim Araştırmaları Dergisi Journal of Research in Education and Teaching Kasım 2017 Cilt: 6 Sayı: 4 ISSN:

Eğitim ve Öğretim Araştırmaları Dergisi Journal of Research in Education and Teaching Şubat 2017 Cilt: 6 Sayı: 1 Makale No: 04 ISSN:

Nesneye Dayalı Analiz ve Tasarım (SE 321) Ders Detayları

Eğitim ve Öğretim Araştırmaları Dergisi Journal of Research in Education and Teaching Kasım 2017 Cilt: 6 Sayı: 4 ISSN:

GÖRSEL PROGRALAMA HAFTA 3 ALGORİTMA VE AKIŞ DİYAGRAMLARI

Yrd.Doç.Dr. ÖZCAN ÖZYURT

LCD Panelli Etkileşimli Tahtanın Özel Eğitim Uygulama Okullarında Kullanımı

enstituson:layout 1 5/4/10 11:03 AM Page 1 GÖRENLER İÇİN... Zamandan ve mekandan bağımsız eğitim...

R. Orçun Madran & Yasemin Gülbahar BAŞKENT ÜNİVERSİTESİ

Sistem Analizi ve Tasarımı (IE 503) Ders Detayları

ÖZGEÇMİŞ. : Çukurova Üniversitesi İletişim Fakültesi Radyo, Televizyon ve Sinema Bölümü

ANKARA ÜNİVERSİTESİ A ÖĞRENCİ İŞLERİ DAİRE BAŞKANLIĞI

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

WEB PROGRAMMING Ders İzlence Formu. Kodu: CSE300 Dersin Adı: WEB PROGRAMMING Toplam Saat İngilizce Zorunlu Derse Kabul Koşulları:

HSancak Nesne Tabanlı Programlama I Ders Notları

Proje Yürütücüsü: Doç. Dr. Selahattin ARSLAN (KTÜ, Fatih Eğitim Fakültesi)

- Yurtiçinde ULUSLARARASI Bilimsel Toplantılarda Sunulan ve Bilimsel Toplantı Kitabında Yayınlanan Bildiriler

Bilgisayar Oyunları ve Simulasyon (COMPE 376) Ders Detayları

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

BLG 1306 Temel Bilgisayar Programlama

Bilgisayar Mühendisliğinin Temelleri (COMPE 100) Ders Detayları

Mobil Uygulama Geliştirmeye Giriş (ISE 407) Ders Detayları

5- AKIŞ DİYAGRAMLARI (FLOW- CHART) M.İLKUÇAR - 1

Transkript:

İnet-Tr 15, XX. Türkiye'de İnternet Konferansı 1-3 Aralık 2015, İstanbul Üniversitesi WebALGO: Algoritma Öğreniminde Internet Tabanlı Bir Eğitimsel Materyal Geliştirilmesi Utku KÖSE Uşak Üniversitesi, Bilgisayar Bilimleri Uygulama ve Araştırma Merkezi, Uşak, utku.kose@usak.edu.tr Özet Genel olarak bu çalışmanın amacı, bilgisayar programlama öğreniminde kritik öneme sahip olan algoritma kavramının anlaşılması için kullanılabilen, Internet tabanlı bir eğitimsel materyali tanıtmak ve değerlendirmektir. Öğrencilere çeşitli zaman aralıklarıyla Internet üzerinden algoritma problemleri sunan bu sistemde, tasarlanan bilgisayar algoritmalarının çalışmasını test etmek amacıyla, adım adım çalıştırma yaklaşımına dayalı, Çalıştırma Tablosu adı verilen, basit ancak etkin bir tablo yapısı kullanılmaktadır. Daha önce öğrencilerin ilgisini çekmesi nedeniyle Web ortamına taşınmış olan Çalıştırma Tablosu yaklaşımı üzerine kurulu bu eğitimsel materyal, verilen bir algoritmanın çözülmesi istenen problemi gerçekten çözüp çözmediğinin test edilmesini sağlamaktadır. Algoritmaların sağlamasına yönelik bu test süreci sayesinde bireyler, algoritmik düşünce mantığı ve algoritma tasarımına yönelik bilgi ve becerileri pekiştirebilmektedir. Anahtar Sözcükler: Algoritmalar, bilgisayar programlama, internet tabanlı eğitim, bilgisayar eğitimi, çalıştırma tablosu Abstract Generally objective of this work is to introduce and evaluate an Internet based educational material that can be used for understanding the algorithm concept, which has a critical importance on learning computer programming. In this system, which provides algorithm problems to students in several time periods over Internet, a simple but effective table structure, which is called as Running Table and based on step-by-step running approach, is used in order to test working of designed computer algorithms. With this educational material on Running Table approach, which has taken students attract, it is possible to test an algorithm if it can solve a specific problem really or not. Thanks to this test process, individuals can consolidate their knowledge and abilities in the sense of algorithmic thinking logic and algorithm design. Keywords: Algorithms, Computer Programming, Internet Based Education Computer Education, Running Table 1. Giriş Bilişim Çağı nın gereği olarak, bilgisayar odaklı birçok farklı bilgi ve becerinin etkin bir şekilde elde edilmesi oldukça önemlidir. Özellikle bilgisayar odaklı çalışmalarda istendik amaçlara ulaşmak için bazı becerilerin bilinmesi daha fazla önem kazanmaktadır. Bilgisayar programlama, özellikle Bilgisayar Bilimleri nde ön planda olan, bilgisayar donanım bileşenlerinin ve genel anlamda bilgisayar tabanlı sistemlerin isteklerimiz doğrultusunda çalışabilmesi ve problemlere çözümler üretebilmesi konusunda yönlendirilebilmesi adına sahip olunması gereken bir beceridir. Kuşkusuz ki, günümüz hızlı gelişme ve iyileşmeleri neticesinde farklı teknolojileri de etkileyen ve çok-disiplinli bir yapıya odaklanan Bilgisayar Bilimleri; bilgisayar programlamaya yönelik temel düzeyde bilgi ve becerilerin farklı araştırma / bilim / faaliyet alanlarında da gerekli bir hale gelmesine sebep olmuştur [1-3]. Bilgisayar programlamaya yönelik artan bu ilgi, bilgisayar programlamaya yönelik söz konusu bilgi ve becerilerin kazandırılması yönünde eğitimsel süreçlerin de birçok araştırmaya konu olmasını sağlamıştır. Süregelen çalışmalar ve eğitimsel eğilimler incelendiğinde, bilgisayar programlama öğretiminde genel yaklaşımın, algoritma adı verilen kavramın öğrenenlere anlatılması şeklinde olduğunu görebiliriz. Bu yaklaşım bağlamında problem çözümlerinin algoritmik düşünce mantığıyla ortaya konulması ve problem çözümlerinin sonlu ve organize adımlar bir biçimde ifade edildiği algoritmaların oluşturulması süreçleri izlenmekte, hatta algoritmaların şekilsel gösterimi olan akış şemaları ile bilgisayar programlama mantığının temelleri atılmaktadır. Bilgisayar programlamanın temellerine yönelik dersler ve kurslar dikkate alındığında; izlenen eğitimsel yolların ifade edilen çerçevede gerçekleştirildiği kolaylıkla görülebilmektedir. Bu noktada dikkat çeken sorun, algoritmaların nasıl çalıştığı konusunda yaşanan tereddütler neticesinde algoritmik düşünce ve bilgisayar programlama mantığının sağlam temellere oturtulamamasıdır. Söz konusu problem, çeşitli yazılımsal çözümlerle giderilmeye çalışılmakta; eğitimsel temellere dayalı farklı yaklaşım, yöntem ve tekniklerle de etkin çözümler elde edilmeye çalışılmaktadır [4-9]. Hatta son gelişmeler, bilgisayar ve bilgisayar destekli sistemler olmaksızın algoritmik düşünce mantığını aşılamaya çalışan somut araçların da kullanımını gözler önüne sermektedir [10-12]. Burada önemli olan 49

WebALGO: Algoritma Öğreniminde Internet Tabanlı Bir Eğitimsel Materyal Geliştirilmesi Utku KÖSE nokta, algoritmaların çalışma şeklini anlamaya yönelik, pekiştirme niteliğindeki yolların işe koşulabilmesidir. Yapılan açıklamalar kapsamında bu çalışmanın amacı, bilgisayar programlama öğreniminde kritik öneme sahip olan algoritma kavramının anlaşılması için kullanılabilen, Internet tabanlı bir eğitimsel materyali tanıtmak ve değerlendirmektir. Öğrencilere çeşitli zaman aralıklarıyla Internet üzerinden algoritma problemleri sunan bu sistemde, tasarlanan bilgisayar algoritmalarının çalışmasını test etmek amacıyla, adım adım çalıştırma yaklaşımına dayalı, Çalıştırma Tablosu adı verilen, basit ancak etkin bir tablo yapısı kullanılmaktadır. Daha önce öğrencilerin ilgisini çekmesi nedeniyle Web ortamına taşınmış olan Çalıştırma Tablosu yaklaşımı üzerine kurulu bu eğitimsel materyal, verilen bir algoritmanın çözülmesi istenen problemi gerçekten çözüp çözmediğinin test edilmesini sağlamaktadır. Algoritmaların sağlamasına yönelik bu test süreci sayesinde bireyler, algoritmik düşünce mantığı ve algoritma tasarımına yönelik bilgi ve becerileri pekiştirebilmektedir. İlgili araştırma konusu bağlamında, çalışmanın ilerleyen bölümleri şu şekilde organize edilmiştir: Bir sonraki bölüm altında, geliştirilen Internet tabanlı materyalin temellerinde yer alan Çalıştırma Tablosu yaklaşımına dair temel bilgilerden bahsedilmektedir. Ardından; Üçüncü Bölüm altında, ilgili yaklaşımın kullanıldığı, WebALGO adlı yazılım ortamı ve genel çalışma şekli tanıtılarak, üniversite öğrencileri arasında gerçekleştirilen değerlendirme sürecine odaklanılmaktadır. Çalışma, ulaşılan sonuçların ve gelecek çalışma yönelimlerinin tartışıldığı Dördüncü Bölüm ile sona ermektedir. 2. Çalıştırma Tablosu Yaklaşımı Çalıştırma Tablosu, yazılan bir algoritmanın, ifade edilen problemi gerçekten çözüp çözmediğini anlamak adına, örnek değerler bütünü ile kontrol işlemi yapılmasını sağlayan bir tablo düzeneği / yapısıdır. Çalıştırma Tablosu nun kullanımı oldukça basit olmakla birlikte sadece belli başlı bazı kurallara dikkat etmek gerekmektedir. Bir bakıma Çalıştırma Tablosu nun kullanım şeklini de tarif eden bu kuralları kısaca şu şekilde açıklayabiliriz: Kural 1: Algoritmadaki her bir değişken için tabloda bir sütun kullanılır ve sütunun başına ilgili değişkenin adı yazılır. Bunun dışında, algoritmada ADIM sütunu ve (eğer algoritmada ekrana yazdırma yapılmışsa) EKRAN sütunu sabittir. ADIM sütununun en solda, EKRAN sütununun da ADIM sütununun hemen sağında yer alması yerinde olacaktır. Kural 2: Algoritmada ekranı temizleme gibi bir komut kullanılmadığı sürece; ekrana yazdırılanlar, EKRAN sütununda (her yeni ekrana yazdırma adımında) alt alta eklenerek yazılır. 50 Kural 3: Mantıken, bir değişkenin aldığı son değer, başka adımlarda değişkenin içeriğine müdahale olmadığı sürece sabit kalır ve dolayısıyla yeni adımlarda da ilgili değişkenin hücresine yazılmaya devam edilir. Eğer bir adımda ilgili değişkenin değeri değişirse, yeni değer, daire içine alınarak ilgili hücreye yazılır. Kural 4: Eğer şartlarında satır iki parça halinde kullanılır; üstteki parçaya şart yazılır ve şartın DOĞRU mu YANLIŞ mı olduğu yazılır; alt parçaya ise sütunların değerleri yazılmaya devam edilir. Kural 5: Bir sütun içerisine her adımda değer yazılır [eski veya yeni değer(ler)]. Sadece algoritma başladıktan sonra ilgili bir sütun içerisinde henüz bir değer değişimi yoksa tire ( ) karakteri kullanılabilir. Kural 6: Klavyeden okuma yapılan adımlarda, EKRAN sütunundaki kısma okunan değer yazılıp sonrasına (enter) ibaresi konularak, ilgili değerin klavyeden yazılıp, Enter tuşuna basılarak okunması sağlandığı ifade edilebilir. Kural 7: Eğer problem çözümüne yönelik genel algoritma birden fazla algoritma bloğuna dayalı bir biçimde oluşturulmuşsa, o andaki algoritma adımının esasında hangi algoritma bloğunda olduğunu göstermek için ek olarak BLOK sütunu da eklenebilmektedir. Böylece algoritmik çözüm adımlarının işlevler boyutunda irdelenmesi sağlanmaktadır. Çalıştırma Tablosu na yönelik şöyle bir örnek ortaya koyabiliriz: Örnek 1: Klavyeden girilen başlangıç ve bitiş değerlerine bağlı olarak; ilgili aralıktaki tamsayıların çarpımını bulup, ekrana yazdıran algoritma: A1- Başla A2- carpim = 1 A3- Başlangıç değerini giriniz: yaz A4- baslangic oku A5- Bitiş değerini giriniz: yaz A6- bitis oku A7- carpim = carpim * baslangic - Eğer (baslangic!= bitis) ise baslangic = baslangic + 1 ve A7 ye git A9- Sonuç: carpim yaz A10- Dur Bu algoritmanın Çalıştırma Tablosu ortamında test edilmesine yönelik örnek bir çözüm şekli Tablo 1 altında gösterilmiştir.

İnet-Tr 15, XX. Türkiye'de İnternet Konferansı 1-3 Aralık 2015, İstanbul Üniversitesi Tablo 1. Örnek 1 deki algoritma için bir Çalıştırma Tablosu çözümü ADIM EKRAN baslangic bitis carpim A1 BAŞLA A2 - - - 1 A3 Başlangıç değerini giriniz: - - 1 A4 (enter) 1-1 A5 1-1 Bitiş değerini giriniz: A6 (enter) 1 5 1 1 5 1 2 5 1 2 5 2 3 5 1 3 5 6 4 5 6 A9 Sonuç: 120 A10 Eğer (baslangic!= bitiş) YANLIŞ DUR 4 5 24 5 5 24 5 5 120 5 5 120 5 5 120 Örnek 1 deki algoritma için gerçekleştirilen Çalıştırma Tablosu çözümünden de anlaşılacağı üzere; klavyeden girilen iki değer arasındaki (değerler dâhil) sayıların çarpımı, ilgili algoritma tarafından doğru bulunabilmektedir. Burada örnek çözüm 1 ve 5 değerleri için yapılmış olsa da; farklı değerler için çıkacak sonuçlar da incelenerek algoritmanın adım adım çalıştırılması; yani testi gerçekleştirilmiş olmaktadır. Bu noktada öğrenenler, algoritmadaki çözüme yönelik yazım hataları dışında; mantık hatası olup olmadığını da denetlemek suretiyle algoritmik düşünce mantığını sağlama yoluyla pekiştirme yoluna gidebilmektedir. Söz konusu bu yaklaşımın anlaşılması oldukça basit olmakla birlikte, uygulamadaki pratikliği de dikkat çekmektedir. Bir başka örnek olarak ise: Örnek 2: Klavyeden girilen bir sayının faktöriyelini bulup (x!), ekrana yazdıran algoritma: A1- Başla A2- faktoriyel = 1 A3- Bir sayı giriniz: yaz A4- x oku A5- faktoriyel = faktoriyel * x A6- Eğer (x > 1) ise x = x - 1 ve A5 ye git A7- Sonuç: faktoriyel yaz - Dur 3. Çalıştırma Tablosu ve Internet Tabanlı Bir Eğitimsel Materyal: WebALGO Çalıştırma Tablosu nun eğitimsel süreçlerde daha hızlı ve etkin kullanılabilmesi adına, söz konusu yapıyı kolay bir şekilde tasarlamaya imkân sağlayan bir yazılım sistemi daha önceleri ortaya konmuştur. C# 51

WebALGO: Algoritma Öğreniminde Internet Tabanlı Bir Eğitimsel Materyal Geliştirilmesi Utku KÖSE programlama dili yardımıyla bir tür Windows Form programı olarak tasarlanan ve geliştirilen bu yazılım ile birlikte, öğrenenlerin sağlamasını yapacakları algoritmalara ait Çalıştırma Tablosu yapılarını bilgisayar ortamında oluşturup değerlendirme yapabilmeleri sağlanmıştır. Yazılımsal Çalıştırma Tablosu, tipik sağlama tablosu içerisindeki sütunlarda ve ilgili alanlarda yer alan düzenlemelerin yardımcı araçlarla kolaylıkla yapılabildiği, kullanıcının her adım gösterimini ve adımlar içerisinde gerçekleşen kontrolleri veya değişken değer değişimi gibi durumları pratik bir şekilde tanımlayıp gösterebildiği, etkileşimli bir ortam sunmaktadır. Yazılımsal Çalıştırma Tablosu na ait genel arayüz - ekran görüntüsü Şekil 1 altında gösterilmiştir. Şekil 1. Yazılımsal Çalıştırma Tablosu na ait genel arayüz - ekran görüntüsü Sonraki süreçlerde bu yazılımın öğrenciler tarafından sevilmesi ve ilgiyle kullanılması, araştırmacının aklında Internet / Web ortamının avantajlarından faydalanarak, daha etkin bir sürecin elde edilebileceği fikrini ortaya çıkarmıştır. Sonuç olarak da, geliştirilmiş olan sisteme Web desteği getirilmiş ve öğreticinin kendi arayüzünden sunduğu örnek Çalıştırma Tablosu problemlerinin otomatik olarak öğrencilerin havuzuna düştüğü bir eğitimsel ortam tasarlanmıştır. Geliştirilmiş olan bu yeni Internet tabanlı eğitimsel materyale, Web Odaklı Algoritma Öğrenimi düşüncesinden türetilen, WebALGO adı verilmiştir. 4. Değerlendirme WebALGO nun algoritma ve dolayısıyla bilgisayar programlama öğretimi aşamasındaki etkinliğini değerlendirmek adına uygulamaya dayalı bir test yaklaşımı ortaya konulmuştur. Buna göre, ilgili yazılım ortamının, Uşak Üniversitesi Bilgisayar Programcılığı Ön Lisans programına kayıtlı 92 öğrenci tarafından, Programlama Temelleri ve Programlamaya Giriş adlı dersler kapsamında (bir yarı-yıl süresince) kullanılması sağlanmış ve 14 haftalık sürece tekabül eden ders sonunda, 10 adet ifade içeren bir anket uygulanarak çeşitli bulgular elde edilmiştir. WebALGO nun, ilgili dersler boyunca kullanımına ve etkinliğine ilişkin düşüncelere odaklanan anket çalışması ile birlikte, Likert Ölçeği ne göre (1: Tamamen Katılmıyorum ; 2: Katılmıyorum ; 3: Karasızım ; 4: Katılıyorum ; 5: Tamamen Katılıyorum ) elde edilmiş olan bulgular Tablo 2 de sunulmuştur. Tablo 2. WebALGO nun kullanım / test sürecine yönelik uygulanan anket ve elde edilen bulgular İfade Dönütler* 1 2 3 4 5 WebALGO ile algoritma kavramını 1 4 18 28 41 daha iyi anladım. WebALGO ile bilgisayar programlama 2 5 15 33 37 öğretilebilir. yaklaşımı öğrenme etkinliğimi olumsuz 34 38 13 7 0 etkiledi. Programlama derslerinde buna benzer süreçlerin yer 1 5 13 30 43 almasını isterim. ile adım adım 0 1 11 26 54 çalıştırmayı anladım. ile algoritmalardaki mantık hatalarını 1 3 29 31 28 daha kolay bulabilirim. Web üzerinden problem sunulmasını 1 1 8 26 56 sevdim. bilgisayar programlamayı daha 2 6 18 24 42 iyi anlamamı sağladı. WebALGO ile değişken, şart kontrolü, döngüler gibi; programlama 0 5 12 18 48 yaklaşımlarını anladım. WebALGO nun geliştirilmesini 0 1 22 27 42 isterim. Toplam Katılımcı: 92 *Likert Ölçeği: 1: Tamamen Katılmıyorum ; 2: Katılmıyorum ; 3: Karasızım ; 4: Katılıyorum ; 5: Tamamen Katılıyorum 52

İnet-Tr 15, XX. Türkiye'de İnternet Konferansı 1-3 Aralık 2015, İstanbul Üniversitesi Elde edilen bulgular, değerlendirme sürecine dâhil olan öğrencilerin genel anlamda WebALGO nun eğitimsel süreçlerde kullanımından memnun olduğunu göstermektedir. Bu bağlamda geliştirilen Internet / Web tabanlı yazılımın ve içerisinde işe koşulan Çalıştırma Tablosu yaklaşımın etkin bir rol oynadığından bahsetmemiz mümkündür. 5. Sonuç ve Gelecek Çalışmalar Bu çalışma kapsamında, bilgisayar programlama öğretiminde etkin bir araç olarak kullanılabileceği düşünülen; WebALGO yazılımı kısaca tanıtılmıştır. Temel anlamda algoritmaların adım adım çalıştırılmak suretiyle sağlamasının yapılması mantığından yola çıkan Çalıştırma Tablosu yaklaşımını içeren bu yazılım, söz konusu öğrenim sürecinin organize bir şekilde Internet üzerinden sunulmasına etkin katkı sağlamaktadır. Bunun yanında WebALGO, bilgisayar programlama kapsamında önemli olan değişkenler, şart kontrolleri, döngüler gibi kavramların özellik ve işlevlerinin ön plana çıkarılmasına odaklanmış bir algoritmik düşünce mantığı geliştirme serüveninin de adımlarını atmaktadır. WebALGO nun değerlendirme süreci ile birlikte üniversite öğrencilerinden olumlu dönütler alması, eğitimsel anlamda etkin bir yol izlendiği konusunda olumlu fikirler oluşmasını sağlamıştır. Bu noktada yazılım içerisinde sunulan Çalıştırma Tablosu yaklaşımına yönelik olumlu eğilimler de dikkat çekmiştir. Özellikle değerlendirme süreciyle elde edilen bulgular, WebALGO nun ilerleyen zamanlarda geliştirilmesi yönünde çeşitli fikirlerin de oluşmasını sağlamıştır. Buna göre, yazılım içerisindeki Çalıştırma Tablosu nun daha karmaşık programlama yaklaşımlarını (Örneğin Nesne Yönelimli / Tabanlı Programlama) kapsayacak bir biçimde genişletilmesi ve böylece WebALGO nun de kapsamının genişletilmesi düşünülmektedir. Ayrıca WebALGO nun Android, ios, ve Windows Phone gibi işletim sistemlerini kapsayacak şekilde, hem Web browser bazlı, hem de mobil bazlı olarak düzenlenmesi de düşünülmektedir. 6. Kaynaklar [1] Santos-Carrillo, R. The importance of coding, Teq It s all about learning, [Online] http://www.teq.com/blog/2013/12/part-1-importancecoding/ (2013). [2] Crow, D. Why every child should learn to code, The Guardian, [Online] http://www.theguardian.com/technology/2014/feb/07/ year-of-code-dan-crow-songkick/ (2014). [3] Tynker, Four reasons why kids should learn programming, Tynker, [Online] http://www.tynker.com/blog/articles/stemeducation/four-reasons-why-kids-should-learnprogramming/ (2013). [4] Corbett, A. T. and Anderson J. R Student modeling in an intelligent programming tutor, E. Lemut, B. du Boulay, G. Dettori (Ed.), Cognitive Models and Intelligent Environments for Learning Programming, New York, Springer-Verlag: 135-144, (1993). [5] Jiménez-Díaz, G., Gómez-Albarrán, M., Gómez- Martín, M. A. and González-Calero, P. A. ViRPlay: Playing roles to understand dynamic behavior, Workshop on Pedagogies and Tools for the Teaching and Learning of Object Oriented Concepts, (2005). [6] Baghaei, N. A collaborative constraint-based adaptive system for learning object-oriented analysis and design using UML, V. P. Wade, H. Ashman, B. Smyth (Ed.), Adaptive Hypermedia and Adaptive Web-Based Systems, Berlin, Springer: 398-403, (2006). [7] Othman, A. A., Pislaru, C. and Impes, A. M. Improving the quality of technology-enhanced learning for computer programming courses, International Journal of Information and Education Technology, 4 (1): 83-88, (2014). [8] Powell, L. M. and Wimmer, H. Evaluating the effectiveness of self-created student screencasts as a tool to increase student learning outcomes in a handson computer programming course, Proceedings of the Information Systems Educators Conference, 2167: 1435, (2014). [9] Malliarakis, C., Satratzemi, M. and Xinogalos, S. Educational games for teaching computer programming, C. Karagiannidis, P. Politis, I. Karasavvidis (Ed.), Research on e-learning and ICT in Education, New York, Springer-Verlag: 87-98, (2014). [10] Henderson, P. Computer science unplugged, Journal of Computing Sciences in Colleges, 23(3): 168-168, (2008). [11] Bell, T., Alexander, J., Freeman, I. And Grimley, M. Computer science unplugged: School students doing real computing without computers, The New Zealand Journal of Applied Computing and Information Technology, 13(1): 20-29, (2009). [12] Visnjic, F. From 0 to C Teaching programming using a tangible approach, Creative Applications Network, [Online] http://www.creativeapplications.net/theory/from-0-toc-teaching-programming-using-a-tangible-approach/ (2012). 53

54