Sistem Analizi ve Tasarımı

Benzer belgeler
Bilişim Sistemleri. Modelleme, Analiz ve Tasarım. Yrd. Doç. Dr. Alper GÖKSU

Sistem Analizi ve Tasarımı

SİSTEM ANALİZİ VE TASARIMI. Sistem Analizi -Bilgi Sistemleri-

SİSTEM ANALİZİ VE TASARIMI

Sistem Analizi ve Planlama

Sistem Analizi ve Tasarımı DERS2

Sistem Analizi ve. Tasarımı. Mustafa COŞAR

Yazılım Mühendisliği Bölüm - 3 Planlama

Sistem Geliştirme Yaşam Döngüsü (The Systems Development Life Cycle) (SDLC)

Yazılım Mühendisliği 1

Sistem Analizi ve Tasarımı

Ancak bir gözlem veya işlem sonucunda ortaya çıkan verilerin birbirleriyle ilişkilendirilmesi ile elde edilen bilgi kullanılabilir anlamlıdır.

Bilgi sistemlerinin geliştirilmesi için izlenen sürece, Sistem Geliştirme Yaşam Döngüsü (SGYD) denir.

SİSTEM VE YAZILIM. o Bilgisayar sistemleri donanım, yazılım ve bunları işletmek üzere gerekli işlemlerden oluşur.

BLG Sistem Analizi ve Tasarımı. Öğr. Grv. Aybike ŞİMŞEK

SİSTEM ANALİZİ ve TASARIMI. ÖN İNCELEME ve FİZİBİLİTE

SiSTEM ANALiZi ve TASARIMI

1.Yazılım Geliştirme Metotları 1

WEB PROJESİ YÖNETİMİ. Belli bir süre içerisinde, belli bir bütçe ile belirlenen hedeflere ulaşmak için uygulanan metodolojik süreçtir.

TEMEL BİLGİSAYAR BİLİMLERİ. Programcılık, problem çözme ve algoritma oluşturma

Proje Çevresi ve Bileşenleri

Bir yazılım geliştirme metodolojisi aşağıdaki adımlardan meydana gelir; Yazılım geliştirme sürecine destek verecek araçlar, modeller ve yöntemler.

Varlık davranış modeli: Bu aşama her entity ye etki eden durumların tanımlandığı, modellendiği ve dokümante edildiği süreçtir.

Yaz.Müh.Ders Notları #4 1

9.DERS Yazılım Geliştirme Modelleri

ÖNSÖZ ŞEKİL LİSTESİ TABLO LİSTESİ

Yaz.Müh.Ders Notları #6 1

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 10. LINUX OS (Programlama) BİLGİ & İLETİŞİM TEKNOLOJİLERİ GENEL BAKIŞ

FIRAT ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ Yazılım Mühendisliği Bölümü

VERİ KAYNAKLARI. Bilgi sisteminin öğelerinden biride veri

Kullanım Durumu Diyagramları (Use-case Diyagramları)

5.DERS PROJEDE YÜRÜTMENİN PLANLANMASI

Kısaca. Müşteri İlişkileri Yönetimi. Nedir? İçerik. Elde tutma. Doğru müşteri Genel Tanıtım

5. PROGRAMLA DİLLERİ. 5.1 Giriş

BİLGİ SİSTEMLERİNİN GELİŞTİRİLMESİ

Bilişim Sistemleri. Modelleme, Analiz ve Tasarım. Yrd. Doç. Dr. Alper GÖKSU

NESNEYE YÖNELİK ÇÖZÜMLEME SÜRECİ

Bilişim Sistemleri. Modelleme, Analiz ve Tasarım. Yrd. Doç. Dr. Alper GÖKSU

Yazılım Mühendisliği Bölüm - 3 Planlama. Cengiz GÖK

T. C. KAMU İHALE KURUMU

YAPIM YÖNETİMİ - EKONOMİSİ 03. İşler veya eylemler olası olan zaman ve mekanının tamamını kullanacaktır.

Yazılım sisteminin nasıl olacağina karar verilmesi için bu evrenin çok dikkatli şekilde planlanması ve yürütülmesi gerekir.

BİLİŞİM SİSTEMLERİNİN PRENSİPLERİ

ARDIŞIL DİYAGRAM YAPI DİYAGRAMI. Sistem Analizi ve Tasarımı Dersi

Trakya Kalkınma Ajansı. İhracat Planı Hazırlanması Süreci

TEKNOLOJĠ PLANLAMASI. Başkent Üniversitesi

4. ÜRÜN GELİSTİRME İŞLEMİ

Tarih Saat Modül Adı Öğretim Üyesi. 01/05/2018 Salı 3 Bilgisayar Bilimlerine Giriş Doç. Dr. Hacer Karacan

Tasarım Raporu. - Projemizde detaylı bir şekilde ulaşmak istediğimiz amaçların belirlenmesi,

Yaz.Müh.Ders Notları #6 1

AĞ İŞLETMENİ PROGRAMINA İLİŞKİN AÇIKLAMALAR

Analiz safhasının tamamlanmasından sonra, tasarımın başlangıç adımlarına başlanır.

BSM 532 KABLOSUZ AĞLARIN MODELLEMESİ VE ANALİZİ OPNET MODELER

Yaşanmış Tecrübe Paylaşımı Önce Test Et Sonra Kodla XP Pratiği

Ders Yazılımlarının Sahip Olması Gereken Özellikler:

11.DERS Yazılım Testi

İş Zekâsı Sistemi Projesi

Bilgisayarda Programlama. Temel Kavramlar

MONTE CARLO BENZETİMİ

VERİ TABANI YÖNETİM SİSTEMLERİ Melih BÖLÜKBAŞI

NX Motion Simulation:

