Geri Dön

Haki: A runtime verification tool for javascript MVC web applications

Hakı: Javascript MVC web uygulamaları için çalışma zamanı doğrulama aracı

  1. Tez No: 459333
  2. Yazar: İBRAHİM BİLGE
  3. Danışmanlar: DOÇ. DR. AYSU BETİN CAN
  4. Tez Türü: Yüksek Lisans
  5. Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
  6. Anahtar Kelimeler: Belirtilmemiş.
  7. Yıl: 2016
  8. Dil: İngilizce
  9. Üniversite: Orta Doğu Teknik Üniversitesi
  10. Enstitü: Enformatik Enstitüsü
  11. Ana Bilim Dalı: Bilişim Sistemleri Ana Bilim Dalı
  12. Bilim Dalı: Belirtilmemiş.
  13. Sayfa Sayısı: Belirtilmemiş.

Özet

Biz bu tezde, JavaScript – AngularJS uygulamalarının view ve model bağlantılarında oluşan tutarsızlıkları etkin bir şekilde tespit edebilen bir yaklaşım sunmaktayız. JavaScript, günümüzde web uygulaması geliştirme alanında kullanılan en yaygın betimleme dillerinden biridir. Oldukça dinamik olan yapısı sayesinde esnek ve etkin kod yazma imkânı sağlar. Buna ek olarak birçok yapısal çatı geliştirilmiştir. Bu çatıların en popüler olanlarından biri MVC (Model-View-Controller) mimarisini kullanan AngularJS'dir. JavaScript'in dinamik yapısına, AngularJS'in soyut ve katmanlı mimarisi de eklenince kodlama yapmak oldukça zorlayıcı bir hale gelebilir. Öyle ki geliştirilen yazılımı okunamaz, bakım yapılamaz ve özellikle güvenilemez bir hale getirebilir. Ayrıca günümüzde uygulamaların tutarlılığını ve doğrulamasını zorlaştıran kişiselleştirilmiş bileşen geliştirebilme imkanı da bu JavaScript çatılarının en büyük özelliklerinden biri olarak sayılmaktadır. Literatürdeki diğer çalışmalardan farklı olarak bizim bu çalışmadaki amacımız view ve model bağlantılarında oluşan tutarsızlıkları etkin bir şekilde tespit edebilen bir yaklaşım sunmaktır. Bu amaçla HAKI adını verdiğimiz aracı geliştirdik. Aracımızı 2 farklı uygulama üzerinde test ettik; bir büyük çaplı gerçek bir uygulama ve bir de daha küçük kapsamlı, içerisine hatalar yerleştirilmiş bir uygulama. Aracımız ilk uygulama için 8 tanesi önemli olmak üzere 55 hata ve hataya neden olabileceğini düşündüğümüz 35 tane de uyarı tespit etmiş ve raporlamıştır. Ayrıca bu deneyler sırasında HAKI sebebiyle oluşan performans kaybının göz ardı edilebilir derecede minimum olduğu görülmüştür.

Özet (Çeviri)

In this thesis, we propose an efficient approach for locating inconsistencies in view-model bindings of JavaScript AngularJS web applications. JavaScript is one of the most common scripting languages used for developing web applications. It can be used to create flexible, efficient code thanks to its highly dynamic nature. In addition, many structural frameworks have been developed for building even more extensible and more dynamic web applications. One of the most popular of these frameworks is AngularJS which uses the MVC (Model-View-Controller) pattern. The dynamism of JavaScript including abstraction and layering of AngularJS can make coding very challenging by making it open for mistakes and vulnerable to inconsistencies that create unreadable, not maintainable, and particularly, unreliable code. In addition, custom web components remain a challenge for verification and consistency of the applications whereas these components are considered the biggest feature of JavaScript frameworks nowadays. Differing from the existing studies in literature, our aim in this study is to propose an effective and compact approach to locate inconsistencies in view-model bindings including type related errors and errors about custom web components. We introduce a tool called HAKI that executes runtime verification process on JavaScript - AngularJS applications and locates errors and warnings by using dynamic analysis. We evaluated our tool using two sets of experiments, one large scale real application and one smaller application with injected faults. Our tool located 55 errors in real application with 8 of them are evaluated as major errors; it also reported 35 warnings that can possibly cause errors. In addition, the runtime verification overhead is minimal.

Benzer Tezler

  1. Türkiye ve Azerbaycan arasındaki yatırımların hukuki ve iktisadi açıdan incelenmesi

    Investi̇gati̇on of investments between Azerbaijan and Turkey from a legal and economic point of view

    SABİNA HASANOVA

    Yüksek Lisans

    Türkçe

    Türkçe

    2015

    Ekonomiİstanbul Ticaret Üniversitesi

    Uluslararası Ticaret Hukuku ve Avrupa Birliği Ana Bilim Dalı (disiplinlerarası)

    PROF. DR. ÖMER ÖZKAN

  2. Yüzey sularından aktif karbon ve ultrafiltrasyon teknolojileri ile içilebilir su eldesi

    Drinking water production from surface water using activated carbon and ultrafiltration technologies

    BÜŞRA KARAMAN

    Yüksek Lisans

    Türkçe

    Türkçe

    2017

    Kimya Mühendisliğiİstanbul Teknik Üniversitesi

    Kimya Mühendisliği Ana Bilim Dalı

    PROF. DR. MELEK TÜTER

  3. Anadolu Selçuklu Devletinde üç kardeş devri: 1246-1266

    Three brothers time in Anatolian Seljuks: 1246-1266

    KANSU EKİCİ

    Yüksek Lisans

    Türkçe

    Türkçe

    2005

    TarihSüleyman Demirel Üniversitesi

    Tarih Ana Bilim Dalı

    PROF. DR. KEMAL GÖDE

  4. Советско-турецкие отношения на кавказе в 1918-1923 гг.

    Kafkasya'da 1918-1923 yıllarında Sovyet-Türk münasebetleri

    MUSTAFA ÖZTÜRK

  5. Türkiye'de su hakkı

    The right to water in Turkey

    YILDIZ AKEL ÜNAL

    Doktora

    Türkçe

    Türkçe

    2021

    HukukGalatasaray Üniversitesi

    Kamu Hukuku Ana Bilim Dalı

    PROF. DR. ERDOĞAN BÜLBÜL