İçeriğe atla

Kullanım senaryosu

Vikipedi'ye kaydolmuş bir kullanıcının kullanım senaryosu diyagramı

Kullanım senaryosu (İng. İngilizceuse case), sistemlerin fonksiyonel ihtiyaçlarını kapsamak için yazılım ve sistem mühendisliğinde kullanılan bir tekniktir. Aktörlerin (son kullanıcıların veya diğer sistemlerin) sistemle etkileşimini tanımlayan senaryolardır.

Kullanım senaryolarında son kullanıcının veya alan uzmanının teknik terimlerden arınmış dili tercih edilir. İş analisti ve son kullanıcılar, kullanım senaryolarının yazılmasında çoğunlukla birlikte çalışırlar. Kullanım senaryoları, senaryo grupları üzerinde çalışmaya imkân veren kullanım senaryosu diyagramlarından ayrı tutulmalıdır.

Görevlerin veya paydaşların amaçlarını temsil eden kullanım senaryoları, sistem mühendisliğinde yazılım mühendisliğinde kullanıldığından daha yüksek seviyede kullanılır.

Tarihçe

1986 yılında Ivar Jacobson (daha sonra Tümleşik Modelleme Dili’ne önemli katkılarda bulunacaktır), kullanım senaryolarını belirtmede kullanılan görsel modelleme tekniğini ilk kez kodlamıştır. Önceleri İngilizcede İngilizceusage scenario ve İngilizceusage case[1] terimlerini kullanmış; ancak doğal kullanıma uymadıklarını düşünerek İngilizceuse case terimi üzerinde nihaî kararını vermiştir. Türkçede ise doğal kullanıma uyduğu için İngilizceusage scenarios teriminin birebir çevirisi olarak kullanım senaryoları kullanılmaktadır. Aralarında Kurt Bittner, Alistair Cockburn ve Gunnar Overgaard gibi isimlerinde bulunduğu birçok kişi, Jacobson’un başlattığı bu tekniği daha da geliştiren çeşitli katkılarda bulunmuşlardır.

1990'larda kullanım senaryoları, fonksiyonel ihtiyaçların çıkarılmasında kullanılan en yaygın uygulamalardan biri hâline gelmiştir. Kullanım senaryoları nesne yönelimli olmadıklarından doğdukları nesne yönelimli çevrelerin dışında da uygulama alanı bulmaktadır.

Kapsam ve amacı

Kullanım senaryoları, bir amacın veya görevin nasıl başarılacağını tanımlamaya odaklanır. Yazılım projelerinde yeni bir sistem konusunu kapsamak için (bazen düzinelerce) kullanım senaryolarına ihtiyaç duyulur. Projenin niteliği ve durumu, kullanım senaryolarının ne kadar detaylandırılacağını belirler.

Kullanım senaryoları ile çözümlenen sistemin özelliklerini birbiri ile karıştırmamak gerekir. Bir senaryo birden fazla özellikle, bir özellik de birden fazla senaryo ile ilgili olabilir.

Kullanım senaryosu, haricî aktörlerle sistem arasındaki etkileşimi tanımlar. Varlığın veya kişinin sistemle etkileşiminde içinde bulunduğu role aktör denir. Sistemle etkileşim içinde olan bir kişi, farklı rolleri icra ettiği için iki farklı aktörü temsil edebilir. Mesela "Mehmet" ATM'yi kullandığında Müşteri rolünde; ATM'nin boş para çekmecelerini doldurduğunda bir Banka memuru rolünü oynayabilir.

Kullanım senaryoları, sistemi bir kara kutu olarak ele alır: Sistem cevaplarını içeren sistem etkileşimleri, sistemin dışında gibi algılanır ve böyle bir yaklaşımdır. Böylece analist, sistemin nasıl davranacağından çok ne yapması gerektiği üzerinde çalışmalarını yoğunlaştırabilir.

Kullanım senaryoları, iş seviyesinde iş kullanım senaryosu veya sistem seviyesinde sistem kullanım senaryosu olarak tanımlanabilir. İki farklı seviyedeki tanımlar arasındaki fark, kapsamlarıdır: İş kullanım senaryosu, tüm işi kara kutu olarak görür ve iş aktörleri (mesela müşteriler) tarafından kendi amaçlarını (mesela ürün alımı) gerçekleştirmek için nasıl kullanılacağını belirtir. İş kullanım senaryolarının detayı, iş süreçlerini tanımlar.

