YEDITEPE UNIVERSITY

Software Engineering Research Group

SERG

Research Projects

1- A Digital Twin for Detecting Building Vulnerabilities 

Nowadays, earthquake is considered one of Turkey’s (any many other countries’) most crucial concerns. To be able to manage the earthquake disasters productively and effectively, digital techniques and technologies should be developed and used. In this project, a digital twin web application has been developed, whose goal is to receive building information for any street (e.g., building type, building age, population density, fire escape, number of floors, etc.) and visualize the information on a street map. The digital twin application uses the data and makes predictions on the earthquake vulnerability of the buildings at real-time which are then reflected on the street map dynamically with some proper shapes and coloring. The web application can further export the building information in a standard format based on XML. So, any other tools (e.g., decision support systems) may use the street building information in their decision-making facilities. We strongly believe that different stakeholders (e.g., those providing the street building information, those using the information to make decisions, and any tool developers) can utilize the digital twin web application and perform their goal(s) of managing the earthquake disasters using a digital approach.

Funding Agency: Yeditepe University

Project Period: 09-2023 - 

Contributors:

Technology Developers: Emirhan Uysal, Eren Taşken, Fevzi Babaoğlu, Okan Bulgur

Data Analysts: Berke Özkeleş, Ceren Yazgan, Ece Gökçen Sarı, Ece Tipici, Nilhan Süer

Business Analysts: Asude Beyza Demirboğa, Hatice Müberra Gül



2- ModelTGM:  Model Tabanlı ve Güdümlü Mühendislik ve Alan Özgü Dil Geliştirme

Bu projede, değişik yazılım modellemesi yaklaşımları ve teknolojilerinden faydalanarak, Radar ve EH sistemi yazılım bileşenleri geliştirilmesine yönelik modelleme dili ve araç kümesinin geliştirilmesi planlanmaktadır. Proje kapsamında tanımlanacak modelleme dili ve araç kümesi (editör ve dönüştürücüler) ile, yazılım geliştirme yaşam döngüsüne (YGYD) katkı sağlayan paydaşlar arasında ortak bir dil oluşturularak paydaşlar-arası iletişimin iyileştirilmesi ve model güdümlü mühendislik ile farklı yazılım girdi ve çıktılarının otomatik olarak oluşturulması ile ASELSAN ürünlerinin kalite faktörlerinin iyileştirilmesi amaçlanmaktadır.


3- Artificial Intelligence supported Tool Chain in Manufacturing Engineering (AITOC)

The goal is to develop an integrated tool-chain for manufacturing engineering that supports decision making in early phases. To achieve this, the tool-chain will support formalization and automated analysis of requirements, computer-aided generation of simulation models, and software-supported generation of layout. In all of these dimensions, Artificial Intelligence will be utilized in expert systems and simulations based on data from existing solutions.


4- Boosting Design Efficiency for Heterogeneous³ Systems (PANORAMA)

The goal of PANORAMA is to research model-based methods and tools to master development of heterogeneous embedded hardware/software systems in collaboration with diverse and heterogeneous parties by providing best practice, novel analysis approaches, and guidance for development. To that end, the main line of action is geared to extending the scope and interoperability of current system level analysis approaches, particularly by enhancing existing abstract performance meta-models. The enhanced meta-model and the related tool framework will be a common and open platform to support collaborative development.


5- Blended Modeling for Enhanced Software and Systems Engineering (BUMBLE)

BUMBLE aims at providing an innovative system and software development framework based on modeling through blended modeling notations/languages (e.g. textual and graphical). The framework provides semi-automatic generation and management of full-fledged blended modeling environments from arbitrary DSMLs. Such modeling environments are expected to greatly boost the development of complex multi-domain systems by enabling seamless textual and graphical collaborative modeling. Based on a preliminary empirical study by some of the project idea partners, we expect at least a 30% improvement of the development speed using BUMBLE blended solutions compared to the state of the art of mutually exclusive notations for DSMLs. The results of BUMBLE will be (1) fed back into existing state-of-the-art open-source solutions enabling interested industrial and academic partners in the project and beyond to benefit from the project results, and (2) exploited in the development processes and tools of the consortium’s industrial partners.


6- Web Uygulamalarının Kullanıcı Davranışlarına Göre Model-Tabanlı Testi Için Alana-Özgü Modelleme Dili Ve Araçlarının Geliştirilmesi

