Sistem çözümlemesi ve tasarımı
Sistem çözümlemesi ve tasarımı, bir bilişim sisteminin hangi verileri, hangi kullanıcılar için ve nasıl işlemesi gerektiğini irdeleme; sistemin girdilerini, mantığını, çıktılarını ve bileşenlerini betimleme; ve sistemi meydana getirerek çalıştırma aşamalarını inceleyen bilgi alanıdır. Bu sürece sistem yaşam döngüsü adı da verilmektedir.[1] Her bilişim sistemi, insan yapımı diğer pek çok sistem gibi, beş aşamalı bir yaşam döngüsünden geçmektedir:
- Planlama,
- Çözümleme,
- Tasarım,
- Gerçekleştirme,
- Kullanım ve bakım.
Bu beş aşama kimi zaman birbirinden kesin sınırlarla ayrılırken, çoğu zaman kısmen ya da tümüyle iç içe geçmekte ya da yinelenmektedir. Aşamaları ayırmak, sistem geliştirme sürecinde öngörülebilirliği artırmakta ve projelendirmeyi kolaylaştırmaktadır. Buna karşın aşamaların yinelenebilmesi (iterasyonlar), gerek geliştirme sürecine, gerekse geliştirilen sisteme esneklik kazandırmakta; sistemin geliştirme ve kullanım koşullarına uyumunu artırmaktadır.[2] Sistemler yaşam döngüsünün sonunda, teknolojik eskime, sistem kapasite ve kabiliyetlerinin yetersizliği, sistem bakımının pahalılığı ya da olanaksızlığı gibi nedenler yüzünden kullanımdan kaldırılmakta ve yerlerine yenileri gelmektedir. Kullanım ve bakım aşamasından önceki dört aşama (planlama, çözümleme, tasarım ve gerçekleştirme) sistem geliştirme döngüsü olarak adlandırılmaktadır.[1]
Bir bilişim sistemi ya da yazılım uygulaması geliştirilirken, sistem özelliklerine ve geliştiricilerin bilgi ve becerilerine göre şu yöntemlerden biri kullanılmaktadır:[3][4]
- Yapılandırılmış sistem çözümlemesi ve tasarımı (İng. structured systems analysis and design; kısaca SSAD);
- Sarmal model (İng. spiral model);
- Hızlı uygulama geliştirme (İng. rapid application development; kısaca RAD);
- Ortak uygulama tasarımı (İng. joint application design; kısaca JAD);
- Nesne yönelimli çözümleme ve tasarım (İng. Object-oriented analysis and design; kısaca OOAD);
- Prototipleme (İng. prototyping);
- Çevik programlama (İng. agile programming);
- Aşırı programlama (İng. extreme programming);
- Scrum (İng. Scrum).
Kaynakça
- Mc Leod, Jr., R. ve G. Schell. (2001). Management Information Systems. 8. Basım.S. 123. Prentice Hall.
- Satzinger, J., R. Jackson ve S. Burd. (2009). Systems Analysis and Design in a Changing World. 5. Basım. S. 38-39. Course Technology.
- Dennis, R., B. H. Wixom ve R. M. Roth. (2006). Systems Analysis Design. 3. Basım. S. 8-18. Wiley.
- Satzinger, J., R. Jackson ve S. Burd. (2009). Systems Analysis and Design in a Changing World. 5. Basım. S. 39-62. Course Technology.