Sistem Analizi ve Tasarımı

PROJE HAZIRLAMA EĞİTİMİ (PCM) Gazi Üniversitesi Diş Hekimliği Fakültesi NİSAN 2015

BİLİŞİM TEKNOLOJİLERİ ALANI

Sınıf Diyagramları Amaç: Sınıf Diyagramları Nasıl Çizilir?

cofaso ile farkı yaşayın Şubat

NESNEYE YÖNELİK PROGRAMLAMA Unified Modelling Language (UML) Bütünleşik Modelleme Dili

MerSis. Bilgi Teknolojileri Yönetimi Danışmanlık Hizmetleri

Başlıca Ürün-Bilgi Sistemleri

SUBA. SUBA CRM. Bulut Teknoloji ile İşinizi Zirveye Taşıyın! SMART TECHNOLOGY SOLUTIONS

T.C KARABÜK ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ

ESİS Projesi. Kaynaklar Bakanlığı

Arayüz Nedir? Arayüz Çeşitleri Arayüz Tasarım Yöntemleri Arayüz Tasarım Hataları. Ömer Faruk MIZIKACI

Bütçelemenin En Kolay Hali!

YZM 2108 Yazılım Mimarisi ve Tasarımı

MÜŞTERİ İLİŞKİLERİ YÖNETİMİ (PZL208U)

T.C. ESKĠġEHĠR TEPEBAġI BELEDĠYESĠ BĠLGĠ ĠġLEM MÜDÜRLÜĞÜ YÖNETMELĠĞĠ BÖLÜM I GENEL HÜKÜMLER

Veritabanı Yönetim Sistemleri (Veritabanı Kavramı) Veri Modelleri

Veritabanı Uygulamaları Tasarımı

BİLGİSAYAR DESTEKLİ TASARIM AUTOCAD DERSİ. 1. HAFTA Öğr. Gör. Serkan ÖREN

AKIŞ ŞEMASI AKIŞ ŞEMASI AKIŞ ŞEMASI ŞEKİLLERİ GİRİŞ

Yapı Malzemesi Enformasyon Sistemi - YMES. Y.Doç.Dr. Elçin TAŞ Y.Doç.Dr. Leyla TANAÇAN Dr. Hakan YAMAN

Chapter 8 Yazılım Testi. Lecture 1. Chapter 8 Software testing

MerSis. Bilgi Teknolojileri Bağımsız Denetim Hizmetleri

BİL1002 Bilgisayar Programlama PROF.DR.TOLGA ELBİR

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Önceden belirlenmiş sonuçlara ulaşabilmek için organize edilmiş faaliyetler zinciridir.

Yaz.Müh.Ders Notları #3 1

KALİTE YÖNETİM SİSTEMİ TS EN ISO 2015 PROSES YAKLAŞIMI

Öğretim içeriğinin seçimi ve düzenlenmesi

Yazılım Mühendisliği Bölüm - 2 Yazılım Geliştirme Yaşam Döngüsü. Cengiz GÖK

Gürcan Banger 21 Mayıs 17 Haziran 2012

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.

C PROGRAMLAMA YRD.DOÇ.DR. BUKET DOĞAN PROGRAM - ALGORİTMA AKIŞ ŞEMASI

Algoritma Geliştirme ve Veri Yapıları 2 Veri Modelleri. Mustafa Kemal Üniversitesi

İnternet Destekli Temel Bilgisayar Bilimleri Dersinde Anket Uygulaması

BİLİŞİM SİSTEMLERİ GÜVENLİĞİNDE YENİ EĞİLİMLER

2- PROJE YÖNETİMİ BİLGİ ALANLARI Y R D. D O Ç. D R. K E N A N G E N Ç O L

Eylül 2007 de v1.0 ı yayınlanan SysML sayesinde endüstri mühendislerinin de ihtiyacı karşılanmış oldu.

Transkript:

Sistem Analizi ve Tasarımı Sistem: Bir hedef veya amacı gerçekleştirmek için bir arada çalışan birbirleriyle ilişkili parçalardan oluşan girdiçıktıları olan sınırları belirlenmiş bir bütündür. Bileşen: Sistemin Elemanıdır. İlişki: Sistemin bileşenleri arasındaki her türlü akış. Amaç: gereksinimlerin karşılanması olarak ifade edilebilir. Sistemin Temel Özellikleri Nelerdir? Bileşen: Sistemi oluşturan parçalardır. Değişkenler: Sistemin özellikleridir. (Bağımsız-Bağımlı, Denetlenebilir-Denetlenemez, İçsel-Dışsal, Girdi-Çıktı) Parametreler: Sistem içinde Sabit Kalan Değerler İlişkiler: sistemin değişken, parametre ve bileşenleri arasındaki bağlantılardır. (Yapısal, İşlevsel, Sırasal) Sınır: Sistemin ortamını belirler. Arabirim: Sistemin ortam veya alt sistemlerin birbirleri ile karşılaştığı yerdir. Kısıtlar: değişkenlerin değerleri olarak düşünülebilir. Ölçüt: sistemin amacı karşılama durumu olarak tanımlanabilir. Ortam: Sistemle etkileşimde olan sistem dışında kalan her şeydir. Genel Sistem Teorisi Nedir? Bilgi sistemi veriyi bilgiye dönüştürür. Sistemler Disiplinler arasıdır. Sistemin elemanları arasında etkileşimi vardır. Sistemler farklı elemanlardan oluşur. Sistemler hiyerarşiktir. Yani sistemler alt sistemlerden oluşur. Sistem ortamına göre düzenlenmelidir. Sistem amaç içindir. Her sistemin belli bir amacı vardır. Sistem ve Ortam Örneğin Bir bina sisteminin alt sistemleri ısıtma sistemi, enerji sistemi, su sistemi, güvenlik sistemi ve aydınlatma sistemidir. Yani ortamın kendisi bir sistem olabilir. Sistemin var olma nedeni ortamda değişiklik yapmaktır. Bir sistem ve ortam arasında doğrudan veya genellikle dolaylı bir ilişki vardır. Bilgi Sistemleri Bilgi Sistemi, organizasyonda kontrolü sağlayarak bilgiyi karar almada kullanmak üzere; toplamak, saklamak, işlemek ve dağıtmak için oluşturulan ilişkisel elemanlar kümesidir. Bilgi Sistemi Türleri Nelerdir? İşlemsel bilgi sistemleri Yönetim bilgi sistemleri Ofis otomasyon sistemleri Karar destek sistemleri Üst yönetim bilgi sistemleri Bilgi tabanlı iş sistemleri

