Bu site emekli olmuştur. Arşiv amaçlı olarak BT AKADEMİ sponsorluğunda yayın hayatına devam etmektedir.




C#nedir?com
 
YAZAR HAKKINDA
Sefer Algan
Sefer Algan
http://www.seferalgan.com
İletişme geçmek için tıklayın.
71 Makalesi yayınlanmakta.
Yazar hakkında detaylı bilgi için tıklayın.
Yayınlanan diğer makaleleri için tıklayın.
İlgili etiketler:  UML / Analiz Sefer Algan
 
YAZI HAKKINDA
Türü : Makale
Serbest Köşede C#nedir?com üyelerinin hazırladıkları yazılar yayınlanır. Bu yazılar editör incelemesine girmeden yayınlanır.
Seviyesi : Başlangıç
Kategori : UML / Analiz
Yayınlanma Tarihi : 19.12.2002
Okunma Sayısı : 126398
Yorum Sayısı : 2     yorum yaz
Site İçi AramaSİTE İÇİ ARAMA
Üye Girişini AçÜye GİRİŞİ
Üye girişi için tıklayın.
Kullanıcı Adı
Şifre
 
Beni her zaman hatırla
Bir hafta boyunca kullanıcı bilgilerinizi kullanıcı çıkışı yapana kadar hatırlar. (Paylaşılan bilgisayarlarda önerilmez.)
 
Şifremi / Kullanıcı Adımı unuttum.
 
.net TV RSS Serbest KÖŞE (?)
Serbest Köşede C#nedir?com üyelerinin hazırladıkları yazılar yayınlanır. Bu yazılar editör incelemesine girmeden yayınlanır.
emre TAŞ
Silindi
emre TAŞ
yazının devamı >
emre TAŞ
silindi
emre TAŞ
yazının devamı >
emre TAŞ
silindi
emre TAŞ
yazının devamı >
emre TAŞ
silindi
emre TAŞ
yazının devamı >
emre TAŞ
silindi
emre TAŞ
yazının devamı >
Makale Gönder Bende Yazmak İstiyorum
.net TV RSSBlogroll
Turhal Temizer
Conda install environment.yml Package 21.11.2024
Turhal Temizer
Mac OS/X Removing CUDA 21.11.2024
Burak Selim Şenyurt
Rust ile ECS Yaklaşımını Anlamak 21.11.2024
Burak Selim Şenyurt
Birlikte Rust Öğrenelim Serisi 21.11.2024
  Diğer Herşey
Sponsorlar
BT Akademi
Medya Portakal
Video Hosting Sponsoru
Csharpnedir.com bir Ineta üyesidir
Uzman Abi
Her Yönüyle C# - Sefer Algan
UML ile Use Case Diagram'ları Oluşturma
 
Kapat
Sayfayı Yazdır Sık Kullanılanlara Ekle Arkadaşıma Gönder MySpace Del.Ico.Us Digg Facebook Google Mixx Reddit StumbleUpon
Bu yazımızda sınıfların zamanla değişimini göz önüne alan use case diyagramlarını inceleyeceğiz. Bir sistemin, class diyagramlarıyla ancak durağan bir analizini yapabiliyorduk. Use Case diyagramları ise sistemin ve sınıfların zamanla değişimini de içerecek biçimdeki diyagramlardır. Bir Use Case modeli Use Case diyagramları ve Use case açıklamaları dediğimiz senaryolardan oluşmaktadır. Use Case diyagramları ise Actors,Use Case ve Use Case 'ler arasındaki ilişkilerden oluşmaktaır. Kısaca Use Case modelini tanımlarsak şöyle diyebiliriz. Sistemin kullanıcısının bakış açısıyla sistemin davranışlarının diyagramlarla  modellenmesidir. Use Case 'ler sistemin kabaca ne yaptığı ile ilgilenir, kesinlikle nasıl ve neden yapıldığını incelemez.

Use Case modelini oluşturan diğer önemli bir yapı ise senaryolardır. Senaryolar kullanıcı tarafından başlatılan çeşitli olaylar dizisidir. Her ne kadar bazı sistemlerde bir olay ya da senaryo kullanıcı tarafından değil de donanım veya belirli bir zaman geçmesi sonucu başlatılsa da, sistemi tasarlamamız için Use Case 'lerden faydalanamayacağımız anlamına gelmez.

Şimdi bir Use Case modellemeye örnek vererek Use Case 'ler arasındaki ilişkinin nasıl yapıldığını görelim.Tabi öncesinde bazı kavramları açıklamak gerekir.

Use Case ifadeleri UML diyagramlarıyla aşağıdaki gibi gösterilir.



Yukarıda da görüldüğü gibi Aktör yani kullanıcı Use Case modelinde bir Use Case 'i başlatır ve sonuç olarak bir değeri başka bir kullanıcıya verir. Use Case 'ler yukarıda da görüldüğü gibi elips şeklinde gösterilir. Kullanıcıların altında kullanıcıların adı bulunur. Kullanıcı ve Use Case arasındaki ilişkiyi belirtmek için ise düz bir çizgi çizilir.

Daha önce de dediğimiz gibi herbir Use Case, senaryalordan oluşur, senaryolar ise bir çeşit olaylar serisidir. Her Use Case 'e ait senaryolar aşağıdaki ifadelerden bir sonuç bekler.