Kaynakça

  1. ^ "Alistair Cockburn, "Use cases, ten years later"". 27 Eylül 2007 tarihinde kaynağından arşivlendi. Erişim tarihi: 26 Ocak 2007. 

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">İnşaat mühendisliği</span> altyapıların tasarımı, planlanması, inşası ve yönetimi ile ilgilenen profesyonel disiplin

İnşaat mühendisliği, malzeme ve tekniği en iyi şekilde bir araya getiren, yapıların plan, proje, yapım ve denetlenmesiyle uğraşan temel mühendislik dalıdır. İnşaat mühendisleri her türlü bina, baraj, havaalanı, köprü, yol, su kemerleri, liman, kanalizasyon, su şebekesi, tünel, konvansiyonel ve yüksek hızlı demiryolu projeleri, metro vb. hizmet ve endüstri yapılarının planlanması, projelendirilmesi, yapımı ve denetimi konuları ile ilgili eğitim ve araştırma yapar. Mühendisliğin anası olarak da kabul edilen inşaat mühendisliği askerî mühendislikten sonra gelen en eski temel mühendislik dalıdır ve İngilizce kelime anlamı civil engineering ilk olarak 18.yy. da askerî olmayan mühendislik çalışmalarını askerî mühendislikten ayırabilmek için kullanılmıştır. İnşaat mühendisliği kurucu mühendislik alanlarının başında gelir. İnşaat mühendisliği geniş bir alanı kapsadığından çeşitli dallarda uzmanlaşma gereği duyulmaktadır. Bu alanların başlıcaları, çevre mühendisliği, geoteknik, belediye ya da kentsel mühendislik, kıyı mühendisliği, ölçme bilgisi, yapı mühendisliği, temel mühendisliği, su mühendisliği, malzeme bilimi, ulaştırma mühendisliği vb. konulardır.

<span class="mw-page-title-main">Endüstri mühendisliği</span> Mühendislik

Endüstri mühendisliği ya da sanayi mühendisliği, insan, malzeme ve makineden oluşan bütünleşik sistemlerin kuruluş ve devamlılığının yönetimi ile ilgilenen mühendislik dalıdır. Endüstri mühendisleri, diğer mühendislik dallarının birçoğunun derslerini de alıp, üzerine işletme, yönetim, üretim, ekonomi ve endüstri mühendisliğine özel derslerle birlikte diğer mühendislik alanlarının yöneticilik yetkisine sahip mühendislik dalı.

Veri modelleme, bir işletmenin, kurumun hatırlamaya değer bulduğu verilerin şekil ve metin olarak ifade edilmesidir. Diğer bir deyişle bir işletmede teknik ve teknik olmayan herkesin bilişim ihtiyaçlarını ifade etmeye çalışırken birbirini anlamada kullanabileceği görsel bir iletişim dilidir. Yazılım geliştirmenin en önemli süreçlerinden biri olan veri modelleme bilişim ihtiyaçlarının keşfedilmesi ve herkesin anlayabileceği bir şekilde belgelenmesi işlemidir. Bilişim ihtiyaçları, veriler ve işletme ihtiyaçlarını destekleyen işletme kurallarıdır. Bir veri modeli herhangi bir işletmenin veya bir yazılımın karmaşık bilişim ihtiyaçlarının tümünü yeterince ifade edebilmek için kullanılabilecek bir araçtır. Bir bilişim sistemi başlıca 3 ihtiyacı karşılar; çeşitli verilerin saklanması, işlenmesi ve görüntülenmesi. Görüldüğü gibi bilişim sistemlerinin temelinde veri yer almaktadır. Veri Tabanı sistemleri ise en basit ifadeyle; verinin saklanması ve işlenmesi ile ilgili olarak geliştirilen genel amaçlı çeşitli yazılımlardır. Kısaca bilginin işlenmemiş hali olarak tanımlanan verinin modellenmesi herhangi bir bilişim sistemi geliştirmede neredeyse işin yarısını oluşturur. Verinin gerçek sahibi kullanıcıdır. Durum böyle olunca bilişim sistemlerinin geliştirilmesi sırasında kullanıcı temelli bir yaklaşım önem kazanmaktadır. Kullanıcı yönelimli bu yaklaşımın bazı yararları aşağıda sıralanmaktadır.

Tasarım bir planın, bir nesnenin ya da bir inşa sürecinin meydana getirilmesine denir. Elizabeth Adams Hurwitz tarafından kısa ve öz olarak “gerekli olanın araştırılması” şeklinde tanımlanmıştır. Genellikle tatbikî sanatlar ve görsel sanatlar, mühendislik, mimarî, peyzaj ve diğer yaratıcı işler çerçevesinde ele alınır. Hem bir isim, hem de bir fiil (tasarlamak) olarak kullanılır. Tasarlamak, yeni bir nesne veya ürün, mekân ve alan için bir plan oluşturma ve geliştirme sürecine işaret eder. Tasarı ise hem son plan veya taslak ya da bir plan veya taslağın sonucu için kullanılır.