İşlemsel Bilgi Sistemleri: diğer bilgi sistemleri için giriş oluşturmak amacıyla veriyi sınıflayan, saklayan, bakımını yapan, değiştiren, güncelleştiren ve geri çağıran bilgisayar destekli sistemlerdir. Yönetim Bilgi Sistemleri: Yöneticilere planlama, kontrol etme ve karar vermeyi kolaylaştırmak amacıyla bilgi sağlayan sistemlerdir. Karar destek ve ofis otomasyon sistemlerini kapsar. İşlem, Yönetim ve işlev boyutları var. Karar Destek Sistemleri: karar verme görevlerini desteklemek için kullanılan etkileşimli sistemlerdir. Karar verme sürecinin tüm aşamalarında destek sağlamaktadır. Esnek analiz yöntemleri ile çözüm getirir. Ofis Otomasyon Sistemleri: Büro işlemlerini elektronik olarak gerçekleştirmeyi sağlayan bütünleşik bilgisayar sistemlerine denir. Yerel ağlar, büro içi hızlı haberleşme ve ortak kullanım bakımından ihtiyaç duyulmaktadır. Üst Yönetim Bilgi Sistemleri: organizasyonun stratejik seviyesinde kullanılır işletme dışı verileri de içine alarak yönetim bilgi sistemleri ve karar destek sistemlerinden de işetme içi bilgileri alır. Üst yönetime rakip analizi fırsat takibi ve sorunların bulunması gibi değerlendirmelerde bilgi sağlar ve ileriye dönük tahminlerde bulunur. OLAP ve Drill down analizleri kullanılarak veri madenciliği gerçekleştirir. Bilgi Tabanlı iş Sistemleri: araştırmacının yerini almadan araştırmanın sonuçlarını bilgi sistemiyle birleştirerek daha verimli kullanılmasını sağlar. Bilgisayar Destekli Dizayn bilgi tabanlı iş sistemlerine en güzel örnektir. Bilgi Sisteminin Tarafları? Genel olarak bilgi sisteminin tarafları: Kullanıcı, Yönetici, Programcı, Bilgi sistemi destek personeli, Analist Kullanıcı: oluşturulan sistemi kullanacak olanlardır burada müşteri olarak tanımlanabilir. Yönetici: Proje yöneticisi ve İşletme yöneticisi olarak iki grupta tanımlanabilir. Programcı: Sistemi kodlayıp geliştiren kişidir. Bilgi sistem destek personeli: sistemin sorunsuz çalışmasını sağlamak için her türlü desteği vermekten sorumlu. Sistem analisti: sistemin tam anlamıyla nasıl oluşacağını belirlemekten sorumludur. Analistin Problem Çözümüne yaklaşımı Problemi araştırmak ve anlamak, çözüm maliyetlerine karşılık sağlayacağı faydaları belirlemek, çözüm ihtiyaçlarını belirlemek, alternatif çözümler bulmak, en iyi çözümü belirlemek, seçilen çözüm ayrıntılarını belirlemek, çözümü uygulamak, istenilen sonuçların elde edildiğinden emin olmak. Sistem Analistinin Yararlandığı Kaynaklar Sistemin Hedefi, Zaman ve Maddi Kısıtlamalar, Kalite Faktörleri, Teknoloji, Üretim planlaması, Pazar ve Rekabet Analistin Teknik bilgi ve becerisi Hiç kimsenin teknolojinin her alanında bilgi sahibi olması beklenemez temel düzeyde bir analistin: Donanım, Programlama Dilleri, İşletim Sistemleri, Veri tabanı yönetim sistemleri, Haberleşme Protokolleri Konusunda bilgi sahibi olması gerekmektedir. Analistin Yönetim ve İş Bilgi, Beceri Analistin organizasyon yapısına ve işin işleyişine hâkim olması gerekmektedir. Kurumun sektörü, hedefleri, stratejileri, planları ve kurum kültürünün analist tarafından anlaşılması şarttır. Ayrıca Kaynak, proje, risk ve değişim yönetimleri konusunda bilgi ve beceriye sahip olmalı. Analistin İnsan İlişkileri Sistem analistleri işletmenin çalışanları ile takım çalışması içinde uyumlu olarak çalışması gerekir. Bu nedenle bir analistin insan ilişkileri son derece önemlidir. İnsanlarla rahat iletişim kurup, onları dinleyerek sorunları ortaya koyması gerekir.

