3 Temmuz 2015 Cuma

Visio ile UML Şeması Oluşturulması

Sonunda UML konularından ilkine geldik. Gereksinimleri topladınız ve çalışanların (müstakbel kullan kullanıcıların)planlanan sistemi ne amaçlarla kullanacaklarını belirlediniz. Bunları doğru anladığınızdan emin olmak için onlara neyi nasıl anlatacaksınız? Yazılı ifadelerle yapacağınız bir liste her şeyi bir kerede gözler önüne seremez. Eskilerin dediği gibi bin sözcüğe eşdeğer olan bir resim çizmeniz daha doğrudur. Bu resimde sistem aracılığıyla iş yapacak olan biri ve onun yapacağı işlerin kısa kısa yazılı olduğu küçük levhacıklar olabilir. Bir kullanım durumu şemasının (use case diagram) ana fikri işte budur.

Hazır bir kullanım durumu şeması gösterip onu incelemeye başlamak yerine, size Microsoft Office genişletilmiş paketlerinin bir parçası olan Visio ile bu tür bir şemayı nasıl çizmeye başlayacağınızı gösterelim. Ticari bir yazılım olduğu için Visio'yu bulup kurmanız sıkıntılı olacaksa, ücretsiz indirip kullanabileceğiniz başka UML çizim programları da vardır. Onlardan biriyle de bir başka örnek sunarız daha sonra. Şu an için Visio ile bir UML şeması çizmenin ilk adımlarını göstereceğiz.

Visio programını açtığınızda karşınıza gelen şablon seçeneklerinden "Software and Database" (Yazılım ve Veritabanı) seçeneğini tıklayın.



Bundan sonraki şablon seçeneklerinden de "UML Model Diagram" (UML Model Şeması) seçeneğini tercih edin. Bundan sonra da şemayı yaratmak için "Create" düğmesini tıklayın.
Bu arada, çizimlerinizde grafik öğeleri boyutlandırırken milimetre, santimetre gibi metrik birimleri tercih edecekseniz, şema yaratan düğmenin üstündeki iki birim seçeneği düğmesinden "Metric Units" düğmesinin seçili olduğundan emin olun.


 İşin bundan sonrası hangi tür UML şeması oluturacağınıza bağlıdır.

Gereksinimler Analizi Yöntemleri

