TinyOS uygulamaları için bir model-güdümlü gidiş-dönüş mühendisliği yöntemi
A model-driven round-trip engineering methodology for TinyOS applications
Yazar: HUSSEIN MASOUD MARAH
Danışman: DOÇ. DR. GEYLANİ KARDAŞ ; DR. MOHARRAM CHALLENGER
Ege Üniversitesi / Fen Bilimleri Enstitüsü / Uluslararası Bilgisayar Ana Bilim Dalı / Bilgi Teknolojileri Bilim Dalı
Derece: Yüksek Lisans, 2020
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control ; Bilim ve Teknoloji = Science and Technology

Özet:
Bu tezde Kablosuz Duyarga Ağları'nda (WSN) sıklıkla kullanılan TinyOS işletim sistemi üzerinde çalışacak uygulamaların model-güdümlü geliştirilmesini sağlayan ve mevcut yazılım kodlarından yazılım modellerinin geri elde edilebildiği bütünleşik bir gidiş-dönüş mühendisliği yöntemi geliştirilmiştir. Yöntemin ilk kısmı DSML4TinyOS isimli bir alana-özgü modelleme dilinin kullanılması ile TinyOS uygulamalarının model-güdümlü mühendisliğini (MDE) sağlamaktadır. Yöntemin ikinci kısmında RE4TinyOS adı verilen bir ortamda bir TinyOS uygulamasına ait mevcut yazılım kodları üzerinde tersine mühendislik işletilerek bu kodlara karşılık gelen yazılım modelleri herhangi bir kullanıcı müdahalesi gerektirmeden geri kazanılabilmekte ve yine bu modeller üzerinde DSML4TinyOS dilinin sunduğu görsel modelleme ortamında çalışılabilmektedir. 
TinyOS GitHub'ta dağıtımı yapılan uygulamalar göz önünde bulundurularak önerilen yöntemin ve içerdiği araçların bir değerlendirmesi yapılmıştır. Sadece DSML4TinyOS ile modelleme yapılarak gerekli yazılımların Module kısımlarının ortalama %48'inin, Configuration kısımlarının ise %100'ünün otomatik elde edildiği belirlenmiştir. GitHub'taki hazır kodlar RE4TinyOS platformuna girdi olarak verildiğinde de bu programların tüm ana kısımlarına ait görsel modellerin başarıyla geri elde edilebildiği ve DSML4TinyOS ortamında bu modellerin sorunsuz bir şekilde işlenebildiği gözlenmiştir.

Abstract:
In this thesis, a round-trip engineering (RTE) methodology is introduced both for the model-driven development (MDD) of the Wireless Sensor Network (WSN) applications executed on the well-known TinyOS operating system and the regain of system models from the existing TinyOS code. The first part of the methodology enables the model-driven engineering (MDE) of TinyOS applications by using a domain-specific modeling language (DSML), called DSML4TinyOS. In the second part of methodology, a reverse engineering mechanism is applied on the codes of an existing TinyOS application to regain the corresponding software model without any human intervention. These models can also be processed in the graphical modeling environment provided by the DSML4TinyOS language. 
An evaluation of the proposed methodology and its tools was performed by taking into account WSN applications which are publicly available in the TinyOS GitHub repository. Approximately 40% of TinyOS Module components and 100% of the TinyOS Configurations were automatically generated by only modeling with DSML4TinyOS language. Moreover, complete code of these applications existing in the GitHub distribution was given into the RE4TinyOS platform and the corresponding graphical models of these applications with including all major components of the programs were successfully regained and processed inside the DSML4TinyOS environment.