A mathematical method for agile software design : an application


Tezin Türü: Yüksek Lisans

Tezin Yürütüldüğü Kurum: Marmara Üniversitesi, Türkiye

Tezin Onay Tarihi: 2019

Tezin Dili: İngilizce

Öğrenci: Hüseyin Ardıç

Eş Danışman: HÜSEYİN SELÇUK KILIÇ, GÜLFEM TUZKAYA

Özet:

Proje yönetim metodolojileri , projelerin başarısında hayati bir rol oynamaktadır. Waterfall türü eski metodolojiler müşteri ihtiyaçlarını karşılama, proje kapsamındaki değişiklikleri, teslimat süresini ve maliyeti etkin bir şekilde yönetme konusunda bazı eksikliklere sahiptir. Eski proje yönetimi metodolojileri ile ilgili problemler nedeniyle yazılım mühendisliği projelerinde çevik (agile) proje yönetim metodolojileri son yıllarda popüler hale gelmiştir. Çevik yöntemlerin hemen hemen hepsinde, bir proje kullanıcı hikayeleri (story) olarak isimlendirilmiş parçalara bölünmüştür. Bu kullanıcı hikayelerinin planlanması, projenin başarıyla tamamlanmasında önemli bir rol oynar. Bir hikaye planının mükemmelliği üzerinde çeşitli faktörlerin etkisi vardır, bunlardan bazıları kullanıcı hikayelerinin müşteri gözündeki değeri, karmaşıklığı ve birbirleriyle ilişkileridir. Bu çalışmada, kullanıcı hikayelerinin müşteri gözündeki değeri, karmaşıklıkları ve kullanıcıların memnuniyeti dikkate alınarak optimum bir kullanıcı hikaye planı bulmak için çok amaçlı bir tamsayılı doğrusal programlama modeli önerilmiştir. Çok amaç fonksiyonlu bir problem ile başa çıkmak için epsilon-kısıt (ε-constraint) methodu kullanılmıştır. Gerçek bir proje modelimize uyarlanıp genel amaçlı bir MIP solver kullanılarak çözülmüştür. Elde edilen sonuçlar incelenip analiz edilmiştir. -------------------- Project management approaches play a vital role in the success of projects. Old methodologies like waterfall approach have some problems in meeting customer needs, managing changes in project scope, delivery time and cost effectively. Due to the problems related to the old project management methodologies, agile project management in software engineering projects has become popular in the last years. In almost all of the agile methodologies, a project is split into functionalities, labelled as user stories. Putting these stories in an order secures the completion of the project successfully. Various factors have effects on the excellence of a story plan, such as business value, complexity and affinity of the stories which are processed together. In this paper, a multi-objective integer linear programming model is proposed to find a story plan considering business value, complexity and user experience. The ε-constraint method is used for dealing with the multi objective problem efficiently. The problem is solved by using a general-purpose MIP solver. A numerical example is considered, and outputs are analysed.