İŞL209U-İŞLETME BİLGİ SİSTEMLERİ
Ünite 7: Sistem Geliştirme
Giriş
Günümüzde küreselleşme ve yeni teknolojilerle birlikte işletmeler arası rekabet oldukça artmış ve işletmelerde işlerin daha hızlı, hatasız ve düşük maliyetle yapılması gereği ortaya çıkmıştır. Bu nedenle işletmelerdeki iş süreçleri kâğıt ortamından elektronik ortamlara kaymaya başlamış, bilgi sistemlerinin yükü artmış ve daha karmaşık hâle gelmişlerdir.
Bilgi sistemleriyle, işletmelerde sağlanabilecek başlıca değişimler, süreçlerin otomatikleştirilmesi, standart olarak yürütülen işlerin verimliliğinin artırılması, iş süreçlerinin analiz edilmesi, basitleştirilmesi ve yeniden tasarlanmasıdır.
Yeni bir bilgi sistemi geliştirme faaliyeti, kendi içinde bir değişimi de beraberinde getirmektedir. İşletmenin belirledikleri amaçlar doğrultusunda faaliyet gösterebilmesi ve başarılı olabilmesi için nasıl bir sisteme ihtiyaç duyduğu göz önünde bulundurularak sistem geliştirme süreci gerçekleştirilir
Sistem Geliştirme İhtiyacı
İşletmelerde bilgi sistemlerinin kurulması ya da yenilenmesinin nedenleri aşağıdaki gibi sıralanabilir:
• Gelişen teknoloji, önceleri saklanması ve işlenmesi ekonomik olmayan bilgilerin işlenme maliyetlerinin önemli ölçüde düşmesine neden olmaktadır. Gelişmiş teknolojiden faydalanan işletmeler rakiplerine göre avantaj elde ederler. • İşletmenin büyümesi ve sisteme yeni bilgi türlerinin katılması da bilgi işlem talebinin artmasına neden olmaktadır. Bu durum ihtiyaçların karşılanmasında var olan bilgi sisteminin yetersiz kalması sonucunu doğurabilir. • Eskiyen teknolojinin işletme maliyetlerini yükseltmesi ve benzer işlemlerin yeni teknolojiyle daha ucuza yapılabilir olması. • Var olan bilgi sisteminin yenilenmesi ihtiyacı, işletmenin ya da teknolojinin gelişmesiyle ilgili olmaksızın, yasalar ya da yönetmeliklerdeki değişmeler sonucu ortaya çıkabilmektedir.
Sistem geliştirme, çoğu zaman işletmedeki bir problemi çözmeye yönelik bir çabadır. Bir problemi analiz etme ve çözüm bulma, aşağıdaki karşılıklı ilişkili faaliyetleri içermektedir:
• Sistem düşüncesini kullanarak bir problemin ya da olanağın var olduğunu kabul etmek ve tanımlamak. • Alternatif sistem çözümleri geliştirmek ve değerlendirmek. • İhtiyaçları en iyi karşılayan sistem çözümünü seçmek. • Seçilen sistem çözümünü tasarlamak. • Tasarlanmış olan sistem çözümünü başarılı bir şekilde uygulamak ve değerlendirmek.
Sistem Geliştirme Yaşam Döngüsü
En eski bilgi sistemi geliştirme yaklaşımı olan Sistem Geliştirme Yaşam Döngüsü (SGYD), sistem kurma ve sistem geliştirmeyi uygun bir biçimde adımlara bölen, çok aşamalı bir yaklaşımdır. SGYD’nde zamanın büyük bir bölümü iş süreçlerinin analizi, yeni tasarım ve yürütmeye harcanmaktadır.
SGYD kullanmayan proje grupları, önemli adımları gözden kaçırabilmekte ve dokümantasyonu ihmal edebilmektedir. Bu yaklaşımın kullanılmasıyla kullanıcılar sistematik bir disipline sokulmakta, kalite ve standartlaşma önem kazanmaktadır. Sözü edilen bu olumlu özelliklerine rağmen SGYD yaklaşımının çok fazla dokümantasyon gerektirmesi ve dolayısıyla süreci yavaşlatarak tamamlanmasının çok zaman alması ve geliştirme zamanının uzunluğuna bağlı olarak maliyetli olması da olumsuz özellikleridir.
Bir sistem geliştirme yaşam döngüsü; planlama, sistem analizi, sistem tasarımı, uygulama, bakım ve iyileştirme aşamalarından oluşur
Sistem Planlaması
Sistem geliştirme sürecinin ilk aşaması, planlama aşamasıdır. Başarılı bir proje geliştirebilmek için projenin tüm resminin çıkarılması gerekmektedir. Bu resim, proje planlama çalışmaları sonucunda üretilir. Bu çalışmalar, bir inşaata başlamadan yapılan çalışmalara benzer. Bütün projenin gidişatını etkileyebilecek önemli bir evredir.
SGYD yaklaşımının sistem projeleri kapsamında ele alınmasından yola çıkarak proje planlama bölümü aşağıdaki adımları içermektedir:
• İhtiyaçların belirlenmesi • Çeşitli proje taleplerini gözden geçirme ve karar verme • İşletme talep ve ihtiyaçlarına öncelik verme • Kaynakların projeye uygun tahsisi • Proje geliştirme ekibini belirleme • Bilgi sistemi planlaması ve uygulamasında kullanılan teknikleri belirleme • Kritik Başarı Faktörlerinin belirlenmesi • Sonuç / Ortalama Analizi
Sistem geliştirme çalışmalarında öncelikle işletmedeki işler, iş akışları ve süreçlerin tanımlanması gerekir. Bu aşamada işletmenin mevcut durumu incelenir, sorunlar ve ihtiyaçlar tespit edilir. İlk olarak problemli alanlar araştırılır, problemin tanımı yapılır ve öncelikler belirlenir. Daha sonra, sorun ve problemlerin çözülmesi için bir çalışma planı yapılır.
İşletmenin başlayacağı proje için yaptığı hazırlıkların başında, işletmenin stratejilerine paralel proje hedefleri ve amaçları belirlenmelidir.
Fizibilite çalışması, yeni bir proje geliştirme sürecinde belirli varsayımlar ve tahminler çerçevesinde bir projenin
uygulanması ve sonuçları ile ilgili tespit ve değerlendirmeleri içeren bir süreçtir.
Önerilen iş veya projelere ilişkin anahtar değişkenlerin dâhil edilerek hazırlandığı bir “ön fizibilite” çalışması, proje hakkında ilk değerlendirmelerin yapılabilmesini sağlar. Projeye ilişkin bazı senaryolar ortaya konarak bunlara dayanan bir ön değerlendirme yapılır. Bu aşamanın temel amacı, yeni sistemin geliştirilmesinin mümkün olup olmadığını belirlemektir. Bu soruya cevap ararken aşağıdaki fizibilite boyutlarının dikkate alınması gerekir:
• Teknik Fizibilite: Mevcut teknoloji bu sistemi geliştirmek için yeterli mi? Yeni sistemi geliştirme sürecinde yararlanabileceğimiz uzman personelimiz mevcut mu? Yeni bir teknolojiye ihtiyacımız varsa bu yeni teknoloji ile sistem geliştirebilme olasılığı nedir? • Ekonomik Fizibilite: Kuruluşun yeni bir sistem geliştirmek için yeterli fonu var mı? Yapılan maliyete kıyasla elde edeceği fayda yeterli mi? • Operasyonel Fizibilite: Sistem geliştirildikten sonra iyi şekilde işleyecek mi? Eskisine göre performansı yüksek olabilecek mi? Organizasyonun faaliyet tarzına uygun mu? • Sosyal/Davranışsal Fizibilite: Kullanıcılar, değiştirilen sisteme kolayca uyum sağlayabilecekler mi? Değişime direnç ile gösterecekler mi? • Yönetim Fizibilitesi: Sistem yönetim tarafından kabul edilir mi? Yönetimin desteği nasıl olacak? • Yasal Fizibilite: Sistem ilgili yasalara ve süreçlere uygun mu? • Zaman Fizibilitesi: Sistem, verilen zaman kısıtlamaları dâhilinde uygulanabilir mi?
Sistem Analizi
Sistem analizi, bilgi sisteminde var olan verilerin hangi kullanıcılar tarafından nasıl kullanılması gerektiğini belirleyen, sistem için gerekli olan girdilerin mantığını, işleme dönüşme sürecini inceleyen, kısaca mevcut sistemin incelendiği aşamadır.
Sistem analisti, işletmedeki süreç ve fonksiyonları anlamalı ve insanların, hedeflerin, verilerin ve kullanılan yöntemlerin tam bilgisine sahip olmalıdır. Sistem analistleri genelde aşağıdaki işleri yaparlar:
• İşletme gereksinimlerini analiz etmek ve istekleri karşılayacak sistemi tasarlamak, • Sistem üzerinde yapılan düzenlemelerin sisteme olan etkilerini incelemek ve raporlamak, • Sistem üzerinde oluşabilecek olumsuz etkilere karşı, alternatifler geliştirerek problemlere çözüm oluşturmak, • Sistem üzerinde bir sorunla karşılaşıldığında, sistematik olarak sorunları giderebilecek yapılar oluşturmak,
• Problem çözme sırasında, sistemin bütünlüğünü bozmadan, detaylı bir şekilde analiz ve raporlamalarını hazırlamak, • Ayrıntılara önem vererek analiz sırasında hiçbir detayı atlamadan süreci kontrol altında tutmak, • Sahip olunan teknik bilgiyi eyleme dökmek.
Sistemin Tasarımı
Tasarım aşaması mevcut sistemi iyi anladıktan sonra gelir. Bu aşama bir sistemin elemanlarını, bileşenlerini, güvenlik seviyesini, modülleri, mimariyi ve farklı arayüzleri ve sistemden geçen veri türünü tanımlar. Tasarım nitelikleri aşağıda sıralanmıştır:
• İşlevselliği, başarımı ve güvenilirliği yüksek, nitelikli bir ürün oluşturmak ana hedef olmalıdır. • Öğrenim ve kullanım kolaylığı göz önünde tutulmalıdır. • Tasarımın gereksinimler ile izlenebilirliği olmalıdır. • Geliştirilen birimin kodu ve testleri ile izlenebilirliği olmalıdır. • Tasarım programlama dilinden olabildiğince bağımsız, kolay anlaşılabilir, kolay değiştirilebilir ve tekrar kullanılabilir olmalıdır.
Bir sistemin mantıksal tasarımı; sistemin veri akışları ile girdi ve çıktıların soyut temsilini içerir. Bu genellikle, gerçek sistemin özet (ve bazen de grafiksel) modeli kullanılarak model oluşturma yolu ile yürütülür.
Fiziksel tasarım sistemin gerçek girdi ve çıktı işlemleri ile ilgilidir. Bu aşamada; doğrulanmış verilerin sisteme nasıl girileceği, nasıl işleneceği ve nasıl görüntüleneceği belirlenir.
Sistemin Uygulanması
Uygulama aşaması, çalışan bir sistem üretmek üzere gerekli olan fiziksel ve kavramsal kaynakların temin edildiği ve sistemle entegrasyonunun sağlandığı aşamadır. Bu aşama sistemin türü, kullanıcı sayısı ve türü, eski sistemle uyumu ve sistemin işlevsel hale gelmesinin ne kadar acil olduğu gibi birçok faktör tarafından etkilenir.
Bu aşamada öncelikle işletmenin ihtiyaç analizi doğrultusunda, bilgi sistemi için gerekli ekipman tiplerinin tedarikçilerden sağlanması yoluna gidilebilir.
Geliştirilecek sistem yazılımının kodlaması da bu aşamada yapılır. İşletme, hazır uygulama yazılımı satın almak yerine yazılımı kendisi geliştirmeye karar verebilir. Önerilen ve ihtiyaç duyulan sistemin çalıştırılabilmesi, özel birtakım işlemleri gerçekleştirebilmesi için programlanması gerekmektedir.
Geliştirilen bilgi sisteminin doğru sonuçlar üretip üretmediğini kullanıma geçmeden önce tespit etmek gerekmektedir. Problem kullanıcıya ulaşmadan önce tespit edilirse çok daha az maliyetle çözülebilir. Sistem testi ve performans değerlendirme çalışmaları da bu aşamada gerçekleştirilir.
Yeni sistemin işletmede uygulanması aşamasında, kullanıcıların yeni sisteme uyum sağlamasının gereği olarak bilgi sistemleri ile eğitilmelidir. Başarılı bir sistem uygulaması, çalışan eğitimine özel dikkat gerektirir. Kullanıcılara, yeni sistemin genel yapısını ve bu sistemdeki görevlerini anlatmak için seminerler ya da yönergelerden yararlanılabilir.
Yeni sistemin uygulamaya alınması ve eski sistemin doğrudan veya aşamalı olarak kaldırılması esnasında, değişikliğin nasıl uygulandığını yönetmek önem kazanmaktadır. Yeni sistemlerin uygulanması için işletmelerin benimseyebileceği birçok farklı yöntem vardır. Bu yöntemler:
• Doğrudan geçiş • Pilot geçiş • Paralel geçiş • Aşamalı geçiş şeklinde sıralanabilir
Sistemin Bakımı ve İyileştirilmesi
Sistemin uygulanmasının ardından, karşılaşılan aksaklıkları gidermek, meydana gelebilecek aksaklıkları önlemek ve sistemin verimliliğini korumak amacı ile sisteme düzenli olarak bakım yapılmalıdır. Sistem bakımını gerekli kılan üç farklı durum vardır. Bunlar:
• Hataların düzeltilmesi, • Sistemin güncellenmesi ve • Sistemin iyileştirilmesidir.
Kapsamı ve türü sistemden sisteme farklılık gösteriyor olsa da sistemin bakımı için izlenebilecek dört farklı yaklaşım vardır. Bunlar:
• Düzeltici bakım, • Uyarlamalı bakım, • Tamamlayıcı bakım ve • Önleyici bakım şeklinde sıralanır.
Sistem Geliştirmede Alternatif Yaklaşımlar
Bilgi sistemlerinin geliştirilmesi için, sistem geliştirme yaşam döngüsü yaklaşımına alternatif olarak izlenebilecek yaklaşımlar:
• Prototip geliştirme, • Son kullanıcı geliştirme, • Yazılım paketleri kullanma • Dış kaynak kullanımı ve • Bilgisayar Destekli Yazılım Mühendisliği (CASE-Computer Aided Software Engineering) şeklinde sıralanabilir.
Prototip geliştirme yaklaşımında öncelikle bir prototip geliştirilir ve kullanıma sunulur. Kullanıcılardan sağlanan geri dönüşler ile prototip gözden geçirilir ve iyileştirilir.
Son kullanıcı geliştirme yaklaşımında, kullanıcılar Wordperfect, Quickbase, Microsoft Access, SQL gibi dördüncü nesil yazılımları kullanarak bilgi sistemi geliştirme çabalarını kendileri yürütürler.
Yazılım paketleri kullanma yaklaşımı, işletmelerin bir ticari ürün olan paket programları doğrudan satın alıp kullanması esasına dayanır.
Dış kaynak kullanımı yaklaşımı, bir bilgi sistemi geliştirmek ya da satın almak yerine başkasına ait bir bilgi sisteminin kiralanması şeklinde gerçekleştirilir.
Bilgisayar Destekli Yazılım Mühendisliği (CASE) yaklaşımı, sistem projelerinin tasarlanması ve uygulanması için otomatik bir ortam sağlayan yeni nesil entegre sistem geliştirme araçlarının kullanılması esasına dayanır.