Sistem Geliştirme Süreci ve Modelleri Sistem geliştirme süreci adımları: Problemin tanımı, Fizibilite Çalışması, Analiz, Genel Tasarım, Ayrıntılı Tasarım, Gerçekleştirme, Bakım Sistem geliştirme modelleri: Klasik Süreç, Model Oluşturma, RAD Modeli, Evrimsel Süreç ve Aykırı programlama Klasik Süreç: müşteriden alınan amaç, hedef ve gereksinimler ile Sistem Mühendisliği Analiz Tasarım Kodlama Test Bakım aşamalarının gerektiğinde geri besleme yoluyla güncellenerek tamamlanması. Çok ilkel bir yöntem olması yanında gelişigüzel geliştirme yanında çok tutarlı ve güvenli bir yöntemdir. Model Oluşturma: Sistem analisti ile müşteri bir araya gelerek amaç ve hedefler belirlenip gereksinimler saptanır. Bu bilgiler ile analist bir taslak tasarım hazırlar. Bu taslak üzerinde analist ve müşteri görüş alış-verişinde bulunur. Bunun sonunda sistem modeli ortaya çıkar. Model üzerinde gereksinimler belirlenir ve yazılım üretilir. Gereksinim Derlenmesi Taslak Tasarım Model Oluşturma Gereksinimlerin işlenmesi Yazılım üretimi RAD Modeli: Klasik süreç modelinin geliştirme süresinin kısaltılmış ve hızlandırılmış şeklidir. Hızlı geliştirme bileşen temelli yapılanma yaklaşımı ile gerçekleştirilir. RAD Aşamaları; İş Modelleme Veri Modelleme Süreç Modelleme Uygulama Üretimi Test Etme Evrensel Süreçler: 1. Artımlı Model: Analiz Tasarım Kodlama Sınama (test) 2. Spiral Model: Bu modele göre yazılım artımlı yayımlar dizisi olarak hızla geliştirilir. Müşteri iletişim Planlama Risk Analizi Mühendislik Yapım ve Değişim Müşteri Değerlendirme Aykırı Programlama (Çevik Yaklaşımlar): Artan müşteri taleplerini daha hızlı karşılamak amacıyla geleneksel yöntemlere alternatif olarak ortaya çıkmıştır. Geliştirme aşamasında Geç ortaya çıkan yazılım değişimlerini hızlı bir şekilde karşılamayı amaçlar. 4 temel değere ve 12 pratiğe sahiptir. Temel Değerleri; İletişim, Basitlik, Geri Besleme, Cesaret Uygulama Yöntemi; Sistem Metaforu, Ekip Üyesi Müşteri, Kısa Aralıklı Yayımlar, Planlama Oyunu, Basit Tasarım, Ortak Kod Mülkiyeti, Kodlama Standartları, Eşle Programlama, Test, Sürekli Tümleştirme, Devamlı Yeniden Tasarım, Devam ettirilebilir Hız 40 Saat / Hafta Ön İnceleme ve Fizibilite Çalışması Fizibilite çalışmasındaki amaç projenin olabilirliğini araştırmaktır. Genel hatları ile proje planı ve bütçesi bulunur. Genel olarak aşağıdaki sorulara cevap bulunması amaçlanır. Projeye ihtiyaç var mı? Sistemin gerçekleştirilmesi için nelere ihtiyaç var? Ne kadar süreye ihtiyaç var? Tahmini bütçe ne kadar? Yararları ve zorlukları nelerdir? Fizibilite Türleri: Teknik, Ekonomik, Zaman, Sosyal, Yönetim ve Yasal fizibilite olarak sınıflandırılır. Teknik Fizibilite: Sitemin teknik açıdan içerdiği risk ve teknik olanakları araştırır. Bu değerlendirmede hem cihaz hem de insan gücü sınırları test edilmeli, karşılaşılabilecek riskler dikkate alınmalı. Ekonomik Fizibilite: Yeni projenin ekonomik riski araştırılır maliyet yarar analizi yapılır. Ekonomik açıdan yeni sistemin uygunluğuna karar verilir. Maliyet Yarar analizleri için; bugünkü değer, başa baş noktası, iç verim oranı ve geri ödeme süresi analizleri kullanılır. Zaman Fizibilitesi: Belirlenen süre içinde projenin tamamlanıp tamamlanamayacağını araştırır. PERT ve Gantt gibi teknikler kullanılır.