Bu projede, teknik bilgisi kısıtlı paydaşların web uygulamaları kullanırken sergilemek istedikleri davranışları aksiyonlar ve aksiyonların aralarındaki ilişkiler cinsinden modellemelerine yönelik bir alana-özgü modelleme dili önerilecektir. Yeni modelleme dili, her profilde kullanıcının kolayca kavrayacağı düşünülen akış şeması (flowchart) notasyonunu temel alacaktır. Ayrıca, modelleme dili için geliştirilecek bir araç kümesi ile, kullanıcıların modelleme diline göre akış şeması modelleri yaratabilmesi ve sonrasında bu modellerden olası tüm davranış senaryolarını Behaviour-driven Development yaklaşımına göre otomatik türetebilmesi hedeflenmektedir. Her ne kadar kullanıcılar kendi davranışlarını akış şeması ile modellese de, bu diyagramlardaki bazı akışların (yani senaryoların) diğer akışlara göre daha çok tercih edilmesi muhtemeldir. Bundan ötürü, geliştirilecek başka bir araç ile de, kullanıcıların web uygulamayı kullanırken sergiledikleri gerçek aksiyonların tespit edilip sıklık derecelerine göre sınıflandırılması ve kullanıcı akış şema modelinden türetilen olası tüm BDD senaryolarının sık karşılaşılan aksiyonlara göre öncelik sırasına koyulması hedeflenmektedir. Böylece, olası tüm senaryoların sayıca büyük olduğu durumlarda önceliği düşük olan senaryolar (sık karşılaşılan aksiyonları içermeyenler) göz ardı edilebilecektir. Elde edilen öncelikli BDD senaryoları, web uygulama geliştiricileri tarafından BDD’yi destekleyen test otomasyon araçları (Selenium gibi) ile otomatik olarak web uygulama üzerinde koşulabilir ve web uygulamalarının kullanıcıların sık sergiledikleri davranışlara göre otomatik test edilmesi mümkün olabilir.


7- Yazılım Tasarım Kalıplarına Uygun Modellerin Tasarlanması, Analizi, ve Koda Dönüştürülmesi için Alana-özgü Modelleme Dili ve Araçlarının Geliştirilmesi

Yazılım tasarım kalıpları kaliteli yazılım geliştirme konusunda büyük öneme sahip olsa da, yazılımcılar tasarım kalıplarını kullanırken farklı sorunlar yaşamaktadır. Bunlardan bazıları şu şekilde ifade edilebilir: tasarım kalıplarının anlaşılmasının güç olması, hangi tasarım kalıbının hangi sistemler için uygulanması gerektiğinin net olarak tespit edilememesi, yazılım tasarım kalıplarına göre sistem mimarisi modelleyebilmek için UML benzeri bir modelleme teknolojisinin mevcut olmaması, mevcut sistem yapısının (yada davranışının) tasarım kalıplarına uyarlanmasına kod seviyesinde uğraşılması, ve tasarım kalıplarının doğru şekilde uyarlandığının otomatik olarak kontrol edilmesinin mümkün olmaması. Ayrıca, her ne kadar birçok üniversite yazılım mühendisliği dersinin müfredatına tasarım kalıplarını dahil etse de, öğrencilerin tasarım kalıpları üzerine yeterli bilgi sahibi olup pratik anlamda tecrübe kazanması pek de kolay olmamaktadır.

Bu projede, farklı yazılım tasarım kalıplarını destekleyen yazılım mimarileri modellemeye yönelik görsel yazılım modelleme dilinin ve mimari modelleri analiz edip otomatik kod üretmeyi sağlayan araçların geliştirilmesi amaçlanmaktadır. Buna göre, ilk olarak, geliştirilecek olan modelleme dilinin söz-dizimi ve semantik açısından tanımlanması yapılacaktır. Sonrasında, modelden koda dönüşüm algoritmaları tasarlanacaktır. Metaedit+ meta-modelleme aracı kullanılarak tanımlı modelleme dili için modelleme editörü geliştirilecektir. Yine Metaedit+ ile, semantik kurallara göre modellerin analizini destekleyen araç ile modelden Java koduna dönüşüm algoritma tasarımına göre modelden kod üreten dönüştürücü aracın geliştirilip modelleme editörüne entegrasyonu gerçekleştirilecektir. Son olarak, geliştirilen modelleme editörü ve dönüştürücü uygulamaların gerçek sistemler kullanılarak değerlendirilip test edilecektir.