Bir çevik yazılım geliştirme sürecinin uyarlanması ve uygulanması

1990'lı yıllarda "çevik" adı altında toplanan yeni yazılım geliştirme yaklaşımları, kısa süreli ve değişken projeler için yeni metodolojiler önermiştir. Çalışan yazılımı kapsamlı belgelemeye tercih eden, plan izleme yerine değişime açık ve müşteriyle sıkı bir etkileşim içinde olan bu metodolojiler sayesinde klasik yaklaşımlarla başarılması riskli projeler, kabul edilebilir ölçüde başarılı olabilmiştir. Bu çalışmanın konusunu, hem çevik yaklaşımlarla yazılım geliştirme hem de kullanılması gereken internet tabanlı programlama teknolojilerine aşina olmayan bir yazılım ekibi tarafından üniversite otomasyon sisteminin ı geliştirilmesine yönelik proje süreci oluşturmuştur. Bu çalışmada, çevik metodolojiler içinden seçilen pratiklerin proje sürecine nasıl uyarlandığı ve uygulandığı, uygulama aşamasında hangi sıkıntılarla karşılaşıldığı ve bu sıkıntıları çözümleme yolları anlatılmıştır. Ayrıca bu pratikleri uygulayacaklar için önerilerde bulunulmuştur.

Tailoring and implementation of an agile software development procees

In 1990s, a new software development approach named "agile", suggested new methodologies for projects of relatively short duration and changing requirements. Such software projects which start with uncertain requirements are considered risky under classical approaches, but they became fairly successful by using these newer methods. Agile methods favor working software to detailed documentation, they are open to change and they prefer strong interaction with customers. This study reports the results of a project development effort deriving its development process from different agile methods adapted for the circumstances. The project aims to develop a university automation system by a software team which was initially unfamiliar with the agile software development approach and internet based programming technologies. We describe how to tailor and implement the chosen practices from the different agile methods, which challenges were addressed during the implementation, and the ways to solve these challenges. Furthermore, we comment on the experience gained and make recommendations on the implementation of these practices.

___

  • [1]Highsmith, J., "Agile Software Development Ecosystems ", Addison Wesley, 2002.
  • [2]Boehm, B., Turner, R., "Observation on Balancing Discipline and Agility ", Proceedings of the Agile Development Conference, IEEE Computer Society, 2003.
  • [3]Cockbum, A., "Agile Software Development", Addison-Wesley Longman, 2001.
  • [4]Agile Manifesto, Mart 2009, http://agilemanifesto.org
  • [5]Principles Behind the Agile Manifesto, Mart 2009, http://agilemanifesto.org/principles.html
  • [6]Beck, K., "Extreme Programming", Addison Wesley, 2002.
  • [7]Schwaber, K., Agile Project Management with Scrum, Microsoft Press, 2004
  • [8]Agile Unified Process, Mart 2009, http://www.ambysoft.com/unifiedprocess/agileUP.htm 1.
  • [9]Poppendieck, M., Poppendieck, T., Lean Software Development, Addison-Wesley, 2003
  • [10]Microsoft Solution Framework, Mart 2009, http://en.wikipedia.org/wiki/Microsoft_Solutions_Fra mework
  • [11]Turner, M., Microsoft Solutions Framework Essentials, Microsoft Press, 2006
  • [12]Abrahamsson, P., Salo, O., Ronkainen, J., Warsta, J., "Agile Software Development Methods, Review and Analysis ", Espoo 2002, VTT Publications 478.107 p.
  • [13]Augustine, S., "Managing Agile Projects", Prentice Hall, 2005.
  • [14]Fowler, M., Continuous Integration, Mart 2009, http://martinfowler.com/articles/continuousIntegration .html
  • [15]MSF Principles, Mart 2009, http://www.stromboli.co.uk/msf.aspx
  • [16]Hayes, S., Andrews, M., An Introduction to Agile Methods, Mart, 2009 http://www.scribd.com/doc/4465171 /Intro-To-Agile-Methods
  • [17]MSF Risk Management Discipline v. 1.1, Mart 2009,
  • [18]Software Intensive Systems Lean Development, Mart 2009, http://www.itabhi.com/ld.htm
  • [19]DSDM Principles, Mart 2009, http://www.dsdm.org/atern/introduction/principles/