Nesne Yönelimli Çözümleme ve Tasarım, bir sistemin/sistem modülleri setinin/organizasyonun/işletme biriminin gereksinimlerinin çözümlenmesinde ve uygun bir çözümün tasarımında nesne ile modelleme tekniklerini kullanır. Modern nesne yönelimli çözümleme ve tasarım yöntemlerinin çoğu, gereksinim, tasarım, uygulama, test ve dağıtım süreçleri boyunca kullanım senaryoları üzerine kuruludur. Kullanım Senaryoları, nesne yönelimli programlama ile birlikte ortaya çıkmış olmasına rağmen yordamsal programlanan sistemlerde de işe yaramaktadır.

<span class="mw-page-title-main">Elektronik</span> elektrik kullanarak bilgi işleyen, taşıyan veya depolayan elemanları ve sistemleri inceleyen bilim dalı

Elektronik, elektronları ve diğer elektrik yüklü parçacıkları yönlendiren cihazları tasarlamak, oluşturmak ve çalıştırmak için fizik prensiplerini inceleyen ve uygulayan bir bilim ve mühendislik disiplinidir. Elektronik, transistörler, diyotlar ve entegre devreler gibi aktif cihazları kullanarak elektrik akımının akışını kontrol etmek ve yükseltmek ve onu bir formdan diğerine, örneğin alternatif akımdan (AC) doğru akıma (DC) veya analog sinyallerden dijital sinyallere dönüştürmek için kullanan fizik ve elektrik mühendisliğinin bir alt alanıdır.

<span class="mw-page-title-main">İş süreçleri modelleme</span>

İş süreci yönetimi ve sistem mühendisliği'ndeki iş süreci modellemesi (İSM), bir kuruluşun süreçleri temsil etme etkinliğidir. Böylece mevcut iş süreçleri analiz edilebilir, iyileştirilebilir ve otomatikleştirilebilir. İSM genellikle modelleme disiplininde uzmanlık sağlayan iş analistlerince, modellenen süreçler hakkında özel bilgili konu uzmanlarınca veya daha yaygını her ikisinin de olduğu bir ekip tarafından tarafından yapılır. Alternatif şekilde süreç modeli, işlem madenciliği araçları kullanılarak doğrudan olay günlüklerinden türetilebilir.

<span class="mw-page-title-main">Sınıf diyagramı</span>

Sınıf diyagramı UML 'in en sık kullanılan diyagramlardan biri olup nesne yönelimli analiz, tasarım ve programlamadaki sınıfları net ve anlaşılabilir şekilde temsil etmeyi amaçlar.

Kullanım senaryosu diyagramı yazılım ve diğer sistemlerin modellenmesinde kullanılan Unified Modeling Language, kısaca UML'in 14 diyagramından biridir. Kullanım senaryosu diyagramı bir davranış diyagramı 'dır ve bir sistemden beklenen belirli bir davranışı gösterir ve sistemden beklenen gereksinimlerin tespit edilmesi için kullanılır. Kullanım senaryosu diyagramında tipik olarak kullanım senaryoları ve bağımlılıkları ve ilişkileri ile aktörler gösterilir.

<span class="mw-page-title-main">Simülasyon</span> gerçek bir dünya süreci veya sisteminin işletilmesinin zaman üzerinden taklit edilmesi

Simülasyon veya benzetim, teknik olmayan anlamda bir şeyin benzeri veya sahtesi anlamında kullanılır. Teknik anlamda gerçek bir dünya süreci veya sisteminin işletilmesinin zaman üzerinden taklit edilmesidir. Sistem nesneleri arasında tanımlanmış ilişkileri içeren sistem veya süreçlerin bir modelidir.

Güvenilirlik mühendisliği, güvenilirlik öğrenimi, gelişimi ve Ömür Devri Yönetimi ile ilgilenen bir mühendislik dalıdır. Güvenilirlik, bir sistem veya parçanın, belirlenen süre ve şartlar altında, istenen fonksiyonları gerçekleştirebilme yeteneği olarak tanımlanır. Kavram çoğu zaman, sistemin hata verme olasılığı şeklinde algılanır. Güvenilirlik, ayrıca belirli bir zaman aralığında işlevsellik yeteneğini tanımlama için de kullanılabilir. Güvenilirlik mühendisliği Sistem Mühendisliği alt-disiplini olarak kabul edilir ve Entegre Lojistik Destek disiplinine sürekli girdi teşkil eder. Güvenilirlik mühendisliği, hatalar arasındaki ortalama sürenin hesaplanması ile sistem güvenilirliğini ve sürekliliğini sağlar.