PERT NASA tarafından POLARİS Füzesinin yapımında kullanılmıştır. 4 tür süre yöntemi ile hesaplama yapılır iyimser süre, kötümser süre, en yaklaşık süre ve beklenen süre. PERT hazırlanırken olayların mantıksal bir sıra takip edeceği ve kendinden önceki iş bitmeden sonraki aşamaya geçilmeyeceği sürekli göz önünde bulundurulur. Gantt Çizelgesi ise problemin tanımından sistemin işletilmesine geçilinceye kadar hangi aşamaların takip edileceği tek tek zaman çizelgesi olarak hazırlanır. Önemli durak noktaları kilometre taşları da gösterilir. Sosyal Fizibilite: Önerilen sistemin kullanıcılar tarafından kabul edilip edilmeyeceğini araştırır. Yönetim Fizibilitesi: Yönetimin yeni sisteme bakış açısını ve destek düzeyini araştırır. Yasal Fizibilite: Önerilen sistemin yasalara göre uygunluğunu araştırır. Sistem Analizi Sistem analizi ana sistemin öğe ve işlevlerinin ele alınarak ayrıntılı olarak tanımlanmasıdır. Amaç en uygun çözümü bulmaktır. Kullanıcının ihtiyaçları, mevcut sistem durumu, en uygun çözüm değerlendirmesi yapılır. Ayrıntılı incelemeyi başarıyla yapabilmek için; Fizibilite raporlarını gözden geçirmek Bütün teknik terimleri incelemek Ayrıntılı inceleme planı yapmak Proje grubu içinde görev dağılımı yapmak Planın gerçekleşmesi için denetleme yapmak Sistem analistinin uzman bir araştırmacı gibi davranması sistemin çok iyi anlaşılması için gereklidir. Sistem analisti mevcut sistem için; bilgi kaynakları, kullanılan donanım ve yazılım, kullanılan bilgi, iç ve dış bilginin birbirlerini nasıl etkilediği, bilgi miktarı, sistem döngüsü ve süresi, arşivlenen bilgi ve arşivleme araçları, raporların formatı, sistem personeli ve tüm bunların maliyeti hakkında bilgi sahibi olması gerekiyor. Sistem Analiz Yöntemleri Akış Diyagramı: kısıt ve kabul kriterlerinin akış diyagramı halinde gösterilmesi. Örnek Model: bir prototip (örnek) üzerinde müşteri ile tartışarak uygun hale getirilmesi. Araştırma ve Bilgi Toplama Yöntemleri Kişisel Görüşme Yöntemi: Karşılıklı görüşme en sık kullanılan bilgi toplama yöntemidir. Sistem analisti görüşeceği kişi için önceden hazırlanması gerekli noktaları not alması görüşmenin etkinliği açısından çok önemlidir. Analistin kişisel görüşme yönteminde başarılı olabilmesi için yapılandırılmış bir görüşme için aşağıdaki noktalar önemli; Görüşme amacını saptamalı Kiminle görüşeceğini belirlemeli Görüşme zamanı ve yerini belirlemeli Görüşülecek kişiye toplantı ile ilgili bilgi vermeli Görüşmede sorulacak soruları belirlemeli Görüşmeden hemen sonra sonuçları değerlendirmeli Görüşme sonuçlarını yetkili ve görüşülen kişiye iletmeli Görüşmeyi yazılı veya sesli olarak kayıt etmeli Görüşme süresi tamamlandığında gerekli ise sonraki görüşme için randevu almalı Anket Yöntemi: Anket, insanlar hakkında detaylı bilgileri toplamak için kullanılan bilgi toplama yöntemidir. Anket formu cevaplayıcıya sorulmak üzere hazırlanan sorulardan ve cevap alanlarından oluşur. Anket formu hazırlarken uyulması gereken ilkeler; Açıklık, Hatırlatma, Cevap verme arzusu oluşturma, Hataya engel olma, ifade kolaylığı, Cevaplayıcıyı koşullandırmama

Anket Formu Soru Türleri: genel olarak açık uçlu sorular ve kapalı uçlu sorular olmak üzere ikiye ayrılır. Açık uçlu sorular: Yanıt verenden kendi ifadelerinden oluşan bir cevap yazısı ister. Kapalı uçlu sorular: Yanıt verenden seçenekler arasından seçim yapılmasını ister. Açık uçlu soru avantajları: En önemli avantajı önceden hazırlanmış cevapların etkisi olmaksızın kendi düşüncelerinin yazılabilmesi bu sayede daha derin bilgilerin elde edilmesi sağlanır. Açık uçlu soru dezavantajları: anketin tamamlanması kullanıcı için çok uzun zaman alabilir bu yüzden sonlarda ki sorular üzerinde fazla durulmayabilir. Analizi uzun zaman alır. Kapalı uçlu soruların avantajları: cevaplayıcılar genel olarak seçimli cevapları daha kolay bulur. Veri girişinin ve analizinin yapılması çok kolaydır. Kapalı uçlu soruların dezavantajları: Özellikle listelenen cevaplara bağlı kalırlar kendilerinden bir şey ekleyemezler. Cevaplayıcılar arasında ki ince ama önemli farklılıklar tespit edilemeyebilir. Cevaplayıcılar sorunun yanıtını bilmese de bir cevap verebilir. Araştırma Raporu: teknik elemanlara sunulan teknik raporda; başlık sayfası, içindekiler cetveli, araştırma amacı, araştırmada kullanılan metodoloji, genel sonuç ve öneriler, ekler Üst düzey yönetime verilecek raporda; Araştırma amacı, kullanılan yöntem, araştırmadan elde edilen sonuçlar, teknik ekler. Sistem Analizi Modeli Sistem analizi için oluşturulan model aşağıdaki 3 temel amacı yerine getirmelidir. 1. Müşteri ihtiyaçlarını açıklamak 2. Yazılım tasarımının nasıl oluşturulacağının temelini belirlemek 3. Yazılımın ihtiyaçları karşılayıp karşılamadığını belirlemek Veri Akış Diyagramı: sistemin varlıkları, süreçleri, sistemdeki veri depoları ile bunlar arasındaki verinin nasıl aktığını gösterir. Veri akış diyagramında kullanılan simgeler; Varlık Veri Akışı İşlem Veri Deposu Oklar iki uçlu olamaz, okun ucu verinin ulaşması gereken hedefi gösterir İşlemde sadece çıkış olamaz İşlemin sadece girişi olamaz İşlemin girişleri istenen çıkışı vermek için yeterli olmalı Her veri deposu bir işlem ile ilgilidir Veri deposu doğrudan bir varlık ile ilişkide olamaz Farklı 2 işleme gidecek veri aynı anda 2 ok ile gösterilemez. Veri hiçbir işlemden geçmeden çıktığı işleme dönemez Veri akış oklarının üzerine yapılacak işi söylemiyoruz. (Siparişi doğrula değil, Doğrulanmış sipariş şeklinde) Veri Akış Diyagramı Düzeyleri: Ön inceleme sonunda taslak veri, taslak veri temel alınarak birinci ve ikinci düzey ayrıntılı veri akış diyagramları çizilir (sıfırıncı ve birinci düzey olarak adlandıran kaynaklarda var).

