• Sonuç bulunamadı

4. BÖLÜM: HACETTEPE ÜNİVERSİTESİ EBYS UYGULAMASI ÜZERİNDE

4.4. SUNUCU LOGLARI ÜZERİNDE ROTA ANALİZİ

Web sunucu logları web sayfalarına erişim hakkında belli bilgiler içerir. Bu bilgiler veri madenciliği ve web analitiği yöntemleri kullanılarak analiz edildiğinde kullanıcıların web sayfası ziyaret alışkanlığı, sıklığı ve davranış şekli ile ilgili bilgiler elde edilebilir. Böylece web uygulamalarının kullanılabilirliği ve performansı ölçülerek hizmet kalitesinde iyileştirmeler yapılmasına olanak sağlar.

Web sunucu logları üzerinde sadece istatistiksel değil rota analizine dayalı çıkarımlar da yapılabileceğini gösteren birçok araştırma bulunmaktadır. “Tekrarlayan Desenleri Analiz Ederek Kullanılabilirlik ve Kullanıcı Deneyimini Değerlendirme Sistemi” adlı çalışmada farklı türdeki yazılımlar için kullanıcıların sistemi kullanırken oluşturdukları tekrarlı desenler ortaya çıkarılarak ara yüz problemlerinin belirlenebildiği kanıtlanmıştır (Kim, Kang, Kim, 2013).

Y.T Wang (2011) kullanıcıların web sitesinde gezinme yollarını kaydetmek için yol geçişi grafiği olarak adlandırılan kompakt bir grafik yapısı önermiştir. Michael Munk (2010) bir web portaline erişim saatlerine dayanarak web portalini iyileştirmeyi önermiştir. Das (2009) sunucu log kayıtlarını ön işlemlerden geçirerek rota analizi tekniğini kullanarak elektronik kaynaklara erişim ile ilgili URL bilgilerini araştırmayı hedeflemiştir. Nicolas (2008) makine öğrenmesi ve markov-zinciri tekniklerini kullanarak kendini uyarlayabilen fayda tabanlı web oturum yönetimi geliştirmiştir. Kleinberg ve Tomkins web sayfalarını ayırt etmek için web bağlantılarının yapısını araştırmıştır. Liu and Keselj (2007) kullanıcı dolaşımını otomatik sınıflandırarak kullanıcının gelecekteki dolaşımını tahmin eden bir model sunmuşlardır.

İlişkilendirme kuralları doğrudan bağlantılı olmasalar bile birlikte ziyaret edilen sayfaları keşfetme ve bu bilgi ile farklı grupların ortak ilgilerini ortaya çıkarma amaçlı kullanılmaktadır. Ayrıca bu bilgilerle birbiriyle ilgisiz fakat kullanıcıların bir arada eriştiği sayfalar arasına bağlantılar eklenerek web uygulamasını iyileştirmek mümkün olmaktadır (Chen, Park, Yu,1996; Punin, Krishnamoorthy, Zaki, 2001; Batista, Ario, Silva, 2002; Zaiane, Xin, Han, 1998; Shen, Cheng, Steinberg, 2000). Birbiri ardına erişilen web sayfaları bulmak, kullanıcıların faaliyetlerini, eğilimlerini ve bir sonraki ziyaret edilecek sayfalara yönelik tahminler geliştirmeyi kolaylaştırmaktadır. Borges ve Levene (1999), olasılıksal dilbilgisi tabanlı yaklaşımı, yani kullanıcı gezinme davranış kalıplarını yakalamak için bir Ngram modelini kullanır. Ngram modeli, göz atılan son N sayfanın, ziyaret edilecek bir sonraki sayfayı tanımlama olasılığını etkilediğini varsayar. Jin, Zhou ve Mobasher (2004) navigasyon izlerini keşfetmek için Olasılıksal Gizli Semantik Analiz (PLSA) yöntemini kullanmış, kullanıcılar arasında ve kullanıcılar ile web sayfaları arasındaki gizli semantik ilişkiler tespit edilebildiğini savunmuşlardır. Jespersen, Pedersen ve Thorhauge’ın (2003) Markov varsayımları, web uygulaması kullanımının yapısını araştırmak için kullanılmaktadır.

Bu çalışma kapsamında Rota Analizi yöntemi kullanılarak, sunucu log kayıtlarından kullanıcıların EBYS kullanımı sırasında en çok ve en az izledikleri rotaların ve sıklıkla ardışık olarak erişilen sayfaların tespit edilmesi amaçlanmaktadır.

4.4.1. Test Süreci ve Yapılan Çalışmalar

Şekil 15. Sunucu Logları üzerinde Rota Analizi için 7 aşamalı bir çalışma Log kayıtlarının rota analizinde kullanılabilmesi için öncelikle aşağıda açıklanan ön işlemlerden geçmeleri gerekir.

4.4.1.1. Veri Temizleme

Bir web sayfası çağrısı yapıldığında sayfa ile ilgili jpg, png vb. resim dosyaları, css uzantılı stil dosyaları ve gerekli dosyalar da çağırılmakta fakat bunlar aynı sayfanın öğeleri olduğu için rota analizinde temizlenmesi gerekmektedir (Liu ve Keselj, 2007). Erişim log kayıtlarında herhangi bir sayfayı işaret etmeyen, resim, javascript ve stil dosyası çağrılarını içeren satırlar SQL metin işleme fonksiyonları kullanılarak ayıklanmıştır.

4.4.1.2. Sayfa Adreslerinin Kodlanması

Tekil sayfa adresleri veri tabanında URL tablosuna kaydedilip, numaralandırılmıştır. Sık görülen sayfalara okunurluğu arttırmak için harf kodu verilmiştir. Sık erişilen EBYS sayfaları ve harf kodları aşağıdaki gibidir:

