Bu yazımda UML ve UML diagramlarını açıklamaya çalışacağım. Okulda almış olduğum yazılım mühendisliği dersinde gördüğümüz bu konuda edindiğim bilgileri sizlerle paylaşmak istedim. UML yazılım geliştirme esnasında ihtiyaç üzerine ortaya çıkmış modelleme biçimidir. Günümüzde çoğunlukla yazılım projelerinde kullanılan bir modelleme biçimidir. Yazılım analiz ve tasarım birimlerini standart hale getirmek için geliştirilmiş bir yöntem olarakta kabul edilebilir. Temel olarak yazılımın
Analiz,
Dizayn,
Kodlama ve
Uygulama fonksiyonlarını gerçekleştirir. Bu fonksiyonları gerçekleştirmek için ise belli diagramları kullanır. Şimdi bu diagramların ne olduğuna bakalım.
UML diagramlarını 3 kategori (Yapı - Structure, Davranış - Behaviour, Etkileşim - Interaction) altında gruplandırabiliriz. Diagramların genel yapısını aşağıdaki gibi şematize edebiliriz.
Şimdi ise bu kategorileri ve bu kategoriler altında yer alan UML diagramlarına bakalım.
1.
Yapı (Structure) Diagramları
Statik diagramlardır. Bir yapının elemanları zamandan bağımsız olarak tasarlanır. Class, Component, Object, Composite Structure, Deployment ve Package diagramları bu kategori altında yer alır.
Class Diagram : Sistemde yer alan class'ları class'ların özelliklerini ve ilişkilerini tanımlayan diagramlardır.
Component Diagram : Sistemi bileşen halinde ayıran ve bu bileşenler arasındaki ilişkileri gösteren diagramlardır.
Object Diagram : Belirli bir zamanda sistemin tam yapısını veya kimsi görünümü gösteren diagramlardır.
Composite Structure Diagram : Sistemi oluşturan elemanları ve bu elemanların iletişimlerini anlatan diagramlardır.
Deployment Diagram : Bu diagram ile sistem içinde yer alan donanımlar ve ilişkileri tanımlanır.
Package Diagram : Sistemi mantıksal bölümlere ayıran ve bu bölümler arasındaki ilişkileri anlatan diagramlardır.
2.
Etkileşim (Interaction) Diagramları
Davranış diagramlarının alt diagramıdır. Nesneler arası etkileşimi belirtirler. Communication, Interaction Overview, Sequence ve Timing diagramları bu kategori altında yer alır.
Communication Diagram : Nesneler ve parçalar arasında etkileşimi sıralı olarak gösterir.
Interaction Overview : Faaliyet diagramlarıdır. Etkileşim diagramları ile komut akışını gösterirler.
Sequence Diagram : Nesnelerin birbirleri ile olan ilişkilerini sıral olarak gösteren diagramlardır.
Timing Diagram : Zaman kısıtlamalarını gösteren diagramlardır.
3.
Davranış (Behaviour) Diagramları
Bir sistem ya da iş akışının davranış özelliklerini anlatan çizimlerdir. Activity, State Machine ve Use Case diagramları bu kategori altında yer alır.
Activity Diagram : Sistemdeki iş akışını adım adım gösteren diagramlardır.
State Machine Diagram : Sistemi oluşturan durumları, geçişleri, olayları ve faaliyetleri gösteren diagramlardır.
Use Case Diagram : Modellenen sistemde yar alan aktörleri, aktörlerin senaryolarını ve bu senaryoların ilişkilerini gösteren diagramlardır.
Eğer yazılım konusunda uzman olmak istiyorsak bu gibi konuları bilmemiz gerekiyor. Yazılım sadece kod yazmaktan ibaret değil(miş). Bunun için yaptığımız her konuda olacağı gibi yazılım konusunda da belli başlı modelleri kullanmalı ve planlı bir yazılım yapmalıyız.
İyi Çalışmalar.
Not : Diagram bilgileri
buradan esinlenerek yazılmıştır.