BRF kitabında gereksinimler analizi için önerilen yöntemleri ve bunların avantaj ve dezavantajlarını aşağıda özetliyoruz:

  1. Ön Araştırma
    Gereksinimler analizi yapmak için sistemi sipariş eden kurumun halka açık kaynaklarından ön bilgi edinmek kurum elemanlarıyla muhatap olup da kişisel istekler yığını altında kalmadan önce genel gereksinimler hakkında fikir edinmeyi sağlar.  Söz konusu kaynaklar mali ve idari raporlar, organizasyon planları, kurumlsa politika bildirgeleri, iş tanımları ve belki de en önemlisi, eski sisteme dair yönerge ve kullanım klavuzlarıdır.

    Analizin bu aşamasında, bir analizci proje müşterilerinin neleri ne amaçla başarmak istedikleri konusunda fikir sahibi olur ve şu anki sistemin işleyişine ne gibi iyileştirmeler yapılabileceği konusunda öneriler getirecek konuma gelir. Ne var ki kurum dışından erişilen kaynaklar genellikle yapılan ve planlanan işlerin ancak idealize edilmiş versiyonlarıdır. İşin bazı gerçekleri ancak elemanlarla direkt muhatap olununca anlaşılabilir. Sonuç olarak, ön bilgilerin araştırılması ancak projeyi sipariş eden kurum hakkında hiç bir bilgisi olmayan bir analizci için gerekli olacaktır.
  2. Mülakat
    Analizin en önemli, ama aynı zamanda da en zorlayıcı aşaması kullanıcılarla, yani kurum elemanlarıyla yapılacak görüşmelerdir. Bu aşamada bir analizci belki bir elemanı veya bir yöneticiyi mülakata alır ve mevcut sistemi hangi amaçları gerçekleştirmek için nasıl kullandıkları, yeni sistemden neler bekledikleri konusunda sorular yöneltebilir. Fakat kişilerin iş başında değilken verdikleri cevaplarla gerçekten iş başındayken ne yaptıkları farklılık gösterebilir. Mevcut sistemle sıkıntıları veya yeni sistemden beklentileri fazla olan kullanıcılarla yapılan mülakatlar da çabucak konu dışına çıkabilir. Şikayetçi olmaktan çekinen bir eleman sıkıntılarını tam ifade edemeyebilir. Bir eleman, hatta bir yönetici bile, değişim korkusuyla  sıkıntıları yokmuş gibi de konuşabilir. Sıkıntılarını veya isteklerini abartanlar çıkabilir. Hepsi bir yana, eski sisteminde yeni sistemin de dışında kalan son kullanıcı olan asıl kurum müşterileri (örnek: resmi kurumda iş takibine gelen vatandaşlar) seslerini hiç duyuramayabilirler.
  3. Gözlem
    Gereksinimler analizinde en doğru bilgileri kullanıcıları asıl iş ortamında çalışırken gözlemek yoluyla edinebilirsiniz. Gerçi normal çalışma koşullarında yapılan gözlemler istisnai durumlar hakkında pek fikir vermeyebilir, ama yine de çalışanların mevcut sistemi hangi adımları izleyerek kullandıkları, ne zaman sistem dışından bilgi almaları gerektiğini, bu bilgileri hangi kanallardan aldıklarını, tüm bunları ne kadar sıklıkla ne kadar sürelerde yaptıklarını gösterebilir. Yine belirtelim, istisnai durumlar ve ciddi hata durumları normal gözlemlerde karşınıza çıkmayabilir, ama gözlemler sağladıkları sıklık, süre ve miktar, vb. Ölçülebilir değerler nedeniyle mülakatlardan daha güvenilir bilgiler sağlarlar. Mümkünse, bilgi akışını bütün süreçler için izlemek daha doğru olacaktır. Örneğin, alım, onay, kayıt, depolama, satış, gönderme gibi stok giriş çıkışlarının bir kaç örneğini bizzat görmeniz planladığınız yeni sistemin bu süreçlerin hangi adımların nasıl uyarlanacağı hakkında daha iyi fikirler verir. Tüm bu avantajlarına karşın, gözlem yönteminin dezavantajları da yok değildir. Gözlenirken serbest davranamayan ve gündelik alışkanlıklarını tam sergileyemeyen çalışanlara daha sık rastlanır. Gözlemcinin ortama uyum gösterememesi durumunda çalışmaları sekteye uğratması mümkündür. Özellikle uzun mesafeli işlemlerde tüm süreç tam gözlenemeyecektir. Gözlenen işlemlerdeki kişisel bilgilere gözlemcinin göz misafiri olmasının da sakıncaları olacaktır. Daha da önemlisi, mevcut sistemdeki sıkıntılarından dolayı bazı işlemleri savsaklayarak veya "hiyle-i şer'iye" yoluyla yapan çalışanlar bu davranışlarını gözlenirken sergilemeyecek ve böylece mevcut sistemin bazı sıkıntıları yerinde gözlenemeyecektir.
  4. Belge toplama
    Projeyi sipariş etmiş olan kurum veya işyerinin normal çalışma düzeninde ürettiği belgeleri toplayıp incelemeniz iş süreçlerinde ne tür bilgilerin kayda geçtiğini ve bunların kapsamlarını anlamanıza yardımcı olur.Planladığınız sistemde elektronik bilgi transferine geçilecekse, hangi bilgilerin hangi formatta iletileceğine ve hangilerinin ıslak imza gerektirecek basılı formlarda da olması gerektiğine karar vermeniz özellikle önemlidir. Ne var ki, toplayıp incelediğiniz belgelerdeki çoğu bilgi belki de mevcut sistemin artık geçerliliğini yitirmiş zorunluluklarından dolayı orada gözüküyordur ve yeni bir sisteme aynı formatta taşınmaları hiç gerekmeyebilir ve hatta gereksiz kalabalık yaratacağı için sakıncalı bile olabilir.
  5. Anket
    Dikkatlice tasarlanmış ve kolay anlaşılır seçenekli sorularla oluşturulmuş anketlerle mülakat veya gözlem yöntemlerine göre daha fazla kullanıcıya erişebilirsiniz, ama kısa da olsa anket doldurtmak çalışanların vaktinden çalmak demektir. Anket yanıtlarının da güvenilirliği duruma göre daha az olabilir. Zaten bir anket ancak kullanıcıların mevcut sistemle olan ilişikileri konusunda fikir verir, yani yeni sistemden beklentileri hakkında fazla fikir de vermeyecektir.

Gereksinimler Analizi

Bennet, Robb and Farmer (bundan sonra kısaca BRF) da gereksinimler analizini yaparken kullanıcıların sipariş edilen yazılım (onlar aslında "bilişim sistemi" terimini kullanıyor) ile hangi amaçları gerçekleştireceklerini incelemek gerektiğini, bundan başka, şirket veya kuruluşun genel amaçlarının da incelenmesş gerektiğini hatırlatıyorlar. Siparişi veren kuruluş işe sıfırdan başlıyor değilse zaten çalışan sistemlerinde neyi nasıl yaptıklarına bakmak gerekir. Belki de işin en önemli kısmı budur. Çünkü yeni bir bilişim ya da bilgisayar sistemğnden ne beklediklerini sorsanız, kullanıcılar her istediklerinin olmasını bekleyen şımarık çocuklar gibi neyi nasıl farklı yapmak istediklerine dair istekler sıralamaya başlayabilirler. Bu isteklerinin çoğu eski sistemle ilgili bazı sıkıntılarından doğmuştur, ve onları gerçekleştirmekle yalnızca yeni sistemi o kullanıcılar için daha kullanışlı hale getirmiş olursunuz, ama kullanışlılık ancak ikinci derecede önem taşıyan gereksinim ketegorisidir. Önde gelen kategori fonksiyonellik, yani sistemin genel amaçlarına uygunluktur. Örneğin, biyometrik tanıma yoluyla kullanım yetkisi belirlemek kullanıcılara hoş gelecek bir çözüm gibi gözükse de çok sık işlemlerin yapıldığı bir kuruluşta işleri yavaşlatacaksa (örneğin SGK ve pasaport dairelerimiz) sistemi asıl işinden alıkoyacaktır. Öte yandan, eski sistemin doğurduğu sıkıntılardan kaynaklanan gereksinimlerden yola çıkılarak, planlanan yeni sistemin farklı şekillerde gerçekleştirilecek  amaçlar ön plana çıkarılabilir. Bunlar yeni sistemin ve geçiş döneminin maliyetlerini haklı çıkartacak mali/finansal analizlerde kullanılabilir.