Sistem Analizi ve Tasarımı - Hızlı Kılavuz
Sistem geliştirme, planlama, analiz, tasarım, dağıtım ve bakım gibi aşamaları içeren sistematik bir süreçtir. Burada, bu eğitimde öncelikle aşağıdakilere odaklanacağız:
- Sistem Analizi
- Sistem tasarımı
Sistem Analizi
Gerçekleri toplama ve yorumlama, sorunları tanımlama ve bir sistemi bileşenlerine ayırma sürecidir.
Sistem analizi, hedeflerini belirlemek için bir sistemi veya parçalarını incelemek amacıyla yapılır. Sistemi iyileştiren ve sistemin tüm bileşenlerinin amacına ulaşmak için verimli çalışmasını sağlayan bir problem çözme tekniğidir.
Analiz belirtir what the system should do.
Sistem Tasarımı
Belirli gereksinimleri karşılamak için bileşenlerini veya modüllerini tanımlayarak yeni bir iş sistemini planlama veya mevcut bir sistemi değiştirme sürecidir. Planlamadan önce, eski sistemi iyice anlamanız ve verimli bir şekilde çalışmak için bilgisayarların en iyi nasıl kullanılabileceğini belirlemeniz gerekir.
Sistem Tasarımı odaklanır how to accomplish the objective of the system.
Sistem Analizi ve Tasarımı (SAD) esas olarak şunlara odaklanır:
- Systems
- Processes
- Technology
Sistem nedir?
Sistem kelimesi, ortak bir neden veya hedefe ulaşmak için herhangi bir bileşen kümesi arasında organize bir ilişki anlamına gelen Yunanca Systema kelimesinden türetilmiştir.
Bir sistem, "belirli bir hedefe ulaşmak için bir plana göre birbirine bağlı, birbirine bağlı bileşenlerin düzenli bir gruplamasıdır."
Bir Sistemin Kısıtlamaları
Bir sistemin üç temel kısıtlaması olmalıdır -
Bir sistemde bazı structure and behavior önceden tanımlanmış bir hedefe ulaşmak için tasarlanmıştır.
Interconnectivity ve interdependence sistem bileşenleri arasında bulunmalıdır.
objectives of the organization var higher priority alt sistemlerinin hedeflerinden daha fazla.
Örneğin trafik yönetim sistemi, bordro sistemi, otomatik kütüphane sistemi, insan kaynakları bilgi sistemi.
Bir Sistemin Özellikleri
Bir sistem aşağıdaki özelliklere sahiptir -
Organizasyon
Organizasyon, yapı ve düzen anlamına gelir. Önceden belirlenmiş hedeflere ulaşmaya yardımcı olan bileşenlerin düzenlenmesidir.
Etkileşim
Bileşenlerin birbirleriyle çalışma şekli ile tanımlanır.
Örneğin, bir organizasyonda, satın alma departmanı üretim departmanı ile etkileşime girmeli ve personel departmanı ile bordro yapmalıdır.
Dayanışma
Karşılıklı bağımlılık, bir sistemin bileşenlerinin birbirine nasıl bağlı olduğu anlamına gelir. Düzgün çalışması için bileşenler koordine edilir ve belirli bir plana göre birbirine bağlanır. Bir alt sistemin çıktısı, diğer alt sistem tarafından girdi olarak gereklidir.
Entegrasyon
Entegrasyon, bir sistem bileşenlerinin birbirine nasıl bağlandığı ile ilgilidir. Bu, her bir parça benzersiz bir işlev gerçekleştirse bile, sistemin parçalarının sistem içinde birlikte çalıştığı anlamına gelir.
Merkezi Amaç
Sistemin amacı merkezi olmalıdır. Gerçek veya ifade edilmiş olabilir. Bir kuruluşun bir hedef belirtmesi ve bir başkasına ulaşmak için çalışması nadir değildir.
Kullanıcılar, başarılı bir tasarım ve dönüştürme için analizin başında bir bilgisayar uygulamasının ana amacını bilmelidir.
Bir Sistemin Öğeleri
Aşağıdaki şema bir sistemin elemanlarını göstermektedir -
Çıkışlar ve Girişler
Bir sistemin temel amacı, kullanıcısı için faydalı olan bir çıktı üretmektir.
Girişler, işlenmek üzere sisteme giren bilgilerdir.
Çıktı, işlemenin sonucudur.
İşlemci (ler)
İşlemci, girdinin çıktıya gerçek dönüşümünü içeren bir sistemin öğesidir.
Bir sistemin operasyonel bileşenidir. İşlemciler, çıktı özelliklerine bağlı olarak girişi tamamen veya kısmen değiştirebilir.
Çıktı spesifikasyonları değiştikçe, işlem de değişir. Bazı durumlarda, işlemcinin dönüşümü işlemesini sağlamak için girdi de değiştirilir.
Kontrol
Kontrol elemanı sistemi yönlendirir.
Girdi, işleme ve çıktıyı yöneten faaliyetlerin modelini kontrol eden karar verme alt sistemidir.
Bir bilgisayar Sisteminin davranışı İşletim Sistemi ve yazılım tarafından kontrol edilir. Sistemi dengede tutmak için ne ve ne kadar girdiye ihtiyaç duyulacağı Çıktı Özellikleri ile belirlenir.
geri bildirim
Geri bildirim, kontrolü dinamik bir sistemde sağlar.
Olumlu geribildirim, sistemin performansını teşvik eden doğası gereği rutindir.
Negatif geribildirim, denetleyiciye eylem için bilgi sağlayan doğası gereği bilgi amaçlıdır.
Çevre
Çevre, bir organizasyonun içinde faaliyet gösterdiği "süper sistemdir".
Sisteme etki eden dış unsurların kaynağıdır.
Bir sistemin nasıl çalışması gerektiğini belirler. Örneğin, kuruluş ortamının satıcıları ve rakipleri, işletmenin gerçek performansını etkileyen kısıtlamalar sağlayabilir.
Sınırlar ve Arayüz
Bir sistem kendi sınırları ile tanımlanmalıdır. Sınırlar, başka bir sistemle arayüz oluşturduğunda bileşenlerini, süreçlerini ve karşılıklı ilişkisini tanımlayan sınırlardır.
Her sistemin etki ve kontrol alanını belirleyen sınırları vardır.
Belirli bir sistemin sınırlarının bilgisi, başarılı bir tasarım için diğer sistemlerle arayüzünün doğasını belirlemede çok önemlidir.
Sistem Türleri
Sistemler aşağıdaki türlere ayrılabilir -
Fiziksel veya Soyut Sistemler
Fiziksel sistemler somut varlıklardır. Onlara dokunabilir ve hissedebiliriz.
Fiziksel Sistem doğası gereği statik veya dinamik olabilir. Örneğin, masa ve sandalyeler bilgisayar merkezinin statik olan fiziksel parçalarıdır. Programlanmış bir bilgisayar, programların, verilerin ve uygulamaların kullanıcının ihtiyaçlarına göre değişebildiği dinamik bir sistemdir.
Soyut sistemler, gerçek bir sistemin formülleri, temsili veya modeli olabilen fiziksel olmayan varlıklar veya kavramsaldır.
Açık veya Kapalı Sistemler
Açık bir sistem çevresi ile etkileşime girmelidir. Sistemin dışından girdi alır ve çıktıları sistem dışına iletir. Örneğin, değişen çevre koşullarına uyum sağlaması gereken bir bilgi sistemi.
Kapalı bir sistem, çevresiyle etkileşime girmez. Çevresel etkilerden izole edilmiştir. Gerçekte tamamen kapalı bir sistem nadirdir.
Uyarlanabilir ve Uyarlanabilir Olmayan Sistem
Adaptive System, ortamdaki değişime performanslarını artıracak ve hayatta kalacak şekilde yanıt verir. Örneğin insanlar, hayvanlar.
Uyumsuz Sistem, ortama yanıt vermeyen sistemdir. Örneğin makineler.
Kalıcı veya Geçici Sistem
Kalıcı Sistem uzun süre devam eder. Örneğin, iş politikaları.
Geçici Sistem belirlenen süre için yapılır ve bundan sonra yıkılır. Örneğin bir program için bir DJ sistemi kurulur ve programdan sonra demonte edilir.
Doğal ve Üretilmiş Sistem
Doğal sistemler doğa tarafından yaratılır. Örneğin, Güneş sistemi, mevsimlik sistem.
Üretilen Sistem insan yapımı sistemdir. Örneğin, Rockets, barajlar, trenler.
Deterministik veya Olasılıklı Sistem
Deterministik sistem öngörülebilir bir şekilde çalışır ve sistem bileşenleri arasındaki etkileşim kesin olarak bilinir. Örneğin, iki hidrojen molekülü ve bir oksijen molekülü su yapar.
Olasılıklı Sistem belirsiz davranışlar gösterir. Kesin çıktı bilinmemektedir. Örneğin, Hava tahmini, posta teslimi.
Sosyal, İnsan-Makine, Makine Sistemi
Sosyal Sistem insanlardan oluşur. Örneğin sosyal kulüpler, toplumlar.
İnsan Makine Sisteminde, belirli bir görevi gerçekleştirmek için hem insan hem de makineler yer alır. Örneğin, Bilgisayar programlama.
Makine Sistemi, insan müdahalesinin ihmal edildiği yerdir. Tüm görevler makine tarafından gerçekleştirilir. Örneğin, otonom bir robot.
İnsan Yapımı Bilgi Sistemleri
Doğrudan Yönetim Kontrolü (DMC) altında belirli bir organizasyon için verileri yönetmek için birbirine bağlı bir bilgi kaynakları kümesidir.
Bu sistem, bir organizasyonun ihtiyacına göre bilgi üretmek için donanım, yazılım, iletişim, veri ve uygulamayı içerir.
İnsan yapımı bilgi sistemleri üç türe ayrılır -
Formal Information System - En üst düzeyden alt yönetim düzeylerine notlar, talimatlar vb. Şeklindeki bilgi akışına dayanır.
Informal Information System - Bu, günlük işle ilgili sorunları çözen çalışan temelli bir sistemdir.
Computer Based System- Bu sistem, iş uygulamalarını yönetmek için doğrudan bilgisayara bağlıdır. Örneğin otomatik kütüphane sistemi, demiryolu rezervasyon sistemi, bankacılık sistemi vb.
Sistem Modelleri
Şematik Modeller
Şematik model, sistem öğelerini ve bunların bağlantılarını gösteren 2 boyutlu bir grafiktir.
Bilgi akışını, malzeme akışını ve bilgi geri bildirimini göstermek için farklı oklar kullanılır.
Akış Sistemi Modelleri
Akış sistemi modeli, sistemi bir arada tutan malzemenin, enerjinin ve bilginin düzenli akışını gösterir.
Örneğin Program Değerlendirme ve Gözden Geçirme Tekniği (PERT), gerçek dünya sistemini model biçiminde soyutlamak için kullanılır.
Statik Sistem Modelleri
Aktivite-zaman veya maliyet-miktar gibi bir çift ilişkiyi temsil ederler .
Örneğin Gantt grafiği, bir etkinlik-zaman ilişkisinin statik bir resmini verir.
Dinamik Sistem Modelleri
İş organizasyonları dinamik sistemlerdir. Dinamik bir model, analistlerin uğraştığı organizasyon veya uygulama tipine yaklaşır.
Sistemin devam eden, sürekli değişen durumunu gösterir. Aşağıdakilerden oluşur:
Sisteme giren girişler
Dönüşümün gerçekleştiği işlemci
İşleme için gerekli program (lar)
İşlemeden kaynaklanan çıktılar.
Bilgi Kategorileri
Yönetim seviyelerine ve yöneticilerin verdiği kararlara ilişkin üç bilgi kategorisi vardır.
Stratejik Bilgi
Bu bilgiler, önümüzdeki birkaç yıl için uzun vadeli planlama politikaları için en üst düzey yönetim tarafından istenmektedir. Örneğin, gelirler, finansal yatırım ve insan kaynakları ile nüfus artışındaki eğilimler.
Bu tür bilgilere Karar Destek Sistemi (KDS) yardımıyla ulaşılır.
Yönetim Bilgileri
Bu tür bilgiler orta yönetim tarafından aylar bazında kısa ve orta vadeli planlamalar için gereklidir. Örneğin, satış analizi, nakit akışı tahmini ve yıllık mali tablolar.
Yönetim Bilişim Sistemleri (MIS) yardımı ile elde edilir.
Operasyonel bilgiler
Bu tür bilgiler, günlük operasyonel faaliyetleri yürütmek için günlük ve kısa vadeli planlama için düşük yönetim tarafından gereklidir. Örneğin, çalışan katılım kayıtlarını, gecikmiş satın alma siparişlerini ve mevcut stokları tutmak.
Veri İşleme Sistemleri (DPS) yardımı ile elde edilir.
Etkili bir Sistem Geliştirme Yaşam Döngüsü (SDLC), müşteri beklentilerini karşılayan, zaman ve maliyet değerlendirmelerinde tamamlanmaya ulaşan, mevcut ve planlanan Bilgi Teknolojisi altyapısında etkin ve verimli çalışan yüksek kaliteli bir sistemle sonuçlanmalıdır.
Sistem Geliştirme Yaşam Döngüsü (SDLC), yaşam döngüleri boyunca sistemleri geliştirmek veya değiştirmek için politikalar ve prosedürler içeren kavramsal bir modeldir.
SDLC, analistler tarafından bir bilgi sistemi geliştirmek için kullanılır. SDLC aşağıdaki etkinlikleri içerir -
- requirements
- design
- implementation
- testing
- deployment
- operations
- maintenance
SDLC Aşamaları
Sistem Geliştirme Yaşam Döngüsü, işi yeni veya değiştirilmiş Bilgi Sistemini uygulamak için gereken aşamalara açıkça ayıran sistematik bir yaklaşımdır.
Fizibilite Çalışması veya Planlama
Mevcut sistemin problemini ve kapsamını tanımlayın.
Yeni sisteme genel bakış ve hedeflerini belirleyin.
Proje fizibilitesini onaylayın ve proje Çizelgesini oluşturun.
Bu aşamada sistemin tehditleri, kısıtlamaları, entegrasyonu ve güvenliği de dikkate alınır.
Bu aşamanın sonunda tüm proje için bir fizibilite raporu oluşturulur.
Analiz ve Spesifikasyon
Bilgileri toplayın, analiz edin ve doğrulayın.
Yeni sistem için gereksinimleri ve prototipleri tanımlayın.
Alternatifleri değerlendirin ve gereksinimleri önceliklendirin.
Son kullanıcının bilgi ihtiyaçlarını inceleyin ve sistem hedefini geliştirin.
Bu aşamanın sonunda sistemin yazılım, donanım, işlevsellik ve ağ gereksinimlerini belirten bir Yazılım Gereksinim Şartnamesi (SRS) dokümanı hazırlanır.
Sistem tasarımı
Uygulama, ağ, veritabanları, kullanıcı arayüzleri ve sistem arayüzlerinin tasarımını içerir.
SRS belgesini, bir programlama dilinde uygulanabilecek ayrıntılı ve eksiksiz özellikler setini içeren mantıksal yapıya dönüştürün.
Bir acil durum, eğitim, bakım ve operasyon planı oluşturun.
Önerilen tasarımı inceleyin. Nihai tasarımın SRS belgesinde belirtilen gereksinimleri karşıladığından emin olun.
Son olarak, sonraki aşamalarda kullanılacak bir tasarım belgesi hazırlayın.
Uygulama
Tasarımı kodlama yoluyla kaynak koduna uygulayın.
Tüm modülleri, hataları ve kusurları tespit eden eğitim ortamında bir araya getirin.
Test senaryosu oluşturma, test kriterleri ve test için kaynak tahsisi gibi testle ilgili görevleri içeren test planı aracılığıyla hataları içeren bir test raporu hazırlanır.
Bilgi sistemini ortamına entegre edin ve yeni sistemi kurun.
Bakım desteği
Sistem kurulduktan sonra kullanıcılar için telefon desteği veya fiziksel yerinde destek gibi tüm etkinlikleri dahil edin.
Yazılımın belirli bir süre boyunca maruz kalabileceği değişiklikleri uygulayın veya yazılım müşteri konumunda devreye alındıktan sonra yeni gereksinimleri uygulayın.
Ayrıca, kalan hataların ele alınmasını ve sistemde var olabilecek sorunları test aşamasından sonra bile çözmeyi içerir.
Büyük sistemler için daha uzun süre, küçük sistemler için ise kısa bir süre için bakım ve destek gerekebilir.
Sistem Analizi ve Tasarımının Yaşam Döngüsü
Aşağıdaki diyagram, analiz ve tasarım aşamasında sistemin tüm yaşam döngüsünü göstermektedir.
Sistem Analistinin Rolü
Sistem analisti, sistemin tamamen farkında olan ve uygun yönlendirmeler vererek sistem geliştirme projesine rehberlik eden kişidir. Her aşamada ihtiyaç duyulan gelişim görevlerini yerine getirebilecek teknik ve kişilerarası becerilere sahip bir uzmandır.
Bilgi sisteminin amaçlarını organizasyon hedefi ile eşleştirmeye çalışır.
Ana roller
Çeşitli Bilgi bulma teknikleriyle kullanıcı ihtiyacını tanımlama ve anlama.
Kullanıcı fikir birliği alarak gereksinimleri önceliklendirmek.
Gerçekleri veya bilgileri toplamak ve kullanıcıların fikirlerini almak.
Daha kullanıcı dostu olan uygun sisteme ulaşmak için analiz ve değerlendirmeyi sürdürür.
Pek çok esnek alternatif çözüm önerir, en iyi çözümü seçer ve maliyet ve faydaları nicelendirir.
Kullanıcılar ve programcı tarafından kolayca anlaşılan belirli özellikleri kesin ve ayrıntılı biçimde çizin.
Modüler olması gereken sistemin mantıksal tasarımını uyguladı.
Bir süre kullanıldıktan sonra değerlendirme için periyodikliği planlayın ve sistemi gerektiği gibi değiştirin.
Sistem Analistinin Nitelikleri
Aşağıdaki şekil, bir sistem analistinin sahip olması gereken özellikleri göstermektedir -
Kişilerarası becerileri
- Kullanıcılar ve programcı ile arayüz.
- Grupları kolaylaştırın ve daha küçük ekiplere liderlik edin.
- Beklentileri yönetmek.
- İyi anlama, iletişim, satış ve öğretme yetenekleri.
- Sorguları çözmek için kendine güvenen motivatör.
Analitik beceri
- Sistem çalışması ve organizasyon bilgisi
- Problem tanımlama, problem analizi ve problem çözme
- Sağduyu
- Ödünleşime erişim yeteneği
- Yeni organizasyon hakkında bilgi edinme merakı
Yönetim Becerileri
- Kullanıcı jargonunu ve uygulamalarını anlayın.
- Kaynak ve proje yönetimi.
- Değişim ve risk yönetimi.
- Yönetim işlevlerini iyice anlayın.
Teknik beceriler
- Bilgisayar ve yazılım bilgisi.
- Modern gelişmeyi takip edin.
- Sistem tasarım araçlarını bilir.
- Yeni teknolojiler hakkında kapsamlı bilgi.
Gereksinim Belirleme Nedir?
Bir gereksinim, verilerin işlenmesini veya yakalanmasını, iş faaliyetlerinin kontrol edilmesini, bilgi üretilmesini ve yönetimi desteklemeyi içerebilen yeni bir sistemin hayati bir özelliğidir.
Gereksinim belirleme, mevcut sistemi incelemeyi ve gereksinimlerin neler olduğunu, nasıl çalıştığını ve iyileştirmelerin nerede yapılması gerektiğini bulmak için ayrıntıları toplamayı içerir.
İhtiyaç Belirlemede Başlıca Faaliyetler
Gereksinimler Öngörü
Yeni bir sistem için belirli sorunları veya özellikleri ve gereksinimleri içeren önceki deneyimlere dayanarak sistemin özelliklerini tahmin eder.
Aksi takdirde deneyimsiz analist tarafından fark edilmeyecek alanların analizine yol açabilir. Ancak, araştırmanın yürütülmesinde kısa yollar kullanılırsa ve önyargı getirilirse, gereksinim Öngörü yarım yamalak olabilir.
Gereksinimlerin İncelenmesi
Mevcut sistemi inceliyor ve daha fazla analiz için özelliklerini belgeliyor.
Analistin bilgi bulma teknikleri, prototipleme ve bilgisayar destekli araçları kullanarak sistem özelliklerini belgelediği ve tanımladığı sistem analizinin merkezinde yer alır.
Gereksinimler Özellikler
Yeni sistem için gereksinim spesifikasyonunu, özelliklerin açıklamasını ve hangi bilgi gereksinimlerinin sağlanacağını belirleyen verilerin analizini içerir.
Gerçek verilerin analizini, temel gereksinimlerin tanımlanmasını ve Gereksinim karşılama stratejilerinin seçimini içerir.
Bilgi Toplama Teknikleri
Veri bulma tekniklerinin temel amacı, analistler tarafından kullanıcı tarafından anlaşılan kesin bir SRS hazırlamak için kullanılan bir organizasyonun bilgi gereksinimlerini belirlemektir.
İdeal SRS Belgesi -
- eksiksiz, Kesin ve Jargonsuz olmalıdır.
- operasyonel, taktik ve stratejik bilgi gereksinimlerini belirtin.
- Kullanıcılar ve analist arasındaki olası anlaşmazlıkları çözer.
- Anlama ve tasarımı kolaylaştıran grafik yardımcıları kullanın.
Çeşitli bilgi toplama teknikleri vardır -
Mülakat
Sistem analisti, görüşme yaparak bireylerden veya gruplardan bilgi toplar. Analist resmi, yasal olabilir, siyaset oynayabilir veya gayri resmi olabilir; çünkü bir görüşmenin başarısı analistin görüşmeci olarak becerisine bağlıdır.
İki şekilde yapılabilir -
Unstructured Interview - Sistem analisti, sistemin temel bilgilerini almak için soru-cevap oturumu düzenler.
Structured Interview - Kullanıcının yakın (objektif) veya açık (açıklayıcı) formatta yanıt vermesi gereken standart sorular vardır.
Advantages of Interviewing
Bu yöntem genellikle nitel bilgi toplamanın en iyi kaynağıdır.
Yazılı olarak etkili bir şekilde iletişim kurmayanlar veya anketi doldurmak için zamanı olmayanlar için yararlıdır.
Bilgiler kolaylıkla doğrulanabilir ve anında kontrol edilebilir.
Karmaşık konuları halledebilir.
Fikir arayarak anahtar sorunu keşfetmek kolaydır.
Yanlış anlaşılma alanlarındaki boşlukları doldurur ve gelecekteki sorunları en aza indirir.
Anketler
Bu yöntem, analist tarafından çok sayıda kişiden çeşitli sistem sorunları hakkında bilgi toplamak için kullanılır.
İki tür anket vardır -
Open-ended Questionnaires- Kolay ve doğru yorumlanabilen sorulardan oluşur. Bir sorunu keşfedebilir ve belirli bir yanıt yönüne yönlendirebilirler.
Closed-ended Questionnaires - Sistem analisti, birbirini dışlayan tüm olası yanıtları etkin bir şekilde listelediğinde kullanılan sorulardan oluşur.
Advantages of questionnaires
Bir arada bulunmayan kullanıcıların ilgi, tutum, duygu ve inançlarının araştırılmasında çok etkilidir.
Belirli bir grubun ne kadarının önerilen sistemin belirli bir özelliğini onayladığını veya onaylamadığını bilmek durumda yararlıdır.
Sistem projesine belirli bir yön vermeden önce genel görüşü belirlemek faydalıdır.
Daha güvenilirdir ve dürüst yanıtların yüksek gizliliğini sağlar.
Olgusal bilgilerin seçilmesi ve e-posta ile gönderilebilen ve posta yoluyla gönderilebilen istatistiksel veri toplama için uygundur.
Kayıtların, Prosedürlerin ve Formların İncelenmesi
Mevcut kayıtların, prosedürlerin ve formların gözden geçirilmesi, mevcut sistem yeteneklerini, işlemlerini veya faaliyetlerini açıklayan bir sistem hakkında içgörü aramaya yardımcı olur.
Advantages
Kullanıcının, başkalarına empoze etmeden önce kendi başına organizasyon veya işlemler hakkında biraz bilgi edinmesine yardımcı olur.
Prosedür kılavuzları ve formları mevcut sistemin formatını ve işlevlerini açıkladığından, mevcut işlemlerin kısa bir süre içinde belgelenmesine yardımcı olur.
Organizasyonda ele alınan işlemler hakkında net bir anlayış sağlayabilir, işleme için girdiyi belirleyebilir ve performansı değerlendirebilir.
Desteklenmesi gereken işlemler açısından bir analistin sistemi anlamasına yardımcı olabilir.
Sorunu, etkilenen kısımlarını ve önerilen çözümü açıklar.
Gözlem
Bu, insanları, olayları ve nesneleri fark edip gözlemleyerek bilgi toplama yöntemidir. Analist, mevcut sistemin işleyişini gözlemlemek için kurumu ziyaret eder ve sistemin gereksinimlerini anlar.
Advantages
Bilgi toplamak için doğrudan bir yöntemdir.
Toplanan verilerin gerçekliğinin söz konusu olduğu veya sistemin belirli yönlerinin karmaşıklığının son kullanıcıların net açıklamasını engellediği durumlarda faydalıdır.
Daha doğru ve güvenilir veriler üretir.
Eksik ve güncel olmayan belgelerin tüm yönlerini üretir.
Ortak Uygulama Geliştirme (JAD)
IBM tarafından geliştirilen ve sistem sahiplerini, kullanıcıları, analistleri, tasarımcıları ve kurucuları organize ve yoğun atölyeler kullanarak sistemi tanımlamaları ve tasarlamaları için bir araya getiren yeni bir tekniktir. JAD eğitimli analist, bazı özel becerilere sahip atölye için kolaylaştırıcı olarak hareket eder.
Advantages of JAD
Aylar süren geleneksel görüşme ve takip toplantılarının yerini alarak zamandan ve maliyetten tasarruf sağlar.
Ortak problem çözmeyi destekleyen organizasyon kültüründe faydalıdır.
Birden çok düzeydeki çalışanlar arasında resmi ilişkileri teşvik eder.
Tasarımın yaratıcı bir şekilde geliştirilmesine yol açabilir.
Hızlı gelişmeye izin verir ve bilgi sistemi sahipliğini artırır.
İkincil Araştırma veya Arka Plan Okuma
Bu yöntem, toplanan bilgilere erişilerek bilgi toplamak için yaygın olarak kullanılmaktadır. Pazarlamacı tarafından herhangi bir iç veya dış kaynaktan kullanılan önceden toplanmış bilgileri içerir.
Advantages
İnternetin mevcudiyeti ile daha açık bir şekilde erişilir.
Düşük maliyet ve zaman ile değerli bilgiler sağlar.
Birincil araştırmanın öncüsü olarak hareket eder ve birincil araştırmanın odağını hizalar.
Araştırmacı tarafından, kullanılan prosedürler ve bunların toplanmasındaki sorunlar ile mevcut olduğu için araştırmanın buna değip değmeyeceği sonucuna varmak için kullanılır.
Fizibilite çalışması
Fizibilite Çalışması, yönetimin sistem çalışmasının geliştirme için uygun olup olmadığına karar vermesine yardımcı olan bir ön araştırma olarak düşünülebilir.
Mevcut bir sistemi iyileştirme, yeni bir sistem geliştirme olasılığını tanımlar ve sistemin daha da geliştirilmesi için rafine tahminler üretir.
Sorunun ana hatlarını elde etmek ve uygulanabilir veya uygun çözüm olup olmadığına karar vermek için kullanılır.
Bir fizibilite çalışmasının temel amacı, problemi çözmek yerine problemin kapsamını elde etmektir.
Bir fizibilite çalışmasının çıktısı, önerilen sistemin tüm yapısını ve kapsamını içeren bir karar belgesi olarak resmi bir sistem teklifidir.
Fizibilite Analizine Dahil Edilen Adımlar
Fizibilite analizi yapılırken aşağıdaki adımlar izlenmelidir -
Bir proje ekibi oluşturun ve bir proje lideri atayın.
Sistem akış şemaları geliştirin.
Mevcut sistemin eksikliklerini tespit edin ve hedefler belirleyin.
Hedeflere ulaşmak için alternatif çözümü veya potansiyel aday sistemi sıralayın.
Teknik fizibilite, operasyonel fizibilite vb. Gibi her alternatifin fizibilitesini belirleyin.
Her bir aday sistemin performansını ve maliyet etkinliğini ağırlıklandırın.
Diğer alternatifleri sıralayın ve en iyi aday sistemi seçin.
Onay için yönetime nihai proje direktifinin bir sistem teklifini hazırlayın.
Fizibilite Türleri
Ekonomik Fizibilite
Maliyet / fayda analizi yöntemini kullanarak aday sistemin etkinliğini değerlendirmektir.
Organizasyona fayda ve maliyet açısından aday sistemden net faydayı gösterir.
Ekonomik Fizibilite Analizinin (EFS) temel amacı, yatırım fonları teklife bağlanmadan önce aday sistemin ekonomik gereksinimlerini tahmin etmektir.
En erken ve en yüksek fon getirisi ile kuruluşun net değerini maksimize edecek alternatifi ve aday sistemin geliştirilmesinde dahil olan en düşük risk düzeyini tercih eder.
Teknik fizibilite
Her bir uygulama alternatifinin teknik fizibilitesini araştırır.
Çözümün mevcut teknoloji ile desteklenip desteklenemeyeceğini analiz eder ve belirler.
Analist, mevcut teknik kaynakların yükseltilip yükseltilmeyeceğini veya yeni gereksinimleri karşılayacak şekilde eklenip eklenmeyeceğini belirler.
Aday sistemin, teknik geliştirmeyi ne ölçüde destekleyebileceği konusunda uygun yanıtlar vermesini sağlar.
Operasyonel Fizibilite
Geliştirilip uygulandıktan sonra sistemin etkin çalışıp çalışmadığını belirler.
Yönetimin önerilen sistemi desteklemesini ve mevcut organizasyon ortamında uygulanabilir olmasını sağlar.
Kullanıcıların etkilenip etkilenmeyeceğini analiz eder ve olası sistem faydalarını etkileyen değiştirilmiş veya yeni iş yöntemlerini kabul eder.
Ayrıca aday sistemin bilgisayar kaynaklarının ve ağ mimarisinin çalışabilir olmasını sağlar.
Davranışsal Fizibilite
Kullanıcının yeni sistemin geliştirilmesine yönelik tutumunu veya davranışını değerlendirir ve tahmin eder.
Sistemin, yeni iş yürütme yöntemleri konusunda çalışanın iş statüsünü eğitmek, yeniden eğitmek, transfer etmek ve değiştirmek için özel çaba gerektirip gerektirmediğini belirlemeye yardımcı olur.
Fizibilite Planlayın
Projenin verilen zaman kısıtlaması veya program içinde tamamlanmasını sağlar.
Ayrıca projenin son tarihlerinin makul olup olmadığını doğrular ve doğrular.
Analistler, bilgi sistemini anlamak ve tanımlamak için çeşitli araçlar kullanırlar. Yollardan biri yapılandırılmış analiz kullanmaktır.
Yapılandırılmış Analiz nedir?
Yapılandırılmış Analiz, analistin sistemi ve faaliyetlerini mantıklı bir şekilde anlamasını sağlayan bir geliştirme yöntemidir.
Mevcut bir sistemin hedeflerini analiz eden ve iyileştiren ve kullanıcı tarafından kolayca anlaşılabilecek yeni bir sistem özelliği geliştiren grafik araçları kullanan sistematik bir yaklaşımdır.
Aşağıdaki özelliklere sahiptir -
Uygulamanın sunumunu belirten grafiktir.
Süreçleri böler, böylece sistem akışının net bir resmini verir.
Fizikselden ziyade mantıklıdır, yani sistemin öğeleri satıcıya veya donanıma bağlı değildir.
Üst düzey genel bakışlardan alt düzey ayrıntılara kadar çalışan bir yaklaşımdır.
Yapılandırılmış Analiz Araçları
Yapılandırılmış Analiz sırasında, sistem geliştirme için çeşitli araçlar ve teknikler kullanılır. Onlar -
- Veri Akış Şemaları
- Bilgi sözlüğü
- Karar ağaçları
- Karar Tabloları
- Yapılandırılmış İngilizce
- Pseudocode
Veri Akış Diyagramları (DFD) veya Kabarcık Grafiği
Larry Constantine tarafından sistemin gereksinimlerini grafik olarak ifade etmek için geliştirilmiş bir tekniktir.
Sistemin çeşitli fonksiyonları arasındaki veri akışını gösterir ve mevcut sistemin nasıl uygulandığını belirtir.
Gereksinim özelliklerini işlevsel olarak en düşük ayrıntı düzeyine bölen tasarım aşamasının ilk aşamasıdır.
Grafiksel yapısı, onu kullanıcı ile analist veya analist ve sistem tasarımcısı arasında iyi bir iletişim aracı yapar.
Bir sistemin hangi verileri işlediğine, hangi dönüşümlerin gerçekleştirildiğine, hangi verilerin depolandığına, hangi sonuçların üretildiğine ve bunların nerede aktığına dair genel bir bakış sunar.
DFD'nin Temel Öğeleri
DFD'nin anlaşılması kolay ve gerekli tasarım net olmadığında ve kullanıcı iletişim için notasyonel bir dil istediğinde oldukça etkilidir. Bununla birlikte, en doğru ve eksiksiz çözümü elde etmek için çok sayıda yineleme gerektirir.
Aşağıdaki tablo, bir DFD tasarlarken kullanılan sembolleri ve bunların anlamlarını göstermektedir -
Sembol Adı | Sembol | Anlam |
---|---|---|
Meydan |
|
Verilerin Kaynağı veya Hedefi |
Ok |
|
Veri akışı |
Daire |
|
Veri akışını dönüştüren süreç |
Dikdörtgeni Aç |
|
Bilgi deposu |
DFD Türleri
DFD'ler iki tiptedir: Fiziksel DFD ve Mantıksal DFD. Aşağıdaki tablo, fiziksel bir DFD'yi mantıksal bir DFD'den ayıran noktaları listeler.
Fiziksel DFD | Mantıksal DFD |
---|---|
Uygulamaya bağlıdır. Hangi işlevlerin gerçekleştirildiğini gösterir. | Uygulamadan bağımsızdır. Yalnızca süreçler arasındaki veri akışına odaklanır. |
Donanım, yazılım, dosyalar ve insanlarla ilgili düşük düzeyde ayrıntılar sağlar. | Her olayın gerektirdiği sistem olaylarını ve verileri açıklar. |
Mevcut sistemin nasıl çalıştığını ve bir sistemin nasıl uygulanacağını gösterir. | İşletmenin nasıl işlediğini gösterir; sistemin nasıl uygulanacağı değil. |
Bağlam Diyagramı
Bir bağlam şeması, bir sistemin genel görünümünü veren tek bir DFD ile tüm sistemin anlaşılmasına yardımcı olur. Küçük ayrıntılarla büyük süreçlerden bahsetmekle başlar ve ardından yukarıdan aşağıya yaklaşımla süreçlerin daha fazla ayrıntıyı vermeye devam eder.
Karışıklık yönetiminin bağlam şeması aşağıda gösterilmiştir.
Bilgi sözlüğü
Veri sözlüğü, sistemdeki veri öğelerinin yapılandırılmış bir havuzudur. Tüm DFD veri öğelerinin tanımlarını, yani veri akışlarının ayrıntılarını ve tanımlarını, veri depolarını, veri depolarında depolanan verileri ve süreçleri depolar.
Bir veri sözlüğü, analist ile kullanıcı arasındaki iletişimi geliştirir. Bir veritabanı oluşturmada önemli bir rol oynar. Çoğu DBMS'nin standart bir özellik olarak bir veri sözlüğü vardır. Örneğin, aşağıdaki tabloya bakın -
Sr.No. | Veri Adı | Açıklama | Karakter Sayısı |
---|---|---|---|
1 | ISBN | ISBN Numarası | 10 |
2 | BAŞLIK | Başlık | 60 |
3 | ALT | Kitap Konuları | 80 |
4 | BİR İSİM | Yazar Adı | 15 |
Karar ağaçları
Karar ağaçları, kararları tanımlayarak ve iletişimdeki sorunlardan kaçınarak karmaşık ilişkileri tanımlama yöntemidir. Karar ağacı, yatay ağaç çerçevesi içinde alternatif eylemleri ve koşulları gösteren bir diyagramdır. Böylece, hangi koşulların birinci, ikinci vb. Dikkate alınacağını gösterir.
Karar ağaçları, her koşulun ilişkisini ve izin verilen eylemleri gösterir. Bir kare düğüm bir eylemi ve bir daire bir koşulu belirtir. Analistleri kararların sırasını düşünmeye zorlar ve verilmesi gereken gerçek kararı belirler.
Bir karar ağacının en büyük sınırlaması, test için alabileceğiniz diğer koşul kombinasyonlarını açıklayacak formatta bilgiden yoksun olmasıdır. Koşullar ve eylemler arasındaki ilişkilerin tek bir temsilidir.
Örneğin, aşağıdaki karar ağacına bakın -
Karar Tabloları
Karar tabloları, karmaşık mantıksal ilişkiyi, kolayca anlaşılabilecek kesin bir şekilde tanımlamanın bir yöntemidir.
Ortaya çıkan eylemlerin bir veya birkaç bağımsız koşul kombinasyonunun oluşmasına bağlı olduğu durumlarda faydalıdır.
Bir problemi ve eylemleri tanımlamak için satır veya sütunlar içeren bir matristir.
Karar Tablosunun Bileşenleri
Condition Stub - Kontrol edilecek tüm koşulları listeleyen sol üst kadrandadır.
Action Stub - Bu koşulu karşılamak için gerçekleştirilecek tüm eylemlerin ana hatlarını çizen sol alt kadrandadır.
Condition Entry - Sağ üst kadranda durum saplama kadranında sorulan sorulara cevaplar sağlar.
Action Entry - Koşul giriş çeyreğindeki koşullara verilen yanıtlardan kaynaklanan uygun eylemi gösteren sağ alt çeyrekte yer alır.
Karar tablosundaki girişler, koşul kombinasyonları ve hareket tarzları arasındaki ilişkileri tanımlayan Karar Kuralları tarafından verilmektedir. Kurallar bölümünde,
- Y, bir koşulun varlığını gösterir.
- N, karşılanmayan durumu temsil eder.
- Boş - eyleme karşı, göz ardı edilmesi gerektiğini belirtir.
- Gerçekleştirilmesi gereken eylem durumlarına karşı X (veya bir onay işareti işe yarar).
Örneğin, aşağıdaki tabloya bakın -
KOŞULLAR | Kural 1 | Kural 2 | Kural 3 | Kural 4 |
---|---|---|---|---|
Peşin ödeme yapıldı | Y | N | N | N |
Satın alma tutarı = 10.000 Rs / - | - | Y | Y | N |
Düzenli müşteri | - | Y | N | - |
ACTIONS | ||||
% 5 indirim yap | X | X | - | - |
İndirim yapmayın | - | - | X | X |
Yapılandırılmış İngilizce
Yapı İngilizcesi, sürecin daha anlaşılır ve kesin bir tanımını veren yapılandırılmış programlama dilinden türetilmiştir. Eylem için operasyonu gerçekleştirmek için tasarlanmış inşaat ve zorunlu cümleleri kullanan prosedür mantığına dayanmaktadır.
En iyi şekilde, bir programdaki sıralar ve döngüler dikkate alınması gerektiğinde ve problem, kararlarla birlikte eylem dizileri gerektirdiğinde kullanılır.
Kesin sözdizimi kuralına sahip değildir. Sıralı karar yapıları ve yinelemeler açısından tüm mantığı ifade eder.
Örneğin, aşağıdaki eylem dizisine bakın -
if customer pays advance
then
Give 5% Discount
else
if purchase amount >=10,000
then
if the customer is a regular customer
then Give 5% Discount
else No Discount
end if
else No Discount
end if
end if
Sözde kod
Sözde kod, herhangi bir programlama diline uymaz ve mantığı düz İngilizce olarak ifade eder.
Fiziksel tasarım sırasında ve sonrasında gerçek kodlama olmadan fiziksel programlama mantığını belirleyebilir.
Yapılandırılmış programlama ile birlikte kullanılır.
Bir programın akış şemalarının yerini alır.
Uygun Araçları Seçme Yönergeleri
Gereksinimlerinize en uygun aracı seçmek için aşağıdaki yönergeleri kullanın -
İyi sistem dokümantasyonu sağlamak için DFD'yi yüksek veya düşük seviye analizde kullanın.
Sistemin veri gereksinimini karşılama yapısını basitleştirmek için veri sözlüğünü kullanın.
Çok sayıda döngü varsa ve eylemler karmaşıksa yapısal İngilizce kullanın.
Kontrol edilecek çok sayıda koşul olduğunda ve mantık karmaşık olduğunda karar tablolarını kullanın.
Koşulların sıralanması önemli olduğunda ve test edilecek çok az koşul varsa karar ağaçlarını kullanın.
System designsorun alanı ile mevcut sistem arasındaki boşluğu yönetilebilir bir şekilde kapatan aşamadır. Bu aşama çözüm alanına odaklanır, yani "nasıl uygulanır?"
SRS belgesinin uygulanabilecek bir formata dönüştürüldüğü ve sistemin nasıl çalışacağına karar verilen aşamadır.
Bu aşamada, sistem geliştirmenin karmaşık faaliyeti, sistem geliştirmenin temel amacına ulaşmak için birbirleriyle koordineli olarak çalışan birkaç küçük alt faaliyete bölünmüştür.
Sistem Tasarımına Girdiler
Sistem tasarımı aşağıdaki girdileri alır -
İş beyanı
Gereksinim belirleme planı
Mevcut durum analizi
Kavramsal bir veri modeli, değiştirilmiş DFD'ler ve Meta Veriler (verilerle ilgili veriler) dahil olmak üzere önerilen sistem gereksinimleri.
Sistem Tasarımı için Çıktılar
Sistem tasarımı aşağıdaki çıktıları verir -
Önerilen sistem için altyapı ve organizasyonel değişiklikler.
Bir veri şeması, genellikle ilişkisel bir şema.
Tabloları / dosyaları ve sütunları / veri öğelerini tanımlamak için meta veriler.
Program yapısını grafik olarak tanımlayan bir işlev hiyerarşi diyagramı veya web sayfası haritası.
Programdaki her modül için gerçek veya sözde kod.
Önerilen sistem için bir prototip.
Sistem Tasarım Türleri
Mantıksal Tasarım
Mantıksal tasarım, sistemin veri akışının, girdilerinin ve çıktılarının soyut bir temsiliyle ilgilidir. Girişleri (kaynakları), çıktıları (hedefleri), veri tabanlarını (veri depoları), prosedürleri (veri akışları) kullanıcı gereksinimlerini karşılayan bir formatta açıklar.
Sistem analisti, bir sistemin mantıksal tasarımını hazırlarken, kullanıcı ihtiyaçlarını, sisteme giren ve çıkan bilgi akışını ve gerekli veri kaynaklarını sanal olarak belirleyen ayrıntı seviyesinde belirler. Veri akış diyagramı, ER diyagram modellemesi kullanılmıştır.
Fiziksel tasarım
Fiziksel tasarım, sistemin gerçek girdi ve çıktı süreçleriyle ilgilidir. Verilerin bir sisteme nasıl girildiğine, doğrulandığına, işlendiğine ve çıktı olarak nasıl görüntülendiğine odaklanır.
Aday sistemin tam olarak ne yaptığını belirleyen tasarım özelliklerini tanımlayarak çalışma sistemini üretir. Kullanıcı arayüzü tasarımı, süreç tasarımı ve veri tasarımı ile ilgilidir.
Aşağıdaki adımlardan oluşur -
Giriş / çıkış ortamını belirleme, veritabanını tasarlama ve yedekleme prosedürlerini belirleme.
Planlama sistemi uygulaması.
Bir test ve uygulama planı geliştirmek ve herhangi bir yeni donanım ve yazılımı belirlemek.
Maliyetleri, avantajları, dönüştürme tarihlerini ve sistem kısıtlamalarını güncelleme.
Mimari tasarım
Sistem mimarisinin tasarımına odaklanan üst düzey tasarım olarak da bilinir. Sistemin yapısını ve davranışını açıklar. Sistem geliştirme sürecinin çeşitli modülleri arasındaki yapıyı ve ilişkiyi tanımlar.
Detaylı tasarım
Mimari tasarımı takip eder ve her modülün geliştirilmesine odaklanır.
Kavramsal Veri Modelleme
Tüm büyük varlıkları ve ilişkiyi içeren kurumsal verilerin temsilidir. Sistem analistleri, önerilen sistemin kapsamını ve gerekliliğini destekleyen mevcut sistem için kavramsal bir veri modeli geliştirir.
Kavramsal veri modellemenin temel amacı, verilerin mümkün olduğu kadar çok anlamını yakalamaktır. Günümüzde çoğu kuruluş, veriler hakkında olabildiğince fazla anlam ifade etmek için özel gösterim kullanan ER modelini kullanarak kavramsal veri modellemesi kullanmaktadır.
Varlık İlişki Modeli
Bir kuruluşun çeşitli varlıkları arasındaki ilişkiyi tanımlamaya yardımcı olan veritabanı tasarımında kullanılan bir tekniktir.
ER modelinde kullanılan terimler
ENTITY- Bir uygulamada farklı gerçek dünya öğelerini belirtir. Örneğin: satıcı, öğe, öğrenci, kurs, öğretmenler vb.
RELATIONSHIP- Varlıklar arasındaki anlamlı bağımlılıklardır. Örneğin, satıcı malzemeleri tedarik eder, öğretmen dersleri öğretir, sonra malzemeler ve kurs ilişkidir.
ATTRIBUTES- İlişkilerin özelliklerini belirtir. Örneğin, satıcı kodu, öğrenci adı. ER modelinde kullanılan semboller ve ilgili anlamları -
Aşağıdaki tablo, ER modelinde kullanılan sembolleri ve anlamlarını gösterir -
Sembol | Anlam |
---|---|
|
Varlık |
|
Zayıf Varlık |
|
İlişki |
|
Kimlik İlişkisi |
|
Öznitellikler |
|
Anahtar nitelikler |
|
Çok değerli |
|
Bileşik Özellik |
|
Türetilmiş Nitelikler |
|
E2'nin R'ye Toplam Katılımı |
|
Kardinalite Oranı 1: E1 için N: R'de E2 |
İki veri kümesi arasında üç tür ilişki olabilir: bire bir, bire çok ve çoktan çoğa.
Dosya Organizasyonu
Kayıtların bir dosya içinde nasıl saklandığını açıklar.
Dört dosya düzenleme yöntemi vardır -
Serial - Kayıtlar kronolojik sırayla saklanır (girildikleri veya oluştukları sırayla). Examples - Telefon ücretleri, ATM işlemleri, Telefon kuyruklarının kaydı.
Sequential - Kayıtlar, bir kaydı benzersiz şekilde tanımlayan bir değer içeren bir anahtar alanına göre sırayla saklanır. Examples - Telefon rehberleri.
Direct (relative)- Her kayıt, cihazdaki fiziksel bir adrese veya konuma göre saklanır. Adres, kaydın anahtar alanında depolanan değerden hesaplanır. Rutin veya hash algoritması rastgele hale getirme, dönüştürmeyi yapar.
Indexed - Kayıtlar, dizinler kullanılarak hem sıralı hem de sıralı olmayan şekilde işlenebilir.
Karşılaştırma
Dosya Erişimi
Sıralı Erişim veya Rasgele Erişim kullanılarak bir dosyaya erişilebilir. Dosya Erişim yöntemleri, bilgisayar programlarının bir dosyadaki kayıtları okumasına veya yazmasına izin verir.
Sıralı Erişim
Dosyadaki her kayıt, ilk kayıttan başlayarak Dosya Sonuna (EOF) ulaşılana kadar işlenir. Dosyadaki çok sayıda kayda herhangi bir zamanda erişilmesi gerektiğinde etkilidir. Bir kasette depolanan verilere (sıralı erişim) yalnızca sıralı olarak erişilebilir.
Doğrudan (Rastgele) Erişim
Kayıtlar, diğer kayıtlara göre konumlarından çok fiziksel konumları veya cihaz üzerindeki adresleri bilinerek bulunur. Bir CD cihazında depolanan verilere (doğrudan erişim) sıralı olarak veya rasgele olarak erişilebilir.
Bir Organizasyon Sisteminde kullanılan Dosya Türleri
Aşağıda bir organizasyon sisteminde kullanılan dosya türleri verilmiştir -
Master file- Bir sistem için güncel bilgileri içerir. Örneğin, müşteri dosyası, öğrenci dosyası, telefon rehberi.
Table file- Seyrek olarak değişen ve tablo biçiminde saklanan bir ana dosya türüdür. Örneğin, Zipcode depolamak.
Transaction file- İş faaliyetlerinden üretilen günlük bilgileri içerir. Ana dosyayı güncellemek veya işlemek için kullanılır. Örneğin, çalışanların adresleri.
Temporary file - Bir sistem tarafından ihtiyaç duyulduğunda oluşturulur ve kullanılır.
Mirror file- Diğer dosyaların tam kopyalarıdır. Orijinalin kullanılamaz hale geldiği durumlarda kesinti riskini en aza indirmeye yardımcı olun. Orijinal dosya her değiştirildiğinde değiştirilmeleri gerekir.
Log files- Ana dosyada yapılan herhangi bir değişikliğin kaydını tutmak için ana ve işlem kayıtlarının kopyalarını içerirler. Denetimi kolaylaştırır ve sistem arızası durumunda kurtarma için mekanizma sağlar.
Archive files - Diğer dosyaların geçmiş sürümlerini içeren yedekleme dosyaları.
Dokümantasyon Kontrolü
Belgeleme, herhangi bir referans veya operasyonel amaç için bilgilerin kaydedilmesi sürecidir. İhtiyaç duyan kullanıcılara, yöneticilere ve BT personeline yardımcı olur. Sistemin ilerleyişini kolayca takip edebilmek için hazırlanan belgenin düzenli olarak güncellenmesi önemlidir.
Sistemin uygulanmasından sonra, sistem yanlış çalışıyorsa, dokümantasyon, yöneticinin kusurları düzeltmek ve sistemi çalıştırmak için sistemdeki veri akışını anlamasına yardımcı olur.
Programcılar veya sistem analistleri genellikle program ve sistem dokümantasyonu oluşturur. Sistem analistleri genellikle kullanıcıların sistemi öğrenmesine yardımcı olacak dokümantasyon hazırlamaktan sorumludur. Büyük şirketlerde, teknik yazarları içeren bir teknik destek ekibi, kullanıcı belgelerinin ve eğitim materyallerinin hazırlanmasına yardımcı olabilir.
Avantajlar
Sistemin kapalı kalma süresini azaltabilir, maliyetleri düşürebilir ve bakım görevlerini hızlandırabilir.
Mevcut sistemin biçimsel akışının net bir tanımını sağlar ve girdi verilerinin türünü ve çıktının nasıl üretilebileceğini anlamaya yardımcı olur.
Sistem hakkında teknik ve teknik olmayan kullanıcılar arasında etkin ve verimli iletişim sağlar.
Sistemin akışını kolayca anlayabilmesi için yeni kullanıcının eğitimini kolaylaştırır.
Kullanıcının sorun giderme gibi sorunları çözmesine yardımcı olur ve yöneticinin organizasyon sisteminin daha iyi nihai kararlarını almasına yardımcı olur.
Sistemin iç veya dış çalışmasına daha iyi kontrol sağlar.
Belge Türleri
Sistem Tasarımı söz konusu olduğunda, aşağıdaki dört ana belge vardır:
- Program belgeleri
- Sistem dokümantasyonu
- Operasyon belgeleri
- Kullanıcı belgeleri
Program Dokümantasyonu
Tüm program modülleri için girişleri, çıkışları ve işleme mantığını açıklar.
Program dokümantasyon süreci, sistem analizi aşamasında başlar ve uygulama sırasında devam eder.
Bu belge, kolayca anlaşılabilen ve sürdürülebilen dahili ve harici açıklamalar ve açıklamalarla iyi desteklenen modüller oluşturan programcılara rehberlik eder.
İşlem Belgeleri
İşlem belgeleri, çevrimiçi ve basılı çıktıların işlenmesi ve dağıtılması için gereken tüm bilgileri içerir. Operasyon belgeleri açık, öz ve mümkünse çevrimiçi olarak erişilebilir olmalıdır.
Aşağıdaki bilgileri içerir -
Program, sistem analisti, programcı ve sistem tanımlama.
Rapor, yürütme sıklığı ve son tarihler gibi basılı çıktı için planlama bilgileri.
Girdi dosyaları, kaynakları, çıktı dosyaları ve hedefleri.
E-posta ve rapor dağıtım listeleri.
Çevrimiçi formlar dahil olmak üzere özel formlar gereklidir.
Operatörlere hata ve bilgi mesajları ve yeniden başlatma prosedürleri.
Güvenlik gereksinimleri gibi özel talimatlar.
Kullanıcı Belgeleri
Sistemle etkileşime girecek kullanıcılara talimatlar ve bilgiler içerir. Örneğin, kullanım kılavuzları, yardım kılavuzları ve öğreticiler. Kullanıcı belgeleri, kullanıcıları eğitmek ve referans amacıyla değerlidir. Açık, anlaşılır ve her düzeydeki kullanıcılar için kolayca erişilebilir olmalıdır.
Kullanıcılar, sistem sahipleri, analistler ve programcılar, bir kullanıcı kılavuzu geliştirmek için ortak çaba sarf ederler.
Bir kullanıcı belgeleri şunları içermelidir -
Tüm önemli sistem özelliklerini, yeteneklerini ve sınırlamalarını açık bir şekilde tanımlayan bir sistem özeti.
Kaynak belge içeriğinin, hazırlanmasının, işlenmesinin ve örneklerin açıklaması.
Menü ve veri giriş ekranı seçeneklerine, içeriğine ve işleme talimatlarına genel bakış.
Örnekler de dahil olmak üzere, düzenli olarak üretilen veya kullanıcının talebi üzerine mevcut olan rapor örnekleri.
Güvenlik ve denetim izi bilgileri.
Belirli girdi, çıktı veya işleme gereksinimleri için sorumluluk açıklaması.
Değişiklik talep etme ve sorunları bildirme prosedürleri.
İstisna ve hata durumlarına örnekler.
Sık sorulan sorular (SSS).
Kullanım kılavuzunun güncellenmesi için nasıl yardım alınacağına ve prosedürlere ilişkin açıklama.
Sistem Dokümantasyonu
Sistem dokümantasyonu, IS için teknik şartname ve IS'nin amaçlarının nasıl gerçekleştirildiğini gösterir. Kullanıcılar, yöneticiler ve BS sahiplerinin asla sistem belgelerine başvurmalarına gerek yoktur. Sistem dokümantasyonu, modifikasyonlar yapıldığında IS'nin teknik yönlerini anlamak için temel sağlar.
IS içindeki her programı ve tüm IS'yi açıklar.
Sistemin işlevlerini, uygulanma şekillerini, her programın tüm IS içindeki amacını yürütme sırasına, programlara ve programlardan aktarılan bilgilere ve genel sistem akışına göre açıklar.
Veri sözlüğü girişlerini, veri akış diyagramlarını, nesne modellerini, ekran düzenlerini, kaynak belgeleri ve projeyi başlatan sistem talebini içerir.
Sistem dokümantasyonunun çoğu, sistem analizi ve sistem tasarımı aşamalarında hazırlanır.
Sistem uygulaması sırasında bir analist, tam, doğru ve güncel olduğunu ve uygulama sürecinde yapılan değişiklikleri de içerdiğini doğrulamak için sistem belgelerini incelemelidir.
Yukarıdan Aşağıya Strateji
Yukarıdan aşağıya strateji, bir sistemin tasarımını geliştirmek için modüler yaklaşımı kullanır. En üst veya en üst seviye modülden başlayıp en alt seviye modüllere doğru ilerlediği için böyle adlandırılır.
Bu teknikte, yazılımı geliştirmek için en üst düzey modül veya ana modül tanımlanır. Ana modül, her modül tarafından gerçekleştirilen göreve bağlı olarak daha küçük ve daha basit birkaç alt modüle veya segmente bölünmüştür. Daha sonra, her bir alt modül, bir sonraki alt seviyenin birkaç alt modülüne daha da bölünür. Her modülü birkaç alt modüle bölme işlemi, daha fazla alt bölüme ayrılamayan en düşük seviyeli modüller tanımlanmayana kadar devam eder.
Aşağıdan Yukarıya Stratejisi
Aşağıdan Yukarıya Stratejisi, sistemin tasarımını geliştirmek için modüler yaklaşımı izler. Alt veya en temel seviye modüllerden başlayıp en üst seviye modüllere doğru ilerlediği için denir.
Bu teknikte,
En temel veya en düşük seviyedeki modüller belirlenir.
Bu modüller daha sonra bir sonraki üst düzey modülleri oluşturmak için her modül tarafından gerçekleştirilen işleve göre gruplandırılır.
Daha sonra, bu modüller bir sonraki üst düzey modülleri oluşturmak için daha da birleştirilir.
Daha yüksek seviyeli modüller oluşturmak için birkaç basit modülü gruplama süreci, sistem geliştirme sürecinin ana modülüne ulaşılana kadar devam eder.
Yapısal Tasarım
Yapılandırılmış tasarım, gelişen sistemin girdisini ve çıktısını tanımlamaya yardımcı olan veri akışı tabanlı bir metodolojidir. Yapılandırılmış tasarımın temel amacı, bir programın karmaşıklığını en aza indirmek ve modülerliğini artırmaktır. Yapılandırılmış tasarım, sistemin işlevsel yönlerinin tanımlanmasına da yardımcı olur.
Yapılandırılmış tasarımda, sistem özellikleri, veri akışını ve DFD'lerin yardımıyla bir yazılım geliştirmede yer alan işlem sırasını grafik olarak temsil etmek için bir temel görevi görür. Yazılım sistemi için DFD'leri geliştirdikten sonraki adım, yapı grafiğini geliştirmektir.
Modülerleştirme
Yapısal tasarım, programı küçük ve bağımsız modüllere böler. Bunlar, aşağıda gösterilen ayrıntılarla yukarıdan aşağıya düzenlenmiştir.
Bu nedenle, yapılandırılmış tasarım, karmaşıklığı en aza indirmek ve sorunu daha küçük bölümlere ayırarak yönetmek için Modülerleştirme veya ayrıştırma adı verilen bir yaklaşım kullanır.
Advantages
- Öncelikle kritik arayüzler test edilir.
- Soyutlama sağlar.
- Birden fazla programcının aynı anda çalışmasına izin verir.
- Kodun yeniden kullanımına izin verir.
- Kontrol sağlar ve morali yükseltir.
- Yapının tanımlanmasını kolaylaştırır.
Yapılandırılmış Grafikler
Yapılandırılmış grafikler, çeşitli sistem geliştirme modüllerini ve her modül arasındaki ilişkiyi tanımlayan modüler, yukarıdan aşağıya sistemler tasarlamak için önerilen bir araçtır. Sistem modülünü ve aralarındaki ilişkiyi gösterir.
Modülleri, bağlantı oklarını veya çizgileri temsil eden dikdörtgen kutulardan oluşan diyagramdan oluşur.
Control Module - Daha düşük seviyeli modülleri yönlendiren üst seviye bir modüldür. subordinate modules.
Library Module - Yeniden kullanılabilir bir modüldür ve grafikte birden fazla noktadan çağrılabilir.
Yapılandırılmış bir grafik tasarlamak için iki farklı yaklaşımımız var -
Transform-Centered Structured Charts - Tüm işlemler aynı yolu izlediğinde kullanılırlar.
Transaction–Centered Structured Charts - Tüm işlemler aynı yolu izlemediğinde kullanılırlar.
Yapı Akış Şemalarını Kullanmanın Amaçları
Yukarıdan aşağıya bir tasarımı teşvik etmek için.
Modül konseptini desteklemek ve uygun modülleri belirlemek.
Sistemin boyutunu ve karmaşıklığını göstermek için.
Her bir işlevdeki kolayca tanımlanabilen işlevlerin ve modüllerin sayısını belirlemek için.
Her bir tanımlanabilir işlevin yönetilebilir bir varlık olup olmadığını veya daha küçük bileşenlere bölünmesi gerekip gerekmediğini göstermek için.
Sistem Karmaşıklığını Etkileyen Faktörler
Kaliteli sistem yazılımı geliştirmek için iyi bir tasarım geliştirmek gerekir. Bu nedenle, sistemin tasarımını geliştirirken ana odak noktası yazılım tasarımının kalitesidir. Yazılım geliştirmede karmaşıklığı ve maliyet harcamalarını en aza indiren, kaliteli bir yazılım tasarımıdır.
Bir sistemin karmaşıklığının belirlenmesine yardımcı olan sistem geliştirme ile ilgili iki önemli kavram şunlardır: coupling ve cohesion.
Kaplin
Kaplin, bileşenlerin bağımsızlığının ölçüsüdür. Her bir sistem geliştirme modülünün diğerine bağımlılık derecesini tanımlar. Pratikte bu, bir sistemdeki modüller arasındaki bağlantı ne kadar güçlü olursa, sistemi uygulamak ve sürdürmek o kadar zor olur.
Her modülün diğer modüllerle basit, temiz bir arayüzü olmalı ve minimum sayıda veri öğesi modüller arasında paylaşılmalıdır.
Yüksek Kaplin
Bu tür sistemlerin, birbirine bağlı program birimleriyle ara bağlantıları vardır. Bir alt sistemdeki değişiklikler, diğer alt sistem üzerinde yüksek etkiye yol açar.
Düşük Kavrama
Bu tür sistemler, bağımsız veya neredeyse bağımsız bileşenlerden oluşur. Bir alt sistemdeki bir değişiklik, diğer herhangi bir alt sistemi etkilemez.
Kaplin Önlemleri
Content Coupling - Bir bileşen diğerini gerçekten değiştirdiğinde, değiştirilen bileşen tamamen bir bileşenin değiştirilmesine bağlıdır.
Common Coupling - Verilere ortak bir veri deposundan erişilebilecek şekilde sistem tasarımını düzenleyerek bağlantı miktarı bir miktar azaltıldığında.
Control Coupling - Bir bileşen, başka bir bileşenin etkinliğini kontrol etmek için parametreleri geçtiğinde.
Stamp Coupling - Bir bileşenden diğerine bilgi aktarmak için veri yapıları kullanıldığında.
Data Coupling - Sadece veri aktarıldığında bileşenler bu bağlantı ile bağlanır.
Uyum
Uyum, bileşenleri arasındaki ilişkinin yakınlığının ölçüsüdür. Bir modülün bileşenlerinin birbirine bağımlılık miktarını tanımlar. Pratikte bu, sistem tasarımcısının şunları sağlaması gerektiği anlamına gelir:
Temel süreçleri parçalanmış modüllere ayırmazlar.
DFD'de süreçler olarak temsil edilen ilgisiz süreçleri anlamsız modüller halinde bir araya getirmezler.
En iyi modüller, işlevsel olarak uyumlu olanlardır. En kötü modüller, tesadüfen uyumlu olanlardır.
En kötü uyum derecesi
Tesadüfi kohezyon, parçaları diğeriyle ilgisiz olan bir bileşende bulunur.
Logical Cohesion - Mantıksal olarak ilişkili birkaç işlevin veya veri öğesinin aynı bileşene yerleştirildiği yerdir.
Temporal Cohesion - Bir sistemi başlatmak veya değişkenleri ayarlamak için kullanılan bir bileşenin sırayla birkaç işlevi yerine getirmesi, ancak işlevler ilgili zamanlama ile ilişkilendirilmesidir.
Procedurally Cohesion - Sadece bu sırayı sağlamak için işlevlerin bir bileşende gruplandırılmasıdır.
Sequential Cohesion - Bir bileşenin bir bölümünün çıktısının, bir sonraki parçasının girdisi olduğu zamandır.
Girdi Tasarımı
Bir bilgi sisteminde girdi, çıktı üretmek için işlenen ham verilerdir. Giriş tasarımı sırasında, geliştiriciler PC, MICR, OMR vb. Giriş cihazlarını dikkate almalıdır.
Bu nedenle, sistem girdisinin kalitesi, sistem çıktısının kalitesini belirler. İyi tasarlanmış giriş formları ve ekranlar aşağıdaki özelliklere sahiptir -
Bilginin depolanması, kaydedilmesi ve geri alınması gibi belirli bir amaca etkili bir şekilde hizmet etmelidir.
Doğru ve doğru bir şekilde tamamlanmasını sağlar.
Doldurması kolay ve anlaşılır olmalıdır.
Kullanıcının dikkatine, tutarlılığına ve basitliğine odaklanmalıdır.
Tüm bu hedefler, aşağıdakilerle ilgili temel tasarım ilkeleri bilgisi kullanılarak elde edilir:
Sistem için gerekli girdiler nelerdir?
Son kullanıcıların farklı form ve ekran öğelerine nasıl tepki verdiği.
Girdi Tasarımının Hedefleri
Girdi tasarımının hedefleri şunlardır:
Veri giriş ve giriş prosedürlerini tasarlamak için
Giriş sesini azaltmak için
Veri yakalama için kaynak belgeler tasarlamak veya diğer veri yakalama yöntemlerini tasarlamak için
Giriş veri kayıtlarını, veri giriş ekranlarını, kullanıcı arayüzü ekranlarını vb. Tasarlamak için.
Doğrulama kontrollerini kullanmak ve etkili girdi kontrolleri geliştirmek.
Veri Giriş Yöntemleri
Veri girerken hataları önlemek için uygun veri giriş yöntemlerinin tasarlanması önemlidir. Bu yöntemler, verilerin müşteriler tarafından manuel olarak ve daha sonra veri giriş operatörleri tarafından girilip girilmediğine veya verilerin PC'lere kullanıcılar tarafından doğrudan girilmesine bağlıdır.
Bir sistem, kullanıcının hata yapmasını engellemelidir -
- Okunaklı bir şekilde yazmak için yeterli alan bırakarak form tasarımını temizleyin.
- Formu doldurmak için talimatları temizleyin.
- Açık form tasarımı.
- Tuş vuruşlarını azaltmak.
- Anında hata geri bildirimi.
Popüler veri giriş yöntemlerinden bazıları şunlardır:
- Toplu giriş yöntemi (Çevrimdışı veri giriş yöntemi)
- Çevrimiçi veri giriş yöntemi
- Bilgisayar tarafından okunabilen formlar
- Etkileşimli veri girişi
Giriş Bütünlüğü Kontrolleri
Giriş bütünlüğü kontrolleri, son kullanıcıların yaygın giriş hatalarını ortadan kaldırmak için bir dizi yöntem içerir. Ayrıca, tek tek alanların değerine ilişkin kontrolleri içerir; hem format hem de tüm girişlerin eksiksizliği için.
Veri girişi ve diğer sistem işlemleri için denetim izleri, herhangi bir arıza durumunda güvenlik ve kurtarma araçları sağlamak için veri tabanında yapılan tüm değişikliklerin bir kaydını veren işlem günlükleri kullanılarak oluşturulur.
Çıktı Tasarımı
Çıktı tasarımı, herhangi bir sistemin en önemli görevidir. Çıktı tasarımı sırasında, geliştiriciler ihtiyaç duyulan çıktı türlerini belirler ve gerekli çıktı kontrollerini ve prototip rapor düzenlerini dikkate alır.
Çıktı Tasarımının Amaçları
Girdi tasarımının hedefleri şunlardır:
Amaçlanan amaca hizmet eden ve istenmeyen çıktı üretimini ortadan kaldıran çıktı tasarımı geliştirmek.
Son kullanıcı gereksinimlerini karşılayan çıktı tasarımını geliştirmek.
Uygun miktarda çıktı sağlamak için.
Çıktıyı uygun formatta oluşturmak ve doğru kişiye yönlendirmek.
Çıktıyı doğru kararlar vermek için zamanında hazır hale getirmek.
Şimdi çeşitli çıktı türlerinden geçelim -
Harici Çıkışlar
Üreticiler, yazıcılar için harici çıktılar oluşturur ve tasarlar. Harici çıkışlar, sistemin alıcılarının tetikleyici eylemlerini bırakmasını veya eylemleri alıcılarına onaylamasını sağlar.
Bazı harici çıktılar, bir form olarak uygulanan ve sisteme bir girdi olarak yeniden giren geri dönüş çıktıları olarak tasarlanmıştır.
Dahili çıktılar
İç çıktılar sistemin içinde bulunur ve son kullanıcılar ve yöneticiler tarafından kullanılır. Yönetime karar verme ve raporlamada destek olurlar.
Yönetim bilgilerinin ürettiği üç tür rapor vardır -
Detailed Reports - Yönetimin planlaması ve kontrolüne yardımcı olmak için neredeyse hiç filtreleme veya kısıtlama içermeyen mevcut bilgileri içerirler.
Summary Reports - Ayrıntı istemeyen yöneticiler için oluşturulmuş, kategorize edilmiş ve özetlenmiş trendleri ve olası sorunları içerir.
Exception Reports - Yöneticiye bilgi olarak sunmadan önce istisnaları, bazı koşullara veya standartlara göre filtrelenmiş verileri içerirler.
Çıktı Bütünlüğü Kontrolleri
Çıkış bütünlüğü kontrolleri, alıcı sistemi tanımlamak için yönlendirme kodlarını ve ağ protokolü tarafından işlenen mesajların başarılı bir şekilde alındığını teyit etmek için doğrulama mesajlarını içerir.
Basılı veya ekran formatındaki raporlar, rapor yazdırma ve veriler için bir tarih / saat içermelidir. Çok sayfalı raporlar, rapor başlığı veya açıklaması ve sayfalandırmayı içerir. Önceden basılmış formlar genellikle bir sürüm numarası ve geçerlilik tarihi içerir.
Form Tasarımı
Hem formlar hem de raporlar, girdi ve çıktı tasarımının ürünüdür ve belirli verilerden oluşan iş belgeleridir. Temel fark, formların veri girişi için alanlar sağlaması, ancak raporların yalnızca okuma için kullanılmasıdır. Örneğin, sipariş formları, istihdam ve kredi başvurusu vb.
Form tasarımı sırasında tasarımcılar şunu bilmelidir:
onları kim kullanacak
nereye teslim edilecekler
form veya raporun amacı
Form tasarımı sırasında, otomatikleştirilmiş tasarım araçları, geliştiricinin formları ve raporları prototipleme ve değerlendirme için son kullanıcılara sunma becerisini geliştirir.
İyi Form Tasarımının Hedefleri
Aşağıdakileri sağlamak için iyi bir form tasarımı gereklidir -
Doğru sıralama, bilgi ve net altyazılar vererek ekranı basit tutmak için.
Uygun formları kullanarak amaçlanan amacı karşılamak.
Formun doğru bir şekilde doldurulmasını sağlamak.
Simgeler, ters video veya yanıp sönen imleçler vb. Kullanarak formları çekici tutmak için.
Navigasyonu kolaylaştırmak için.
Form Türleri
Flat Forms
Manuel veya makine ile hazırlanıp kağıt üzerine basılmış tek nüsha formdur. Orijinalin ek kopyaları için kopyaların arasına karbon kağıtlar yerleştirilir.
Daha az hacim kullanan, tasarlamak, yazdırmak ve yeniden üretmek için en basit ve ucuz bir biçimdir.
Unit Set/Snap out Forms
Bunlar, el yazısıyla veya makine kullanımı için birim setlerine serpiştirilmiş tek seferlik karbonlu kağıtlardır.
Karbonlar mavi veya siyah, standart sınıf orta yoğunlukta olabilir. Genellikle, mavi karbonlar elle yazılmış formlar için en iyisidir, siyah karbonlar ise makine kullanımı için en iyisidir.
Continuous strip/Fanfold Forms
Bunlar, her bir form çifti arasında delikler bulunan sürekli bir şerit halinde birleştirilen çoklu birim formlardır.
Büyük hacimli kullanım için daha ucuz bir yöntemdir.
No Carbon Required (NCR) Paper
Biri bir kağıt yaprağının yüzünde ve diğeri arkasında olmak üzere iki kimyasal kaplamaya (kapsül) sahip karbonsuz kağıtları kullanırlar.
Basınç uygulandığında, iki kapsül etkileşir ve bir görüntü oluşturur.
Yazılım sistemi, çabaların, zamanın ve maliyet aşımlarının tekrarlanmasını önlemek ve sistemin öngörülen süre içinde tamamlanmasını sağlamak için her geliştirme aşamasında amaçlanan davranışı ve ilerleme yönü açısından kontrol edilmelidir. çabaların, zamanın ve maliyet aşımlarının tekrarlanmasını önlemek ve sistemin öngörülen süre içinde tamamlanmasını sağlamak için her geliştirme aşamasında amaçlanan davranış ve ilerleme yönü.
Sistem testi ve kalite güvencesi, sistemi kontrol etmek için yardımcı olur. İçerir -
- Ürün düzeyinde kalite (Test)
- Süreç seviyesi kalitesi.
Bunları kısaca gözden geçirelim -
Test yapmak
Test, sistemin kalitesini ve güvenilirliğini artırmak için yazılımın işlevselliğini ve doğruluğunu belirtilen kullanıcı gereksinimlerine göre kontrol eden süreç veya faaliyettir. Sistem geliştirmede pahalı, zaman alıcı ve kritik bir yaklaşımdır ve genel test sürecinin uygun şekilde planlanmasını gerektirir.
Başarılı bir test, hataları bulandır. Programı açık bir hata bulma niyetiyle çalıştırır, yani programı başarısız kılar. Güçlü bir sistem oluşturma niyetiyle sistemi değerlendirme sürecidir ve esas olarak sistemin veya yazılımın zayıf alanlarına odaklanır.
Sistem Testinin Özellikleri
Sistem testi modül seviyesinde başlar ve tüm yazılım sisteminin entegrasyonuna doğru ilerler. Sistem test edilirken farklı zamanlarda farklı test teknikleri kullanılır. Küçük projeler için geliştirici tarafından, büyük projeler için bağımsız test grupları tarafından yürütülür.
Sistem Testinin Aşamaları
Aşağıdaki aşamalar teste dahildir -
Test Strategy
Sistemi test etmek için kullanılan çeşitli seviyeler, yöntemler, araçlar ve teknikler hakkında bilgi sağlayan bir ifadedir. Bir organizasyonun tüm ihtiyaçlarını karşılamalıdır.
Test Plan
Sistemi test etmek için bir plan sağlar ve test edilen sistemin tüm tasarım ve fonksiyonel özellikleri karşıladığını doğrular. Test planı aşağıdaki bilgileri sağlar -
- Her test aşamasının hedefleri
- Test için kullanılan yaklaşımlar ve araçlar
- Her test faaliyeti için gereken sorumluluklar ve zaman
- Araçların, tesislerin ve test kitaplıklarının kullanılabilirliği
- Testlerin planlanması ve yürütülmesi için gerekli prosedürler ve standartlar
- Test sürecinin başarıyla tamamlanmasından sorumlu faktörler
Test Case Design
Test edilecek sistemin her modülü için bir dizi test senaryosu tanımlanır.
Her test senaryosu, belirli bir gereksinimin veya tasarım kararının uygulanmasının nasıl test edileceğini ve testin başarısı için kriterleri belirleyecektir.
Test planıyla birlikte test senaryoları, bir sistem özellikleri belgesinin bir parçası olarak veya adı verilen ayrı bir belgede belgelenir. test specification veya test description.
Test Procedures
Test senaryolarının her birini yürütmek için izlenmesi gereken adımlardan oluşur. Bu prosedürler, test prosedürü spesifikasyonu adı verilen ayrı bir belgede belirtilmiştir. Bu belge aynı zamanda test sonucunun raporlanması için özel gereksinimleri ve biçimleri de belirtir.
Test Result Documentation
Test sonucu dosyası, yürütülen toplam test senaryosu sayısı, hata sayısı ve hataların doğası hakkında kısa bilgiler içerir. Bu sonuçlar daha sonra testin genel sonucunu belirlemek için test spesifikasyonundaki kriterlere göre değerlendirilir.
Test Türleri
Testler çeşitli türlerde olabilir ve kişinin keşfetmeyi amaçladığı hataların türüne bağlı olarak farklı test türleri gerçekleştirilir -
Birim Testi
Program Testi olarak da bilinen bu, analistin her program veya modülü bağımsız olarak test ettiği veya odaklandığı bir test türüdür. Modülün her bir ifadesinin en az bir kez yürütülmesi amacıyla yürütülür.
Birim testinde, programın doğruluğu garanti edilemez ve çeşitli girdi kombinasyonlarını ayrıntılı olarak test etmek zordur.
Diğer test tekniklerine kıyasla bir programdaki maksimum hataları tanımlar.
Entegrasyon Testi
Entegrasyon Testinde, analist birlikte çalışan birden çok modülü test eder. Sistem ile orijinal amacı, mevcut özellikleri ve sistem belgeleri arasındaki tutarsızlıkları bulmak için kullanılır.
Burada analistler, modüllerin veri uzunluğu, türü ve veri öğesi adı için farklı özelliklerle tasarlandığı alanlar bulmaya çalışıyorlar.
Dosya boyutlarının yeterli olduğunu ve dizinlerin doğru şekilde oluşturulduğunu doğrular.
Fonksiyonel test
İşlev testi, sistemin teknik özelliklere ve ilgili standart belgelerine göre doğru çalışıp çalışmadığını belirler. Fonksiyonel testler tipik olarak sistemin başarısı için çok kritik olan sistemin uygulanmasıyla başlar.
Fonksiyonel testler iki kategoriye ayrılmıştır -
Positive Functional Testing - Üretilen çıktıların doğru olduğunu doğrulamak için sistemin geçerli girdilerle test edilmesini içerir.
Negative Functional Testing - Yazılımın geçersiz girdiler ve istenmeyen çalışma koşulları ile test edilmesini içerir.
Sistem Testi Kuralları
Sistem testini başarıyla yürütmek için, verilen kurallara uymanız gerekir -
Test, kullanıcının gereksinimlerine dayanmalıdır.
Test komut dosyalarını yazmadan önce, iş mantığının iyice anlaşılması gerektiğini anlayın.
Test planı bir an önce yapılmalıdır.
Test, üçüncü şahıs tarafından yapılmalıdır.
Statik yazılım üzerinde yapılmalıdır.
Geçerli ve geçersiz giriş koşulları için test yapılmalıdır.
Maliyetleri düşürmek için testler gözden geçirilmeli ve incelenmelidir.
Yazılım üzerinde hem statik hem de dinamik test yapılmalıdır.
Test senaryolarının ve test sonuçlarının dokümantasyonu yapılmalıdır.
Kalite güvencesi
Sistemin gereksinimleri ve özellikleri karşıladığına dair güvence için sistem veya yazılım ürünlerinin ve belgelerinin incelenmesidir.
Kalite Güvencesinin amacı, spesifikasyona göre sürekli ürün teslimatı ile müşterilere güven sağlamaktır.
Yazılım Kalite Güvencesi (SQA), yazılımın amaçlanan kullanımı ve performansı için belirtilen standardı karşılamasını sağlamak için yazılım uzmanları tarafından uygulanan prosedürleri ve araçları içeren bir tekniktir.
SQA'nın temel amacı, yazılım projesinin ve geliştirdiği ürünün idareye uygun ve doğru görünürlüğünü sağlamaktır.
Yazılım ürününü ve faaliyetlerini sistem geliştirme yaşam döngüsü boyunca gözden geçirir ve denetler.
Kalite Güvencesinin Amaçları
Kalite güvencesi yapmanın amaçları aşağıdaki gibidir -
Yazılım geliştirme sürecini ve geliştirilen nihai yazılımı izlemek.
Yazılım projesinin yönetim tarafından belirlenen standartları ve prosedürleri uygulayıp uygulamadığından emin olmak.
Grupları ve bireyleri SQA faaliyetleri ve bu faaliyetlerin sonuçları hakkında bilgilendirmek.
Yazılım içerisinde çözülemeyen sorunların üst yönetim tarafından ele alınmasını sağlamak.
Ürün, süreç veya standartlardaki eksiklikleri tespit etmek ve düzeltmek.
Kalite Güvence Düzeyleri
Bir yazılım ürününü onaylamak için gerçekleştirilmesi gereken çeşitli kalite kontrol ve test seviyeleri vardır.
Level 1 − Code Walk-through
Bu seviyede, çevrimdışı yazılım incelenir veya resmi kodlama kurallarının herhangi bir ihlali için kontrol edilir. Genel olarak, belgelerin incelenmesine ve kod içi yorumların seviyesine vurgu yapılır.
Level 2 − Compilation and Linking
Bu seviyede yazılımın tüm resmi platformları ve işletim sistemlerini derleyip birbirine bağlayıp bağlayamadığı kontrol edilir.
Level 3 − Routine Running
Bu seviyede, yazılımın belirli sayıda olay ve küçük ve büyük olay boyutları gibi çeşitli koşullar altında düzgün çalışıp çalışmadığı kontrol edilir.
Level 4 − Performance test
Bu son seviyede, yazılımın performansının önceden belirlenen performans seviyesini karşılayıp karşılamadığı kontrol edilir.
Uygulama, bilgi sisteminin çalışır durumda olmasını sağlama sürecidir. İçerir -
- Sıfırdan yeni bir sistem kurmak
- Mevcut sistemden yeni bir sistem oluşturmak.
Uygulama, kullanıcıların kullanım ve değerlendirme için çalışmasını devralmalarına izin verir. Kullanıcıların sistemi idare etmeleri ve sorunsuz bir dönüşüm için plan yapmaları için eğitilmesini içerir.
Eğitim
Sistemdeki personel rollerinin ne olacağını, sistemi nasıl kullanabileceklerini ve sistemin ne yapıp yapmayacağını detaylı bir şekilde bilmelidir. İyi tasarlanmış ve teknik olarak zarif sistemlerin başarısı veya başarısızlığı, çalıştırılma ve kullanılma şekillerine bağlı olabilir.
Eğitim Sistemleri Operatörleri
Sistem operatörleri, hem rutin hem de olağandışı tüm olası işlemleri idare edebilecek şekilde uygun şekilde eğitilmelidir. Operatörler, hangi yaygın arızaların meydana gelebileceği, bunları nasıl tanıyacakları ve geldiklerinde hangi adımları atacakları konusunda eğitilmelidir.
Eğitim, olası sorunları ve bunlara yönelik çözümleri belirlemek için sorun giderme listeleri oluşturmanın yanı sıra beklenmedik veya olağandışı sorunlar ortaya çıktığında iletişim kurulacak kişilerin adları ve telefon numaralarını içerir.
Eğitim ayrıca, yeni bir sistemi kullanmak için gereken faaliyetler dizisi üzerinde çalışmayı içeren çalıştırma prosedürlerine aşina olmayı da içerir.
Kullanıcı antremanı
Son kullanıcı eğitimi, çalışanlara kendi problemlerini çözmelerini sağlamak için verilmesi gereken bilgisayar tabanlı bilgi sistemi geliştirmenin önemli bir parçasıdır.
Kullanıcı eğitimi, ekipmanın nasıl çalıştırılacağını, sistem sorununun nasıl giderileceğini, ortaya çıkan bir sorunun ekipman veya yazılımdan kaynaklanıp kaynaklanmadığını belirlemeyi içerir.
Çoğu kullanıcı eğitimi, sistemin kendisinin çalışmasıyla ilgilidir. Eğitim kursları, kullanıcıya organizasyon için hızlı mobilizasyona yardımcı olacak şekilde tasarlanmalıdır.
Eğitim Yönergeleri
- Ölçülebilir hedefler belirlemek
- Uygun eğitim yöntemlerini kullanmak
- Uygun eğitim alanlarının seçilmesi
- Anlaşılır eğitim materyalleri kullanmak
Çalışma metodları
LED çalışması şeması
Aynı yerde buluşmak zorunda olan ancak aynı yerde olması gerekmeyen eğitmenleri ve kursiyerleri içerir. Eğitim oturumu bire bir veya işbirliğine dayalı olabilir. İki çeşittir -
Virtual Classroom
Bu eğitimde eğitmenler kursiyerleri aynı anda karşılamalıdır, ancak aynı yerde olmaları zorunlu değildir. Burada kullanılan birincil araçlar şunlardır: video konferans, metin tabanlı İnternet geçiş sohbet araçları veya sanal gerçeklik paketleri vb.
Normal Classroom
Eğitmenler kursiyerlerle aynı anda ve aynı yerde buluşmalıdır. Burada kullanılan başlıca araçlar kara tahta, tepegöz projektörler, LCD projektör vb.
Kendi Hızınızda Eğitim
Aynı yerde veya aynı anda buluşması gerekmeyen eğitmenleri ve kursiyerleri içerir. Kursiyerler kurslara kendi uygunluklarına erişerek becerileri kendileri öğrenirler. İki çeşittir -
Multimedia Training
Bu eğitimde dersler multimedya formatında sunulur ve CD-ROM'da saklanır. Harici programcıların yardımı olmadan şirket içi eğitim kursu geliştirme maliyetini en aza indirir.
Web-based Training
Bu eğitimde kurslar genellikle hiper medya formatında sunulur ve internet ile intraneti desteklemek için geliştirilir. Son kullanıcılar için tam zamanında eğitim sağlar ve kuruluşun eğitim gereksinimlerini uyarlamasına olanak tanır.
Dönüştürmek
Eski sistemden yenisine geçiş sürecidir. Yönetim ve proje ekibi arasındaki iletişimi geliştirmek için anlaşılır ve yapılandırılmış bir yaklaşım sağlar.
Dönüşüm Planı
Yeni sistemin uygulanması ve devreye alınması sırasında yapılması gereken tüm faaliyetlerin açıklamasını içerir. Olası sorunları ve bunlarla başa çıkmak için çözümleri öngörür.
Aşağıdaki faaliyetleri içerir -
- Dönüştürmeler için tüm dosyaları adlandırın.
- Dönüştürme sırasında yeni dosyalar geliştirmek için veri gereksinimlerini tanımlama.
- Gerekli olan tüm yeni belgeleri ve prosedürleri listelemek.
- Her aktivitede kullanılacak kontrollerin belirlenmesi.
- Her faaliyet için kişinin sorumluluğunun belirlenmesi.
- Dönüşüm programları doğrulanıyor.
Dönüştürme Yöntemleri
Dört dönüştürme yöntemi şunlardır:
- Paralel Dönüşüm
- Doğrudan Kesme Dönüşümü
- Pilot Yaklaşım
- Faz-içi Yöntemi
Yöntem | Açıklama | Avantajlar | Dezavantajları |
---|---|---|---|
Paralel Dönüşüm |
Eski ve yeni sistemler aynı anda kullanılmaktadır. | Yeni sistem arızalandığında geri dönüş sağlar. En yüksek güvenliği ve nihayetinde yeni sistemin test edilmesini sağlar. |
Maliyet aşımlarına neden olur. Yeni sistem adil bir yol almayabilir. |
Doğrudan Kesme Dönüşümü |
Yeni sistem uygulanıyor ve eski sistem tamamen değiştiriliyor. |
Kullanıcıları yeni sistemi çalıştırmaya zorlar Yeni yöntemlerden ve kontrolden anında yararlanın. |
Yeni sistemde sorun çıkarsa geri dönüş yok En dikkatli planlama gerektirir |
Pilot Yaklaşım |
Sistemi tüm kullanıcılar arasında kademeli olarak uygulayan aşamalı yaklaşımı destekler |
Kaynakların gereksiz kullanımı olmadan eğitim ve kuruluma izin verir. Risk yönetiminden kaynaklanan büyük olasılıklardan kaçının. |
Uzun vadeli bir fazin, dönüşümün iyi gidip gitmediği konusunda bir soruna neden olur. |
Faz-içi Yöntemi |
Geri bildirime dayalı olarak organizasyonun bir bölümünde uygulanan sistemin çalışma versiyonu, organizasyon genelinde tek başına veya aşama aşama kurulur. |
Uygulama öncesi deneyim ve hat testi sağlar Yeni sistem tercih edildiğinde, yeni teknoloji veya performansta büyük değişiklikler içerir. |
Eski sistemin hatalı ve güvenilir olmadığı izlenimini verir. |
Dosya Dönüştürme
Bir dosya formatını diğerine dönüştürme işlemidir. Örneğin, WordPerfect biçimindeki dosya Microsoft Word'e dönüştürülebilir.
Başarılı bir dönüştürme için, aşağıdakileri içeren bir dönüştürme planı gereklidir:
- Hedef sistem bilgisi ve mevcut sistemin anlaşılması
- Teamwork
- Otomatik yöntemler, testler ve paralel işlemler
- Sorunları düzeltmek için sürekli destek
- Sistemleri / kullanıcı belgelerini vb. Güncelleme
Birçok popüler uygulama, aynı türdeki diğer dosya formatlarına açmayı ve kaydetmeyi destekler. Örneğin, Microsoft Word, diğer birçok kelime işlemci biçiminde dosyaları açabilir ve kaydedebilir.
Uygulama Sonrası Değerlendirme İncelemesi (PIER)
PIER, projenin sonucunu değerlendirmek ve projenin süreçlere, ürünlere veya hizmetlere beklenen faydaları sağlayıp sağlamadığını belirlemek için bir araç veya standart yaklaşımdır. Kullanıcının, proje veya sistemin istenen sonuca belirlenen süre ve planlanan maliyet içinde ulaştığını doğrulamasını sağlar.
PIER, projenin geliştirme ve yönetim süreçlerini değerlendirerek projenin hedeflerine ulaşmasını sağlar.
PIER'in hedefleri
Bir PIER sahibi olmanın amaçları aşağıdaki gibidir -
Bir projenin başarısını öngörülen maliyetlere, faydalara ve zaman çizelgelerine göre belirlemek.
Projeye değer katacak fırsatları belirlemek.
Gelecekte referans ve uygun eylem için projenin güçlü ve zayıf yönlerini belirlemek.
Maliyet tahmin tekniklerini rafine ederek projenin geleceğine yönelik önerilerde bulunmak.
Aşağıdaki personel, inceleme sürecine dahil edilmelidir -
- Proje ekibi ve Yönetim
- Kullanıcı personeli
- Stratejik Yönetim Kadrosu
- Harici kullanıcılar
Sistem Bakımı / Geliştirme
Bakım, bir şeyi orijinal koşullarına geri döndürmek anlamına gelir. Geliştirme, kullanıcı spesifikasyonundaki değişiklikleri desteklemek için kodu eklemek, değiştirmek anlamına gelir. Sistem bakımı, sistemi orijinal gereksinimlerine uygun hale getirir ve iyileştirme, yeni gereksinimleri dahil ederek sistem kapasitesine katkıda bulunur.
Böylece bakım, mevcut sistemi değiştirir, iyileştirme mevcut sisteme özellikler ekler ve geliştirme mevcut sistemin yerini alır. Sistem tasarımında ve uygulamasında hataları düzelten, belgeleri güncelleyen ve verileri test eden faaliyetleri içeren sistem geliştirmenin önemli bir parçasıdır.
Bakım Türleri
Sistem bakımı üç türe ayrılabilir -
Corrective Maintenance - Kullanıcının kalan sorunların onarımını ve düzeltilmesini gerçekleştirmesini sağlar.
Adaptive Maintenance - Kullanıcının programların işlevlerini değiştirmesini sağlar.
Perfective Maintenance - Kullanıcının, kullanıcıların gereksinimlerine ve değişen ihtiyaçlarına göre programları değiştirmesini veya geliştirmesini sağlar.
Sistem Denetimi
Operasyonel bir sistemin performansını gözden geçirmek için yapılan bir araştırmadır. Bir sistem denetimi yapmanın amaçları aşağıdaki gibidir -
Gerçek ve planlanan performansı karşılaştırmak için.
Sistemin belirtilen hedeflerinin mevcut ortamda hala geçerli olduğunu doğrulamak için.
Belirtilen hedeflere ulaşılmasını değerlendirmek.
Bilgisayar tabanlı finansal ve diğer bilgilerin güvenilirliğini sağlamak.
İşlem sırasında tüm kayıtların dahil edilmesini sağlamak.
Dolandırıcılıklardan korunmak için.
Bilgisayar Sistemi Kullanımının Denetimi
Bilgi işlem denetçileri, bilgisayar sistemini kontrol etmek için kullanımını denetler. Denetçi, bilgisayar sistemi tarafından elde edilen kontrol verilerine ihtiyaç duyar.
Sistem Denetçisi
Denetçinin rolü, sistem geliştirmenin ilk aşamasında başlar, böylece ortaya çıkan sistem güvenli olur. Yük planlamasına ve donanım ve yazılım özelliklerine karar vermeye yardımcı olan kaydedilebilen bir sistem kullanımı fikrini açıklar. Bilgisayar sisteminin akıllıca kullanımı ve sistemin olası kötüye kullanımı hakkında bir gösterge sağlar.
Denetim Denemesi
Bir denetim denemesi veya denetim günlüğü, bir bilgisayar sistemine kimin eriştiğini ve belirli bir süre boyunca hangi işlemlerin gerçekleştirildiğini içeren bir güvenlik kaydıdır. Denetim denemeleri, sistemdeki verilerin nasıl değiştiğine dair ayrıntılı izleme yapmak için kullanılır.
Bir işlemin işlenmesi sırasında tabi olduğu çeşitli kontrol tekniklerinin belgeli kanıtını sağlar. Denetim denemeleri bağımsız olarak mevcut değildir. Kayıp işlemlerin geri kazanılması için muhasebenin bir parçası olarak gerçekleştirilirler.
Denetim Yöntemleri
Denetim iki farklı şekilde yapılabilir -
Bilgisayar çevresinde denetim
- Örnek girdiler alın ve işleme kurallarını manuel olarak uygulayın.
- Çıktıları bilgisayar çıktılarıyla karşılaştırın.
Bilgisayar Üzerinden Denetim
- Seçilen ara sonuçların incelenmesine izin veren denetim denemesi oluşturun.
- Kontrol toplamları ara kontroller sağlar.
Denetim Hususları
Denetim değerlendirmeleri, yanlış yerleştirilmiş işlevler, bölünmüş süreçler veya işlevler, bozuk veri akışları, eksik veriler, fazlalık veya eksik işleme ve adreslenmemiş otomasyon fırsatlarından kaynaklanan sorunları belirlemek için hem anlatıları hem de modelleri kullanarak analiz sonuçlarını inceler.
Bu aşamadaki faaliyetler aşağıdaki gibidir -
- Mevcut çevre sorunlarının belirlenmesi
- Sorun nedenlerinin belirlenmesi
- Alternatif çözümlerin belirlenmesi
- Her çözümün değerlendirilmesi ve fizibilite analizi
- En pratik ve uygun çözümün seçimi ve önerisi
- Proje maliyet tahmini ve maliyet fayda analizi
Güvenlik
Sistem güvenliği, sistemi hırsızlığa, yetkisiz erişime ve değişikliklere ve kazara veya kasıtsız hasarlara karşı korumayı ifade eder. Bilgisayarlı sistemlerde güvenlik, veri, yazılım ve donanım dahil olmak üzere bilgisayar sisteminin tüm parçalarının korunmasını içerir. Sistem güvenliği, sistem gizliliğini ve sistem bütünlüğünü içerir.
System privacy Bireylerin sistemlerine, ilgili kişilerin izni / bilgisi olmadan erişilmesini ve kullanılmasını önlemeyi amaçlar.
System integrity sistemdeki işlenmemiş verilerin yanı sıra işlenmiş verilerin kalitesi ve güvenilirliği ile ilgilenir.
Kontrol önlemleri
Genel olarak aşağıdaki şekilde sınıflandırılabilecek çeşitli kontrol önlemleri vardır:
Destek olmak
Zaman kritikliğine ve boyutuna bağlı olarak veritabanlarının günlük / haftalık düzenli yedeklemesi.
Daha kısa aralıklarla artımlı yedekleme.
Yedek kopyalar, özellikle olağanüstü durum kurtarma için gerekli olan güvenli uzak konumda tutulur.
Çok kritik bir sistemse ve diskte depolamadan önce herhangi bir kesintiye tahammül edemiyorsa, yinelenen sistemler çalışır ve tüm işlemler yansıtılır.
Tesislere Fiziksel Erişim Kontrolü
- Fiziksel kilitler ve Biyometrik kimlik doğrulama. Örneğin parmak izi
- Kimlik kartları veya giriş kartları güvenlik personeli tarafından kontrol ediliyor.
- Verileri okuyan veya değiştiren tüm kişilerin tanımlanması ve bir dosyaya kaydedilmesi.
Mantıksal veya Yazılım Kontrolünü Kullanma
- Şifre sistemi.
- Hassas verileri / programları şifreleme.
- Çalışanları veri bakımı / yönetimi ve güvenliği konusunda eğitmek.
- İnternete bağlıyken antivirüs yazılımı ve Güvenlik duvarı koruması.
Risk analizi
Risk, değerli bir şeyi kaybetme olasılığıdır. Risk analizi, sistemin zafiyetini ve bunun etkisini belirleyerek güvenli sistem planlamasıyla başlar. Plan daha sonra riski yönetmek ve felaketle başa çıkmak için yapılır. Olası afet olasılığına ve maliyetlerine ulaşmak için yapılır.
Risk analizi, kimyasallar, insan hatası ve proses ekipmanı gibi farklı geçmişlere sahip uzmanlardan oluşan bir ekip çalışmasıdır.
Risk analizi yapılırken aşağıdaki adımlar izlenmelidir -
Bilgisayar sisteminin tüm bileşenlerinin tanımlanması.
Her bir bileşenin karşılaştığı tüm tehdit ve tehlikelerin tanımlanması.
Riskleri ölçün, yani tehditlerin gerçeğe dönüşmesi durumunda zararın değerlendirilmesi.
Risk Analizi - Ana Adımlar
Riskler veya tehditler değiştiğinden ve olası kayıplar da değiştiğinden, risk yönetimi periyodik olarak üst düzey yöneticiler tarafından yapılmalıdır.
Risk yönetimi sürekli bir süreçtir ve aşağıdaki adımları içerir -
Güvenlik önlemlerinin tanımlanması.
Güvenlik önlemlerinin uygulanma maliyetinin hesaplanması.
Güvenlik önlemlerinin maliyetinin tehditlerin kaybı ve olasılığı ile karşılaştırılması.
Güvenlik önlemlerinin seçimi ve uygulanması.
Güvenlik önlemlerinin uygulanmasının gözden geçirilmesi.
Nesne yönelimli yaklaşımda, odak noktası, bilgi sistemlerinin yapısını ve davranışını, hem verileri hem de süreci birleştiren küçük modüllere ayırmaktır. Nesneye Yönelik Tasarımın (OOD) temel amacı, sistem analizi ve tasarımının kalitesini ve verimliliğini daha kullanışlı hale getirerek artırmaktır.
Analiz aşamasında, problem ve çözüm arasındaki boşluğu doldurmak için OO modelleri kullanılır. Sistemlerin sürekli tasarım, uyarlama ve bakımdan geçtiği durumlarda iyi performans gösterir. Problem alanındaki nesneleri veri ve davranış açısından sınıflandırarak tanımlar.
OO modeli aşağıdaki şekillerde faydalıdır -
Düşük maliyetle sistemdeki değişiklikleri kolaylaştırır.
Bileşenlerin yeniden kullanımını teşvik eder.
Büyük sistemi yapılandırmak için bileşenlerin entegre edilmesi sorununu basitleştirir.
Dağıtık sistemlerin tasarımını basitleştirir.
Nesne Yönelimli Sistemin Unsurları
OO Sisteminin özelliklerini inceleyelim -
Objects- Nesne, sorun alanında var olan ve veriler (öznitelik) veya davranışla tanımlanabilen bir şeydir. Tüm somut varlıklar (öğrenci, hasta) ve bazı soyut varlıklar (banka hesabı) nesne olarak modellenir.
Attributes - Nesne hakkındaki bilgileri açıklarlar.
Behavior- Nesnenin neler yapabileceğini belirtir. Nesneler üzerinde gerçekleştirilen işlemi tanımlar.
Class- Bir sınıf, verileri ve davranışını özetler. Benzer anlam ve amaca sahip nesneler sınıf olarak gruplandırılır.
Methods- Yöntemler bir sınıfın davranışını belirler. Bir nesnenin gerçekleştirebileceği bir eylemden başka bir şey değildirler.
Message- Bir mesaj, bir nesneden diğerine yapılan bir işlev veya prosedür çağrısıdır. Yöntemleri tetiklemek için nesnelere gönderilen bilgilerdir. Esasen, bir mesaj, bir nesneden diğerine bir işlev veya prosedür çağrısıdır.
Nesne Tabanlı Sistemin Özellikleri
Nesne yönelimli bir sistem, aşağıda tartışılan birkaç harika özellikle birlikte gelir.
Kapsülleme
Kapsülleme, bir bilgi gizleme sürecidir. Basitçe süreç ve verilerin tek bir varlıkta birleşimidir. Bir nesnenin verileri sistemin geri kalanından gizlenir ve yalnızca sınıfın hizmetleri aracılığıyla kullanılabilir. Bir sistemin diğer bölümlerini etkilemeden nesneler tarafından kullanılan yöntemlerin iyileştirilmesine veya değiştirilmesine izin verir.
Soyutlama
Nesneyi belirtmek için gerekli yöntem ve niteliklerin alınması veya seçilmesi işlemidir. Kullanıcı bakış açısına göre bir nesnenin temel özelliklerine odaklanır.
İlişkiler
Sistemdeki tüm sınıflar birbiriyle ilişkilidir. Nesneler tek başına varolmaz, diğer nesnelerle ilişki içinde bulunurlar.
Üç tür nesne ilişkisi vardır -
Aggregation - Bir bütün ile parçaları arasındaki ilişkiyi gösterir.
Association - Bunda, iki sınıf birbiriyle ilişkilidir veya bir şekilde bağlantılıdır, örneğin bir sınıf bir görevi yerine getirmek için diğeriyle çalışır veya bir sınıf diğer sınıfa etki eder.
Generalization- Çocuk sınıfı, ebeveyn sınıfına bağlıdır. İki sınıfın benzer olduğunu ancak bazı farklılıkları olduğunu gösterir.
Miras
Miras, mevcut sınıfların niteliklerini ve / veya işlemlerini miras alarak mevcut bir sınıftan alt sınıflar oluşturmaya izin veren harika bir özelliktir.
Polimorfizm ve Dinamik Bağlama
Polimorfizm, birçok farklı form alma yeteneğidir. Hem nesneler hem de işlemler için geçerlidir. Bir polimorfik nesne, bir üst sınıf veya üst sınıf içinde gerçek türün gizlediği nesnedir.
Polimorfik işlemde işlem, farklı nesne sınıfları tarafından farklı şekilde gerçekleştirilebilir. Yalnızca ortak özelliklerini bilerek farklı sınıflardaki nesneleri işlememize izin verir.
Yapılandırılmış Yaklaşım Vs. Nesne Tabanlı Yaklaşım
Aşağıdaki tablo, nesne yönelimli yaklaşımın geleneksel yapılandırılmış yaklaşımdan ne kadar farklı olduğunu açıklamaktadır -
Yapılandırılmış yaklaşım | Nesneye Yönelik Yaklaşım |
---|---|
Yukarıdan aşağıya yaklaşımla çalışır. | Aşağıdan yukarıya yaklaşımı ile çalışır. |
Program, alt modüllerin veya işlevlerin sayısına bölünmüştür. | Program, sınıf ve nesne sayısına göre düzenlenmiştir. |
İşlev çağrısı kullanılır. | Mesaj geçişi kullanılır. |
Yazılımın yeniden kullanımı mümkün değildir. | Yeniden kullanılabilirlik mümkündür. |
Yapısal tasarım programlaması genellikle son aşamalara kadar bırakılır. | Diğer aşamalarla eşzamanlı olarak yapılan nesneye yönelik tasarım programlaması. |
Yapılandırılmış Tasarım, offshoring için daha uygundur. | Kurum içi geliştirmeye uygundur. |
Tasarımdan uygulamaya net bir geçiş gösterir. | Tasarımdan uygulamaya geçiş o kadar net değil. |
Gerçek zamanlı sistem, gömülü sistem ve nesnelerin en kullanışlı soyutlama seviyesi olmadığı projeler için uygundur. | Özelleştirilmesi veya genişletilmesi beklenen çoğu iş uygulaması, oyun geliştirme projesi için uygundur. |
DFD & ER diyagramı verileri modelleyin. | Sınıf diyagramı, sıra diyagramı, durum tablosu diyagramı ve kullanım durumlarının tümü katkıda bulunur. |
Bunda, açıkça tanımlanabilen aşamalar nedeniyle projeler kolaylıkla yönetilebilir. | Bu yaklaşımda, aşamalar arasındaki belirsiz geçişler nedeniyle projelerin yönetilmesi zor olabilir. |
Birleşik Modelleme Dili (UML)
UML, sistem mimarisinin tasarımını ifade etmek için süreçleri, yazılımları ve sistemleri modellemenizi sağlayan görsel bir dildir. Teknik mimarların geliştirici ile iletişim kurmasına olanak tanıyan nesne yönelimli bir sistem tasarlamak ve belgelemek için kullanılan standart bir dildir.
Nesne Yönetim Grubu tarafından oluşturulan ve dağıtılan bir dizi özellik olarak tanımlanır. UML genişletilebilir ve ölçeklenebilir.
UML'nin amacı, herhangi bir sistem geliştirme projesini analizden uygulamaya kadar modellemek için yeterince zengin olan nesneye yönelik terimler ve diyagram oluşturma tekniklerinden oluşan ortak bir kelime dağarcığı sağlamaktır.
UML şunlardan oluşur:
Diagrams - Sürecin, sistemin veya onun bir kısmının resimli bir temsilidir.
Notations - Konektörler, semboller, notlar vb. Gibi bir diyagramda birlikte çalışan öğelerden oluşur.
Sınıf için UML Gösterimi örneği
Örnek diyagramı-UML gösterimi
Nesnelerde Yapılan İşlemler
Nesneler üzerinde aşağıdaki işlemler gerçekleştirilir -
Constructor/Destructor- Bir sınıfın yeni örneklerini oluşturma ve bir sınıfın mevcut örneklerini silme. Örneğin, yeni bir çalışan eklemek.
Query- Değeri değiştirmeden duruma erişmenin hiçbir yan etkisi yoktur. Örneğin, belirli bir çalışanın adresini bulmak.
Update - Bir veya daha fazla özniteliğin değerini değiştirir ve nesnenin durumunu etkiler Örneğin, bir çalışanın adresini değiştirmek.
UML Kullanımları
UML, aşağıdaki amaçlar için oldukça kullanışlıdır -
- İş sürecini modellemek
- Sistem mimarisini tanımlama
- Uygulama yapısını gösterme
- Sistem davranışını yakalama
- Veri yapısının modellenmesi
- Sistemin ayrıntılı özelliklerini oluşturma
- Fikirleri çizmek
- Program kodunu oluşturmak
Statik Modeller
Statik modeller, bir sistemin yapısal özelliklerini gösterir, sistem yapısını tanımlar ve sistemi oluşturan parçaları vurgular.
Sınıf adlarını, nitelikleri, yöntemleri, imzayı ve paketleri tanımlamak için kullanılırlar.
Statik modeli temsil eden UML diyagramları arasında sınıf diyagramı, nesne diyagramı ve kullanım durumu diyagramı bulunur.
Dinamik Modeller
Dinamik modeller, bir sistemin davranış özelliklerini, yani sistemin harici olaylara yanıt olarak nasıl davrandığını gösterir.
Dinamik modeller, ihtiyaç duyulan nesneyi ve bunların birlikte nasıl çalıştığını yöntemler ve mesajlar aracılığıyla tanımlar.
Sistemin mantığını ve davranışını tasarlamak için kullanılırlar.
UML diyagramları, sıra diyagramı, iletişim diyagramı, durum diyagramı, aktivite diyagramı içeren dinamik modeli temsil eder.
Nesneye Yönelik Sistem Geliştirme Yaşam Döngüsü
Üç makro süreçten oluşur -
- Nesneye Yönelik Analiz (OOA)
- Nesneye yönelik tasarım (OOD)
- Nesne yönelimli Uygulama (OOI)
Nesneye Yönelik Sistem Geliştirme Faaliyetleri
Nesneye yönelik sistem geliştirme aşağıdaki aşamaları içerir -
- Nesneye yönelik analiz
- Nesneye yönelik tasarım
- Prototyping
- Implementation
- Artımlı test
Nesneye Yönelik Analiz
Bu aşama, sistem gereksinimlerinin belirlenmesi ve sistem gereksinimlerinin anlaşılmasıyla ilgilidir. use-case model. Kullanım durumu, kullanıcı ve bilgisayar sistemi arasındaki etkileşimi tanımlayan bir senaryodur. Bu model, kullanıcı ihtiyaçlarını veya sistemin kullanıcı görüşünü temsil eder.
Ayrıca, bir uygulamayı oluşturan sınıfların ve bunların sorun alanındaki diğer sınıflarla ilişkilerinin tanımlanmasını da içerir.
Nesne Tabanlı Tasarım
Bu aşamanın amacı, analiz aşaması, kullanıcı arabirimi ve veri erişimi sırasında tanımlanan sınıfları, öznitelikleri, yöntemleri ve yapıları tasarlamak ve iyileştirmektir. Bu aşama ayrıca gereksinimin uygulanmasını destekleyen ek sınıfları veya nesneleri tanımlar ve tanımlar.
Prototipleme
Prototipleme, sistemin bazı özelliklerini uygulamanın ne kadar kolay veya zor olacağını tam olarak anlamayı sağlar.
Ayrıca, kullanıcılara tasarımın kullanılabilirliği ve kullanışlılığı hakkında yorum yapma şansı verebilir. Bir kullanım durumunu daha da tanımlayabilir ve kullanım durumu modellemesini çok daha kolay hale getirebilir.
Uygulama
Bileşen Tabanlı Geliştirme (CBD) veya Hızlı Uygulama Geliştirme (RAD) kullanır.
Bileşen tabanlı geliştirme (CBD)
CODD, CASE araçları gibi çeşitli teknolojileri kullanan yazılım geliştirme sürecine endüstriyel bir yaklaşımdır. Uygulama geliştirme, özel geliştirmeden, birbiriyle çalışan önceden oluşturulmuş, önceden test edilmiş, yeniden kullanılabilir yazılım bileşenlerinin montajına geçer. Bir CBD geliştiricisi, eksiksiz bir yazılım sistemi oluşturmak için bileşenleri bir araya getirebilir.
Hızlı Uygulama Geliştirme (RAD)
RAD, bir uygulamayı geleneksel yöntemlerle tipik olarak mümkün olandan daha hızlı oluşturmak için kullanılabilen bir dizi araç ve tekniktir. SDLC'nin yerini almaz, ancak süreç tanımına daha fazla odaklandığı ve nesne yönelimli yaklaşımla mükemmel bir şekilde birleştirilebildiği için onu tamamlar.
Görevi, uygulamayı hızlıca oluşturmak ve görsel temel, güç oluşturucu vb. Araçlar aracılığıyla kullanıcı gereksinimleri tasarımını aşamalı olarak uygulamaktır.
Artımlı Test
Yazılım geliştirme ve test dahil tüm faaliyetleri yinelemeli bir süreçtir. Bu nedenle, bir ürünü ancak tam olarak geliştirildikten sonra test etmeyi beklersek maliyetli bir mesele olabilir. Burada aşamalı test, ürünün geliştirilmesinin çeşitli aşamalarında test edildiği resme çıkıyor.