Birinci düzey veri akış diyagramında sistem içindeki alt sistemler ve bu sistemlerde gerçekleştirilen işlemler, ilişkili veri kaynakları ve bu kaynaklarla işlemler arasındaki ilişki gösterilir. İkinci düzey veri akış diyagramında ise birinci düzeyde çizilen veri akış diyagramında detaylandırılamayan alt sistemlerde gerçekleştirilen işlemler detaylı olarak gösterilir. Her bir alt sistem için ikinci düzey diyagram çizilir. Veri akış diyagramlarını okumanın en kolay yolu soldan sağa doğru takip ederek okumaktır. Aynı kaynak diyagramın farklı yerlerinde gösterilecekse farklı olmadığını göstermek için sağ alt köşesine eğik çizgi eklenir. Varlık ilişki Diyagramı: bilgi sisteminde yer alan veri nesneleri arasındaki ilişkilerin grafiksel olarak tarif edilmesi. Entity Relationship Diagram kısaca ER diyagramı olarak kullanılır. Er Diyagramında Kullanılan Simgeler; Dikdörtgen: Sistemdeki varlıklar Çift kenarlı dörtgen: sistemdeki zayıf varlıklar Eşkenar dörtgen: varlıklar arasındaki ilişki seti Elips: İlişkiye veya varlığa ait özellikleri Çizgi: varlıklar arasındaki ilişki türünü Karar Tabloları: Karmaşık karar mantığını belirlemek için bir mekanizma sağlamaktadır. Karar tabloları; durumlar, kurallar, işlemler ve kararlar olarak dört ana bölümden oluşur. Karar tablolarında satır ve sütün sayıları belirlidir. Sütün sayısı durum satır sayısına göre; Sütun Sayısı = 2 Durum Sayısı olarak bulunur (daha az olabilir çünkü gerekmeyen sütunlar kullanılmamış veya göz önünde bulundurulmamıştır.) Karar ağaçları karar vermede kullanılan bir diğer yöntemdir ancak karmaşık yapılarda karar verme durumunda karar ağaçları yeterli değildir. Karar ağaçlarında olasılıklar yoktur. Veri Sözlüğü: bilişim maddelerinin içeriğini dil kurallarına uygun olarak tanımlamak için kullanılır. Veri akış diyagramlarında verilen kısa isimlerin detaylı olarak açıklanması gerekmektedir. Bir veri sözlüğünde bulunması gereken bilgi giriş tipleri; Veri Akış Sözlük Girişi: veri akış diyagramındaki her bir veri akışı açıklanır. Veri Deposu Sözlük Girişi: veri akış diyagramındaki birim veri kayıtları açıklanır. Veri Yapısı Sözlük Girişi: veri akışında ve veri kayıtlarında yer alan her bir birim veri yapısı açıklanır. Veri Elemanı Sözlük Girişi: veri yapısında yer alan her bir birim veri elemanı açıklanır. İşlem Sözlük Girişi: veri akış diyagramındaki işlemlerin girdileri, süreci ve çıktıları açıklanır. Sistem Tasarımı Sistem tasarımı yazılım şekline dönüştürülmesi olarak tanımlanabilir. Ön tasarım ve Ayrıntılı tasarım olarak 2 aşamada gerçekleştirilir. Ön tasarımda amaç ve hedeflere ilişkin tanımlamalar yapılır modül adı verilen bağımsız değerlere ayrılmaktadır. Ayrıntılı tasarımda modüller alt modüllere ayrılmakta ve ayrıntılı olarak tasarımı yapılmaktadır. Ayrıntılı tasarım rapor olarak sunulduktan sonra kabul edilirse programın kodlanmasına başlanmaktadır. Program Geliştirme süresinin her aşamasında Kalite Kontrolü yapılır ve son aşamada Kabul Muayenesi adı ile testten geçirilir. Genel Tasarım: Sistem alt yapısını belirleme ve sistem mimarisinin oluşturulması Sistem Altyapısını Belirleme: mevcut donanım, yazılım ve ağ yapısının belirlenip önerilen sisteme uygun altyapının ortaya konmasıdır. Envanter Belirleme, İş yüklerinin tahmini, Donanım değerlendirme, Yazılım Değerlendirme, Satıcı firmayı belirleme, Satın alma şeklini belirleme işlemlerinin yapılmasıdır. Envanter Belirleme: Sistem Analisti; mevcut Donanım modelini, durumunu, yaşını, ömrünü, işletmedeki fiziksel yerini, sorumlu çalışanını ve finansal durumunu belirler. Daha sonra önerilen sistem ile kıyaslama yapılır.

