YÖNLENDİRİCİ ALGORİTMALARI İÇİN WEB TABANLI EĞİTİM SİMÜLATÖRÜ Hakan KAPTAN1 , Doç.Dr.Yılmaz ÇAMURCU2 Marmara Üniversitesi Teknik Eğitim Fakültesi Elektronik Bilgisayar Eğitimi Bölümü, Göztepe/İstanbul, [email protected] 2 Marmara Üniversitesi Teknik Eğitim Fakültesi Elektronik Bilgisayar Eğitimi Bölümü, Göztepe/İstanbul, [email protected] 1- GİRİŞ Web Tabanlı Eğitim gelişen bilgisayar ve İnternet teknolojisiyle birlikte hızla artış göstermiş ve çok kullanılan bir eğitim ortamı haline gelmiştir. Bir yandan eğitim kurumları, diğer yandan şirketler kendi Web Tabanlı Eğitim modelleri geliştirmektedirler. Çünkü hızla artan dünya nüfusunun eğitimi, iki yılda bir yarılanan teknolojinin takip edilmesi ancak web tabanlı eğitimin kullanılmasıyla mümkün görünmektedir[1]. Web tabanlı eğitim modellerinde kullanılan etkileşimli sayfalar eğitim verilen dersin işlenişini kolaylaştırmakta, dersin eğitim yönünden kalitesini arttırmaktadır[2]. Dersi etkileşimli sayfalardan izleyen öğrenciler gerçek hayatta gözle göremeyecekleri birçok olayı deneyerek görebilmekte ve konuyu daha kolay anlayabilmektedir. Web Tabanlı Eğitim için etkileşim, web sayfalarındaki gerekli yerlere animasyon, simülasyon, ses, görüntü ve film ile sağlanabilir. Animasyonlar ile ders içeriğine ait bir olayın nasıl olduğu canlandırılabilir, simülasyonlar ile gerçek hayatta gözle görülemeyecek olaylar, tehlikeli deneyler veya pahalı araç gereç gerektiren laboratuar uygulamaları gerçekleştirilebilir. Web Tabanlı Eğitim sayfalarını etkileşimli yapmanın, sayfalara animasyonlar ve simülasyonlar eklemenin bir yolu Java Programlama Dili ile applet oluşturmaktır. Java appletleri Java Programlama Dili kaynak kodundan web sayfalarında çalıştırılmak üzere derlenmiş programlardır[3]. Java appletleriyle web sayfaları üzerinde hesaplamalar, animasyonlar, simülasyonlar yapılabilir. Eğer istenirse kullanıcı tarafından girilen değerlere işlem yaptırılıp sonuçlar ekranda görüntülenebilir[3]. Web gözatıcıları Java Programlama Dili ile yazılmış appletleri sunucu bilgisayardan getirebilir, görüntüleyebilir ve eğer varsa applet üzerindeki animasyon ve simülasyonları çalıştırabilirler. Web Tabanlı Eğitim sayfalarında kullanılan animasyon ve simülasyonların Java Programlama Dili tasarlanmasının bazı nedenleri şöyle sıralanabilir: Java dili bilgisayar ağları üzerindeki farklı bilgisayar platformlarında kullanılacak yazılımları geliştirmek amacıyla geliştirilmiştir[3],[4],[5]. Java Programlama Dili bilgisayar ortamında kullanılabilecek en güvenli yazılımdır[4]. Girilen web sayfasında bulunan Java appletinin bilgisayara virüs bulaştırmasını veya başka bir istenmeyen işlem yapmasını önlemek için Java Programlama Dilinde bir dizi mekanizma oluşturulmuştur. Java güvenlik mekanizması Java appletinin kullanıldığı makinedeki veya İnternet üzerindeki bir başka makinedeki dosya sistemini okumasına veya bu dosya sistemine bir şey yazmasına, sunucu makinenin dışındaki bir makineye bağlanmasına ya da bunların dışındaki tehlikeli işlemlere izin vermez. İnternet ortamında bir web sayfasındaki appleti çalıştırmak güvenlik açısından son derece zararsızdır. Diğer taraftan C++, Delphi gibi programların özel kütüphaneler kullanarak yaptıkları ağ işlemlerini Java Programlama Dili normalde yapabilir durumdadır. WEB TABANLI EĞİTİM MODELİ İÇİN TASARLANAN SİMÜLATÖRLER Veri İletişim dersi içerisinde yer alan konuların daha etkili öğretimi ve öğrencilerin sistemlerin gerçek çalışma prensiplerini kavrayabilmeleri amacıyla simülatörlerin kullanımı uygun olacaktır[4],[5]. Bu çalışmada M.Ü. Teknik Eğitim Fakültesi Elektronik Bilgisayar Eğitimi Bölümünde verilen Veri Haberleşme dersine destek olması için hazırlanan Web Tabanlı Eğitim modelinden simülasyon örnekleri sunulacaktır. Java Programlama Dili ile tasarlanan bu simülatörler, bilgisayar ağlarında yönlendiricilerin paketleri yönlendirmede kullandıkları en kısa yol ve uzaklık vektörü algoritmalarının öğretilmesine yöneliktir Bu çalışmada tasarlanan simülatörler, Web Tabanlı Eğitim sayfalarında verilen teorik bilgilerin anlatımlarından sonra gerekli olan yerlere yerleştirilmişlerdir. Simülatörler geliştirilirken öğrenci açısından kullanımının kolay olmasına dikkat edilmiştir. Böylece konuyu takip eden öğrencilerin simülatörleri daha kolay anlamaları sağlanmıştır. Geliştirilen simülatörlerin konunun teorisiyle tam olarak örtüşmesi dikkate alınmıştır. Bilgisayar ağlarında kullanılan yönlendirme algoritmalarının çalışmasını gözle veya cihazlar kullanarak izlemek mümkün değildir. Bu algoritmaların çalışmasını izlemek ancak adım adım çalıştırılan simülatörlerle mümkün olabilir. 1. En Kısa Yol Algoritması Simülatörü Bu simülatörün yapılış amacı bir karışık bir ağ sistemini oluşturan yönlendiricilerin kaynaktan hedefe kadar olan en kısa yolu nasıl bulduğunun anlatılmasıdır. Bu simülatörü kullanan öğrenci İnternet ve benzeri büyük sistemlerde çalışan en kısa yol algoritmasının çalışmasını, istediği değerleri atayarak daha kolay kavrayabilir. Bu simülatörde toplam sekiz yönlendirici kullanılarak sabit bir ağ modeli tasarlanmıştır. Şekil 1’de en kısa yol algoritması simülatörü görülmektedir. Sistemde A yönlendiricisi kaynak, H yönlendiricisi hedef olarak belirlenmiştir. Simülatörde yönlendiriciler arasındaki metrik kullanıcının değer ata butonuna basmasıyla rastgele olarak belirlenmektedir. Her yönlendirici bu değerleri kullanarak kendisine gönderilen bilgiyi en kısa yoldan hedefe göndermek üzere programlanmıştır. Simülatör, kaynak ve hedef arasındaki en kısa yolun bulunmasını adım adım olarak gerçekleştirmektedir. Her adımda yönlendiriciler sırasıyla en kısa yolu bulmak için değerleri hesaplamakta ve sonuçta kaynak ile hedef arasındaki en kısa yol belirlenmektedir. Şekil 1 En Kısa Yol Algoritması Simülatörü Applet ilk çalıştırıldığında kullanıcının “değer ata” butonuna basmasını beklemektedir. Değer ata butonuna basıldığında tüm yönlendiriciler arasındaki rastgele olarak atanan metrik değerleri, kullanıcı değer ata düğmesine tekrar basarak yeniden değer atayabilir. Böylece kullanmak istediği değerler gelinceye kadar atama yapabilir. Değerler atandıktan sonra “ileri” butonuna basılarak A yönlendiricisinin komşularına olan uzaklıklar belirlenir. İleri butonuna basmaya devam edilerek sırasıyla tüm yönlendiricilerin komşularına olan uzaklıkları belirlenir. İleri butonu ile gelinen son durumda simülatör A yönlendiricisinden H yönlendiricisine giden en kısa yolu belirler ve bu yolun toplam metrik değerini hesaplayarak yazmaktadır. Simülatör çalışırken herhangi bir anda “geri” butonuna basılarak bir önceki adıma dönmek mümkündür. Yine simülatör çalışırken en kısa yol bulunmadan değer ata butonuna basılarak yeniden değer atamak veya “sil” butonuna basarak başlangıç noktasına dönmek ve böylece simülatörü yeniden başlatmak mümkündür. 2. Uzaklık Vektörü Algoritması Simülatörü Bu simülatörün yapılış amacı bir bilgisayar ağını oluşturan yönlendiricilerin kaynaktan hedefe olan en kısa yolu bulma yöntemlerinden uzaklık vektörü algoritmasının nasıl çalıştığının anlatılmasıdır. Şekil 9 Uzaklık Vektörü Algoritması Simülatörü Uzaklık vektörü simülatörü toplam sekiz yönlendiriciyle sabit bir ağ modeli oluşturularak tasarlanmıştır. Şekil 2’de uzaklık vektörü algoritması simülatörü görülmektedir. Sistemde B yönlendiricisi kaynak, H yönlendiricisi hedef olarak belirlenmiştir. Applet her çalıştırıldığında yönlendiriciler arasındaki metrik rastgele olarak belirlenmektedir. Her yönlendirici bu metrik değerlerini kullanarak, uzaklık vektörü çalışma prensibi uyarınca tüm komşularının uzaklık bilgilerine sahip olur. Applet çalıştırıldığında yönlendiriciler arasındaki rastgele olarak atanan metrik değerlerine göre B yönlendiricisi ile onun komşuları olan D ve A yönlendiricilerinin diğer yönlendiricilere olan en kısa uzaklık toplamları hesaplanarak yönlendirme tablolarına yazılmakta ve B yönlendiricisinden H yönlendiricisine olan en kısa yol farklı bir renkle çizilmektedir. SONUÇ Web Tabanlı Eğitim sayfalarında kullanılan simülatörler, kullanıcıların gerçek hayatta gözle izleyemeyecekleri çalışma ilkelerini ve tekniklerini adım adım ve tekrar tekrar izlemelerine imkan vererek dersin işlenişine kolaylıklar sağlamakta, öğrencinin dersi anlamasına yardımcı olmakta ve dolayısıyla eğitim kalitesini yükseltmektedir. Gerekiyorsa simülatör üzerindeki değerlerin değiştirilerek, değişen şartlara bağlı olarak olayları izleyerek konu hakkında daha gerçekçi ve doğru bilgi sahibi olabilmektedir. Web tabanlı eğitimin etkinliğini ve kalitesini arttıran en önemli unsurlardan biri etkileşimli kullanma fırsatı verecek animasyon ve simulasyonların bulunduğu web sayfalarıdır. REFERANSLAR [1] Horton, W., “Designing Web-Based Training”, John Wiley & Sons, Inc. New York, 2000 [2] Hall, B., Web-Based Training Cookbook. John Wiley & Sons, Inc. New York, 1997 [3] Sun Java Homepage http://www.sun.com/java/ (Erişim tarihi: Eylül 2001) [4] Cabell,B., Rencis,J., Alam,J., Grandin,H., Using Java to Develop Interactive Learning Material for the World-Wide Web http://www.ijee.dit.ie/articles/999971/article.html Erişim Tarihi: 6/11/2001 [5] Internet Related Technologies, Java Applets in Education http://tech.irt.org/articles/js151/ Erişim Tarihi: 6/11/2001