Haki: A runtime verification tool for javascript MVC web applications
Hakı: Javascript MVC web uygulamaları için çalışma zamanı doğrulama aracı
- Tez No: 459333
- Danışmanlar: DOÇ. DR. AYSU BETİN CAN
- Tez Türü: Yüksek Lisans
- Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
- Anahtar Kelimeler: Belirtilmemiş.
- Yıl: 2016
- Dil: İngilizce
- Üniversite: Orta Doğu Teknik Üniversitesi
- Enstitü: Enformatik Enstitüsü
- Ana Bilim Dalı: Bilişim Sistemleri Ana Bilim Dalı
- Bilim Dalı: Belirtilmemiş.
- Sayfa Sayısı: 57
Ö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
- Method-approach interaction: The effects of learning cycle vs traditional and contextual vs non-contextual instruction on 11th grade students achievement in and attitudes towards physics
Yöntem-yaklaşım etkileşimi: Öğrenme döngüsüne karşı geleneksel ve bağlam temelliye karşı bağlamsız öğretimlerin 11. sınıf öğrencilerinin fizikteki başarı ve tutumlarına etkileri
HAKİ PEŞMAN
Doktora
İngilizce
2012
Eğitim ve ÖğretimOrta Doğu Teknik ÜniversitesiOrtaöğretim Fen ve Matematik Alanları Eğitimi Ana Bilim Dalı
YRD. DOÇ. DR. ÖMER FARUK ÖZDEMİR
- Development of a three-tier to assess ninth grade students' misconceptions about simple electric circuits
Dokuzuncu sınıf öğrencilerinin basit elektrik devreleri ile ilgili kavram yanılgılarını ölçmek amacıyla üç basamaklı bir testin geliştirilmesi
HAKİ PEŞMAN
Yüksek Lisans
İngilizce
2005
Eğitim ve ÖğretimOrta Doğu Teknik ÜniversitesiOrtaöğretim Fen ve Matematik Alanları Eğitimi Ana Bilim Dalı
Y.DOÇ.DR. ALİ ERYILMAZ
- Hastane çalışanlarının tıbbi atıklar konusunda (toplanması, taşınması, muhafazası) bilgi düzeylerinin incelenmesi: İzmir İli Urla Devlet Hastanesi örneği
Assessment of hospital staffs knowledge (collecting, transferringandstocking) about medical waste: Example of Urla state Hospital in İzmir
HAKİ GÖKHAN ŞAHİN
Yüksek Lisans
Türkçe
2017
Aile Hekimliğiİstanbul Medipol ÜniversitesiSağlık Yönetimi Ana Bilim Dalı
YRD. DOÇ. DR. PAKİZE YİĞİT
- Osmanlı Devleti'nde süngü ve süngü talimnâmeleri
Bayonet and bayonet instructions in the Ottoman State
MUSTAFA HAKİ YAKAR
Yüksek Lisans
Türkçe
2022
Kamu YönetimiMilli Savunma ÜniversitesiHarp Tarihi Ana Bilim Dalı
DOÇ. DR. MEHMET MERT SUNAR
- İstatistiksel tahminlemede sıralı küme örneklemesi ve uygulamaları
Ranked set sampling in statistical inference and its applications
DUYGU HAKİ
Yüksek Lisans
Türkçe
2012
İstatistikMarmara ÜniversitesiMatematik Ana Bilim Dalı
PROF. DR. MÜJGAN TEZ
DOÇ. DR. ÖZLEM EGE ORUÇ