İş Yüklerinin Tahmini: Sistem Analisti mevcut ve planlanan iş yüklerini hesaplar donanımın kapasitesinin bu iş yüklerine uygun olup olmadığını belirler. Bu şekilde gereksiz donanımlar ile işletmenin karmaşıklaşması önlenir. Donanım Değerlendirme: değerlendirme sorumluluğu yönetim, kullanıcı ve sistem analistine aittir. Sistem analisti gerekli donanımın satın alınmasından önce yönetimi bilgilendirmeli kullanıcıyı eğitmelidir. İş yükleri farklı sistemler üzerinde simülasyonu yapılarak karşılaştırılır. Bu karşılaştırmalarda göz önünde bulunması gerekenler; Sistemin toplam kapasitesi CPU nun atıl zamanı Önerilen belleğin büyüklüğü Yazılım Değerlendirme: Sistem analisti yazılım alım kararını yönetim ile birlikte aşağıdaki kriterlere göre vermeli; Performans Etkinliği Performans Verimliliği Kullanım Kolaylığı Esneklik Dokümantasyon Kalitesi Üretici Desteği Satıcı Firmayı Belirleme: Satıcıyı belirlemede en önemli etken sunduğu hizmetlerdir. Bunlar değerlendirilirken; Donanım Desteği Yazılım Desteği Kuruluş ve Eğitim Bakım Kriterleri göz önünde bulundurularak satıcı firma seçimi yapılır. Sadece fiyat karşılaştırması yapmaktan ibaret değildir. Üretici firmanın güvenilir olması firmayı belirlemede göz önünde bulundurulmalıdır. Satın alma şeklinin belirlenmesi: Satın alma, Kiralama, Leasing yöntemlerinden biri tercih edilmelidir. Bu üç seçiminde kendine göre avantajları ve dezavantajları bulunmaktadır. Satın Alma Leasing Kiralama Avantajları Uzun Dönemde Daha ucuzdur. Vergi indirimi sağlar Tam kontrol Sistem değiştirilebilir Sermayenin bağlanmaması Finanslamaya ihtiyaç olmaması Kira bedelinden düşük olması Sermayenin bağlanmaması Finanslamaya ihtiyaç olmaması Sistemin kolayca değiştirilmesi Genelde bakım ve garantinin dahil olması Dezavantajları İlk alım maliyeti yüksektir. Eskime riski Seçimin yanlış yapılması ve yatırımın batması Tam sorumluluk Sözleşme sonunda sisteme sahip olunmaması Ödeme gecikmelerinde yüksek faiz Satın almadan daha pahalı olması İşletmenin sistemin gerçek sahibi olmaması Satıcının riski üstlendiği için kiranın yüksek olması Genel olarak seçim yapılırken kullanılacak donanım veya sistemin kullanım süresi dikkate alınıp hesaplama yapılır. Sistem Mimarisi Mimari tasarımda programın ana yapısal öğeleri arasındaki ilişkiler belirlenmektedir. Amaç modüler bir program geliştirmek ve modüller arası ilişkilerin denetimini göstermektir. Sistem mimarisi yapı diyagramı ile açıklanabilir.

İyi bir yapısal diyagram için; Ön tasarım ayrıntılarıyla tanımlanmalı, mimari tasarım ayrıntılarıyla tanımlanmalı, ayrıntılı tasarım tüm detayları ile tanımlanmalıdır. Tasarım notasyonlarından biri olan HIPO diyagramı sistemdeki her fonksiyonun birbiriyle olan ilişkisini belirlemek amacıyla kullanılır. Görsel bir yöntem olan HIPO diyagramı ile sistem fonksiyonları daha kolay anlaşılır. HIPO yönteminde 3 temel diyagram vardır; 1. Görsel içerik tablosu 2. Genel IPO Diyagramı 3. Ayrıntılı IPO Diyagramı Ayrıntılı Tasarım: Ayrıntılı tasarım kapsamında; çıktı, girdi, veri tabanı, program ve ana birim tasarımı yapılır. Çıktı Tasarımı: Çıktı, bilgi sisteminin aldıkları veriler ile kullanıcıya verdikleri bilgidir. Çıktı tasarımında; Belirlenen amaca hizmet etme Kullanıcı için anlamlı olma Uygun miktarda olma Çıktının dağıtılacağı kullanıcıları doğru belirleme Çıktının zamanında sağlanması Doğru çıktı yönteminin seçilmesi Çıktıların kullanıcıları etkileyecek şekilde yönlendirilmesi; Bilgilerin alfabetik, kronolojik veya maliyete göre sıralanması Kabul edilebilir sınırların belirlenmesi Grafik tipi rengi ve ölçeğinin ayarlanması Özellikle grafiklerde bazı renklerin anlamları vardır kırmızı renk bütçede problemi belirtir. Ayrıca grafik seçiminde bir bütünün oranlarını ortaya çıkarmak için pasta grafiği, birden fazla veri grubunu göstermek için çubuk grafik tipi kullanılması daha doğru olacaktır. Girdi Tasarımı: Girilen verinin kalitesi çıktı olarak elde edilen bilginin kalitesini belirler. Hatalı veri girerseniz hatalı bilgi alırsınız. Kuralı geçerlidir. İyi tasarlanan girdiler için; Etkinlik, Doğruluk, Kullanım Kolaylığı, Uyumluluk, Basitlik, Çekicilik önemlidir. Tasarım aşamasında karar verilmesi gereken önemli kavramlardan biri de kodlamadır. Kodlama mümkün olduğunca kısa olması gerekir. Kodlama kolay değişmeyecek şekilde olmalıdır. Tekrarlanmamalı, tekil olmalıdır. Kodlamada birbiri ile karışabilecek simgeler kullanılmamalı I, 1 gibi Kodlamada kısaltmalar varsa anlamlı olmalıdır. Araya eleman eklemeye izin verecek şekilde değişikliğe açık olabilmeli. Verilerin alınacağı formlar tasarlanırken aşağıdaki özelliklere dikkat edilmeli; Kolay doldurulması Tasarımın amacını karşılaması Doğru tamamlamayı sağlaması Güzel görünmesi Ekran tasarımında ise; Kolay kullanım ve basit olacak şekilde gereksiz bilgi bulunmayacak girilecek bilgiler ile ilgili açıklamalar Bilgi toplama formları ve diğer ekranların birbirleri ile uyum içinde olması Ekrandan ekrana geçerken veya kaydırmalar yaparken hareket kolaylığı sağlamalı Tüm ekranların belli bir düzene uygun hazırlanması imleç, font tipinin seçimi ile çekici ekran tasarımı

