İŞ ANALİZİ GEREKSİNİM SORU LİSTESİ Yazılım Kalitesi Ve Süreç Yönetimi Departman ı
İçindekiler ANALİZ ŞEMASI... 3 PAYDAŞLAR... 4 YETKİ... 5 TANIMLAMA... 5 TEKNİK PAYDAŞ... 6 DIŞ PAYDAŞ... 6 İLETİŞİM... 6 FUNCTIONAL... 7 YAPISAL... 8 VERİ GEREKSİNİMLERİ... 8 İŞLEVSEL... 8 KAPSAM... 8 NON-FUNCTIONAL... 9 PERFORMANS/HIZ... 10 İZLENEBİLİRLİK... 10 KULLANABİLİRLİK. 10 GİZLİLİK GEREKSİNİMLERİ... 10 DESTEKLENEBİLİRLİK... 10 GÜVENLİK... 10 GENEL... 12 İŞ KISITLARI... 13 STANDARTLAR... 13 İŞ SÜREKLİLİĞİ... 13 YASAL İHTİYAÇLAR... 13 TEKNİK... 14 DONANIM... 15 YAZILIM... 15 ARAYÜZ... 15 İNTERNET... 15 TRANSITIONAL... 16 PARALEL SİSTEMLER... 17 ARŞİVLEME... 17 UPDATE... 17 1
SÜRE... 17 DİĞER... 18 2
ANALİZ ŞEMASI TRANSITIONAL PARALEL SİSTEMLER ARŞİVLEME UPDATE SÜRE FUNCTIONAL YAPISAL VERİ GEREKSİNİMLERİ İŞLEVSEL KAPSAM ANALİZ NON- FUNCTIONAL PERFORMANS/HIZ İZLENEBİLİRLİK KULLANABİLİRLİK YASAL GEREKSİNİM DESTEKLENEBİLİRLİK GÜVENLİK GENEL İŞ KISITLARI STANDARTLAR İŞ SÜREKLİLİĞİ YASAL İHTİYAÇLAR PAYDAŞLAR YETKİ TANIMLAMA TEKNİK PAYDAŞ DIŞ PAYDAŞ İLETİŞİM TEKNİK DONANIM YAZILIM ARAYÜZ İNTERNET 3
PAYDAŞLAR Tanım: Sorundan ve olası bir projeden; Olumlu veya olumsuz şekilde; Doğrudan veya dolaylı bir şekilde etkilenecek Kurumlar, gruplar veya kişilerdir. ANALİZ PAYDAŞ YETKİ TANIMLAMA TEKNİK PAYDAŞ DIŞ PAYDAŞ İLETİŞİM 4
Sorular: YETKİ Sistemi kimler yönetecek?(bakım ve admin) Yetkisel dağılım nedir, yapılandırılması nasıldır? Kaynakları kim kontrol etmektedir? Bilgi kimin kontrolündedir? Önceki sistem kim/kimler tarafından yönetildi? Paydaşların geliştirilecek sistem hakkında temel sorumlulukları nelerdir? Yasal sorumluluk kimdedir? TANIMLAMA Sistemi kimler kullanacak? Projenin sponsoru kimdir? Sisteme kimler bilgi sağlıyor? Sistemden kimler bilgi alıyor? Sistem uygulamasından kim/kimler etkilenecek? Sistemi kim tarafından kurulacak? Sistem hatalarını kim düzeltecek? Bu sistemden kimler rapor çekecek? Sisteme veri girişini kimler yapacak, kim güncelleyecek ve kim tarafından silinecek? Sisteme karşıt kişi ya da kuruluşlar? Sisteme yön veren organizasyonlar neler?(finans, güvenlik) Paydaş tarafında proje yöneticimiz var mı? Paydaşların her birinin projeden beklentileri nelerdir? Muhtelif paydaşların birbirleri arasındaki ilişkiler nelerdir? Organizasyon yapısını görebileceğimiz bir doküman mevcut mu? Organizasyon şemasında bulunmayan, fakat sistemi aktif olarak kullanacak kullanıcılar var mı? Paydaşların uzmanlık alanları ve teknik altyapıları nedir? Söz konusu aktör sistemi kullanarak; veri yaratma (create), veri saklama (store), veri değişikliği (change), veri temizleme (remove) ya da veri okuma gibi işlemleri gerçekleştirecek mi? Söz konusu aktör bu sistemi hangi amaçlarla kullanacak? Söz konusu aktör, harici olaylar ve değişiklikler konusunda sistemi bilgilendirme ihtiyacı duyacak mı? 5
Söz konusu aktör, sistem içerisinde meydana gelen belli başlı olaylardan haberdar edilecek mi? TEKNİK PAYDAŞ Sistemin veri tabanını kimler yönetecek? Sistemin network yapısını kim yönetecek? Paydaş tarafında sisteme yön verecek olan iş analisti var mı? Sistemin tasarımını yapan iş analistleri kimler? DIŞ PAYDAŞ Projeyi etkileyecek dış kaynak var mı? İLETİŞİM Paydaşların bilgilerini (e-mail, telefon..) temin edebilir miyiz? Paydaşların iletişim bilgilerini kimden elde edebiliriz? 6
FUNCTIONAL Tanım: Sistemin sunacağı hizmetler ile sistemin işlevsel altyapısını tanımlarlar. Sistemin ne yapacağını yapısal ve işlevsel olarak ortaya koyarlar. Geliştirmeden bağımsız çoğunlukla giriş, çıkış arabirimleri, süreçler ile hata yönetimine yönelik gereksinimlerdir. Sistem girişindeki izin verme ve yetkilendirme gereksinimleri de bu tiptedir. Sistemin neler yapacağını soyut olarak değil de detaylandırılmış biçimde belirler. ANALİZ FUNCTIONAL YAPISAL VERİ GEREKSİNİMLERİ İŞLEVSEL KAPSAM 7
Sorular: YAPISAL Fonksiyonel gereksinimler arası ilişkiler nasıl gösterilecek? Sistem sürekli çalıştırılacak mı? VERİ GEREKSİNİMLERİ Tüm verilerin saat başı yedeklenmesini ister misiniz? Sizin için hangi veriler daha kritik ve neden? Verileriniz içerisinde saklanması gerekli olmayan, saklama süresi belirsiz olan,sürekli saklanması gereken,yasal olarak saklama süreleri belli olanlar var mı? Veriler şifrelenerek mi sistem de tutulsun? Verilere belli roller de ki kullanıcılar mı ulaşabilsin? Sistem içerisinde farklı veri tabanları mevcut mu? İŞLEVSEL Kullanıcılar için yardım butonları olmalı mı? Çıkış işlemlerinden önce onay alınmalı mı? Engellenmesi gereken işlemler var mı? Sistem kullanıcı tarafından nasıl kullanılacak? Sistem ofis programlarıyla ortak çalışma özelliğine sahip olsun mu? KAPSAM Sistem nerede kullanılacak? Eski sistemde ki eksiklikler nedir ve yeni sistemden beklentiniz nedir? İleride dahil etmeyi düşündüğünüz değiştirmeyi düşündüğünüz modül ya da işlem var mı? Programın birden fazla dil desteklemesi ve yazıların ayrı dilde görüntülenebilmesi sağlansın mı? Projede çıkabilecek sorunlar ve onların önceden otomatik olarak algılanıp, düzeltilmesi için hata raporlama ve bu hatalın gönderilmesi sağlansın mı? 8
NON-FUNCTIONAL Tanım: Sistemin daha çok kısıtları ile fiziksel ortam, ara yüzler, kullanıcı odaklı olma, güvenlik, güvenilirlik, kalite güvence gibi soyut niteliklerini belirleyen gereksinimlerdir. Yazılımlara işlevsellik katmamasına rağmen bu tip gereksinimler özellikle yazılım kalitesi açısından kritik rol oynarlar. Bu gereksinimler yazılımda karşılanmadığı sürece yazılımın kullanılabilirliği yetersiz kalacaktır. ANALİZ NON- FUNCTIONAL PERFORMANS/HIZ İZLENEBİLİRLİK KULLANABİLİRLİK GİZLİLİK GEREKSİNİMLERİ DESTEKLENEBİLİRLİK GÜVENLİK 9
Sorular: PERFORMANS/HIZ Program aynı anda kaç kullanıcının çalışmasına olanak sağlayacak? Kullanıcılar sistemde istekte bulunduğu anda sistem hızlı bir şekilde dönüş yapabilecek mi?(tahmini istenen süre,örneğin 2 sn.?) İZLENEBİLİRLİK Kullanıcı bazında kayıt tutulmasına imkan sağlanacak mı? Program hatalarına ait kayıt tutulmasına imkan sağlansın mı? Kullanıcı hangi işlemleri yaptığını görüntüleyebilecek mi? KULLANABİLİRLİK Her ekrandan ilgili yardım menüsüne ulaşılsın mı? Kullanıcılar hatalı işlem yaptığında uyarı mesajı verilsin mi? Amaçlanan görünüm nedir? Kimler admin panelini kullanabilecek? GİZLİLİK GEREKSİNİMLERİ Kullanıcılar sınırlandırılacak mı, yetki derecelendirilmesi yapılacak mı? Bir kullanıcı birden fazla role sahip mi? İşletim sistemi güvenliği kullanıcı adı ve şifresi tanımlansın mı? DESTEKLENEBİLİRLİK Programın kurulduğu platformun gerekli yazılımsal desteği var mı?(data.net framework) 10
GÜVENLİK Uygulamanın çalıştırıldığı bilgisayarların işletim sistemlerinin ve üzerlerindeki yazılımların güvenlik güncellemeleri yapılacak mı? Hasing bilgisi tutulacak mı,veriler şifrelenerek mi saklanılacak? Programa ait tüm kritik bilgilerin yedekliliği farklı ortamlarda sağlansın mı?(cd,dvd,disk..) 11
GENEL Tanım: İş politikalarını,standartlarını ve ihtiyaçlarını belirlemek için kullanılan gereksinimlerdir.alanların sentezinden amaca uygun bir şekilde belirlenirler. Birçok genel gereksinim, organizasyonun çizgisi dahilinde değişen programlar kapsamında uygulanır. ANALİZ GENEL İŞ KISITLARI STANDARTLAR İŞ SÜREKLİLİĞİ YASAL İHTİYAÇLAR 12
Sorular: İŞ KISITLARI Hangi bireyler ya da roller özel durumlarda hangi fonksiyonları kullanabilecek? Projenin ne kadar sürede tamamlanması planlanıyor? Proje yapımı için ne kadar bütçe ayrılmıştır? Proje için ne kadar kaynağa ihtiyacınız var?(test-yazılımcı-iş analisti) Proje nerede geliştirilecektir?(firma yerinde..) Proje test makinesinde mi yoksa canlı ortamda mı geliştirilecek? Tasarım kısıtlarınız var mı? STANDARTLAR Mesai saatleriniz nedir? Şirket prosedürleriniz nelerdir? Personel ücretleriniz nedir? Çalışma koşullarınız nelerdir? İŞ SÜREKLİLİĞİ Projenin uzaması durumunda projenin hangi adımları ya da modülleri zamanlamadan çıkartılmalı? Herhangi bir tehlike anında sistem işlevine nasıl devam ediyor? Sistem felaket anında ne kadar kısa sürede çalıştırılabiliniyor? YASAL İHTİYAÇLAR Geliştirilen uygulamanın kodu müşteride mi yoksa geliştiricide mi kalacak? Geliştirici grup için şirketiniz tarafından sigortalama yapılacak mı? İç ve dış politik konular mevcut sistemin işleyişini etkiliyor mu? 13
TEKNİK Tanım: Teknik gereksinimler; teknik kısıtları veya koşulları sistemin çalışması prensibinde tanımlar. Bu gereksinimler aynı zamanda servis kalitesi gereksinimleri olarakta bilinirler. ANALİZ TEKNİK DONANIM YAZILIM ARAYÜZ İNTERNET 14
Sorular: DONANIM Mevcut donanım potansiyeli yeni uygulamayı karşılayabilecek mi? Mevcut donanım dışında yeni donanım satın alınması gerekiyor mu? Mevcut yazılım ortamında kullanıcıların işletim sistemleri nedir?(windows xp..) Serverın güvenliği için gerekli olan lisanslar mevcut mu? Hangi virüs programı sisteminiz de kurulu? Sistemin performansını etkileyecek donanımsal sorunlarınız var mı? YAZILIM Mevcut uygulama dışında başka hangi uygulamalar kullanımda? Daha önce kullanmış olduğunuz uygulama var mı? Mevcut uygulama daha büyük bir sistemin bileşeni midir? Alt sistemlerin birbirleriyle etkileşimi nasıl? Uygulama web tabanlı mı, mobil mi,masaüstü uygulaması olarak mı geliştirilecek? ARAYÜZ Ekran tasarımının nasıl olmasını istersiniz?(rengi.. nasıl olmalı) Uygulamada kullanılmasını istediğiniz logonuz var mı? Admin panelinin dinamik bir şekilde yapılandırılmasını istiyor musunuz? İNTERNET Sistemin yükünü karşılayabilecek ağ yapısı mevcut mu? Sistem İnternet üzerinden güncellenebilsin mi? Sistem farklı ağ yapılarına sahip mi? Ağ da oluşabilecek sorun hızlı bir şekilde çözülebiliniyor mu? 15
TRANSITIONAL Tanım: Sistem geçiş gereksinimleri; başarılı bir aktarımın gerçekleştirilebilmesi için gerekli olan dağıtımı ve yönü tanımlar. Bu tip gereksinimleri elde edebilmek için bir çok projede shadows performans monitörleme teknolojisi kullanılmaktadır. ANALİZ TRANSITIONAL PARALEL SİSTEMLER ARŞİVLEME UPDATE SÜRE 16
Sorular: PARALEL SİSTEMLER Yazılım daha önceden var olan başka bir sistemle paralel olarak çalışacak mı? Eski sistemden yeni sisteme geçiş için gerekli altyapı hazır mı? ARŞİVLEME Transitional yapılırken eski sistemede veri güncellemesi,silme,ekleme yapılacak mı? Eski sistemin güncellemesi nerede tutulacak? Logların aylık mı,günlük mü tutulmasını istiyorsunuz? Arşivleme tool kullanılarak mı, yoksa manual giriş yapılarak mı gerçekleşecek? Arşivleme için kullandığınız program var mı?? UPDATE Ne kadar sürede bir update yapılması gerekiyor? Update işlemi sırasında sistem kapatılacak mı,yoksa işlevine devam edecek mi? SÜRE Veri aktarımının ne zaman ve ne kadar sürede yapılması planlanıyor? 17
Diğer: Kullanıcı için eğitim verilecek mi? Ürün nasıl lisanslanacak?(kullanıcı başına-şirket başına-pc başına?) Projenin karşılaşması muhtemel riskler var mı? Sistem kullanıcı tarafından ne kadar süre kullanılacak? Kullanıcılara yönelik kılavuz hazırlanacak mı? Geçmiş hatalar kaydedilsin mi, gerektiğinde geçmiş hatalara ulaşılabilsin mi? 18