-> Use Case 'i başlatan kullanıcıdan
-> Use Case 'in başlaması için gereken ön bilgilerden
-> Senaryodaki adımlardan
-> Senaryo bittikten sonraki durumlardan
-> Use Case 'den faydalanacak aktör durumundaki nesnelerden.

Use Case'ler Arasındaki İlişki

Yukarıda da belirttiğimiz gibi use case 'ler tekrar kullanılabilen birimlerdir. Tekrar kullanmanın iki yöntemi vardır.Bunlar : inclusion ve extension 'dır. Bu iki metodun dışında use case 'ler arasındaki ilişkiyi gösteren iki kavram daha vardır. Bunlar ise :Generalization(Genelleme) ve Grouping(gruplama) 'dır. Bu kavramlar hakkında detaylı bilgiyi aşağıda bulabilirsiniz.

Inclusion(içerme)

Bu metodla bir use case içindeki adımlardan birini başka bir use case içinde kullanabiliriz. Inclusion yöntemini kullanmak için <> şeklindeki bir ifade kullanılır. Bu ifade daha önce gördüğümüz sınıf diyagramlarındaki sınıfları birbirine bağlayan noktalı çizgilerin üzerine yazılır. Kullanmak istediğimiz use case 'ler arasına çektiğimiz noktalı çizginin üzerine <> yazısını yazarız.

Extension(eklenti)

Bu metodla varolan bir Use Case 'e yeni yeni adımlar ekleyerek yani use case 'ler yaratlır. Inclusion'da olduğu gibi extension 'ları göstermek için yine use case 'ler arasına noktalı çizgiler konur ve üzerine <> ibaresi yazılır.

Generalization(genelleme)

Bildiğiniz gibi sınıflar için türetme kavramı vardır. Türetme ile oluşturulan sınıf ana sınıfın tüm özelliklerini alır ve istenirse yeni sınıfa yeni özellikler eklenir. Use Case 'ler arasındaki bu ilişki de sınıflarda türetme(inheritance) kavramına benzemektedir. Gösterim biçimi sınıf diyagramlarındaki türetmenin gösteriliş şekliyle aynıdır. Yani use case 'ler arasında düz bir çizgi çizilir ve çizginin taban(base) sınıfı gösteren ucuna içi boş bir üçgen çizilir.Türetme ile ilgili daha geniş bilgiyi bir önceki makalemde bulabilirsiniz.

Aşağıdaki şekilde, bir siteye ait kullanıcıların genellemesinin nasıl yapıldığını görebilirsiniz. Bir sitedeki online kullanıcılar ziyaretçilerden ve üyelerden oluşur, ayrıca sitenin üye kullanıcıları ve ziyaretçiler için sunduğu hizmetler farklı olabileceği için aktörler arasında genelleme yapılmıştır.




Grouping(gruplama)

Gruplama metodu tamamen fiziksel olarak bazı use case 'leri bir arada toplamak için kullanılır. Gruplama tekniği genellikle birkaç alt sistemden oluşan büyük sistemlerde kullanılır.


Use Case diyagramları hakkında temel bilgileri verdikten sonra Use Case diyagramlarına örnek olabilecek bir uygulama yapalım.

Örnek:

C#nedir?com web sayfasına gelen bir kullanıcının neler yapabileceğini use case diyagramlarıyla göstermeye çalışalım. Siteye gelen bir kullanıcı kayıtsız şartsız makale başlıklarını görebilmektedir. Online olan kullanıcı Siteyi tavsiye edebilir, siteye üye olabilir, C# ile ilgili olan kitapları inceleyebilir. Ancak makale okuması ve kaynak kod indirebilmesi için siteye üye girişi yapmalıdır. Makale okuması ve kaynak kod indirebilmesi için gereken şart siteye üye olmaktır. C#nedir?com sitesine bağlanan bir kullanıcının site üzerindeki hareketlerini belirtir diyagram aşağıdaki gibidir.



Bir sonraki makalemizde diğer UML diyagramlarını göreceğiz.



Makale:
UML ile Use Case Diagram'ları Oluşturma UML ve Sistem Analizi Sefer Algan
  • Yazılan Yorumlar
  • Yorum Yaz
ŞUB
3
2005
Extension ile extends cumlecigini ifade etmek istiyorsanız extends cumleciginin, varolan Use case in daha spesifik bir versiyonunu ek bir use case olarak tanımlamak diyebiliriz. Örnegin: View Products adlı bir use case, manage products adlı bir use casei extend eder.. Not: UML ile ilgili olarka hangi version i base aldıgınızı yazmanızda sanırım iyi olur. Sanırım sizin yazdıklarınız UML 2.0 icin ?
OCA
8
2003
güzel bir örnek verilmis..
Sayfalar : 1 
Yorum yazabilmek için üye girişi yapmalısınız. Üye girişi için tıklayın.
Üye değilseniz Üyel Ol linkine tıklayarak üyeliğinizi hemen başlatabilirisniz.
 
  • Bu Konuda Son 10
  • Eklenen Son 10
  • Bu Konuda Geçmiş 10
Bu Konuda Yazılmış Yazılmış 10 Makale Yükleniyor
Son Eklenen 10 Makale Yükleniyor
Bu Konuda Yazılmış Geçmiş Makaleler Yükleniyor