Show simple item record

dc.contributor.advisorKoçyiğit, Altan
dc.contributor.authorÜnaltay, Burak
dc.date.accessioned2020-12-10T09:11:39Z
dc.date.available2020-12-10T09:11:39Z
dc.date.submitted2018
dc.date.issued2019-05-13
dc.identifier.urihttps://acikbilim.yok.gov.tr/handle/20.500.12812/224893
dc.description.abstractGünümüzde her şey nasıl değişime uğruyorsa, donanım komponentleri de bu değişimin parçası olmak zorunda. Bu durum son kullanıcı için küçük rahatsızlıklar yaratmakta. Fakat gömülü sistem tasarımcıları için bu durum çok daha kritik, çünkü gömülü yazılımlar üzerinde çalışacakları donanıma yüksek bir oranda bağlı olduğundan herhangi bir donanım değişikliği yazılım geliştirme süreçlerine büyük külfetler getirmekte. En büyük zorluk ise donanımın artık üretilmemesi durumunda ortaya çıkacaktır. Böyle bir durumda eski donanım için tasarlanmış yazılım ağır bir yenileme sürecine girecek ve hatta tamamen baştan yazılmak zorunda kalacaktır. Bu yenileme sürecinden sonra eski yazılım ve donanım ile yeni yazılım ve donanım ikilisi ile fonksiyonel anlamda denk olmalıdır. Bu denkliği test etmek oldukça uzun ve etraflı bir süreçtir ve denklik testi olarak adlandırılır. Bu çalışmada denklik testini otomatik olarak gerçekleştirebilen bir method ortaya koyuyoruz. Methodumuz iki değerlendirme yöntemiyle test edilmiştir. İlk yöntemde küçük boyutlu fonksiyonlarla ikinci yöntemde ise gerçek hayat senaryolarına daha yakın bir kod örneği kullanılmıştır. İki yöntemde de methodumuz 6 üzerinden 5 başarı oranı sağlamıştır.
dc.description.abstractHardware is one of the best representatives of our ever changing world. For most of the end users this is nothing but a nuisance as they have to renew their electronics each year. For the embedded system designers who has to deal with this change in frontier however it is a definite threat. Embedded system designers have a close relationship to the hardware as the software runs on it highly tuned for the platform it runs on. It is when hardware is completely obsolete this impact reaches its peak because cus- tomized software will need heavy refactoring and often times a complete rewrite. One has to be sure to have a functionally equivalent product after this refactoring effort. This requires a costly and lengthly validation process. Sum of all validation efforts for this purpose could be identified as equivalence checking. Here in this study, we lay out a method that automatically deals with problem of equivalence checking. Our method is tested against two evaluation scenarios. In first scenario, our method is tested against small function bodies. In second scenario, it is tested against a larger code example that is closer to a real production code. In both ways of evaluation, our method is able deduce equivalency with a score of 5 out of 6.en_US
dc.languageEnglish
dc.language.isoen
dc.rightsinfo:eu-repo/semantics/openAccess
dc.rightsAttribution 4.0 United Statestr_TR
dc.rights.urihttps://creativecommons.org/licenses/by/4.0/
dc.subjectBilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontroltr_TR
dc.subjectComputer Engineering and Computer Science and Controlen_US
dc.titleSoftware equivalence checking based on unit testing and symbolic execution
dc.title.alternativeSembolik yürütmeden elde edilen birim testlerin yazılım denkliğini kanıtlamada kullanılması
dc.typemasterThesis
dc.date.updated2019-05-13
dc.contributor.departmentBilişim Sistemleri Anabilim Dalı
dc.identifier.yokid10223632
dc.publisher.instituteEnformatik Enstitüsü
dc.publisher.universityORTA DOĞU TEKNİK ÜNİVERSİTESİ
dc.identifier.thesisid540461
dc.description.pages61
dc.publisher.disciplineDiğer


Files in this item

Thumbnail

This item appears in the following Collection(s)

Show simple item record

info:eu-repo/semantics/openAccess
Except where otherwise noted, this item's license is described as info:eu-repo/semantics/openAccess