UML diyagram ve veritabanı modelleme kılavuzu
Neden UML?
UML ilk olarak 1990'larda üç yazılım mühendisi Grady Booch, Ivar Jacobson ve James Rumbaugh sayesinde tekrar sahneye çıktı, çünkü giderek karmaşıklaşan yazılım geliştirme işinin temsilini oluşturmak için daha az kaotik bir yol geliştirmek ve aynı zamanda metodolojiyi süreçten ayırmak istediler. Günümüzde UML, geliştiricilerin yanı sıra proje yöneticileri, işletme sahipleri, teknoloji girişimcileri ve farklı sektörlerdeki profesyoneller için hala standart bir gösterim olmaya devam ediyor.
UML’nin avantajları nelerdir?
- Karmaşıklıkları basitleştirir
- İletişim hatlarını açık tutar
- Yazılım ve süreçlerin üretimini otomatikleştirir
- Kalıcı mimari sorunlarının çözülmesine yardımcı olur
- İş kalitesini artırır
- Maliyetleri ve pazara sunma süresini kısaltır
UML diyagram türleri
Müşteriler ve proje yöneticilerinden teknik yazarlara, tasarımcılara, analistlere, kodlayıcılara ve QA, test uzmanlarına kadar her rol kendi ihtiyaçlarına uygun belirli bir diyagram kullanır. Bu da her planın farklı bir odak alanı ve ayrıntı düzeyi gerektirdiği anlamına gelir. Amaç, UML'nin herkesin anlaması için kolay olan diyagramları görsel olarak ifade etmesidir.
Yapısal diyagramlar
Davranışsal diyagramlar
Şimdi her bir kategorideki birçok farklı UML diyagramı türüne daha yakından bakalım:
1. Yapısal UML diyagramları
Sınıf diyagramı. Yazılım geliştirmede en yaygın tür olan bu diyagram, bir sistemin mantıksal ve fiziksel tasarımını tasvir etmek için kullanılır ve sınıflarını gösterir. Sınıflar kutularla temsil edildikleri için akış grafiğine benzer. Bu diyagram, farklı sınıfları ve bunların birbirleriyle nasıl ilişkili olduklarını görsel olarak sunar ve her sınıfın üç bölmesi vardır:
- Üst bölüm: sınıf adı
- Orta bölüm: sınıf öznitelikleri
- Alt bölüm: sınıf yöntemleri veya işlemleri
UML sınıfı arabirim diyagramı örneği. Şablon indirilebilir.
Nesne diyagramları. Genellikle bu diyagram, doğruluk açısından bir sınıf diyagramını iki kez kontrol etmenin bir yolu olarak kullanılır. Başka bir deyişle, uygulamada çalışıp çalışmayacağı test edilmiş olur. Bir sistemin nesnelerini ve ilişkilerini gösterir ve düzeltilmesi gereken potansiyel tasarım kusurlarının daha iyi bir görünümünü sunar.
Bileşen diyagramı. Bileşen akış diyagramı olarak da bilinen bu diyagram, öğelerin ve bunların ilişkilerinin mantıksal gruplandırmalarını gösterir. Başka bir deyişle, karmaşık bir sistemi daha küçük bileşenlere ayırarak daha basitleştirilmiş bir görünüm sunar. Her bir parça, içinde adının yazılı olduğu dikdörtgen bir kutu kullanılarak gösterilir. Bağlayıcılar, farklı bileşenler arasındaki ilişkiyi/bağımlılıkları tanımlar.
Bileşik yapı diyagramı. Bu, yazılım geliştirme alanı dışındaki kişiler tarafından çok kullanılmaz. Neden? Bir sınıf diyagramına benzemekle birlikte, birden fazla sınıfın iç yapısını tanımlayarak ve aralarındaki etkileşimleri göstererek daha derinlemesine bir görünüm sağlar. Bir geliştirici değilseniz, üst düzey bir görünüm muhtemelen yeterli bilgileri sunar.
Dağıtım diyagramı. Bu diyagram donanım (düğümler) ve yazılım (varlıklar) bileşenlerini ve aralarındaki ilişkileri gösterir. Her bir yazılım bileşeninin tam olarak nerede konuşlandırıldığına dair görsel bir temsil sunar.
Microsoft 365'te hızlandırılmış kurs ile işinize hızlı bir başlangıç yapın
Paket diyagramı. Bu, bir modeli oluşturan paketler arasındaki bağımlılıkları göstermek için kullanılır. Temel amaç, karmaşık bir sistemi oluşturan çeşitli büyük bileşenler arasındaki ilişkiyi göstermektir.
Profil diyagramı. Bu, bir diyagramdan daha çok bir dildir. Bir profil diyagramı, özel stereotipler, etiketlenmiş değerler ve kısıtlamalar tanımlayarak UML diyagramları için yeni özellikler ve anlamlar oluşturmaya yardımcı olur. Bu profiller, bir UML metamodelini farklı platformlar (örneğin, Java Platformu, Enterprise Edition (Java EE) veya Microsoft .NET Framework) ve alanlar (örneğin, iş süreci modelleme, hizmet odaklı mimari, tıbbi uygulamalar ve daha fazlası) için özelleştirmenize olanak tanır.
2. Davranışsal UML diyagramları:
Temel UML kullanım durumu diyagramı örneği. Şablon indirilebilir.
Kullanım durumu diyagramı. Bu, bir sistemin ne yaptığını tanımlar ancak nasıl yaptığını açıklamaz. Kullanım durumu, bir “aktör” bir işlemi tamamlamak için bir sistem kullandığında oluşan bir olay kümesidir. Aktör, sistemle (kişi, kuruluş veya bir uygulama) sistem dışından etkileşime giren herhangi bir kişi veya şey olarak tanımlanır. Dolayısıyla, bir kullanım durumu diyagramı bu diziler kümesini görsel olarak tanımlar ve sistemin işlevsel gereksinimlerini temsil eder.
Etkileşim özeti diyagramı. Genellikle karmaşık olan bu diyagram, her ikisi de faaliyetlerin adım adım sıralanışını gösterdiğinden etkinlik diyagramına benzer. Ancak bir etkileşim özeti diyagramı, farklı etkileşim diyagramlarından oluşan bir etkinlik diyagramıdır. Etkileşim, etkileşim kullanımı, zaman kısıtlaması ve süre kısıtlaması gibi unsurların eklenmesiyle bir etkinlik diyagramıyla aynı ek açıklamaları (başlangıç, bitiş, karar, birleştirme, çatallama ve birleştirme düğümleri) kullanırlar.
Zamanlama diyagramları. Zamanlama orta aşamada olduğunda bu UML diyagramı kullanılır. Sıralama veya olay diyagramı olarak da bilinen bu diyagram, nesnelerin birbirleriyle nasıl etkileşime girdiğini veya birbirlerini nasıl değiştirdiğini göstermez. İşlevsel olarak, nesnelerin ve aktörlerin bir zaman çizelgesinde nasıl hareket ettiklerini gösterir. Burada odak noktası, olayların ne kadar sürdüğü ve süre kısıtlamalarına bağlı olarak meydana gelen değişikliklerdir. Zamanlama diyagramının ana bölümleri şunlardır:
- Yaşam çizgisi: bireysel katılımcı
- Durum zaman çizelgesi: yaşam çizgisinin bir işlem hattındaki farklı durumları
- Süre kısıtlaması: Bir kısıtlamanın yerine getirilmesi için gereken süre
- Zaman kısıtlaması: Katılımcı tarafından yerine getirilmesi gereken zaman
- Bozma olayı: bir nesnenin yaşam çizgisinin sona erdiği yer. Bir yaşam çizgisindeki bozma olayından sonra başka hiçbir olay görünmez.
Durum makinesi diyagramı. Durum çizelgesi olarak da adlandırılan bu diyagram, nesne davranışı karmaşık olduğunda ve ayrıntı kritik öneme sahip olduğunda uygulanır. Bir nesnenin (veya bazen bir işlecin) davranışını ve iç ve dış olaylara göre nasıl değişiklik gösterdiğini açıklamaya yardımcı olur.
Sıralı diyagram. Yalnızca tasarım topluluğu dışında popüler olan bu görsel açıdan çarpıcı diyagram, her tür iş sürecini gösterme konusunda iyidir. Yalnızca bir sistemin yapısını ortaya çıkararak aktörler ve nesneler arasındaki iletilerin ve etkileşimlerin sırasını kronolojik olarak gösterir. Sıralı diyagramlar basit yineleme ve dallanma gösterir. Çoklu görevlerle çalışırken kullanışlıdır.
İletişim diyagramı. İletişim veya işbirliği diyagramı, sıralı diyagrama benzer. Ancak, nesneler arasındaki iletişimi vurgular. Bir etkileşime katılan nesnelerin organizasyonunu gösterir ve daha karmaşık yineleme ve dallanma özelliklerine sahiptir.
Veritabanı modelleri
UML, veritabanlarının modellenmesine yönelik bir gösterim olarak da popülerlik kazanmaktadır. Bu modeller beyin fırtınası, serbest formda diyagram oluşturma ve fikirler üzerinde işbirliği yapmak için harika bir görsel araçtır.
UML veri modelleme için uygun özelliklere sahip olmasa da, özellikle veritabanlarından gelen veriler nesne yönelimli programlamada kullanılabildiğinden, diyagram oluşturma için yararlı bir araç olabilir.
Oluşturabileceğiniz farklı türdeki veritabanı modellerine bir göz atalım:
- Hiyerarşik veritabanı modeli. Eski ama iyi bir model olan bu modelin verileri ağaç benzeri bir yapıda düzenlenmiştir. Ağaç, segment olarak adlandırılan birkaç grup içerir. Bire çok ilişkisi kullanır. Veri erişimi de tahmin edilebilir.
- Ağ modeli. Bu model, ilişki türlerinin yay olduğu ve nesne türlerinin düğüm olduğu bir grafik biçimini alır. Diğer veritabanı modellerinin aksine, ağ modelinin şeması bir kafes veya hiyerarşi olarak sınırlandırılmamıştır.
- Nesne odaklı veritabanı modeli. Bu model, ilişkili özellikler ve yöntemlerle birlikte bir nesneler veya yeniden kullanılabilir yazılım öğeleri koleksiyonu kullanır. Örneğin, bir multimedya veritabanında ilişkisel bir veritabanında saklanamayan görüntüler olabilir. Ya da bir hiper metin veritabanı diğer nesnelere bağlantı kurulmasına izin verir.
- İlişkisel model. Burada veriler, ilişkiler veya sütun ve satırlara sahip ızgara benzeri matematiksel yapılar kullanılarak yapılandırılır. Bu temelde bir tablodur.
- Nesne ilişki modeli. Adından da anlaşılacağı gibi bu model, yukarıda bahsedilen iki modelin bir birleşimidir. Nesneleri, sınıfları, devralmayı ve diğer nesne odaklı öğeleri destekler, ancak ayrıca ilişkisel veri modelinde olduğu gibi veri türlerini, tablo yapılarını ve daha fazlasını da destekler.
- Varlık ilişki modeli. Bu, varlık türlerinden (kişiler, yerler veya şeyler) oluşur. Bunlar arasında olabilecek ilişkileri gösterir. Varlıkları ve özniteliklerini tanımlayarak ve bunlar arasındaki ilişkileri göstererek veritabanlarının mantıksal yapısını gösterir.
- Belge modeli. Atomik veriler yerine belgeleri veya yarı yapılandırılmış verileri depolamak ve yönetmek için tasarlanmıştır. Her düğümün belgenin bir bölümünü temsil eden bir nesne olduğu bir ağaç yapısına sahiptir.
- Varlık öznitelik değer modeli. EAV veya açık şema modelleri, veriler üç sütun halinde kaydedilir:
- Varlık (açıklanan)
- Öznitelik veya parametre (ör. ad, açıklama, veri türü)
- Özniteliğin değeri
- Yıldız şeması. Bu, verilerin boyut ve olgular olarak düzenlenmiş olduğu bir boyutlu modelin en basit halidir. Büyük veri kümelerini sorgulamak için uygun olduğundan iş zekası ve veri saklamada kullanılır.
Yazılım ile basitleştirme
Veri modelleri veya UML diyagramları oluştururken yazılım aracı kullanmak süreci basitleştirir ve geliştirir. Şunları yapabilmenizi sağlayan bir seçim yapın:
- UML 2.5 ve ayrıca BPMN 2.0 ve IEEE gibi sektör standartlarını karşılayan bir içerik ekosisteminde hazır şablonları ve binlerce şekli kullanarak profesyonel diyagramlar oluşturun.
- Veri katmanları, simgeler, renkler ve grafikler kullanarak diyagramlara hayat verin ve verileri daha kolay kavranır hale getirin Buna tek adımlık Excel veri görselleştirmesi dahil.
- Birlikte yazma, yorum ve açıklama ekleme özelliklerini kullanarak diğer kişilerle işbirliği yapın.
- Herkese aynı bilgiyi, aynı biçimde sunun ve diyagramlara bir tarayıcı veya cihaz uygulamaları üzerinden hemen her yerden erişin.
Birçok sektördeki yazılım geliştirme ve yazılım dışı sistemlerde, görsel UML diyagramlarını kullanmak davranış süreçleri ve yapıları oluşturmanın başarısında önemli bir rol oynayabilir. Bu adım adım kılavuzla yazılım içeren UML diyagramları oluşturma hakkında daha fazla bilgi edinin.
Marin, Microsoft'un pazarlama ekibinin bir üyesidir. Girişimcilerin işletmelerini nasıl daha iyi hayata geçirebildiklerini, yönetebildiklerini ve büyüttüklerini görmekten heyecan duyuyor.
Microsoft 365’i takip edin