BASAMAKLI CMMI MODELİ ile EXTREME PROGRAMMING METODUNUN DEĞERLENDİRİLMESİ

Günümüzde yazılım sistemlerinin iş alanlarının temel ve vazgeçilmez bir bileşeni olmasıyla yazılım geliştirme de kritik bir önem kazanmıştır. Son yirmi yılda yazılım geliştirmede kullanılan kalite sistemlerini ve süreçlerini değerlendirmek, yazılımda kalite sertifikasyonunu sağlamak, süreçleri iyileştirmek ve yetenek belirlemek için çeşitli modeller geliştirilmiştir. Son birkaç yıl içinde bunlar arasında en yaygın kullanılanı CMMI modeli olmuştur. Geliştirilen bu süreç değerlendirme modelleri ile büyük ölçekli birçok yazılım firması yazılım ürünleri geliştirmek için süreç odaklı yaklaşımlar benimsemişlerdir. Ancak bu modeller, özellikle küçük ölçekli yazılım firmaları için yerine getirilmesi zor görünen şartlar içermektedirler. Bu nedenle 1990’lı yılların sonuna doğru, yazılım geliştirme süreçlerine alternatif bir bakış açısı olarak daha esnek ve uygulama kolaylığı var gibi görünen Çevik Metotlar geliştirilmiştir. En belli başlısı Extreme Programming olan çevik metotlara Scrum, RUP, Crystal Family gibi diğer örnekler verilebilir. Bu çalışmada, CMMI yazılım süreç değerlendirme modeli çerçevesinde bir yazılım geliştirme metodu olan Extreme Programming değerlendirilmiştir. Bu değerlendirme, CMMI 2. düzey süreç alanlarının Extreme Programming’in özel uygulamaları ve yaşam döngüsünün özellikleri tarafından karşılanıp karşılanmayacağı sorusuna cevap aramaktadır

Evaluation of Extreme Programming Method with CMMI Staged Model

As a consequence of software systems becoming an integral and indispensable component of business operations, software development has attained critical importance. Several models have been developed in the last 20 years or so, to aid in the establishment and assessment of quality systems for software development, as well as improving processes and determining capability. CMMI is currently the most widely accepted and adopted one of these models. Many large scale software development firms have based their development operations on well defined processes, derived from such models as CMMI. However the requirements of comprehensive models such as CMMI may be difficult to meet by smaller firms which prefer more informal ways. For this reason the so called agile methods have gained popularity among small scale firms since the late 1990s. Perhaps the most popular of the agile methods is Extreme Programming or XP, other examples being Scrum, RUP, and Crystal Family. The purpose of this paper is to evaluate the XP, which is a software development method, in terms of CMMI which is a process assessment model. In other words, we will try to answer if and to what extent XP practices can meet the CMMI level 2 specifications, and what additional practices may or may not be necessary for full compliance

___

  • Çevrimiçi: http://www.sei.cmu.edu/cmm/, Eylül, 2008.
  • Çevrimiçi: http://www.sqi.gu.edu.au/spice/what.html, Eylül, 2008.
  • Sarıdoğan, E., “Yazılım Mühendisliği”, Papatya Yayıncılık, S. 110-112, 2004.
  • Rising, L., Janoff, N. S., “The Scrum Software Development Process for Small Teams”, IEEE Software, July/August 2000
  • “Rational Unified Process - Best Practices for Software Development Teams”, IBM, 2001
  • Çevrimiçi: http://en.wikipedia.org/wiki/Agile_Manifesto, Eylül, 2008.
  • Borandağ, E., “Basamaklı CMMI Modeli ile Extreme Programming Metodunun Değerlendirilmesi”, Maltepe Üniversitesi, Fen Bilimleri Enstitüsü, Yüksek Lisans Tezi, 2006.
  • Paulk, M., C., “Extreme Programming from a CMM Perspective”, IEEE Software, November 2001.
  • Carnegie Mellon University, “History of CMMI”, Software Engineering Institute, p. 17, 2002.
  • Hjenling, J., “CMMI Integration”, Course Papers p. 5, 2004.
  • Chrissis, M. B., Konrad, M., Shrum, S., “CMMI: Guidelines for Process Integration and Product Improvement”, Addison Wesley, 2005.
  • Beck, K., “Extreme Programming”, Addison Wesley, 2002.
  • Brewer, J., “Extreme Programming FAQ”, çevrimiçi: www.java.com\FAQ.htm, 2004.
  • Çevrimiçi:www.agilemanifesto.com\12practice.html, Mayıs, 2006.
  • Çevrimiçi: www.xporganization.com\xp.html, Nisan, 2006.
  • Hurtado, J., A., “Agile Methods”, 2003.
  • İnce, F., “Yazılım Kalitesi ve Modelleri”, Ders Notları, Maltepe Üniversitesi, Fen Bilimleri Enstitüsü, 2004.
  • Kalaycı, O., “Uygulamalı CMMI/XP Eğitimi”, Nitelik Danışmanlık, 2006.
  • Layman, L., Williams, L., Daiman, D., Bures, H., “Essential communication practices for Extreme Programming in a global software development team”, Journal of Information and Software Technology, Elsevier, 2006