blog posts

Tekdüzen Modelleme Dili (UML) nedir ve neden kullanıyoruz?

Yazılım mühendisliği alanında kodlama her zaman önce gelmez. Bazen, yazılım mühendisleri için tek tip bir modelleme dilini kolaylaştırmak için standart bir modelleme dili gerekir. UML olarak kısaltılan Birleşik Modelleme Dili, sistem ve yazılım geliştiricilerin yazılım sistemlerinin çeşitli bölümlerini belirlemesine, görselleştirmesine, oluşturmasına ve belgelemesine yardımcı olmak için kullanılan birleştirilmiş bir diyagram setidir. UML, iş dünyasında ve programlama ile ilgili olmayan diğer alanlarda modelleme için de kullanılabilir.

 

 

Neden UML dilini kullanıyoruz?

Aklınıza gelmiş olabilecek bir soru, yazılım mühendislerinin geliştirme için kodlamayı kullanabilecekleri halde neden tablo ve grafiklere dahil olmalarıdır? Cevap, tek tip modelleme dilinin kullanımında bulunur. Aslında, yazılım mühendisliğinde UML’nin tarihine baktığımızda, büyük ve karmaşık sistemlerin modellenmesinde başarılı olmuş bir dizi en iyi mühendislik uygulaması göreceğiz.

UML tasarımı, nesne yönelimli yazılım geliştirme ve yazılım geliştirme sürecinin çok önemli bir parçasıdır. Bu dil, yazılım projelerinin tasarımını ifade etmek için ağırlıklı olarak grafik semboller kullanır. UML’yi kullanmak, proje ekiplerinin iletişim kurmasına, olası tasarımları keşfetmesine ve yazılım mimarisi tasarımlarını doğrulamasına yardımcı olur.

UML’nin amacı, tüm nesne yönelimli yöntemler tarafından kullanılabilen standart bir notasyon sağlamak ve önde gelen notasyonların en iyi öğelerini seçmek ve entegre etmektir. Aslında, UML dili çok çeşitli uygulamalar için tasarlanmıştır. Dolayısıyla yazılım sistemlerinin yanı sıra işletmeler ve yöneticiler de bundan faydalanabilmektedir.

Tek tip modelleme dilinin popülaritesinin bir başka nedeni de, yazılım endüstrisi aktivistlerinin çalışmalarının tüm bölümlerinin otomasyonuna olan ilgisi olarak düşünülebilir. Çünkü bu çalışma, yani yazılım üretim sürecini otomatik hale getirmek, kaliteyi artıracak ve piyasaya sunma maliyetini ve süresini azaltacaktır.

Öte yandan, görsel programlama, kalıplar ve çerçeveler, veri ve bilgileri aktarmanın hızlı bir yoludur. Tabii ki doğruyu da unutmayalım, birkaç grafiği yönetmek ve belgelemek, işletmedeki bir projenin veya departmanın görsel olmayan belgelerini yönetmekten çok daha kolay olacaktır. Bu durumda yazılım üretim sürecinde bir şeyin değiştirilmesi, güncellenmesi, tekrarlanması vb. Aslında, bütünleşik modelleme dili bu tarz ihtiyaçları karşılamak için tasarlanmıştır.

 

 

Tek tip modelleme dilinin özellikleri ve özellikleri

Genel olarak, UML ile aşağıdaki özelliklere erişebilirsiniz:

Anlamlı modeller oluşturmak ve değiş tokuş etmek için kullanıma hazır bir görsel modelleme dili sağlamak
Ana kavramları genişletmek için genişletilebilirlik ve özel mekanizmalar sağlamak
Belirli programlama dillerinden ve geliştirme süreçlerinden bağımsız
Modelleme dilini anlamak için resmi bir temel sağlayın
Aşağıdakiler de dahil olmak üzere üst düzey nesne yönelimli geliştirme kavramları için destek: İşbirliği, Çerçeve, Model ve Bileşen
Farklı modellemeleri entegre etme imkanı
İleri mühendislik kullanma ve modelleri Java gibi programlama kodlarına dönüştürme imkanı
Tersine mühendislik kullanma ve programlama kodlarını modellere dönüştürme imkanı

 

 

Aşağıda, en temel UML diyagramlarından 8 tanesinden bahsedeceğiz:

Sınıf Diyagramı: Sınıfları, arayüzleri ve sınıf bileşenleri arasındaki ilişkiyi temsil etme
Nesne Diyagramı: Sistem nesnelerini ve sınıf diyagramının anlık görüntüsünü görüntüler
Kullanım Durumu Şeması: Kullanıcıların sistemle etkileşimini gösteren ve sistemin gereksinimlerini, mimarisini ve genel uygulamasını açıklayan
Etkileşim Diyagramı: Aralarında değiş tokuş edilen nesneler ve mesajlar dahil olmak üzere çeşitli sistem bileşenlerinin etkileşimini görüntüler.
Durum Grafiği Diyagramı: nesneler ve genel olarak sistemin yaşam döngüsü arasındaki durumları ve olayları gösterir.
Etkinlik Şeması: Sistemde bir işlem gerçekleştirmenin sıralı etkinliklerini görüntüler.
Bileşen Şeması: uygulanan sistemin statik modelini temsil eder
Dağıtım Şeması: Sistemde kullanılan kitaplıklar, kodlar, dosyalar vb. bileşenleri görüntüler.

 

 

