Sistem Analizi ve Tasarımı

advertisement
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ı = 2Durum 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.
Avantajları
Dezavantajları
Satın Alma
Uzun Dönemde Daha ucuzdur.
Vergi indirimi sağlar
Tam kontrol
Sistem değiştirilebilir
İlk alım maliyeti yüksektir.
Eskime riski
Seçimin yanlış yapılması ve yatırımın batması
Tam sorumluluk
Leasing
Sermayenin bağlanmaması
Finanslamaya ihtiyaç olmaması
Kira bedelinden düşük olması
Sözleşme sonunda sisteme sahip olunmaması
Ödeme gecikmelerinde yüksek faiz
Satın almadan daha pahalı olması
Kiralama
Sermayenin bağlanmaması
Finanslamaya ihtiyaç olmaması
Sistemin kolayca değiştirilmesi
Genelde bakım ve garantinin dahil 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.
Download