Dergiler / Havacılık ve Uzay Teknolojileri Dergisi / 2018 / Cilt: 11 - Sayı: 2

UML-TABANLI YAZILIM MODELLEME DİLLERİNİN ANALİZİ

ANALYSING UML-BASED SOFTWARE MODELLING LANGUAGES

Sayfa
119–133
DOI
—

Özet

Bu makalede, mevcut 31 farklı UML-tabanlı yazılım modelleme dili yazılımcılar için önemli olan bir takım gereksinimler bakımından analiz edilmiştir. Bu gereksinimler, biçimsel semantik, çoklu bakış-açısı ile modelleme, modellerin analizi, modellerden kod üretme, ve modelleme araçları desteği olarak belirlenmiştir. Analiz sonuçlarına göre, 31 farklı UML-tabanlı modelleme dili arasından sadece UWE, TTool, ve Pi-ADL dillerinin tüm belirtilen gereksinimleri karşılayabildiği gözlemlenmiştir. UML-tabanlı dillerin 21%’i genel amaçlı diller olarak belirlenmişken, geri kalanı ise alana özgü dillerdir ve en yaygın olan alanlar ise gömülü sistemler, çok etmenli sistemler, ve gerçek zamanlı sistemlerdir. UML-tabanlı dillerin 38%’i UML’in profil mekanizmasını kullanarak UML’i genişletirken, 18%’i UML’in sınıf diyagramını ve 13%’ü UML’in durum ve sıra diyagramlarını genişletmektedirler. UML-tabanlı dillerin 41%’i mantıksal bakış açısını desteklerken, 36%’sı da davranış bakış açısını desteklemektedir. Diğer bakış açıları (aynı anda kullanım, fiziksel, dağıtım, ve operasyonel gibi) pek destek görememektedir. UML-tabanlı dillerin 58%’inin semantiği biçimsel metotlar kullanılarak tanımlandığı belirlenmiştir. Dillerin 44%’ü modellerin analizini desteklememektedir. Geri kalanının 25%’i ise kapsamlı model sınaması ile modellerin analizini desteklerken, 14%’ü ise dillerin biçim kurallarına göre analizini desteklemektedirler. Yazılım modellerinin koda dönüştürülmesi hemen hemen hiçbir UML-tabanlı dil tarafından destek görmemektedir. Yine aynı şekilde, dillerin hemen hemen hiçbiri modelleme araçları ile desteklenmemektedir.

Abstract

In this paper, the existing 31 different UML-based software modelling languages have been analysed for anumber of requirements that are believed to be highly important for practitioners. These requirements areformal semantics, multiple viewpoints modelling, model analysis, code-generation, and modelling toolset.According to the analysis results, only the UWE, TTool, Pi-ADL languages support all those requirements. While21% of the languages offer general-purpose notation set, the rest offer domain-specific notation set and the topdomains of interest are the multi-agent, embedded, and real-time systems. 38% of the languages use UML’sprofiling mechanism for extending UML, 18% of the languages extend UML’s class diagram, and 13% of thelanguages extend UML’s state and sequence diagrams. 41% of the languages support the logical viewpoint and36% support the behaviour viewpoint – the rest of the viewpoints are rarely used. 58% of the languages aredefined formally and many of them are based on formal verification languages. 44% of the languages ignoremodel analysis. Among the rest, 25% of the languages support the exhaustive model checking and 14% supportthe analysis for well-formedness. Generating software code from software models and the modelling toolsupport are the least supported requirements by the UML-based languages.