UML - Hızlı Kılavuz
UML, yazılım sistemlerinin yapıtlarını belirlemek, görselleştirmek, oluşturmak ve belgelemek için standart bir dildir.
UML, Object Management Group (OMG) tarafından oluşturuldu ve UML 1.0 spesifikasyon taslağı, Ocak 1997'de OMG'ye önerildi.
OMG, gerçek bir endüstri standardı oluşturmak için sürekli çaba göstermektedir.
UML, Unified Modeling Language.
UML, C ++, Java, COBOL vb. Gibi diğer yaygın programlama dillerinden farklıdır.
UML, yazılım planları yapmak için kullanılan resimli bir dildir.
UML, yazılım sistemini görselleştirmek, belirlemek, yapılandırmak ve belgelemek için genel amaçlı bir görsel modelleme dili olarak tanımlanabilir.
UML genellikle yazılım sistemlerini modellemek için kullanılsa da, bu sınır içinde sınırlı değildir. Yazılım olmayan sistemleri modellemek için de kullanılır. Örneğin, bir üretim birimindeki süreç akışı vb.
UML bir programlama dili değildir ancak araçlar, UML diyagramları kullanılarak çeşitli dillerde kod oluşturmak için kullanılabilir. UML'nin nesne yönelimli analiz ve tasarımla doğrudan bir ilişkisi vardır. Bazı standardizasyondan sonra, UML bir OMG standardı haline geldi.
UML'nin hedefleri
Bir resim bin kelimeye bedeldir , bu deyim UML'yi tanımlamaya kesinlikle uygundur. Nesne yönelimli kavramlar, UML'den çok daha önce tanıtıldı. Bu noktada, nesne yönelimli geliştirmeyi organize etmek ve pekiştirmek için standart metodolojiler yoktu. O zaman UML ortaya çıktı.
UML'yi geliştirmek için bir dizi hedef vardır, ancak en önemlisi, tüm modelleyicilerin kullanabileceği bazı genel amaçlı modelleme dilini tanımlamaktır ve ayrıca anlaşılması ve kullanılması da basitleştirilmelidir.
UML diyagramları sadece geliştiriciler için değil, aynı zamanda iş kullanıcıları, sıradan insanlar ve sistemi anlamak isteyen herkes için yapılır. Sistem, yazılım veya yazılım olmayan bir sistem olabilir. Bu nedenle, UML'nin bir geliştirme yöntemi olmadığı, onu başarılı bir sistem haline getirmek için süreçlere eşlik ettiği açık olmalıdır.
Sonuç olarak, UML'nin amacı, günümüzün karmaşık ortamında tüm olası pratik sistemleri modellemek için basit bir modelleme mekanizması olarak tanımlanabilir.
UML'nin Kavramsal Modeli
UML'nin kavramsal modelini anlamak için önce kavramsal modelin ne olduğunu netleştirmemiz gerekir? ve neden kavramsal bir model gerekli?
Kavramsal bir model, kavramlardan ve bunların ilişkilerinden oluşan bir model olarak tanımlanabilir.
Kavramsal bir model, bir UML diyagramı çizmeden önceki ilk adımdır. Gerçek dünyadaki varlıkları ve birbirleriyle nasıl etkileştiklerini anlamaya yardımcı olur.
UML gerçek zamanlı sistemleri tanımladığından kavramsal bir model yapmak ve ardından kademeli olarak ilerlemek çok önemlidir. UML'nin kavramsal modeli, aşağıdaki üç ana unsuru öğrenerek ustalaşabilir -
- UML yapı taşları
- Yapı taşlarını bağlama kuralları
- UML'nin ortak mekanizmaları
Nesneye Yönelik Kavramlar
UML, nesne yönelimli (OO) analiz ve tasarımın devamı olarak tanımlanabilir.
Bir nesne hem verileri hem de verileri kontrol eden yöntemleri içerir. Veriler, nesnenin durumunu temsil eder. Bir sınıf bir nesneyi tanımlar ve aynı zamanda gerçek dünya sistemini modellemek için bir hiyerarşi oluşturur. Hiyerarşi, miras olarak temsil edilir ve sınıflar, ihtiyaca göre farklı şekillerde de ilişkilendirilebilir.
Nesneler, etrafımızda var olan gerçek dünya varlıklarıdır ve soyutlama, kapsülleme, kalıtım ve polimorfizm gibi temel kavramların tümü UML kullanılarak temsil edilebilir.
UML, nesne yönelimli analiz ve tasarımda var olan tüm kavramları temsil edecek kadar güçlüdür. UML diyagramları yalnızca nesneye yönelik kavramların temsilidir. Bu nedenle, UML'yi öğrenmeden önce, OO kavramını ayrıntılı olarak anlamak önemli hale gelir.
Aşağıda, nesne yönelimli dünyanın bazı temel kavramları verilmiştir -
Objects - Nesneler bir varlığı ve temel yapı taşını temsil eder.
Class - Sınıf, bir nesnenin mavi baskısıdır.
Abstraction - Soyutlama, gerçek dünya varlığının davranışını temsil eder.
Encapsulation - Kapsülleme, verileri birbirine bağlama ve dış dünyadan gizleme mekanizmasıdır.
Inheritance - Kalıtım, mevcut sınıflardan yeni sınıflar oluşturma mekanizmasıdır.
Polymorphism - Mekanizmayı farklı şekillerde tanımlar.
OO Analizi ve Tasarımı
OO bir soruşturma olarak tanımlanabilir ve daha spesifik olmak gerekirse, nesnelerin araştırılmasıdır. Tasarım, tanımlanan nesnelerin işbirliği anlamına gelir.
Bu nedenle, OO analizi ve tasarım konseptlerini anlamak önemlidir. OO analizinin en önemli amacı, tasarlanacak bir sistemin nesnelerini belirlemektir. Bu analiz, mevcut bir sistem için de yapılır. Artık etkili bir analiz, ancak nesnelerin tanımlanabileceği bir şekilde düşünmeye başlayabildiğimizde mümkün. Nesnelerin tanımlanmasının ardından ilişkileri belirlenir ve son olarak tasarım üretilir.
OO analizinin ve tasarımının amacı şu şekilde tanımlanabilir:
Bir sistemin nesnelerini tanımlama.
İlişkilerini tanımlama.
OO dilleri kullanılarak yürütülebilir dosyalara dönüştürülebilen bir tasarım yapmak.
OO kavramlarının uygulandığı ve uygulandığı üç temel adım vardır. Adımlar şu şekilde tanımlanabilir:
OO Analysis → OO Design → OO implementation using OO languages
Yukarıdaki üç nokta şu şekilde ayrıntılı olarak açıklanabilir:
OO analizi sırasında en önemli amaç, nesneleri tanımlamak ve bunları uygun bir şekilde tanımlamaktır. Bu nesneler verimli bir şekilde tanımlanırsa, bir sonraki tasarım işi kolaydır. Hedefler sorumluluklarla tanımlanmalıdır. Sorumluluklar, nesne tarafından gerçekleştirilen işlevlerdir. Her nesnenin yerine getirilmesi gereken bazı sorumlulukları vardır. Bu sorumluluklar birlikte yapıldığında sistemin amacı yerine getirilir.
İkinci aşama OO tasarımıdır. Bu aşamada, gereksinimlere ve bunların yerine getirilmesine vurgu yapılır. Bu aşamada nesneler, amaçlanan ilişkilerine göre işbirliği yapar. İlişkilendirme tamamlandıktan sonra tasarım da tamamlanır.
Üçüncü aşama OO uygulamasıdır. Bu aşamada tasarım Java, C ++ vb. OO dilleri kullanılarak gerçekleştirilir.
OO Tasarımında UML'nin Rolü
UML, yazılım ve yazılım olmayan sistemleri modellemek için kullanılan bir modelleme dilidir. Yazılım olmayan sistemler için UML kullanılmasına rağmen, vurgu OO yazılım uygulamalarının modellenmesidir. Şimdiye kadar tartışılan UML diyagramlarının çoğu statik, dinamik vb. Gibi farklı yönleri modellemek için kullanılır. Şimdi, yönü ne olursa olsun, yapay nesneler nesnelerden başka bir şey değildir.
Sınıf diyagramı, nesne diyagramı, işbirliği diyagramı, etkileşim diyagramlarına bakarsak, hepsi temelde nesnelere göre tasarlanır.
Bu nedenle, OO tasarımı ile UML arasındaki ilişkiyi anlamak çok önemlidir. OO tasarımı ihtiyaca göre UML diyagramlarına dönüştürülür. UML'yi ayrıntılı olarak anlamadan önce, OO kavramı doğru bir şekilde öğrenilmelidir. OO analizi ve tasarımı tamamlandıktan sonra, bir sonraki adım çok kolaydır. OO analizi ve tasarımından elde edilen girdi, UML diyagramlarının girdisidir.
UML gerçek zamanlı sistemleri tanımladığından kavramsal bir model yapmak ve ardından kademeli olarak ilerlemek çok önemlidir. UML'nin kavramsal modeli, aşağıdaki üç ana unsuru öğrenerek ustalaşabilir -
- UML yapı taşları
- Yapı taşlarını bağlama kuralları
- UML'nin ortak mekanizmaları
Bu bölüm tüm UML yapı bloklarını açıklamaktadır. UML'nin yapı taşları şu şekilde tanımlanabilir:
- Things
- Relationships
- Diagrams
Bir şeyler
ThingsUML'nin en önemli yapı taşlarıdır. Şeyler olabilir -
- Structural
- Behavioral
- Grouping
- Annotational
Yapısal Şeyler
Structural thingsModelin statik kısmını tanımlar. Fiziksel ve kavramsal unsurları temsil ederler. Yapısal şeylerin kısa açıklamaları aşağıdadır.
Class − Sınıf, benzer sorumluluklara sahip bir dizi nesneyi temsil eder.
Interface − Arayüz, bir sınıfın sorumluluğunu belirleyen bir dizi işlemi tanımlar.
Collaboration −İşbirliği, öğeler arasındaki etkileşimi tanımlar.
Use case −Kullanım senaryosu, belirli bir hedef için bir sistem tarafından gerçekleştirilen bir dizi eylemi temsil eder.
Component −Bileşen, bir sistemin fiziksel bölümünü tanımlar.
Node − Bir düğüm, çalışma zamanında var olan fiziksel bir öğe olarak tanımlanabilir.
Davranışsal Şeyler
A behavioral thingUML modellerinin dinamik kısımlarından oluşur. Davranışsal şeyler aşağıdadır -
Interaction − Etkileşim, belirli bir görevi gerçekleştirmek için öğeler arasında değiş tokuş edilen bir grup mesajdan oluşan bir davranış olarak tanımlanır.
State machine −Durum makinesi, yaşam döngüsündeki bir nesnenin durumu önemli olduğunda yararlıdır. Olaylara yanıt olarak bir nesnenin geçtiği durumların sırasını tanımlar. Olaylar, durum değişikliğinden sorumlu dış faktörlerdir
Öğeleri Gruplama
Grouping thingsbir UML modelinin öğelerini birlikte gruplamak için bir mekanizma olarak tanımlanabilir. Mevcut tek bir gruplama unsuru vardır -
Package − Paket, yapısal ve davranışsal şeyleri toplamak için mevcut olan tek gruplama aracıdır.
Ek Açıklamalı Şeyler
Annotational things UML model öğelerinin açıklamalarını, açıklamalarını ve yorumlarını yakalamak için bir mekanizma olarak tanımlanabilir. Note- Mevcut tek Ek Açıklamalı şey budur. Bir not, bir UML öğesinin yorumlarını, kısıtlamalarını vb. Oluşturmak için kullanılır.
İlişki
RelationshipUML'nin en önemli yapı taşıdır. Elemanların birbirleriyle nasıl ilişkilendirildiğini gösterir ve bu ilişkilendirme bir uygulamanın işlevselliğini açıklar.
Mevcut dört çeşit ilişki vardır.
Bağımlılık
Bağımlılık, bir unsurdaki değişimin diğerini de etkilediği iki şey arasındaki bir ilişkidir.
bağlantı
İlişkilendirme temelde bir UML modelinin öğelerini birbirine bağlayan bir dizi bağlantıdır. Ayrıca bu ilişkide kaç nesnenin yer aldığını da açıklar.
Genelleme
Genelleme, özel bir unsuru genelleştirilmiş bir unsurla birleştiren bir ilişki olarak tanımlanabilir. Temel olarak nesneler dünyasındaki kalıtım ilişkisini açıklar.
Gerçekleşme
Gerçekleşme, iki öğenin birbirine bağlı olduğu bir ilişki olarak tanımlanabilir. Bir öğe, uygulanmayan bazı sorumlulukları tanımlar ve diğeri bunları uygular. Bu ilişki arayüzler durumunda mevcuttur.
UML Diyagramları
UML diyagramları, tüm tartışmanın nihai çıktısıdır. Tüm öğeler, ilişkiler eksiksiz bir UML diyagramı oluşturmak için kullanılır ve diyagram bir sistemi temsil eder.
UML diyagramının görsel etkisi, tüm sürecin en önemli parçasıdır. Diğer tüm unsurlar onu tamamlamak için kullanılır.
UML, ayrıntıları sonraki bölümlerde açıklanan aşağıdaki dokuz diyagramı içerir.
- Sınıf diyagramı
- Nesne diyagramı
- Durum şemasını kullan
- Sıra diyagramı
- İşbirliği diyagramı
- Etkinlik şeması
- Statechart diyagramı
- Dağıtım şeması
- Bileşen diyagramı
Herhangi bir gerçek dünya sistemi farklı kullanıcılar tarafından kullanılır. Kullanıcılar geliştiriciler, testçiler, iş adamları, analistler ve çok daha fazlası olabilir. Dolayısıyla bir sistem tasarlamadan önce mimari farklı bakış açıları düşünülerek yapılır. En önemli kısım, sistemi farklı izleyiciler açısından görselleştirmek. Ne kadar iyi anlarsak sistemi o kadar iyi kurabiliriz.
UML, bir sistemin farklı bakış açılarının tanımlanmasında önemli bir rol oynar. Bu perspektifler -
- Design
- Implementation
- Process
- Deployment
Merkez, Use CaseBu dördünü birbirine bağlayan görünüm. BirUse Casesistemin işlevselliğini temsil eder. Dolayısıyla, diğer bakış açıları kullanım senaryosu ile bağlantılıdır.
DesignBir sistemin, sınıflar, arayüzler ve işbirliğinden oluşur. UML, bunu desteklemek için sınıf diyagramı, nesne diyagramı sağlar.
ImplementationTam bir fiziksel sistem oluşturmak için bir araya getirilen bileşenleri tanımlar. Uygulama perspektifini desteklemek için UML bileşen diyagramı kullanılır.
ProcessSistemin akışını tanımlar. Dolayısıyla, Tasarımda kullanılan unsurların aynıları da bu perspektifi desteklemek için kullanılır.
Deploymentdonanımı oluşturan sistemin fiziksel düğümlerini temsil eder. Bu perspektifi desteklemek için UML dağıtım diyagramı kullanılır.
UML modelini birbirinden ayırmak çok önemlidir. Farklı UML modelleme türleri için farklı diyagramlar kullanılır. Üç önemli UML modelleme türü vardır.
Yapısal Modelleme
Yapısal modelleme, bir sistemin statik özelliklerini yakalar. Aşağıdakilerden oluşurlar -
- Sınıf diyagramları
- Nesne diyagramları
- Dağıtım diyagramları
- Paket şemaları
- Kompozit yapı diyagramı
- Bileşen diyagramı
Yapısal model, sistemin çerçevesini temsil eder ve bu çerçeve, diğer tüm bileşenlerin bulunduğu yerdir. Bu nedenle, sınıf diyagramı, bileşen diyagramı ve dağıtım diyagramları yapısal modellemenin parçalarıdır. Hepsi öğeleri ve onları bir araya getirme mekanizmasını temsil eder.
Yapısal model, sistemin dinamik davranışını asla tanımlamaz. Sınıf diyagramı en yaygın kullanılan yapısal diyagramdır.
Davranışsal Modelleme
Davranışsal model, sistemdeki etkileşimi tanımlar. Yapısal diyagramlar arasındaki etkileşimi temsil eder. Davranışsal modelleme, sistemin dinamik doğasını gösterir. Aşağıdakilerden oluşurlar -
- Aktivite diyagramları
- Etkileşim diyagramları
- Durum diyagramlarını kullanın
Yukarıdakilerin tümü, bir sistemdeki dinamik akış sırasını gösterir.
Mimari Modelleme
Mimari model, sistemin genel çerçevesini temsil eder. Sistemin hem yapısal hem de davranışsal unsurlarını içerir. Mimari model, tüm sistemin planı olarak tanımlanabilir. Paket diyagramı mimari modelleme kapsamında gelir.
UML, diyagramatik gösterimleriyle popülerdir. Hepimiz UML'nin yazılım ve yazılım dışı sistemlerin bileşenlerini görselleştirmek, belirlemek, inşa etmek ve belgelemek için olduğunu biliyoruz. Dolayısıyla görselleştirme, anlaşılması ve hatırlanması gereken en önemli kısımdır.
UML notasyonları, modellemede en önemli unsurlardır. Eksiksiz ve anlamlı bir model oluşturmak için notasyonların verimli ve uygun kullanımı çok önemlidir. Model, amacı doğru şekilde tasvir edilmedikçe işe yaramaz.
Bu nedenle, öğrenme notasyonları en baştan vurgulanmalıdır. Şeyler ve ilişkiler için farklı gösterimler mevcuttur. UML diyagramları, nesnelerin ve ilişkilerin gösterimleri kullanılarak yapılır. Genişletilebilirlik, UML'yi daha güçlü ve esnek kılan bir başka önemli özelliktir.
Bölüm, temel UML gösterimlerini ayrıntılı olarak açıklamaktadır. Bu, Bölüm İki'de tartışılan UML yapı taşı bölümünün bir uzantısıdır.
Yapısal Şeyler
Yapısal şeylerde kullanılan grafik gösterimler en yaygın şekilde UML'de kullanılır. Bunlar UML modellerinin isimleri olarak kabul edilir. Yapısal şeylerin listesi aşağıdadır.
- Classes
- Object
- Interface
- Collaboration
- Kullanım alanı
- Aktif sınıflar
- Components
- Nodes
Sınıf Gösterimi
UML sınıfı aşağıdaki şekil ile temsil edilmektedir. Diyagram dört bölüme ayrılmıştır.
- Üst bölüm, sınıfı adlandırmak için kullanılır.
- İkincisi, sınıfın niteliklerini göstermek için kullanılır.
- Üçüncü bölüm, sınıf tarafından gerçekleştirilen işlemleri açıklamak için kullanılır.
- Dördüncü bölüm, ek bileşenleri göstermek için isteğe bağlıdır.
Sınıflar, nesneleri temsil etmek için kullanılır. Nesneler, özellikleri ve sorumluluğu olan herhangi bir şey olabilir.
Nesne Gösterimi
Nesne sınıfı aynı şekilde temsil edilmektedir. Tek fark, aşağıdaki şekilde gösterildiği gibi altı çizili addır .
Nesne, bir sınıfın örneği olarak bilinen bir sınıfın gerçek uygulaması olduğundan. Dolayısıyla, sınıfla aynı kullanıma sahiptir.
Arayüz Gösterimi
Arayüz, aşağıdaki şekilde gösterildiği gibi bir daire ile temsil edilir. Genellikle dairenin altına yazılan bir adı vardır.
Arayüz, işlevselliği uygulama olmadan tanımlamak için kullanılır. Arayüz, uygulamayı değil, farklı işlevleri tanımladığınız bir şablon gibidir. Bir sınıf arabirimi uyguladığında, gereksinime göre işlevselliği de uygular.
İşbirliği Notasyonu
İşbirliği, aşağıdaki şekilde gösterildiği gibi noktalı bir tutulma ile temsil edilmektedir. Tutulma içinde adı yazılıdır.
İşbirliği sorumlulukları temsil eder. Genelde sorumluluklar bir grup içindedir.
Kullanım Durumu Gösterimi
Kullanım durumu, içinde bir isim bulunan bir tutulma olarak temsil edilir. Ek sorumluluklar içerebilir.
Kullanım durumu, bir sistemin üst düzey işlevlerini yakalamak için kullanılır.
Aktör Notasyonu
Bir aktör, sistemle etkileşime giren bazı iç veya dış varlık olarak tanımlanabilir.
Bir aktör, dahili veya harici varlıkları açıklamak için bir kullanım durumu diyagramında kullanılır.
İlk Durum Gösterimi
Başlangıç durumu, bir sürecin başlangıcını göstermek için tanımlanır. Bu gösterim hemen hemen tüm diyagramlarda kullanılmaktadır.
İlk Durum Gösteriminin kullanımı, bir sürecin başlangıç noktasını göstermektir.
Son Durum Gösterimi
Son durum, bir sürecin sonunu göstermek için kullanılır. Bu gösterim aynı zamanda neredeyse tüm diyagramlarda sonu tanımlamak için kullanılır.
Son Durum Notasyonunun kullanımı, bir sürecin sonlanma noktasını göstermektir.
Aktif Sınıf Gösterimi
Aktif sınıf, sağlam kenarlığı olan bir sınıfa benzer. Aktif sınıf genellikle bir sistemin eşzamanlı davranışını tanımlamak için kullanılır.
Aktif sınıf, bir sistemdeki eşzamanlılığı temsil etmek için kullanılır.
Bileşen Gösterimi
UML'deki bir bileşen, aşağıdaki şekilde içinde bir adla gösterilmiştir. Gerektiğinde ek öğeler eklenebilir.
Bileşen, UML diyagramlarının yapıldığı bir sistemin herhangi bir parçasını temsil etmek için kullanılır.
Düğüm Gösterimi
UML'deki bir düğüm, aşağıdaki şekilde bir adla gösterildiği gibi bir kare kutu ile temsil edilir. Bir düğüm, sistemin fiziksel bileşenini temsil eder.
Düğüm; sunucu, ağ vb. Gibi bir sistemin fiziksel bölümünü temsil etmek için kullanılır.
Davranışsal Şeyler
Dinamik parçalar, UML'deki en önemli unsurlardan biridir. UML, yazılım ve yazılım olmayan sistemlerin dinamik kısmını temsil eden bir dizi güçlü özelliğe sahiptir. Bu özellikler, etkileşimleri ve durum makinelerini içerir .
Etkileşimler iki tür olabilir -
- Sıralı (Sıra diyagramı ile temsil edilir)
- İşbirlikçi (İşbirliği diyagramı ile temsil edilir)
Etkileşim Gösterimi
Etkileşim temelde iki UML bileşeni arasındaki bir mesaj alışverişidir. Aşağıdaki diyagram, bir etkileşimde kullanılan farklı gösterimleri temsil etmektedir.
Etkileşim, bir sistemin bileşenleri arasındaki iletişimi temsil etmek için kullanılır.
Durum Makinesi Gösterimi
Durum makinesi, bir bileşenin yaşam döngüsündeki farklı durumlarını tanımlar. Gösterimler aşağıdaki diyagramda açıklanmıştır.
Durum makinesi, bir sistem bileşeninin farklı durumlarını tanımlamak için kullanılır. Durum, duruma bağlı olarak aktif, boşta veya başka herhangi bir durumda olabilir.
Öğeleri Gruplama
UML modellerini organize etmek, tasarımın en önemli yönlerinden biridir. UML'de gruplama için kullanılabilen yalnızca bir öğe vardır ve bu da pakettir.
Paket Gösterimi
Paket notasyonu aşağıdaki şekilde gösterilmektedir ve bir sistemin bileşenlerini sarmak için kullanılır.
Ek Açıklamalı Şeyler
Herhangi bir diyagramda, farklı unsurların ve bunların işlevlerinin açıklanması çok önemlidir. Dolayısıyla, UML bu gereksinimi desteklemek için notlara sahiptir .
Not Notasyonu
Bu gösterim aşağıdaki şekilde gösterilmektedir. Bu gösterimler, bir sistem hakkında gerekli bilgileri sağlamak için kullanılır.
İlişkiler
Öğeler arasındaki ilişkiler doğru bir şekilde tanımlanmadıkça bir model tamamlanmış sayılmaz. İlişki bir UML modeline uygun bir anlam veriyor. UML'de bulunan farklı ilişki türleri aşağıda verilmiştir.
- Dependency
- Association
- Generalization
- Extensibility
Bağımlılık Gösterimi
Bağımlılık, UML öğelerinde önemli bir husustur. Bağımlı öğeleri ve bağımlılığın yönünü açıklar.
Bağımlılık, aşağıdaki şekilde gösterildiği gibi noktalı bir okla temsil edilir. Ok başı bağımsız öğeyi temsil eder ve diğer uç bağımlı öğeyi temsil eder.
Bağımlılık, bir sistemin iki öğesi arasındaki bağımlılığı temsil etmek için kullanılır
İlişkilendirme Notasyonu
İlişki, bir UML diyagramındaki öğelerin nasıl ilişkilendirildiğini açıklar. Basit bir deyişle, bir etkileşimde kaç öğenin yer aldığını açıklar.
İlişkilendirme, her iki tarafta oklar olan (olmayan) noktalı bir çizgiyle temsil edilir. İki uç, aşağıdaki şekilde gösterildiği gibi iki ilişkili elemanı temsil eder. Çokluk, kaç nesnenin ilişkilendirildiğini göstermek için uçlarda (1, *, vb.) Belirtilir.
İlişkilendirme, bir sistemin iki öğesi arasındaki ilişkiyi temsil etmek için kullanılır.
Genelleme Notasyonu
Genelleme, nesne yönelimli dünyanın kalıtım ilişkisini tanımlar. Ebeveyn ve çocuk ilişkisidir.
Genelleme, aşağıdaki şekilde gösterildiği gibi içi boş ok başlı bir okla temsil edilir. Bir uç ana öğeyi temsil eder ve diğer uç alt öğeyi temsil eder.
Genelleme, bir sistemin iki öğesinin ebeveyn-çocuk ilişkisini tanımlamak için kullanılır.
Genişletilebilirlik Gösterimi
Tüm diller (programlama veya modelleme), sözdizimi, anlambilim, vb. Gibi yeteneklerini genişletmek için bazı mekanizmalara sahiptir. UML ayrıca genişletilebilirlik özellikleri sağlamak için aşağıdaki mekanizmalara da sahiptir.
- Stereotipler (Yeni unsurları temsil eder)
- Etiketli değerler (Yeni öznitelikleri temsil eder)
- Kısıtlamalar (Sınırları temsil eder)
Dilin gücünü artırmak için genişletilebilirlik gösterimleri kullanılır. Temel olarak, sistemin bazı ekstra davranışlarını temsil etmek için kullanılan ek unsurlardır. Bu ekstra davranışlar, standart mevcut gösterimler kapsamında değildir.
Önceki bölümlerde, UML'nin yapı taşları ve diğer gerekli unsurları hakkında tartıştık. Şimdi bu unsurları nerede kullanacağımızı anlamamız gerekiyor.
Öğeler, diyagram olarak bilinen eksiksiz bir UML resmi oluşturmak için farklı şekillerde ilişkilendirilebilen bileşenler gibidir. Bu nedenle, bilgiyi gerçek hayattaki sistemlerde uygulamak için farklı diyagramları anlamak çok önemlidir.
Herhangi bir karmaşık sistem, en iyi şekilde bir tür diyagram veya resim yaparak anlaşılır. Bu diyagramların anlayışımız üzerinde daha iyi bir etkisi var. Etrafa bakarsak, diyagramların yeni bir kavram olmadığını ancak farklı endüstrilerde farklı şekillerde yaygın olarak kullanıldığını anlayacağız.
Sistemi daha iyi ve basit bir şekilde anlamak için UML diyagramları hazırlıyoruz. Sistemin tüm yönlerini kapsayacak tek bir şema yeterli değildir. UML, bir sistemin birçok yönünü kapsayan çeşitli diyagram türlerini tanımlar.
Gereksinimlerinizi karşılamak için kendi diyagram setinizi de oluşturabilirsiniz. Diyagramlar genellikle artımlı ve yinelemeli bir şekilde yapılır.
İki geniş diyagram kategorisi vardır ve bunlar yine alt kategorilere ayrılır -
Yapısal Diyagramlar
Davranış Diyagramları
Yapısal Diyagramlar
Yapısal diyagramlar, sistemin statik yönünü temsil eder. Bu statik yönler, ana yapıyı oluşturan ve dolayısıyla kararlı olan bir diyagramın bölümlerini temsil eder.
Bu statik parçalar, sınıflar, arayüzler, nesneler, bileşenler ve düğümlerle temsil edilir. Dört yapısal diyagram şunlardır:
- Sınıf diyagramı
- Nesne diyagramı
- Bileşen diyagramı
- Dağıtım şeması
Sınıf diyagramı
Sınıf diyagramları, UML'de kullanılan en yaygın diyagramlardır. Sınıf diyagramı sınıflar, arayüzler, ilişkiler ve işbirliğinden oluşur. Sınıf diyagramları, temel olarak, doğası gereği statik olan bir sistemin nesne yönelimli görünümünü temsil eder.
Aktif sınıf, sistemin eşzamanlılığını temsil etmek için bir sınıf diyagramında kullanılır.
Sınıf diyagramı, bir sistemin nesne yönelimini temsil eder. Bu nedenle genellikle geliştirme amaçlı kullanılmaktadır. Bu, sistem yapımı sırasında en yaygın olarak kullanılan diyagramdır.
Nesne Diyagramı
Nesne diyagramları, sınıf diyagramının bir örneği olarak tanımlanabilir. Bu nedenle, bu diyagramlar, bir sistemi uyguladığımız gerçek hayat senaryolarına daha yakındır.
Nesne diyagramları bir dizi nesnedir ve ilişkileri tıpkı sınıf diyagramları gibidir. Ayrıca sistemin statik görünümünü de temsil ederler.
Nesne diyagramlarının kullanımı sınıf diyagramlarına benzer, ancak pratik bir bakış açısıyla bir sistemin prototipini oluşturmak için kullanılırlar.
Bileşen Şeması
Bileşen diyagramları, bir dizi bileşeni ve bunların ilişkilerini temsil eder. Bu bileşenler, sınıflardan, arayüzlerden veya işbirliklerinden oluşur. Bileşen diyagramları, bir sistemin uygulama görünümünü temsil eder.
Tasarım aşamasında, bir sistemin yazılım yapıları (sınıflar, arayüzler vb.) İlişkilerine göre farklı gruplar halinde düzenlenir. Şimdi, bu gruplar bileşenler olarak biliniyor.
Son olarak, uygulamayı görselleştirmek için bileşen diyagramlarının kullanıldığı söylenebilir.
Dağıtım Şeması
Dağıtım diyagramları bir dizi düğüm ve bunların ilişkileridir. Bu düğümler, bileşenlerin konuşlandırıldığı fiziksel varlıklardır.
Dağıtım diyagramları, bir sistemin dağıtım görünümünü görselleştirmek için kullanılır. Bu genellikle dağıtım ekibi tarafından kullanılır.
Note- Yukarıdaki açıklamalara ve kullanımlara dikkatle bakılırsa, tüm diyagramların birbiriyle bir miktar ilişkisinin olduğu çok açıktır. Bileşen diyagramları, sınıf / nesne diyagramının parçası olan sınıflara, arayüzlere vb. Bağlıdır. Yine, dağıtım diyagramı, bileşen diyagramlarını yapmak için kullanılan bileşenlere bağlıdır.
Davranış Diyagramları
Herhangi bir sistemin statik ve dinamik olmak üzere iki yönü olabilir. Dolayısıyla, her iki yön de tam olarak kaplandığında bir model tamamlanmış olarak kabul edilir.
Davranış diyagramları temelde bir sistemin dinamik yönünü yakalar. Dinamik yön, bir sistemin değişen / hareket eden parçaları olarak daha fazla tanımlanabilir.
UML, aşağıdaki beş tür davranış şemasına sahiptir:
- Durum şemasını kullan
- Sıra diyagramı
- İşbirliği diyagramı
- Statechart diyagramı
- Etkinlik şeması
Kullanım Şeması
Kullanım durumu diyagramları, bir dizi kullanım senaryosu, aktörler ve bunların ilişkileridir. Bir sistemin kullanım durumu görünümünü temsil ederler.
Kullanım durumu, bir sistemin belirli bir işlevselliğini temsil eder. Bu nedenle, işlevsellikler ve iç / dış denetleyicileri arasındaki ilişkileri tanımlamak için kullanım durumu diyagramı kullanılır. Bu denetleyiciler şu şekilde bilinir:actors.
Sıra Diyagramı
Bir sıra diyagramı, bir etkileşim diyagramıdır. İsminden, diyagramın bir nesneden diğerine akan mesajların sırası olan bazı dizilerle ilgilendiği açıktır.
Bir sistemin bileşenleri arasındaki etkileşim, uygulama ve yürütme açısından çok önemlidir. Sıra diyagramı, belirli bir işlevi gerçekleştirmek için bir sistemdeki çağrıların sırasını görselleştirmek için kullanılır.
İşbirliği Şeması
İşbirliği diyagramı başka bir etkileşim diyagramıdır. Bir sistemin yapısal organizasyonunu ve gönderilen / alınan mesajları temsil eder. Yapısal organizasyon nesnelerden ve bağlantılardan oluşur.
İşbirliği diyagramının amacı sıra diyagramına benzer. Bununla birlikte, işbirliği diyagramının özel amacı, nesnelerin organizasyonunu ve etkileşimini görselleştirmektir.
Statechart Diyagramı
Herhangi bir gerçek zamanlı sistemin bir tür iç / dış olaylarla tepki vermesi beklenir. Bu olaylar, sistemin durum değişikliğinden sorumludur.
Statechart diyagramı, bir sistemin olaya dayalı durum değişikliğini temsil etmek için kullanılır. Temel olarak bir sınıfın, arayüzün vb. Durum değişikliğini açıklar.
Durum çizelgesi diyagramı, bir sistemin tepkisini iç / dış faktörlerle görselleştirmek için kullanılır.
Etkinlik şeması
Etkinlik diyagramı, bir sistemdeki kontrol akışını açıklar. Aktivitelerden ve bağlantılardan oluşur. Akış, sıralı, eşzamanlı veya dallanmış olabilir.
Faaliyetler, bir sistemin işlevlerinden başka bir şey değildir. Bir sistemdeki tüm akışı yakalamak için etkinlik diyagramlarının sayısı hazırlanır.
Aktivite diyagramları, bir sistemdeki kontrollerin akışını görselleştirmek için kullanılır. Bu, çalıştırıldığında sistemin nasıl çalışacağına dair bir fikir sahibi olmak için hazırlanmıştır.
Note- Bir sistemin dinamik yapısını yakalamak çok zordur. UML, bir sistemin dinamiklerini farklı açılardan yakalamak için özellikler sağlamıştır. Sıra diyagramları ve işbirliği diyagramları izomorfiktir, dolayısıyla herhangi bir bilgi kaybetmeden birbirlerinden dönüştürülebilirler. Bu aynı zamanda Statechart ve aktivite diyagramı için de geçerlidir.
Sınıf diyagramı statik bir diyagramdır. Bir uygulamanın statik görünümünü temsil eder. Sınıf diyagramı yalnızca bir sistemin farklı yönlerini görselleştirmek, açıklamak ve belgelemek için değil, aynı zamanda yazılım uygulamasının çalıştırılabilir kodunu oluşturmak için de kullanılır.
Sınıf diyagramı, bir sınıfın niteliklerini ve işlemlerini ve ayrıca sisteme uygulanan kısıtlamaları açıklar. Sınıf diyagramları, nesne yönelimli dillerle doğrudan eşleştirilebilen tek UML diyagramları oldukları için nesne odaklı sistemlerin modellemesinde yaygın olarak kullanılmaktadır.
Sınıf diyagramı, sınıfların, arabirimlerin, ilişkilendirmelerin, işbirliklerinin ve kısıtlamaların bir koleksiyonunu gösterir. Aynı zamanda yapısal bir diyagram olarak da bilinir.
Sınıf Diyagramlarının Amacı
Sınıf diyagramının amacı, bir uygulamanın statik görünümünü modellemektir. Sınıf diyagramları, doğrudan nesne yönelimli dillerle eşleştirilebilen ve bu nedenle inşaat sırasında yaygın olarak kullanılan tek diyagramlardır.
Aktivite diyagramı, sıra diyagramı gibi UML diyagramları sadece uygulamanın sıra akışını verebilir, ancak sınıf diyagramı biraz farklıdır. Kodlayıcı topluluğundaki en popüler UML diyagramıdır.
Sınıf diyagramının amacı şu şekilde özetlenebilir:
Bir uygulamanın statik görünümünün analizi ve tasarımı.
Bir sistemin sorumluluklarını açıklayın.
Bileşen ve dağıtım diyagramları için temel.
İleri ve geri mühendislik.
Sınıf Diyagramı Nasıl Çizilir?
Sınıf diyagramları, yazılım uygulamalarının oluşturulması için kullanılan en popüler UML diyagramlarıdır. Sınıf diyagramının çizim prosedürünü öğrenmek çok önemlidir.
Sınıf diyagramlarının çizim sırasında dikkate alınması gereken birçok özelliği vardır, ancak burada diyagram üst düzey bir görünümden ele alınacaktır.
Sınıf diyagramı, temel olarak sistemin statik görünümünün grafiksel bir temsilidir ve uygulamanın farklı yönlerini temsil eder. Sınıf diyagramlarından oluşan bir koleksiyon tüm sistemi temsil eder.
Bir sınıf diyagramı çizerken aşağıdaki noktalar hatırlanmalıdır -
Sınıf diyagramının adı, sistemin yönünü açıklamak için anlamlı olmalıdır.
Her unsur ve bunların ilişkileri önceden tanımlanmalıdır.
Her sınıfın sorumluluğu (nitelikleri ve yöntemleri) açıkça tanımlanmalıdır.
Gereksiz özellikler diyagramı karmaşık hale getireceğinden, her sınıf için minimum özellik sayısı belirtilmelidir.
Diyagramın bazı yönlerini açıklamak için gerektiğinde notları kullanın. Çizimin sonunda geliştirici / kodlayıcı tarafından anlaşılır olmalıdır.
Son olarak, son versiyonu yapmadan önce, diyagram düz bir kağıda çizilmeli ve düzeltilmesi için mümkün olduğunca çok kez yeniden çalışılmalıdır.
Aşağıdaki şema, bir uygulamanın Sipariş Sisteminin bir örneğidir. Tüm uygulamanın belirli bir yönünü açıklar.
Öncelikle Sipariş ve Müşteri, sistemin iki unsuru olarak belirlenir. Bire çok ilişkileri var çünkü bir müşterinin birden fazla siparişi olabilir.
Sipariş sınıfı soyut bir sınıftır ve iki somut sınıfı vardır (miras ilişkisi) SpecialOrder ve NormalOrder.
Miras alınan iki sınıf, Order sınıfı olarak tüm özelliklere sahiptir. Ek olarak, dispatch () ve take () gibi ek işlevlere sahiptirler.
Aşağıdaki sınıf şeması, yukarıda belirtilen tüm noktalar dikkate alınarak çizilmiştir.
Sınıf Diyagramları Nerede Kullanılır?
Sınıf diyagramı statik bir diyagramdır ve bir sistemin statik görünümünü modellemek için kullanılır. Statik görünüm, sistemin kelime dağarcığını tanımlar.
Sınıf diyagramı ayrıca bileşen ve dağıtım diyagramlarının temeli olarak kabul edilir. Sınıf diyagramları yalnızca sistemin statik görünümünü görselleştirmek için kullanılmaz, aynı zamanda herhangi bir sistemin ileri ve geri mühendisliği için yürütülebilir kodu oluşturmak için de kullanılır.
Genellikle, UML diyagramları herhangi bir nesne yönelimli programlama diliyle doğrudan eşleştirilmez, ancak sınıf diyagramı bir istisnadır.
Sınıf diyagramı, Java, C ++, vb. Gibi nesne yönelimli dillerle eşleştirmeyi açıkça gösterir. Pratik deneyimlerden, sınıf diyagramı genellikle inşaat amacıyla kullanılır.
Özetle, sınıf diyagramlarının şu amaçlarla kullanıldığı söylenebilir:
Sistemin statik görünümünü açıklamak.
Statik görünümün unsurları arasındaki işbirliğini gösterme.
Sistem tarafından gerçekleştirilen işlevleri açıklamak.
Nesneye yönelik diller kullanılarak yazılım uygulamalarının oluşturulması.
Nesne diyagramları sınıf diyagramlarından türetilir, bu nedenle nesne diyagramları sınıf diyagramlarına bağımlıdır.
Nesne diyagramları, bir sınıf diyagramının bir örneğini temsil eder. Temel kavramlar, sınıf diyagramları ve nesne diyagramları için benzerdir. Nesne diyagramları ayrıca bir sistemin statik görünümünü temsil eder, ancak bu statik görünüm, sistemin belirli bir andaki anlık görüntüsüdür.
Nesne diyagramları, bir dizi nesneyi ve bunların bir örnek olarak ilişkilerini oluşturmak için kullanılır.
Nesne Diyagramlarının Amacı
Bir diyagramın amacı, onu pratik olarak uygulamak için açıkça anlaşılmalıdır. Nesne diyagramlarının amaçları, sınıf diyagramlarına benzer.
Aradaki fark, bir sınıf diyagramının sınıflardan ve bunların ilişkilerinden oluşan soyut bir modeli temsil etmesidir. Bununla birlikte, bir nesne diyagramı, doğası gereği somut olan belirli bir andaki bir örneği temsil eder.
Nesne diyagramının gerçek sistem davranışına daha yakın olduğu anlamına gelir. Amaç, belirli bir anda bir sistemin statik görünümünü yakalamaktır.
Nesne diyagramının amacı şu şekilde özetlenebilir:
İleri ve geri mühendislik.
Bir sistemin nesne ilişkileri
Bir etkileşimin statik görünümü.
Nesne davranışını ve ilişkilerini pratik açıdan anlayın
Nesne Şeması Nasıl Çizilir?
Bir nesne diyagramının bir sınıf diyagramının bir örneği olduğunu daha önce tartışmıştık. Bir nesne diyagramının, bir sınıf diyagramında kullanılan şeylerin örneklerinden oluştuğu anlamına gelir.
Yani her iki diyagram da aynı temel unsurlardan ancak farklı biçimde yapılmıştır. Sınıf diyagramında öğeler mavi baskıyı temsil etmek için soyut biçimdedir ve nesne diyagramında öğeler gerçek dünya nesnesini temsil etmek için somut biçimdedir.
Belirli bir sistemi yakalamak için sınıf diyagramlarının sayısı sınırlıdır. Bununla birlikte, nesne diyagramlarını düşünürsek, doğası gereği benzersiz olan sınırsız sayıda örneğe sahip olabiliriz. Yalnızca sistem üzerinde etkisi olan durumlar dikkate alınır.
Yukarıdaki tartışmadan, tek bir nesne diyagramının gerekli tüm örnekleri yakalayamayacağı veya bir sistemin tüm nesnelerini belirleyemeyeceği açıktır. Dolayısıyla çözüm -
İlk olarak, sistemi analiz edin ve hangi örneklerin önemli verilere ve ilişkiye sahip olduğuna karar verin.
İkinci olarak, yalnızca işlevselliği kapsayacak örnekleri düşünün.
Üçüncüsü, örnek sayısı sınırsız olduğundan biraz optimizasyon yapın.
Bir nesne diyagramı çizmeden önce, aşağıdaki şeyler hatırlanmalı ve açıkça anlaşılmalıdır -
Nesne diyagramları nesnelerden oluşur.
Nesne diyagramındaki bağlantı, nesneleri bağlamak için kullanılır.
Nesneler ve bağlantılar, bir nesne diyagramı oluşturmak için kullanılan iki öğedir.
Bundan sonra, diyagramın yapımına başlamadan önce aşağıdaki şeylere karar verilmelidir -
Nesne diyagramının amacını belirtmek için anlamlı bir adı olmalıdır.
En önemli unsurlar belirlenmelidir.
Nesneler arasındaki ilişki netleştirilmelidir.
Nesne diyagramına dahil etmek için farklı öğelerin değerlerinin yakalanması gerekir.
Daha fazla açıklığın gerekli olduğu noktalarda uygun notlar ekleyin.
Aşağıdaki diyagram, bir nesne diyagramının bir örneğidir. Sınıf Diyagramı bölümünde tartıştığımız Sipariş yönetim sistemini temsil eder. Aşağıdaki şema, belirli bir satın alma zamanında sistemin bir örneğidir. Aşağıdaki nesnelere sahiptir.
Customer
Order
SpecialOrder
NormalOrder
Şimdi müşteri nesnesi (C) üç sipariş nesnesiyle (O1, O2 ve O3) ilişkilendirilir. Bu sıra nesneleri, özel sıra ve normal sıra nesneleriyle (S1, S2 ve N1) ilişkilidir. Müşteri, dikkate alınan belirli bir süre için farklı numaralarla (12, 32 ve 40) aşağıdaki üç siparişe sahiptir.
Müşteri gelecekte sipariş sayısını artırabilir ve bu senaryoda nesne diyagramı bunu yansıtacaktır. Sıra, özel düzen ve normal sıra nesneleri gözlemlenirse, bazı değerlere sahip olduklarını göreceksiniz.
Siparişler için değerler 12, 32 ve 40'tır, bu da nesnelerin belirli bir an için bu değerlere sahip olduğunu gösterir (burada satın alma işleminin yapıldığı belirli zaman an olarak kabul edilir)
Aynı durum 20, 30, 60 gibi sipariş sayılarına sahip özel emir ve normal emir nesneleri için de geçerlidir. Farklı bir satın alma zamanı düşünüldüğünde bu değerler buna göre değişecektir.
Aşağıdaki nesne diyagramı yukarıda belirtilen tüm noktalar dikkate alınarak çizilmiştir.
Nesne Diyagramları Nerelerde Kullanılır?
Nesne diyagramları, belirli bir anda çalışan bir sistemin anlık görüntüsü olarak düşünülebilir. Çalışan bir tren örneğini ele alalım
Şimdi, akan trenin bir fotoğrafını çekerseniz, aşağıdakilere sahip olan statik bir resmini bulacaksınız -
Çalışan belirli bir durum.
Belirli sayıda yolcu. farklı bir zamanda çekilirse bu değişecek
Burada, çalışan trenin kopmasının yukarıdaki değerlere sahip bir nesne olduğunu hayal edebiliriz. Ve bu, gerçek hayattaki herhangi bir basit veya karmaşık sistem için geçerlidir.
Özetle, nesne diyagramlarının aşağıdakiler için kullanıldığı söylenebilir:
Bir sistemin prototipini yapmak.
Tersine mühendislik.
Karmaşık veri yapılarının modellenmesi.
Sistemi pratik açıdan anlamak.
Bileşen diyagramları, doğa ve davranış açısından farklıdır. Bileşen diyagramları, bir sistemin fiziksel yönlerini modellemek için kullanılır. Şimdi soru şu, bu fiziksel yönler nelerdir? Fiziksel yönler, bir düğümde bulunan yürütülebilir dosyalar, kitaplıklar, dosyalar, belgeler vb. Unsurlardır.
Bileşen diyagramları, bir sistemdeki bileşenler arasındaki organizasyonu ve ilişkileri görselleştirmek için kullanılır. Bu diyagramlar aynı zamanda çalıştırılabilir sistemler yapmak için de kullanılır.
Bileşen Diyagramlarının Amacı
Bileşen diyagramı, UML'de özel bir diyagram türüdür. Amaç, şimdiye kadar tartışılan diğer tüm diyagramlardan da farklıdır. Sistemin işlevselliğini açıklamaz, ancak bu işlevleri yapmak için kullanılan bileşenleri açıklar.
Böylece, bu bakış açısından, bir sistemdeki fiziksel bileşenleri görselleştirmek için bileşen diyagramları kullanılır. Bu bileşenler kitaplıklar, paketler, dosyalar vb.
Bileşen diyagramları, bir sistemin statik uygulama görünümü olarak da tanımlanabilir. Statik uygulama, bileşenlerin belirli bir andaki organizasyonunu temsil eder.
Tek bir bileşen diyagramı tüm sistemi temsil edemez, ancak bütünü temsil etmek için bir diyagramlar koleksiyonu kullanılır.
Bileşen diyagramının amacı şu şekilde özetlenebilir:
Bir sistemin bileşenlerini görselleştirin.
İleri ve geri mühendisliği kullanarak yürütülebilir dosyaları oluşturun.
Bileşenlerin organizasyonunu ve ilişkilerini tanımlayın.
Bileşen Diyagramı Nasıl Çizilir?
Bileşen diyagramları, bir sistemin fiziksel yapıtlarını tanımlamak için kullanılır. Bu yapı, dosyaları, yürütülebilir dosyaları, kitaplıkları vb. İçerir.
Bu diyagramın amacı farklıdır. Bir uygulamanın uygulama aşamasında bileşen diyagramları kullanılır. Ancak uygulama detaylarını görselleştirmek için çok önceden hazırlanmıştır.
Başlangıçta, sistem farklı UML diyagramları kullanılarak tasarlanır ve ardından yapay nesneler hazır olduğunda, uygulama hakkında bir fikir edinmek için bileşen diyagramları kullanılır.
Bu diyagram çok önemlidir, çünkü onsuz uygulama verimli bir şekilde uygulanamaz. İyi hazırlanmış bir bileşen diyagramı, uygulama performansı, bakım vb. Gibi diğer hususlar için de önemlidir.
Bir bileşen diyagramı çizmeden önce, aşağıdaki eserler açıkça tanımlanmalıdır -
Sistemde kullanılan dosyalar.
Uygulamayla ilgili kitaplıklar ve diğer eserler.
Eserler arasındaki ilişkiler.
Eserleri belirledikten sonra aşağıdaki noktaların akılda tutulması gerekir.
Diyagramın çizileceği bileşeni tanımlamak için anlamlı bir ad kullanın.
Kullanım araçlarını üretmeden önce zihinsel bir düzen hazırlayın.
Önemli noktaları açıklığa kavuşturmak için notları kullanın.
Aşağıda, sipariş yönetim sistemi için bir bileşen diyagramı verilmiştir. Burada eserler dosyalardır. Diyagram, uygulamadaki dosyaları ve bunların ilişkilerini gösterir. Aslında, bileşen diyagramı ayrıca dll'leri, kitaplıkları, klasörleri vb. İçerir.
Aşağıdaki diyagramda dört dosya tanımlanmış ve ilişkileri üretilmiştir. Bileşen diyagramı, tamamen farklı bir amaç için çizildiği sürece, tartışılan diğer UML diyagramlarıyla doğrudan eşleştirilemez.
Aşağıdaki bileşen diyagramı, yukarıda belirtilen tüm noktalar dikkate alınarak çizilmiştir.
Bileşen Diyagramları Nerelerde Kullanılır?
Bir sistemin statik uygulama görünümünü görselleştirmek için bileşen diyagramlarının kullanıldığını daha önce tarif etmiştik. Bileşen diyagramları, farklı amaçlar için kullanılan özel tip UML diyagramlarıdır.
Bu diyagramlar, bir sistemin fiziksel bileşenlerini gösterir. Açıklığa kavuşturmak için, bileşen diyagramlarının bir sistemdeki bileşenlerin organizasyonunu tanımladığını söyleyebiliriz.
Organizasyon ayrıca bir sistemdeki bileşenlerin konumu olarak tanımlanabilir. Bu bileşenler, sistem gereksinimlerini karşılamak için özel bir şekilde düzenlenmiştir.
Daha önce tartıştığımız gibi, bu bileşenler kitaplıklar, dosyalar, çalıştırılabilir dosyalar vb .'dir. Uygulamayı uygulamadan önce bu bileşenler organize edilmelidir. Bu bileşen organizasyonu, proje uygulamasının bir parçası olarak ayrıca tasarlanmıştır.
Bileşen diyagramları, uygulama açısından çok önemlidir. Bu nedenle, bir uygulamanın uygulama ekibi, bileşen ayrıntılarına ilişkin uygun bilgiye sahip olmalıdır.
Bileşen diyagramları şu amaçlarla kullanılabilir:
Bir sistemin bileşenlerini modelleyin.
Veritabanı şemasını modelleyin.
Bir uygulamanın yürütülebilir dosyalarını modelleyin.
Sistemin kaynak kodunu modelleyin.
Dağıtım şemaları, yazılım bileşenlerinin yerleştirildiği bir sistemin fiziksel bileşenlerinin topolojisini görselleştirmek için kullanılır.
Dağıtım diyagramları, bir sistemin statik dağıtım görünümünü açıklamak için kullanılır. Dağıtım diyagramları düğümlerden ve bunların ilişkilerinden oluşur.
Dağıtım Diyagramlarının Amacı
Dağıtım terimi, diyagramın amacını açıklar. Dağıtım diyagramları, yazılım bileşenlerinin konuşlandırıldığı donanım bileşenlerini açıklamak için kullanılır. Bileşen diyagramları ve dağıtım diyagramları yakından ilişkilidir.
Bileşen diyagramları, bileşenleri açıklamak için kullanılır ve dağıtım şemaları, bunların donanıma nasıl yerleştirildiğini gösterir.
UML, esas olarak bir sistemin yazılım yapılarına odaklanmak için tasarlanmıştır. Ancak, bu iki diyagram, yazılım ve donanım bileşenlerine odaklanmak için kullanılan özel diyagramlardır.
UML diyagramlarının çoğu mantıksal bileşenleri işlemek için kullanılır, ancak dağıtım diyagramları bir sistemin donanım topolojisine odaklanmak için yapılır. Dağıtım şemaları, sistem mühendisleri tarafından kullanılır.
Dağıtım diyagramlarının amacı şu şekilde tanımlanabilir:
Bir sistemin donanım topolojisini görselleştirin.
Yazılım bileşenlerini dağıtmak için kullanılan donanım bileşenlerini açıklayın.
Çalışma zamanı işleme düğümlerini açıklayın.
Dağıtım Şeması Nasıl Çizilir?
Dağıtım diyagramı, bir sistemin dağıtım görünümünü temsil eder. Bileşen diyagramı ile ilişkilidir çünkü bileşenler dağıtım diyagramları kullanılarak dağıtılır. Bir dağıtım diyagramı düğümlerden oluşur. Düğümler, uygulamayı dağıtmak için kullanılan fiziksel donanımdan başka bir şey değildir.
Dağıtım şemaları, sistem mühendisleri için yararlıdır. Verimli bir dağıtım şeması, aşağıdaki parametreleri kontrol ettiği için çok önemlidir -
Performance
Scalability
Maintainability
Portability
Bir dağıtım şeması çizmeden önce, aşağıdaki yapılar tanımlanmalıdır -
Nodes
Düğümler arasındaki ilişkiler
Aşağıda, sipariş yönetimi sisteminin dağıtım görünümü hakkında bir fikir sağlamak için örnek bir dağıtım şeması verilmiştir. Burada düğümleri şu şekilde gösterdik -
Monitor
Modem
Önbelleğe alma sunucusu
Server
Uygulamanın, sunucu 1, sunucu 2 ve sunucu 3 kullanılarak kümelenmiş bir ortamda dağıtılan web tabanlı bir uygulama olduğu varsayılır. Kullanıcı, İnternet'i kullanarak uygulamaya bağlanır. Denetim, önbelleğe alma sunucusundan kümelenmiş ortama doğru akar.
Aşağıdaki dağıtım şeması, yukarıda belirtilen tüm noktalar dikkate alınarak çizilmiştir.
Dağıtım Şemaları Nerelerde Kullanılır?
Dağıtım şemaları esas olarak sistem mühendisleri tarafından kullanılır. Bu diyagramlar, fiziksel bileşenleri (donanım), dağıtımlarını ve ilişkilerini açıklamak için kullanılır.
Dağıtım diyagramları, yazılım bileşenlerinin bulunduğu donanım bileşenleri / düğümleri olarak görselleştirilebilir.
Yazılım uygulamaları, karmaşık iş süreçlerini modellemek için geliştirilmiştir. Verimli yazılım uygulamaları, iş gereksinimlerini karşılamak için yeterli değildir. İş gereksinimleri, artan kullanıcı sayısını destekleme ihtiyacı, hızlı yanıt süresi vb. Olarak tanımlanabilir.
Bu tür gereksinimleri karşılamak için, donanım bileşenleri verimli ve uygun maliyetli bir şekilde tasarlanmalıdır.
Günümüzde yazılım uygulamaları doğası gereği çok karmaşıktır. Yazılım uygulamaları bağımsız, web tabanlı, dağıtılmış, ana bilgisayar tabanlı ve çok daha fazlası olabilir. Bu nedenle, donanım bileşenlerinin verimli bir şekilde tasarlanması çok önemlidir.
Dağıtım diyagramları kullanılabilir -
Bir sistemin donanım topolojisini modellemek.
Gömülü sistemi modellemek için.
Bir istemci / sunucu sistemi için donanım ayrıntılarını modellemek için.
Dağıtılmış bir uygulamanın donanım ayrıntılarını modellemek için.
İleri ve Geri mühendislik için.
Bir sistemi modellemek için en önemli husus dinamik davranışı yakalamaktır. Dinamik davranış, sistemin çalışırken / çalışırken gösterdiği davranış anlamına gelir.
Bir sistemi modellemek için sadece statik davranış yeterli değildir, dinamik davranış statik davranıştan daha önemlidir. UML'de dinamik doğayı modellemek için beş diyagram vardır ve kullanım durumu diyagramı bunlardan biridir. Şimdi kullanım durumu diyagramının doğası gereği dinamik olduğunu tartışmamız gerektiğinden, etkileşimi yapmak için bazı iç ve dış faktörler olmalıdır.
Bu iç ve dış etmenler, aktörler olarak bilinir. Kullanım durumu diyagramları aktörlerden, kullanım durumlarından ve bunların ilişkilerinden oluşur. Diyagram, bir uygulamanın sistemini / alt sistemini modellemek için kullanılır. Tek kullanımlık durum diyagramı, bir sistemin belirli bir işlevselliğini yakalar.
Bu nedenle, tüm sistemi modellemek için bir dizi kullanım durumu diyagramı kullanılır.
Kullanım Durumu Şemalarının Amacı
Kullanım durumu diyagramının amacı, bir sistemin dinamik yönünü yakalamaktır. Bununla birlikte, bu tanım, diğer dört diyagramın (aktivite, sıra, işbirliği ve Statechart) da aynı amaca sahip olması nedeniyle, amacı açıklamak için çok geneldir. Onu diğer dört diyagramdan ayıracak belirli bir amacı inceleyeceğiz.
Kullanım durumu diyagramları, iç ve dış etkiler dahil olmak üzere bir sistemin gereksinimlerini toplamak için kullanılır. Bu gereksinimler çoğunlukla tasarım gereksinimleridir. Dolayısıyla, bir sistem işlevlerini toplamak için analiz edildiğinde, kullanım senaryoları hazırlanır ve aktörler belirlenir.
İlk görev tamamlandığında, kullanım durumu diyagramları dış görünümü sunmak için modellenir.
Kısaca kullanım durum diyagramlarının amaçları şu şekilde söylenebilir -
Bir sistemin gereksinimlerini toplamak için kullanılır.
Bir sistemin dış görünümünü elde etmek için kullanılır.
Sistemi etkileyen dış ve iç faktörleri belirleyin.
Aktörlerin gereksinimler arasındaki etkileşimi gösterin.
Kullanım Durumu Şeması Nasıl Çizilir?
Bir sistemin üst düzey ihtiyaç analizi için kullanım durumu diyagramları dikkate alınır. Bir sistemin gereksinimleri analiz edildiğinde, işlevsellikler kullanım durumlarında yakalanır.
Kullanım durumlarının, organize bir şekilde yazılmış sistem işlevselliklerinden başka bir şey olmadığını söyleyebiliriz. Kullanım durumlarıyla ilgili ikinci şey aktörlerdir. Aktörler, sistemle etkileşime giren bir şey olarak tanımlanabilir.
Aktörler bir insan kullanıcı, bazı dahili uygulamalar veya bazı harici uygulamalar olabilir. Bir kullanım durumu diyagramı çizmeyi planladığımızda, aşağıdaki öğeleri tanımlamamız gerekir.
Kullanım durumu olarak temsil edilecek işlevler
Actors
Kullanım durumları ve aktörler arasındaki ilişkiler.
Kullanım durumu diyagramları, bir sistemin fonksiyonel gereksinimlerini yakalamak için çizilir. Yukarıdaki öğeleri belirledikten sonra, verimli bir kullanım durumu diyagramı çizmek için aşağıdaki yönergeleri kullanmalıyız
Kullanım senaryosunun adı çok önemlidir. İsim, gerçekleştirilen işlevleri tanımlayabilecek şekilde seçilmelidir.
Oyuncular için uygun bir isim verin.
Diyagramda ilişkileri ve bağımlılıkları açıkça gösterin.
Diyagramın ana amacı gereksinimleri tanımlamak olduğu için her türlü ilişkiyi dahil etmeye çalışmayın.
Bazı önemli noktaları açıklığa kavuşturmak için gerektiğinde notları kullanın.
Aşağıda, sipariş yönetim sistemini temsil eden örnek bir kullanım durumu diyagramı verilmiştir. Bu nedenle, diyagrama bakarsak, üç kullanım durumu bulacağız.(Order, SpecialOrder, and NormalOrder) ve müşteri olan bir oyuncu.
SpecialOrder ve NormalOrder kullanım durumları, Sipariş kullanım durumundan genişletilmiştir . Bu nedenle, genişletilmiş bir ilişkiye sahiptirler. Bir diğer önemli nokta, resimde gösterilen sistem sınırını belirlemektir. Aktör Müşteri, sistemin harici bir kullanıcısı olduğu için sistemin dışında yer alır.
Kullanım Durumu Şeması Nerede Kullanılır?
Daha önce tartıştığımız gibi, UML'de bir sistemin dinamik görünümünü modellemek için beş diyagram vardır. Artık her modelin belirli bir kullanım amacı vardır. Aslında bu özel amaçlar, çalışan bir sistemin farklı açılarıdır.
Bir sistemin dinamiklerini anlamak için farklı diyagram türleri kullanmamız gerekir. Kullanım durumu diyagramı bunlardan biridir ve özel amacı sistem gereksinimlerini ve aktörleri toplamaktır.
Kullanım durumu diyagramları, bir sistemin olaylarını ve akışlarını belirtir. Ancak kullanım durumu diyagramı asla nasıl uygulandıklarını açıklamaz. Kullanım durumu diyagramı, yalnızca kara kutunun girdisinin, çıktısının ve işlevinin bilindiği bir kara kutu olarak düşünülebilir.
Bu diyagramlar çok yüksek bir tasarım seviyesinde kullanılmaktadır. Bu yüksek seviyeli tasarım, sistemin eksiksiz ve pratik bir resmini elde etmek için tekrar tekrar geliştirildi. İyi yapılandırılmış bir kullanım senaryosu, ön koşul, son koşul ve istisnaları da açıklar. Bu ekstra öğeler, testi gerçekleştirirken test senaryoları oluşturmak için kullanılır.
Kullanım durumu ileri ve geri mühendislik için iyi bir aday olmasa da, yine de ileri ve geri mühendislik yapmak için biraz farklı bir şekilde kullanılmaktadır. Aynısı tersine mühendislik için de geçerlidir. Kullanım durumu diyagramı, tersine mühendislik için uygun hale getirmek için farklı kullanılır.
İleri mühendislikte, kullanım durumu diyagramları test senaryoları yapmak için kullanılır ve tersine mühendislik kullanım senaryoları, mevcut uygulamadan gereksinim ayrıntılarını hazırlamak için kullanılır.
Kullanım durumu diyagramları aşağıdakiler için kullanılabilir:
Gereksinim analizi ve üst düzey tasarım.
Bir sistemin bağlamını modelleyin.
Tersine mühendislik.
İleri mühendislik.
Etkileşim teriminden, diyagramın modeldeki farklı unsurlar arasındaki bazı etkileşim türlerini tanımlamak için kullanıldığı açıktır. Bu etkileşim, sistemin dinamik davranışının bir parçasıdır.
Bu etkileşimli davranış, UML'de olarak bilinen iki diyagramla temsil edilir. Sequence diagram ve Collaboration diagram. Her iki diyagramın temel amacı benzerdir.
Sıra diyagramı, mesajların zaman sırasını vurgular ve işbirliği diyagramı, mesaj gönderen ve alan nesnelerin yapısal organizasyonunu vurgular.
Etkileşim Diyagramlarının Amacı
Etkileşim diyagramlarının amacı, sistemin etkileşimli davranışını görselleştirmektir. Etkileşimi görselleştirmek zor bir iştir. Dolayısıyla çözüm, etkileşimin farklı yönlerini yakalamak için farklı model türleri kullanmaktır.
Sıra ve işbirliği diyagramları, dinamik doğayı farklı bir açıdan yakalamak için kullanılır.
Etkileşim diyagramının amacı -
Bir sistemin dinamik davranışını yakalamak için.
Sistemdeki mesaj akışını tanımlamak.
Nesnelerin yapısal organizasyonunu tanımlamak.
Nesneler arasındaki etkileşimi tanımlamak.
Etkileşim Şeması Nasıl Çizilir?
Daha önce tartıştığımız gibi, etkileşim diyagramlarının amacı, bir sistemin dinamik yönünü yakalamaktır. Bu yüzden dinamik yönü yakalamak için dinamik bir yönün ne olduğunu ve nasıl görselleştirildiğini anlamamız gerekiyor. Dinamik görünüm, çalışan sistemin belirli bir andaki anlık görüntüsü olarak tanımlanabilir
UML'de iki tür etkileşim diyagramımız vardır. Biri sıra diyagramı, diğeri ise işbirliği diyagramıdır. Sıra diyagramı, bir nesneden diğerine mesaj akışının zaman sırasını yakalar ve işbirliği diyagramı, mesaj akışında yer alan bir sistemdeki nesnelerin organizasyonunu açıklar.
Etkileşim diyagramını çizmeden önce aşağıdaki şeyler açıkça tanımlanmalıdır
Etkileşimde yer alan nesneler.
Mesaj nesneler arasında akar.
Mesajların aktığı sıra.
Nesne organizasyonu.
Aşağıda, sipariş yönetim sistemini modelleyen iki etkileşim diyagramı bulunmaktadır. İlk diyagram bir sıra diyagramıdır ve ikincisi bir işbirliği diyagramıdır
Sıra Diyagramı
Sıra diyagramının dört nesnesi vardır (Müşteri, Sipariş, Özel Sipariş ve Normal Sipariş).
Aşağıdaki diyagram, Şekil için mesaj dizisi, SpecialOrder nesne ve aynı olması durumunda kullanılabilir NormalOrder nesne. Mesaj akışlarının zaman sırasını anlamak önemlidir. Mesaj akışı, bir nesnenin yöntem çağrısından başka bir şey değildir.
İlk çağrı, Order nesnesinin bir yöntemi olan sendOrder () . Sonraki çağrı, SpecialOrder nesnesinin bir yöntemi olan confirm () ve son çağrı, SpecialOrder nesnesinin bir yöntemi olan Dispatch () ' dir . Aşağıdaki şema esas olarak bir nesneden diğerine yöntem çağrılarını açıklar ve bu aynı zamanda sistem çalışırken gerçek senaryodur.
İşbirliği Şeması
İkinci etkileşim diyagramı, işbirliği diyagramıdır. Aşağıdaki şemada görüldüğü gibi nesne organizasyonunu gösterir. İşbirliği diyagramında, yöntem çağırma sırası bazı numaralandırma teknikleriyle gösterilir. Sayı, yöntemlerin birbiri ardına nasıl çağrıldığını gösterir. İşbirliği şemasını tanımlamak için aynı sipariş yönetimi sistemini kullandık.
Yöntem çağrıları, bir sıra diyagramına benzer. Ancak, sıra diyagramı farkı, nesne organizasyonunu tanımlamaz, oysa işbirliği diyagramı nesne organizasyonunu gösterir.
Bu iki diyagram arasında seçim yapmak için gereksinim türüne vurgu yapılır. Zaman dizisi önemliyse, sıra diyagramı kullanılır. Organizasyon gerekliyse, işbirliği diyagramı kullanılır.
Etkileşim Şemaları Nerelerde Kullanılır?
Bir sistemin dinamik doğasını tanımlamak için etkileşim diyagramlarının kullanıldığını daha önce tartışmıştık. Şimdi, bu diyagramların kullanıldığı pratik senaryolara bakacağız. Pratik uygulamayı anlamak için, sıralama ve işbirliği diyagramının temel doğasını anlamamız gerekir.
Her iki diyagramın da temel amacı, bir sistemin dinamik davranışını yakalamak için kullanıldıklarından benzerdir. Bununla birlikte, özel amaç netleştirmek ve anlamak için daha önemlidir.
Sıra diyagramları, bir nesneden diğerine akan mesajların sırasını yakalamak için kullanılır. İşbirliği diyagramları, etkileşimde yer alan nesnelerin yapısal organizasyonunu tanımlamak için kullanılır. Tek bir diyagram, tüm sistemin dinamik yönünü tanımlamak için yeterli değildir, bu nedenle onu bir bütün olarak yakalamak için bir dizi diyagram kullanılır.
Mesaj akışını ve yapısal organizasyonu anlamak istediğimizde etkileşim diyagramları kullanılır. Mesaj akışı, bir nesneden diğerine kontrol akışı sırası anlamına gelir. Yapısal organizasyon, bir sistemdeki elemanların görsel organizasyonu anlamına gelir.
Etkileşim diyagramları kullanılabilir -
Zaman sırasına göre kontrol akışını modellemek.
Yapısal organizasyonlar tarafından kontrol akışını modellemek.
İleri mühendislik için.
Tersine mühendislik için.
Diyagramın adı, diyagramın amacını ve diğer ayrıntıları açıklar. Bir sistemdeki bir bileşenin farklı durumlarını tanımlar. Durumlar, bir sistemin bir bileşenine / nesnesine özgüdür.
Bir Statechart diyagramı bir durum makinesini tanımlar. Durum makinesi, bir nesnenin farklı durumlarını tanımlayan bir makine olarak tanımlanabilir ve bu durumlar, harici veya dahili olaylar tarafından kontrol edilir.
Bir sonraki bölümde açıklanan aktivite diyagramı, özel bir Statechart diyagramıdır. Statechart diyagramı durumları tanımladığından, bir nesnenin ömrünü modellemek için kullanılır.
Statechart Diyagramlarının Amacı
Statechart diyagramı, bir sistemin dinamik doğasını modellemek için kullanılan beş UML diyagramından biridir. Bir nesnenin ömrü boyunca farklı durumlarını tanımlarlar ve bu durumlar olaylar tarafından değiştirilir. Statechart diyagramları, reaktif sistemleri modellemek için kullanışlıdır. Reaktif sistemler, harici veya dahili olaylara yanıt veren bir sistem olarak tanımlanabilir.
Statechart diyagramı, bir durumdan diğerine kontrol akışını açıklar. Durumlar, bir nesnenin var olduğu ve bir olay tetiklendiğinde değişen bir koşul olarak tanımlanır. Statechart diyagramının en önemli amacı, bir nesnenin yaşam süresini yaratmadan sonlandırmaya kadar modellemektir.
Statechart diyagramları ayrıca bir sistemin ileri ve geri mühendisliği için de kullanılır. Ancak asıl amaç reaktif sistemi modellemektir.
Statechart diyagramlarını kullanmanın ana amaçları aşağıdadır -
Bir sistemin dinamik yönünü modellemek.
Reaktif bir sistemin yaşam süresini modellemek.
Bir nesnenin yaşam süresi boyunca farklı durumlarını tanımlamak.
Bir nesnenin durumlarını modellemek için bir durum makinesi tanımlayın.
Statechart Diyagramı Nasıl Çizilir?
Statechart diyagramı, yaşam döngüsündeki farklı nesnelerin durumlarını tanımlamak için kullanılır. Vurgu, bazı içsel veya dışsal olaylarda durum değişikliklerine yerleştirilir. Bu nesnelerin durumları, onları doğru bir şekilde analiz etmek ve uygulamak için önemlidir.
Statechart diyagramları, durumları açıklamak için çok önemlidir. Durumlar, belirli bir olay meydana geldiğinde nesnelerin durumu olarak tanımlanabilir.
Bir Statechart diyagramı çizmeden önce aşağıdaki noktaları açıklığa kavuşturmalıyız -
Analiz edilecek önemli nesneleri belirleyin.
Durumları tanımlayın.
Olayları tanımlayın.
Aşağıda, Order nesnesinin durumunun analiz edildiği bir Statechart diyagramı örneği verilmiştir.
İlk durum, işlemin başladığı yerden boşta kalma durumudur. Sonraki durumlar, istek gönderme, onaylama isteği ve gönderim siparişi gibi olaylar için gelir. Bu olaylar, sipariş nesnesinin durum değişikliklerinden sorumludur.
Bir nesnenin yaşam döngüsü boyunca (burada sipariş nesnesi) aşağıdaki durumlardan geçer ve bazı anormal çıkışlar olabilir. Bu anormal çıkış, sistemdeki bazı problemlerden dolayı meydana gelebilir. Tüm yaşam döngüsü tamamlandığında, aşağıdaki şekilde gösterildiği gibi tam bir işlem olarak kabul edilir. Bir nesnenin ilk ve son durumu da aşağıdaki şekilde gösterilmektedir.
Statechart Diyagramları Nerelerde Kullanılır?
Yukarıdaki tartışmadan, bir Statechart diyagramının pratik uygulamalarını tanımlayabiliriz. Statechart diyagramları, bu eğitimde tartışılan diğer dört diyagram gibi bir sistemin dinamik yönünü modellemek için kullanılır. Bununla birlikte, dinamik doğayı modellemek için bazı ayırt edici özelliklere sahiptir.
Statechart diyagramı bir bileşenin durumlarını tanımlar ve bu durum değişiklikleri doğası gereği dinamiktir. Özel amacı, olaylar tarafından tetiklenen durum değişikliklerini tanımlamaktır. Olaylar, sistemi etkileyen iç veya dış faktörlerdir.
Statechart diyagramları, durumları ve ayrıca sistemde çalışan olayları modellemek için kullanılır. Bir sistemi uygularken, bir nesnenin ömrü boyunca farklı durumlarını açıklığa kavuşturmak çok önemlidir ve bu amaçla Statechart diyagramları kullanılır. Bu durumlar ve olaylar belirlendiğinde onu modellemek için kullanılır ve bu modeller sistemin uygulanması sırasında kullanılır.
Statechart diyagramının pratik uygulamasına bakarsak, o zaman esas olarak olaylardan etkilenen nesne durumlarını analiz etmek için kullanılır. Bu analiz, yürütme sırasında sistem davranışını anlamaya yardımcı olur.
Ana kullanım şu şekilde tanımlanabilir:
Bir sistemin nesne durumlarını modellemek için.
Reaktif sistemi modellemek. Reaktif sistem, reaktif nesnelerden oluşur.
Durum değişikliklerinden sorumlu olayları belirlemek.
İleri ve geri mühendislik.
Aktivite diyagramı, sistemin dinamik yönlerini açıklamak için UML'deki bir başka önemli diyagramdır.
Aktivite diyagramı, temelde bir aktiviteden diğerine akışı temsil eden bir akış şemasıdır. Etkinlik, sistemin bir çalışması olarak tanımlanabilir.
Kontrol akışı bir işlemden diğerine çekilir. Bu akış sıralı, dallı veya eşzamanlı olabilir. Aktivite diyagramları, çatal, birleştirme vb. Gibi farklı öğeler kullanarak her tür akış kontrolünü ele alır.
Faaliyet Diyagramlarının Amacı
Aktivite diyagramlarının temel amaçları diğer dört diyagrama benzer. Sistemin dinamik davranışını yakalar. Diğer dört diyagram, bir nesneden diğerine mesaj akışını göstermek için kullanılır, ancak etkinlik diyagramı, bir faaliyetten diğerine mesaj akışını göstermek için kullanılır.
Etkinlik, sistemin belirli bir işlemidir. Aktivite diyagramları sadece bir sistemin dinamik yapısını görselleştirmek için değil, aynı zamanda ileri ve geri mühendislik tekniklerini kullanarak yürütülebilir sistemi oluşturmak için de kullanılır. Aktivite diyagramında eksik olan tek şey mesaj kısmıdır.
Bir faaliyetten diğerine herhangi bir mesaj akışı göstermez. Etkinlik diyagramı bazen akış şeması olarak kabul edilir. Diyagramlar bir akış çizelgesi gibi görünseler de değiller. Paralel, dallanmış, eşzamanlı ve tek gibi farklı akışları gösterir.
Bir aktivite diyagramının amacı şu şekilde tanımlanabilir:
Bir sistemin aktivite akışını çizin.
Bir aktiviteden diğerine sekansı tanımlayın.
Sistemin paralel, dallı ve eşzamanlı akışını tanımlayın.
Aktivite Şeması Nasıl Çizilir?
Aktivite diyagramları, esas olarak sistem tarafından gerçekleştirilen aktivitelerden oluşan bir akış şeması olarak kullanılır. Aktivite diyagramları, bazı ek yeteneklere sahip oldukları için tam olarak akış şemaları değildir. Bu ek yetenekler, dallanma, paralel akış, kulvar vb. İçerir.
Bir aktivite diyagramı çizmeden önce, aktivite diyagramında kullanılan unsurlar hakkında net bir anlayışa sahip olmalıyız. Bir aktivite diyagramının ana unsuru, aktivitenin kendisidir. Etkinlik, sistem tarafından gerçekleştirilen bir işlevdir. Faaliyetleri belirledikten sonra, kısıtlamalar ve koşullarla nasıl ilişkilendirildiklerini anlamamız gerekir.
Bir aktivite diyagramı çizmeden önce aşağıdaki unsurları belirlemeliyiz -
Activities
Association
Conditions
Constraints
Yukarıda belirtilen parametreler belirlendikten sonra, tüm akışın zihinsel bir düzenini yapmamız gerekir. Bu zihinsel düzen daha sonra bir aktivite diyagramına dönüştürülür.
Aşağıda, sipariş yönetim sistemi için bir faaliyet diyagramı örneği verilmiştir. Diyagramda, koşullarla ilişkili dört aktivite tanımlanmıştır. Önemli bir nokta, bir aktivite diyagramının kodla tam olarak eşleştirilemeyeceği açıkça anlaşılmalıdır. Etkinlik şeması, faaliyetlerin akışını anlamak için yapılır ve esas olarak iş kullanıcıları tarafından kullanılır.
Aşağıdaki şema dört ana faaliyetle birlikte çizilmiştir -
Müşteri tarafından sipariş gönder
Siparişin makbuzu
Siparişi onayla
Siparişi gönder
Sipariş talebi alındıktan sonra normal mi yoksa özel sipariş mi olup olmadığını kontrol etmek için durum kontrolleri yapılır. Sipariş türü belirlendikten sonra sevkiyat faaliyeti gerçekleştirilir ve bu işlemin sonlandırılması olarak işaretlenir.
Aktivite Diyagramları Nerelerde Kullanılır?
Aktivite diyagramının temel kullanımı diğer dört UML diyagramına benzer. Spesifik kullanım, bir faaliyetten diğerine kontrol akışını modellemektir. Bu kontrol akışı mesajları içermez.
Aktivite diyagramı, sistemin aktivite akışının modellenmesi için uygundur. Bir uygulamanın birden fazla sistemi olabilir. Etkinlik diyagramı da bu sistemleri yakalar ve bir sistemden diğerine akışı açıklar. Bu özel kullanım diğer diyagramlarda mevcut değildir. Bu sistemler veritabanı, harici kuyruklar veya başka herhangi bir sistem olabilir.
Şimdi aktivite diyagramının pratik uygulamalarına bakacağız. Yukarıdaki tartışmadan, çok yüksek bir seviyeden bir aktivite diyagramının çizildiği açıktır. Yani bir sistemin yüksek seviyeli görünümünü verir. Bu üst düzey görüş, esas olarak iş kullanıcıları veya teknik bir kişi olmayan diğer kişiler içindir.
Bu diyagram, iş gereksinimlerinden başka bir şey olmayan faaliyetleri modellemek için kullanılır. Diyagram, uygulama ayrıntılarından ziyade iş anlayışı üzerinde daha fazla etkiye sahiptir.
Aktivite diyagramı aşağıdakiler için kullanılabilir -
Aktiviteleri kullanarak iş akışını modellemek.
İş gereksinimlerinin modellenmesi.
Sistemin işlevlerinin yüksek düzeyde anlaşılması.
Daha sonraki bir aşamada iş gereksinimlerini araştırmak.