Süreç yönetimi, bir kurumun performansının sürekli olarak iyileştirilmesini sağlayan ve süreçleri temel “varlık” kabul eden bir yönetim disiplinidir. Süreç, aralarında birlik olan veya belli bir düzen veya zaman içinde tekrarlanan, ilerleyen, gelişen olay ve hareketler dizisidir.

<span class="mw-page-title-main">V-Model (Yazılım geliştirme)</span>

V-model şelale (waterfall) modelinin gelişmiş hali olarak düşünülebilecek bir yazılım geliştirme süreci sunar. Doğrusal bir yönde ilerlemek yerine, süreç adımları kodlama evresinden sonra yukarıya doğru eğim alır ve tipik V şeklini oluşturur. V-Model geliştirme yaşam çevriminin her bir evresi arasındaki ilişkileri gösterir. Yatay ve dikey açılar zaman veya projenin tamamlanabilirliğini ve soyut seviyeyi gösterir.

<span class="mw-page-title-main">İşlev modeli</span>

Sistem ve yazılım mühendisliğindeki işlev modeli modellenen sistem veya konu alanının işlevlerinin yapısal temsilidir.

Kavramsal model bir sistemin temsilidir ve modelin temsil ettiği sistemin insanların daha rahat bir şekilde anlamalarına yardımcı olur. Örneğin, montajı yapılarak oluşturulan bir oyuncak model temsil ettiği objenin çalışmasını modelini oluşturacak bir şekilde çalışabilir.

<span class="mw-page-title-main">Gereksinim çözümleme</span>

Bilgisayar bilimlerinde, gereksinim analizi ya da gereksinim çözümleme; çeşitli sistemlerin gerekliliklerini ve olası çelişkili durumlarını göz önüne alarak, yazılımı analiz etmek, belgelemek, doğrulamak ve yönetmek için yeni veya değiştirilmiş bir ürün üzerinde projenin ihtiyaçlarını, sistem gereksinimlerini ve koşullarını belirleyen görevleri kapsamaktadır.

<span class="mw-page-title-main">Sistemler Modelleme</span>

Sistemleri modelleme veya sistem modelleme iş ve bilgi teknolojileri (IT) gelişiminde sistemleri inşa etmek ve kavramsallaştırmak için modellerin kullanımının disiplinlerarası çalışmasıdır.

<span class="mw-page-title-main">Ivar Jacobson</span>

Ivar Hjalmar Jacobson, UML, Objectory, Rational Unified Process (RUP), görünüm odaklı yazılım geliştirme ve Essence'a büyük katkıda bulunan İsveçli - Amerikalı bir bilgisayar bilimcisi ve yazılım mühendisi.

<span class="mw-page-title-main">Analiz</span> belirli bir türdeki mevcut verilere analitik yöntemler uygulama, karmaşık bir konuyu veya maddeyi daha iyi anlamak için daha küçük parçalara ayırma süreci

Analiz, karmaşık bir konuyu veya maddeyi daha iyi anlamak için daha küçük parçalara ayırma sürecidir. Teknik, matematik ve mantık çalışmalarında Aristoteles'ten önce uygulanmıştır.

İş analisti, bir organizasyonu veya işletme alanını analiz eden bir analist mesleğidir. İş modelini veya teknolojiyle entegrasyonunu değerlendirerek işini, süreçlerini veya sistemlerini belgeler. İş analisti, veri analizi yoluyla süreçleri, ürünleri, hizmetleri ve yazılımları iyileştirmede işletmelere rehberlik etmeye yardımcı olur. Analistler finans, bankacılık, sigorta, telekom, kamu hizmetleri, yazılım hizmetleri, hükûmet vb. gibi farklı sektörlerde çalışır. BA'ların çalışabileceği iş alanları arasında iş akışı, faturalandırma, arabuluculuk, sağlama, raporlama ve müşteri ilişkileri yönetimi yer alır. Son olarak, iş analistleri, operasyon ölçeklendirme, satış planlama, strateji geliştirme, geliştirme sürecinde yer alabilecekleri veya bir atik yazılım geliştirme ürün ekibinin parçası olabilir.