Computer Engineering / Bilgisayar Mühendisliği
Permanent URI for this collectionhttps://hdl.handle.net/11147/10
Browse
11 results
Search Results
Conference Object Yazılım Yapısal Kapsama Analizinde Testlerin Önceliklendirilmesi(CEUR Workshop Proceedings, 2015) Ayav, TolgaBu çalışma değiştirilmiş koşul/karar kapsama stratejisince türetilmiş test girişlerinin önceliklendirilmesi için bir teknik sunmaktadır. Teknik Fourier analizine dayanmaktadır ve testlerin hata ortaya çıkarma potansiyellerine göre sıralanabilmesini hedeflemektedir. Bu sayede yazılımın yüksek öncelikli testlerden başlayarak düşüğe doğru sınanması veya test kümesinin yüksek öncelikli testleri kapsayacak şekilde daraltılması mümkün olabilecektir.Conference Object Sayısal Devrelerin Model Kontrol Tabanlı Testi(CEUR-WS, 2015) Takan, SavaşBu tezin amacı yazılım mühendisliği alanında yaygınca kullanılan bir test yöntemi olan model doğrulama tabanlı test yönteminin, devrelerin gecikme hata testinin denetlenmesi işlemine uygulamaktır. Devre gecikme hatası devrelerin istenilen zamanda istenilen işlevin yerine getirilmemesinden kaynaklanmaktadır. Bu metodolojide, öncelikle devre bir zamanlı otomata olarak modellenir ve böylece devrenin zamansal karakteristikleri ortaya çıkarılır. Ardından model sürekli olarak belirli varsayımlar çerçevesinde gecikme hataları oluşması için mutasyona uğratılır ve tüm mutant modeller verilen niteliklere göre model doğrulayıcı tarafından kontrol edilir. Test giriş dizisi, model doğrulayıcı tarafından geri döndürülen karşıt örneklerden oluşur. Aşağıda metodolojinin kısa özeti verilmiştir.Conference Object Doğruluk Problemi için Veri Kümesi Hazırlanması(CEUR Workshop Proceedings, 2018) Karabayır, Arif Kürşat; Tek, Ozan Onur; Çınar, Özgür Fırat; Tekir, SelmaInternet has become one of the most important information sources. With the advent of Internet, the ease of access and sharing of information have caused the emergence of conflicting information. The increase in conflicting information makes it a challenge to find the truth out of it. This problem is named as the veracity problem. The algorithms that were developed in response to this problem accept structured data as in¬ put. Thus, to be able to use these algorithms on Internet, there is a need to transform the unstructured data on the Internet into a structured form. This need is hard to fulfill in a domain-independent and automatic way considering the variety on Internet. In this work; structured data preparation to test the effectiveness of the truth-finder algorithms is experienced. The process of transforming the unstructured data on the Internet into a structured form is described in steps to contribute its generalization in a domain-independent way. As a result of this process, a new quotes data set is constructed and a truth-finder algorithm is tested on this dataset by giving some comments on it.Conference Object Saydam Artıklı Çalıştırma için Vekil Tasarım Örüntüsü Kullanımı(CEUR Workshop Proceedings, 2018) Öz, Dündar; Öz, Sinan; Öz, IşılIn this study, we propose a transparent model for reliable execution of object-oriented software. We design a generic object-oriented programming tool for redundant software execution to provide the desired level of reliability against transient hardware faults. To achieve this, we utilize the Proxy design pattern which is one of the well-known GoF design patterns that are formed to make software systems exible and easy to maintain. Proxy design pattern provides a controlled access and a transparent mechanism for adding new functionalities to an existing object when accessing it. Combining the instruments of dynamic proxy and annotations in Java programming language, we present, Redundant- Caller, a generic, transparent, and con gurable tool for redundant execution and majority voting. Our tool takes any object and creates a dynamic proxy for it which executes the methods of the object multiple times in separate threads, and performs majority voting on the background, requiring minimum amount of change in the original user code. Thanks to annotations, users can con gure the redundant execution scheme methodwise. Our experiments demonstrate that our tool provides a signi cant level of reliability to any object-oriented software with a reasonable amount of performance degradation through multithreaded execution.Conference Object Citation - Scopus: 3Android Uygulaması Testi için İdeal Test Ön Çalışması(CEUR Workshop Proceedings, 2018) Mercan, Gizem; Akgündüz, Evrim; Kılınççeker, Onur; Challenger, Moharram; Belli, FevziThis paper proposes a hybrid method combining well-known holistic test and mutation testing in software testing for Graphical User Interface (GUI) testing of an android application. Moreover, this hybrid method satisfies requirements of ideal testing that is well known and important in software testing. Presence and absence of GUI based faults are tested within this work experimentally and comparatively in the scale of given or constructed model. First step of the method is modeling the given GUI of android application by Finite State Machine (FSM) and then converting this FSM to Regular Expression (RE). Then, test sequences are generated from a context table that is obtained analysis of the RE model. This process defines first part of the Holistic Testing namely positive testing. In second part called negative testing, the test sequence generation procedure is applied mutants of the FSM obtained after applying selected mutation operators. The generated test sequences from original and mutant models are executed on mutant and original android applications respectively. Test sequences are filtered by using pre-defined selection criteria for both positive and negative testing to achieve ideal test suites that are satisfying requirements of the ideal testing.Conference Object Citation - Scopus: 3Grafiksel Kullanıcı Arayüzleri için Düzenli İfade Bazlı Test Kapsama Kriterleri(CEUR Workshop Proceedings, 2017) Kılınççeker, Onur; Belli, FevziGrafiksel Kullanıcı Arayüzleri (GKA), insan-bilgisayar etkileşimi açışından, bilgisayar tabanlı sistemlerin ana bileşenleridir. Bu çalışma, GKA’ların düzenli ifadeler (Dİ; regular expression) ile modellenmesi ve dahası test kapsama (coverage) kriterleri elde edilmesi için yeni bir yaklaşım öne sürmektedir. Verilen GKA, ya doğrudan bir Dİ ile, ya da (pratikte daha çok yapıldığı şekilde) olay bazlı bir yönlü çizge (YÇ; digraph) ile modellenir ve bu YÇ bir Dİ’ye dönüştürülür. Ne var ki bu Dİ semantik bakımından yalnızca olay bazlıdır. Modeli durum açısından zenginleştirmek için Dİ özel bir teknik ile endekslenir. Önerilen yaklaşım, bu endekslenmiş Dİ’yi analiz ederek durum ve olay bazlı test kapsama kriterleri üretir. Ön araştırmalar göstermektedir ki, önerilen yaklaşım, diğerleri ile karşılaştırıldığında, daha özlü (compact) test takımı üretimine olanak sağlamaktadır.Conference Object Çevik Yazılım Geliştirmede Bdd/tdd Yöntemlerinin ve Yazılım Kalite Araçlarının Kullanılması: Bir Yazılım Mühendisliği Dersindeki Tecrübe(CEUR Workshop Proceedings, 2016) Akyol, Gökhan; Gümüşkaya, HalukÇevik yazılım geliştirme modeli iyi uygulandığında, yazılım proje yönetimini, yazılım takım elemanları arasındaki iletişimi ve yazılım geliştirme süreçlerini ve süresini iyileştirmektedir. Çevik yazılım geliştirme modelinde, son kullanıcının yazılım geliştirme sürecinin içinde olduğu bir yazılım ürünü, değişen gereksinimlere daha hızlı cevap verir. Bu çalışmada Davranış Tabanlı Tasarım (BDD-Behavior Driven Design) ve Test Tabanlı Geliştirme (TDD-Test Driven Development) tekniklerinin SaaS (Software as-a Service) uygulamaları geliştirmede beraber kullanıldığı bir bütünleşik çevik yazılım geliştirme süreci ve çerçevesinde, günümüzde kullanılabilecek yazılım test ve kalite ölçme araçları karşılaştırılmaktadır. Sunulan çevik yazılım geliştirme süreci ve çerçevesi bir son sınıf Yazılım Mühendisliği dersinde üç yıl öğrencilerin geliştirdikleri projelerde uygulanmıştır. Bu çalışma, dört farklı proje gerçekleştirme teknolojileri ve platformları (Ruby/Rails, Java EE/Spring, C#/ASP.NET ve PHP/(Zend, Codeigniter, Laravel) kullanılarak, Microsoft Azure ve Heroku bulut servis sağlayıcılarında çalışan SaaS uygulamaları geliştirmede kullanılan BDD ve TDD test ve kalite araçlarıyla elde edilen tecrübeyi sunmaktadır.Conference Object Citation - Scopus: 1Karar Tablosu Destekli Olay Sıra Çizgeleri Temelli Sınama Durum Üretim Aracı(CEUR Workshop Proceedings, 2016) Belli, Fevzi; Linschulte, Michael; Tuğlular, TuğkanModel temelli sınama alanında otomatik sınama durum üretimi önemli konuların başında gelir. Otomatik sınama durum üretimi için formel bir modelleme yöntemi ile üretim için algoritmalar gereklidir. Bu bildirinin ilk yazarının geliştirdiği Olay Sıra Çizgeleri (İng. Event Sequence Graphs) formel modelleme yöntemi ve sınama durum üretim algoritmaları, bu bildirinin diğer yazarları tarafından karar tabloları destekli şekilde genişletilmiştir. Ortaya konan modelleme yöntemi ve algoritmalar kodlanarak bir sınama durum üretim aracı 2008 yılından beri geliştirilmektedir. Anılan araç birçok çalışmada kullanılmış ve bu çalışmaların anlatıldığı yayınlarda bu araçtan söz edilmiştir. Bu bildiride karar tabloları destekli olay sıra çizgeleri temelli sınama durum aracının son durumu tanıtılmış ve anılan araç ile bir örnek çalışma sergilenmiştir.Conference Object Bir Platform Oyununa Kullanıcı Performansı Temelinde Yapay Zeka Uyarlaması(CEUR Workshop Proceedings, 2015) Türkmen, Sercan; Mungan, Hilmi Yalın; Tekir, SelmaOyun programlama, video oyunlarının yazılım geliştirme bölümüdür. Diğer yazılımlardan farklı olarak oyun içindeki nesnelerin sürekli güncellenmesini gerektirmektedir. Güncelleme işlevinde, nesnenin dünya içinde bulunduğu yer, hız, ivme gibi fiziksel özellikleri, çarpışma işlemleri, animasyon güncellemeleri ve kullanıcı girdisinin ele alınması gibi çok çeşitli işlemler kapsanmaktadır. Yüksek güncelleme frekansı gereksinimi de dikkate alındığında yazılan kodun performansı ve kalitesi ön plana çıkmaktadır. Oyun alanı, yazılım karakteristiklerinden kullanılabilirliğin ötesinde kullanıcının eğlenmesini sağlamayı hedeflemektedir. Yapay zekanın uygulama alanlarının ve tekniklerinin gelişmesi oyunların eğlendirici yönünü arttırmaktadır. Bu çalışmada, bir platform oyunu (Dawn) geliştirilerek oyun içerisindeki kurguyu, geçerli kullanıcıya göre uyarlayan bir yapay zeka entegre edilmesi amacıyla platform oyununu karakterize edebilecek öznitelikler çıkarılmış ve ölçülmüştür. Genel olarak, çıkarılan öznitelikler girdi ve çıktı öznitelikleri olarak gruplandırılarak girdi özniteliklerinin çıktı öznitelikleri ile ilişkisi ortaya konmaya çalışılmıştır. Belirlenen en temel çıktı özniteliği, kullanıcı performansıdır. Kullanıcı performansının ölçümünde bölüm tamamlanma zamanı, kahramanın ölüm nedeni ve bölümlerde uğradığı zarar öznitelikleri baz alınmıştır. Sistem, bu sayede bölüm içerisindeki düşman seçimini ve bir sonraki bölüm önerisini kullanıcının performansına göre belirlemektedir.Conference Object Javascript Kütüphaneleri için Girdi Doğrulama Analizi(CEUR Workshop Proceedings, 2015) Ufuktepe, Ekincan; Tuğlular, TuğkanBugün artık mobil ve web temelli yazılımlar günlük hayatın bir parçası olmuştur. Bu yazılımlar içinde JavaScript kütüphanelerinin kullanımı da son yıllarda önemli artış göstermiştir. Bu kütüphaneler sağladıkları uygulama programlama arayüzleri ile daha ziyade söz verdikleri işlevleri yerine getirmekte ancak beklenmeyen girdilere karşı dayanıklı bir yapı sunamamak-tadır. Bu çalışmada mobil ve web temelli yazılımlarda yoğun olarak kullanılmakta olan beş JavaScript kütüphanesine ait işlevlerin aldığı para-metreler ile kullandıkları global değişkenler üzerinde doğrulama yapıp yap-madıkları analiz edilmiştir. Bunun için bir girdi doğrulama modeli ortaya konmuştur. Bu model üzerinde geliştirilen algoritma ile JavaScript programları için tip analiz yapan TAJS yazılımı genişletilmiş ve beş JavaScript kütüphane-sine uygulanmış ve elde edilen sonuçlar paylaşılmıştır.