Tablo 15. Sık Erişilen EBYS Sayfaları ve Harf Kodları SAYFA HARF KODU evrakBelgeEkle.jsp BE birimGelenEvrakListesi.jsp BGL DownloadBelgeServlet D birimDosyaAcma.jsp DAC dosyaEvraklari.jsp DE birimDosyaListesi.jsp DL birimEvrakOlusturma.jsp E evrakArama.jsp EA evrakDetayliArama.jsp EDA frameKapat.jsp FK kullaniciGirisi.jsp G genelGidenEvrak.jsp GDE birimGidenEvrakListesi.jsp GDL gelenEvrakListesi.jsp GL listeYardimiBirimToplu.jsp H isakisGelenIsler.jsp İ logout.jsp L listeYardimiDosyaPlani.jsp LDP guvenlikVekalet.jsp V birimEvrakYazisma.jsp Y birimEvrakYazismaCoklu.jsp YÇ birimYazismaGidenEvrakListesi.jsp YDL birimYazismaGelenEvrakListesi.jsp YL evrakSablonListesi.jsp S 4.4.1.3. Oturum Tespiti

Kullanıcılar gün içinde web uygulamasını bir veya birden fazla defa ziyaret edebilir. Her bir ziyaret sırasındaki web sayfası çağrıları bir oturumu meydana getirir. Kullanıcıların bir web uygulamasını kullanırken izledikleri rotayı belirleyebilmek için kullanıcı oturumlarının ayırt edilmesi gerekir. Oturumları birbirinden ayırmak için literatürde 3 yöntem bulunmaktadır. Oturumlar, toplam oturum süresine göre, sayfada geçirilen süreye göre ve sayfa kaynağına göre belirlenebilir (Spiliopoulou, 2003). Bu araştırmada toplam oturum süresi temel alınmış, kullanıcının 10 dakika ve 15 dakika içinde yaptığı sayfa çağrıları bir oturum olarak kabul edilmiştir. Örneğin 10 dakikalık O1 oturumu için ilk sayfa çağrısının zamanı t0 ve ikinci sayfa çağrısı zamanı t1 ise, ikinci sayfa çağrısının O1

oturumuna dahil edilebilmesi için, t1- t0 <=10 olmalıdır (Spiliopoulou, Mobasher, Berendt ve Nakagawa, 2003).

Oturum tespiti için MS.Net C# dilinde bir masaüstü program geliştirilmiştir. Bu program ile istenen zaman aralığı (n dakikalık oturumlar) için ip bazında oturum listesi ve her bir oturum süresince erişilen URL dizisi belirlenmiştir. Veri tabanında oturumları kaydetmek için bir tablo tasarlanmıştır. Program her bir log kaydı için aşağıdaki adımları izlemektedir:

Log kayıtlarına sırasıyla erişilir ve Oturum tablosunda aynı ip ’ye sahip, en fazla n dakika (belirlenen oturum süresi: 10 dk/15 dk) önce gerçekleşmiş bir oturum kaydı olup olmadığı kontrol edilir;

 Yok, ise; yeni bir oturum kaydı yaratılır. Kaydın URL listesi alanına erişilen sayfa kodu yazılır.

 Var ise; bulunan oturum kaydının URL listesine erişilen log kaydındaki sayfa kodu, eklenir.

Bu işlemler sonucunda her oturum için bir URL dizilimi, yani tam rota elde edilir.

Şekil 16. Oturum-Rota İlişkisi 4.4.1.4. Tüm URL Dizilimlerinin Belirlenmesi

Oturumlar ve URL dizileri belirlendikten sonra kullanıcıların oturumlar sırasında EBYS programını en sık hangi rotayı izleyerek kullandıklarını belirlemek için bir program yazılmıştır. Bu program aşağıdaki işlemleri gerçekleştirmektedir.

4.4.1.5. Tüm Alt URL Dizilimlerinin Belirlenmesi

Program ile oturum tablosu kayıtlarındaki URL dizilerinin aşağıdaki örnekte de sunulan 4’lü, 5’li, 6’lı .... 20’li tüm alt dizilimleri çıkarılmıştır.

Tablo 16. 8 Sayfalık Bir Oturumdaki URL Dizilimi: G,İ,Y,D,Y,BE,D,FK

4 Sayfalık

Rotalar

5 Sayfalık

Rotalar

6 Sayfalık

Rotalar

7 Sayfalık

Rotalar

8 Sayfalık

Rotalar

G,İ,Y,D G,İ,Y,D,Y G,İ,Y,D,Y,BE G,İ,Y,D,Y,BE,D G,İ,Y,D,Y,BE,D,FK İ,Y,D,Y İ,Y,D,Y,BE İ,Y,D,Y,BE,D İ,Y,D,Y,BE,D,FK

Y,D,Y,B Y,D,Y,BE,D Y,D,Y,BE,D,FK D,Y,BE,D D,Y,BE,D,FK

Y,BE,D,FK

4.4.1.6. Alt URL Dizilimlerinin Oturumlarda Görülme Sıklığını Belirleme

Tüm oturumlarda bu URL dizilerinin toplam görülme sayısı hesaplanmış, URL dizisi ve kullanım sıklığı PATH_COUNT tablosuna kaydedilmiştir.

4.4.1.7. URL Dizilerini Görülme Sıklıklarına Göre Sıralama ve Yorumlama

Path_Count tablosu üzerinde URL dizilimlerinin kullanım sıklığı istatistiklerini hesaplayan SQL sorguları geliştirilmiş, bu sorgular kullanılarak en sık ve en az görülen rotalar belirlenmiştir.