Ekran Tasarımında Renk Kullanımı: zemin ve kalem renklerinin doğru belirlenmesi bilgi girişini kolaylaştıran etmenlerdendir. Fazla parlak ve koyu renklerin kullanımından kaçınarak zemin ve kalem rengi zıt renk olmalıdır. Zemin ve kalem renklerinde en uyumlu renkler; Sarı üzerine siyah, beyaz üzerine yeşil, beyaz üzerine mavi, mavi üzerine beyaz, siyah üzerine beyaz olarak sıralanabilir. Zemin ve kalem renklerinde en zor okunanlar; yeşil üzerine kırmızı, kırmızı üzerine mavi olarak sıralanabilir. Doğru veri girişi birimi tasarımının gerçekleştirilmesi için; Etkin kodlama Etkin ve verimli veri girişi Doğruluk ve geçerlilik testleri ile kalitenin sağlanması. Veri Yapısı Tasarımı: veri tasarımı veri yapısının tamamlanması olarak adlandırılabilir. Sistemin tasarlanmasında ilk olarak ele alınan en önemli görevdir. Veri tasarımı sistemin kalitesini önemli ölçüde belirler. Veri tasarımında ilk iş gereksinim analizi ve özelleştirme aşamasında tanımlanmış veri yapılarını mantıksal gösteriminin seçilmesidir. Veri tasarımı yapısında amaçlanan; Verinin kullanıcının istediği anda kullanılabilir olması Doğru ve uyumlu olması ve veri bütünlüğünü sağlanması Güncelleştirmenin etkin yapılabilmesi Bilgi geri çağırmanın amaca uygun ve etkin gerçekleştirilmesi Saklanan veriden elde edilen bilginin yönetim, planlama, kontrol ve karar vermede yararlı olacak şekilde Kullanıcı Arabirim Tasarımı: kullanıcı arabirimi, sistemin kullanıcı ile iletişim kuran elemanıdır. Arabirimler; doğal dil arabirimleri, soru cevap sorgulamaları, menüler, girdi/çıktı formları, komut dili şeklinde olabilir. Bilgisayarın girdiyi kabul edip etmediği Doğru formda olup olmadığını İşlemde gecikme olacağını İşlem veya isteğin tamamlanıp tamamlanmadığını bildirecek şekilde olmalıdır. Arabirim tasarımcısının görevi insan yetenekleri ve bilgisayar gücünün birbirini tamamlayacak şekilde çalışması. Etkinlik (gereksinimlere uygun olarak sisteme erişim sağlanabilmeli) Verimlilik (hataları azaltma veri giriş hızını arttırma) Kullanıcı görüşlerinin alınabilmesi (işlem sırasında oluşan eksik ve hatayı geri bildirim yapabilmesi) Ergonomik olması (kolay kullanılabilir işlevsel) Bir kullanıcı arabirimini bir defada doğru olarak tasarlanmasının genellikle mümkün olmaması nedeniyle prototip oluşturma, test etme tekrarlı tasarım kullanarak değişikliği planlamak gerekmektedir. Arabirim tasarımında etkileşim arttıkça arabirim kullanılabilirliği artmaktadır. Mühendislik Modeli: sistemi tanıyan kişilerin sistemin tüm işlevlerine ulaşabilmek ve tam denetim altında tutabilmek için kullanacakları arabirimlerin geliştirmek amacıyla kullanılır. Kullanıcı Görev Modeli: kullanıcıların gerçekleştirmesi gereken işlevler için kolay erişilebilirlik sağlayan hata yapmayı önleyen ve hızlı öğrenilen arabirimlerdir. Arabirimlerde Oluşan Problemlerden Bazıları: Bilginin düzensiz ve yığınlar şeklinde olması Kullanıcının yapması gereken çeşitli ekran geçişlerinin uyumlu olmaması Ekran üzerindeki komutlardaki kelimelerin karmaşık olması Hata mesajlarının açıklayıcı olmaması Kullanma kılavuzlarının anlaşılmaz derecede karmaşık olması

Nesneye Yönelik Yaklaşıma Genel Bakış Tümleştirilmiş modelleme dilinin standartlaşmasıyla 1990 larda yaygınlaşmıştır. Klasik yaklaşımın aksine, veri merkezli, sınıf modelleri üzerinde geliştirilen bir yaklaşımdır. Bu yöntem kullanıldığında kodların ve modüllerin yeniden kullanılabilirliği kolaylaşmakta, geliştirme süresi kısalmakta, üretkenlik artmakta, yazılım kalitesi yükselmekte, anlaşılabilirdik kolaylaşmaktadır. Tümleştirilmiş yazılım geliştirme süreci (Unified Process UP ) UP genel anlamda tekrarlı ve artımlı bir süreç yapısı çizer. Tek bir model, analiz, tasarım, gerçekleştirme ve test aşamalarında sürekli işlenir, değiştirilir ve iyileştirilir. Yeni yaklaşım birkaç yeni problemi ortaya çıkartmıştır. Sistemin gerektirdiği çözüm ilişkisel bir veri tabanı kullanımı gerektiriyorsa kavram ve uygulama arasında belirgin farklılıklar oluşur. Süreç içinde aşamaları birbirinden kesin olarak ayıran kilometre taşlarını belirlemek oldukça güçtür. Bu güçlüğü önlemek için projeyi küçük parçalara bölerek yönetilmesi ve yenilemeli artım süreç ile sağlanır. Tümleştirilmiş modelleme dili ile tasarım anlaşılır biçimde ortaya koyulabilir. Klasik yöntemlerin yetersiz kaldığı kullanıcı etkileşimli olay tabanlı yazılımlar geliştirmenin zorluğunun çözümü nesneye yönelik yazılım geliştirme metotları kullanmaktır. Yazılım geliştirmenin esas parçası kod yazmak olduğu düşünülür ancak kullanıcı için önemli olan sistemin nasıl geliştirildiği değil doğru çalışması ve istediği işlemi yapabilmesidir. Booch Yöntemi: Grady Boosch tasarım ve gerçekleştirmede mükemmellik Rumbaugh Yöntemi: Jim Rumbaugh analiz ve veri yoğunluğu çok olan sistemler için Jacobson Yöntemi: ivan Jacobson use Case tekniğini içerir.