Tek tip modelleme dilindeki önemli terimler

Tek tip modelleme dilinde doğru kullanmayı bilmediğiniz terimlerle karşılaşabilirsiniz. Adame’de UML’nin en önemli terimleri bir sözlük şeklinde toplanmıştır. Elbette, Visual Paradigm sitesi tarafından toplanan bu terimler, Integrated Modeling Language’de bulunan terimlerin yalnızca bir parçasıdır.

Özet: Hiçbir zaman somutlaştırılmayan bir sınıf, bu sınıfın bir örneğinin asla var olmayacağı anlamına gelir.
Aktör: Sistemin dahil olduğu olayları başlatan bir nesne veya kişi.
Toplama: Diyagramlarda o sınıfın yanında içi boş bir baklava ile temsil edilen bir sınıfın bir parçası.
Articrafts: Tasarım sürecindeki bir adımın çıktısını açıklayan grafiksel, metinsel veya hibrit belgeler.
Nitelikler: Bir nesnenin, diğer nesnelere atıfta bulunmak veya nesne durum bilgilerini depolamak için kullanılabilen nitelikleri.
Sınıf: Hepsi aynı özellikler ve işlemlerle tanımlanan benzer nesnelerden oluşan bir grup.
Sınıflandırıcı: Niteliklere ve işlemlere veya daha spesifik olarak Aktörler, Sınıflar ve Arayüzlere sahip bir UML öğesi.
Bileşen: Sistemde konuşlandırılabilen bir kod birimi.
Kavram: Etki Alanı modeline dahil edilmesi gereken bir isim veya soyut fikir.
Etki Alanı: Sistemin dahil olduğu dünyanın parçası.
Öğe: Bir modelde görünen her şey.
Kapsülleme: Veriler nesnelerde özeldir.
Çatal: Etkinlik grafiğinde birden fazla paralel kontrol dizisinin başladığı bir nokta.

GoF: dört tasarım deseninden oluşan bir dizi (Dörtlü Çete)

İlk Durum: Bir durum diyagramında veya bir aktivite diyagramında, diyagramın başlangıç ​​noktasını belirtir.
Örnek: Bir sınıf, bir nesne oluşturmak için bir şablon gibi davranır. Bu nesneye sınıfın bir örneği denir.
Birleştirme: Etkinlik diyagramında, birden çok paralel kontrol iş parçacığının eşitlendiği ve yeniden birleştirildiği bir nokta.
Üye: Bir Sınıflandırıcıdaki bir öznitelik veya işlem.
Birleştirme: Etkinlik diyagramında farklı kontrol yollarının bir araya geldiği bir nokta.
Yöntem: Bir nesnedeki işlev.
Gösterim: analiz ve tasarım yöntemleri oluşturmak için kurallar içeren grafik belge.
Not: Daha fazla ayrıntı görüntülemek için şemaya eklenen bir metin notu.
Nesne: Görevi Faaliyetlerden bilgi almak veya sağlamak olan bir nesne.
Paket: Mantıksal olarak birlikte gruplandırılması gereken birörnek modelleme dili öğeleri grubu.
Model: Etkileşimlerde nesnelerin sorumluluğunu belirlemek için çözümler veya modeller.
Parametre: Bir işlemin bağımsız değişkeni.
Polimorfizm: Aynı mesaja ancak farklı işlevlere sahip çoklu formlar. Şablon olarak da kullanılır.
Rol: Etki Alanı modelinde kullanılan rol ve bir Aktörün rolünün isteğe bağlı bir açıklamasıdır.
Durum: Durum diyagramında, bir sistemin veya alt sistemin durumunu gösterir. Belirli bir zamanda yapılan iş ve veri değerleri anlamına gelir.
İş Akışı: Belirli sonuçlar üreten bir iş akışı veya faaliyetler dizisi.

Programlama kodlarının kullanılması yazılım geliştirme için gerekli bir koşul olsa da yeterli bir koşul değildir. Yöneticilerin yazılımları ilkeli bir şekilde geliştirmek için olabildiğince hızlı bilgi alışverişinin yanı sıra tamamen anlaşılır ve basit bir görsel iş akışına ihtiyaçları olacaktır. Bu nedenle tek biçimli modelleme dilinin veya UML’nin ayağı yazılım geliştirme alanına açılmıştır. Elbette bu dil sadece yazılım geliştirme için kullanılmıyor ve farklı departmanların yöneticileri farklı sistem ve stratejileri tasvir etmek için de kullanabiliyor.