Geri Dön

Assessment of ensemble and cross-project software reliability growth models for industrial projects

Endüstriyel projeler için topluluk ve çapraz-proje yazılım güvenilirliği büyüme modellerinin değerlendirilmesi

  1. Tez No: 866261
  2. Yazar: ELİFNUR ÖZTÜRK
  3. Danışmanlar: DR. ÖĞR. ÜYESİ AYŞE TOSUN KÜHN
  4. Tez Türü: Yüksek Lisans
  5. Konular: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol, Computer Engineering and Computer Science and Control
  6. Anahtar Kelimeler: Belirtilmemiş.
  7. Yıl: 2022
  8. Dil: İngilizce
  9. Üniversite: İstanbul Teknik Üniversitesi
  10. Enstitü: Lisansüstü Eğitim Enstitüsü
  11. Ana Bilim Dalı: Bilgisayar Mühendisliği Ana Bilim Dalı
  12. Bilim Dalı: Bilgisayar Mühendisliği Bilim Dalı
  13. Sayfa Sayısı: 73

Özet

Yazılım güvenilirliğinin ölçülmesi için literatürde bir çok farklı yöntem tanıtılmıştır. Bu yöntemler, yazılım geliştirme hayat döngüsü (SDLC) içerisinde yer alan farklı aşamalara uygun olarak geliştirilmişlerdir. Test ve sonrası aşamalarda ise genellikle Yazılım Güvenilirliği Büyüme Modelleri üzerinde çalışılmaktadır. Yazılım Güvenilirliği Büyüme Modelleri (SRGM'ler), yazılım test faaliyetlerinin sonuçlarına dayalı olarak yazılım güvenilirliğinin tahmini, mevcut durumun ölçümü ve gelecekteki durumun tahmini için yaygın olarak kullanılmaktadır. Yazılım güvenilirliğini tahmin etmek için tanıtılan çeşitli modeller olmasına rağmen, bunların hiçbiri ortak veya genel bir çözüm sağlamaz. Her modelin kendi model dağılım varsayımları vardır, ortalama değer hesaplamaları farklıdır ve ek varsayımlar ile sınırlamalar mevcuttur. Proje verileri incelenerek uygun SRGM'nin bulunması başlı başına zaman alıcı ve zorlayıcı bir iştir. Bir model seçilmeden önce ilk olarak hata verileri detaylı bir şekilde incelenir. Ardından hata oluşma eğrisi incelenir ve içbükey veya s-şekilli model tiplerinden hangisinin kullanılması gerektiğine karar verilir. Hata çözme işleminin yeni bir hataya sebebiyet verip vermediği incelenir. Buna göre mükemmel hata ayıklamayı kabul eden veya kusurlu hata ayıklamanın üstesinden gelen modellerden hangisinin kullanılacağına karar verilir. Modellerin varsayımları bu şekilde tek tek ele alınarak uygun bir SRGM seçimi gerçekleştirilebilir. Birden fazla model için sonuçlar alınıp uyum iyiliği kriterlerine göre değerlendirilir. Örneğin en düşük eğitim hatasına bakılarak model seçimi yapmak mümkündür. Fakat seçilen model uygulandığında aşırı öğrenme durumu ile karşı karşıya kalınabilir. Bu durum özellikle veri yetersizliği ve hata artış eğiliminde ani değişimlerin olduğu projelerde görülmektedir. Bu çalışmanın amaçlarından biri, her durumda iyi sonuçlar alabilen ve SRGM seçim süreci için ekstra efor gerektirmeyen bir yöntem geliştirmektir. Problemlerden bir diğeri ise hangi modeli seçmemiz gerektiği hakkında normalden daha az bilgiye sahip olduğumuz yetersiz verili projelerin güvenilirlik ölçümü ihtiyacıdır. Bu projelerde daha az sürüm duyurusu ile buna karşılık gelen daha az test ve hata verisi yer almaktadır. Bazı projeler ise yüksek miktarda yeniden kullanım kodu içermektedir, bu durumlarda da sürüm sayısı oldukça az olmaktadır, çünkü yazılım zaten belirli bir olgunluk ve güvenilirlik düzeyine ulaşmıştır. Yine proje yönetimi ve testlerin planlanması açısından güvenilirlik tahmini yapılması bir ihtiyaçtır. Tahmin modellerinin genel olarak daha çok veriye sahip olunduğu durumda daha iyi sonuçlar verdiği bilinmektedir. Bu durum birçok katı varsayım içeren ve bilinen parametre tahmin yöntemleri ile çözülen SRGM'ler için de geçerlidir. Bu sebeple yetersiz veri setine sahip projelerin tahmini yapılırken başka proje verilerinden faydalanılabileceği düşünülmektedir. Bu yöntem literatürde çapraz proje tahmini olarak karşımıza çıkmaktadır. Fakat bu yöntem genellikle projelerin kendi tarihsel verisi ile yapılan tahminlerden daha kötü sonuç vermektedir. Bir şekilde benzer olduğuna karar verilen çapraz proje verisi ile yapılan tahminler bazen çok iyi bazense çok kötü sonuçlar verebilmektedir. Tez kapsamında amacımız, çapraz proje tahminlerini geliştirerek literatüre mütevazı bir katkı sağlamak ve sınırlı veriye sahip projelerde belirli bir güvenilirlik düzeyinde tahminler elde etmektir. Bu çalışmada, proje verilerinin çoğunlukla uyduğu bir SRGM bulunurken herhangi bir ekstra çabayı gerektirmeyen yeni bir topluluk modeli (EM) öneriyoruz. Her şeyden önce, bir topluluk modeli oluşturmak için ne tür SRGM'lerin kullanılabileceği incelenmiştir. Ortak varsayımları mevcut proje verileriyle daha iyi uyuştuğu için başarısızlık sayım modellerinin kullanılmasına karar verilmiştir. MLE'den farklı olarak başlangıç parametre tahminlerine duyarsızlığı ve yüksek tahmin performansı nedeniyle parametre tahminleri için Beklenti-Maksimizasyon yöntemi seçilmiştir. Beklenti-Maksimizasyon yöntemini kullanabilmek için sonlu SRGM'ler kullanılmıştır, çünkü sonsuz modellerde bazı parametrelerin kapalı biçim çözümü bulunamamaktadır. Mevcut veri seti, belirli bir test süresine karşılık gözlemlenen hata sayısından oluştuğu için, modelde kullanılacak veri türü olarak Aralık Zaman Verisi seçilmiştir. Verilerin %80'i eğitim verisi, %20'si ise test verisi olarak ayrılmıştır. Sonuç olarak, model seçim zorluğunu ortadan kaldırmak ve modele bağlı varsayımlardan kaçınmak için 10 tane sonlu SRGM kullanan bir topluluk yaklaşımı geliştirilmiştir. Bu yöntem, SRGM'ye en düşük eğitim hatasıyla yaklaşmaya çalışır ve aynı zamanda biraz daha kötü eğitime sahip ancak iyi test sonuçlarına sahip modelleri de dikkate alır. EM bizi doğru SRGM seçim sürecinin belirsizliğinden büyük ölçüde kurtarmış ve birçok durumda tatmin edici sonuçlar elde etmemize yardımcı olmuştur. Önerdiğimiz diğer yaklaşımımız, çapraz projeler topluluğudur (ECP), bu yöntemle, devam eden projelerin tekli çapraz proje tahminlerinin sonuçlarının birleştirilmesiyle çok daha iyi sonuçlar elde edilir. ECP yaklaşımı birkaç aşamadan oluşur. Çapraz projeler ve hedef projenin verilerin %50'si model girdilerini oluşturur. Hedef projenin geri kalan %50'si test verisi olarak ayrılır. Mann-Whitney U testi, her projenin hata verilerinin ilk yarısını diğerleriyle karşılaştırmak için kullanılır. Eğer veri sayısı azsa ve normal dağılım göstermiyorsa parametrik testler kullanılamadığı için parametrik olmayan bu test uygulanmıştır. Test iki veri setini karşılaştırmakta ve bu veri setlerinin dağılımlarının farklı olup olmadığı bilgisini asimptotik anlamlılık değerine göre vermektedir.“Çapraz Proje Tahminleri”aşamasında hedef proje, benzer kabul edilen çapraz projelerin en iyi modeli kullanılarak tahmin edilir. Çapraz proje tahminlerinde hedef projenin verileri kullanılmaz. Projelerin birim saatte çıkan hata sayıları her sürüm için bulunup ortalamaları alınarak bir oran oluşturulur. Çapraz proje tahminleri daha sonra kendi oranları ile ters orantılı, hedef projenin oranı ile doğru orantılı olacak şekilde çarpılır. Son aşamada tekli çapraz proje tahminleri eşit ağırlıklarla birleştirilir. Tahmin sonuçları, ortalama karekök hatasını (RMSE) elde etmek için test verileriyle karşılaştırılır. Önerilen yaklaşımlar için, uygulama alanları benzer ve aynı firmaya ait olan altı gerçek proje verisi kullanılarak sonuçlar elde edilmiştir. EM kullanımı ile altı projeden beşinde eğitim RMSE'si, AIC ve BIC uyum iyiliği kriterine göre seçilen modellerin en az birinden daha iyi ya da eşit sonuçlar elde edilmiştir. Yalnızca bir projede kriterlere göre seçilen modellerden daha kötü sonuç elde edilmiştir. Buna karşın, tekli SRGM sonuçları incelendiğinde EM modelinin bizi yanlış SRGM seçimi yapılması durumunda elde edeceğimiz yüksek RMSE değerlerinden tüm projeler için kurtardığı görülmüştür. Bireysel SRGM'ler kullanılarak elde edilen test sonuçlarının en iyi test sonucu ile arasındaki RMSE farkı 0,39 ile 8,4 arasında iken, EM modelinin sonuçlarının RMSE farkı 0,15 ile 1,85 aralığındadır. Proje içi verilerin azlığında, çapraz-proje SRGM'lerin güvenilirlik tahminlerini iyileştirip iyileştirmediği konusunda sonuçlarımız yetersiz kalmaktadır. ECP yaklaşımı,“Eğitim RMSE”değerlerine göre en iyi seçilen modelle karşılaştırıldığında, üç projede geçmiş proje verilerine dayalı tahminlerden daha iyi sonuçlar vermektedir. Öte yandan bir projede, mevcut proje tahmini sonucundan daha kötü olmasına rağmen çok benzer bir sonuç üretmektedir. Diğer iki projede ise ECP'nin mevcut proje tahminlerinden daha kötü bir sonuç verdiği görülmüştür. Bunun sebebi projelerden birinin diğerlerine göre daha çok verisi olduğu ve %50'lik verisinin bile diğer projelerin neredeyse tam veri sayısına eşit olmasıdır. Yani bu proje kapsamında verinin yetersizliği tartışılabilir. Diğer projede ise beklenenin aksine %50'lik veri ile elde edilen mevcut proje tahmini %80'lik veri ile elde edilenden bile daha iyi gelmiştir. Bu proje için, mevcut proje tahmininde SRGM modellerinin yetersiz veri ile çok iyi uyuştuğu görülmüştür, bu durumda çapraz proje tekniğiyle bundan daha iyi bir sonuç alınamamıştır. Yalnızca çapraz proje tahminleri karşılaştırıldığında ise, önerilen ECP yaklaşımı, üç proje için tüm tekli çapraz proje tahminlerinden daha iyi performans göstermektedir. Kalan üç proje için, projeler arası tahminlerin arasında bir yerde ama her zaman en iyi olana çok daha yakın bir sonuç elde edilmektedir. Elde edilen sonuçlar özellikle çapraz proje tahminleri ve yetersiz veri durumunda tekli SRGM'lerin nasıl çalışacağı gibi durumlar elbette veriden veriye farklılık gösterebilmektedir. Veri setindeki proje sayısı arttırıldığında tahminlerin iyileşmesi beklenmektedir. Bu tez çalışmasında bir çok farklı varsayım içeren SRGM'lerin seçim zorluğu ve yetersiz veri durumunda tahmin zorluğunun çözümü için yaklaşımlar sunulmuştur. Bu çalışmanın yardımıyla, SRGM'lerle ilgilenen herhangi bir uygulayıcı veya araştırmacının sonuçlarımızdan yararlanacağına inanıyoruz.

Özet (Çeviri)

Various methods have been introduced in the literature to measure software reliability. Looking at the literature, it can be deduced that these models have been developed in accordance with the different phases in the software development life cycle (SDLC). A closer look into the literature reveals that generally Software Reliability Growth Models are applied in testing and post-test phases. To estimate software reliability, quantify the current state of the system, and forecast the future state using the outcomes of software testing activities, Software Reliability Growth Models (SRGMs) have been widely used. And there are numerous methods for predicting software reliability, however, none of them gives a standard or general solution as each model has its own distribution characteristics, mean value functions, and additional assumptions and limitations. Moreover, the selection of models suitable for the project data is a challenging and time-consuming task in itself. If several models are applied and then decided according to the goodness of fit criterion it is probable that, the models may overfit. This situation is especially seen in projects with little data and sharp changes in the fault trend. In this line, having seen the shortcomings of the existing models, one of the aims of this thesis is to develop a model that can get good results in any situation and does not require extra effort for the SRGM selection process. Another issue is the necessity of measuring the reliability of the projects with limited data. These projects have fewer releases resulting in fewer test and fault data. It is commonly acknowledged that predictive models perform better with more data. This is also valid for SRGMs. Different project data can be used as training data to estimate the number of faults for a project with a little data set. The literature names this technique as the cross-project prediction. However, as expected, a satisfactory result cannot be obtained when parameter estimates from another project are used directly in the estimations for the target project. In order to reach more reliable results, it would be useful to perform similarity analyses in this case. Throughout the thesis, our objective is to make a humble contribution to the literature by improving cross-project predictions and enhancing predictions in projects with limited data. In this thesis, we propose a new ensemble model (EM), which helps to prevent any extra work while finding out an SRGM, where the project data is fitting and suitable mostly. To build the ensemble model, we have decided to use failure count models as their common assumptions better fit with the available project data. We prefer to use Expectation-Maximization as the parameter estimation method due to insensitivity to initial parameter estimations unlike MLE and its high estimation performance. The Interval Time Data is chosen as the data type for model formation. Finally, an ensemble approach using 10 finite SRGMs is developed to eliminate model selection difficulty and avoid model-dependent assumptions. This model attempts to approach SRGM with the lowest training error while also considering SRGMs with slightly worse training but good test results. The other approach is the ensemble of cross projects (ECP), ECP consists of several phases. Inputs are cross-projects and the target project's first half of the data. The Mann-Whitney U test is used to compare the first half of each project's failure data against the others. In the“Cross Project Predictions”phase, the target project is estimated using the best model of similar cross-projects. Following that, cross-project proportions are calculated using the average of the number of unit faults per project version. At the final stage, the single crossover project combines the estimates with equal weights. To obtain the root mean square error (RMSE), the estimation results are compared with the test data. The proposed methodologies are tested using data from six real-world projects with similar application areas and belonging to the same company. When the EM model is used instead of the models selected according to the RMSE, AIC, and BIC goodness-of-fit criteria, we achieve either better or equal results in five out of six projects. In only one project, worse results are obtained than the models selected according to the criteria. On the other hand, when the results of individual SRGMs are examined, it is seen that the EM model saves us from the high RMSE values, that we would obtain if we chose the wrong SRGM for all projects. The difference between individual SRGM test results and the best result is between 0.39 and 8.4, but the range between EM model results and the best result is between 0.15 and 1.85. The proposed ECP approach has outperformed all independent cross-project predictions for the three projects in cross-project predictions. For the remaining three projects, the results are within the range of the single cross-project predictions and are significantly close to the good estimate. However, our results are inconclusive about whether the cross-project SRGMs improve reliability estimates in the absence of within-project data. In three out of six projects, superior outcomes are obtained as compared to estimations based on the projects' own historical data.

Benzer Tezler

  1. Uluslararası boyutuyla vergi incelemeleri

    Tax examinations with international aspects

    CANSU DAĞ BEREKET

    Doktora

    Türkçe

    Türkçe

    2021

    HukukGalatasaray Üniversitesi

    Kamu Hukuku Ana Bilim Dalı

    PROF. DR. HAKAN ÜZELTÜRK

  2. A computational approach for predicting host specificity of adenoviruses

    Adenovirüslerin konak özgüllüğünü tahmin etmede kullanılacak bir hesaplama yöntemi

    ONUR CAN KARABULUT

    Yüksek Lisans

    İngilizce

    İngilizce

    2020

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve KontrolMuğla Sıtkı Koçman Üniversitesi

    Biyoenformatik Ana Bilim Dalı

    DR. ÖĞR. ÜYESİ BARIŞ ETHEM SÜZEK

  3. Trabzon kentsel dokusunda morfolojik analiz

    Morphological analysis of the built environment in Trabzon

    PELİN DURSUN

    Doktora

    Türkçe

    Türkçe

    2002

    Mimarlıkİstanbul Teknik Üniversitesi

    Mimarlık Ana Bilim Dalı

    PROF. DR. GÜLSÜN SAĞLAMER

  4. Mevcut betonarme okul binalarında güçlendirme perdelerinin etkinliğinin doğrusal olmayan dinamik analiz ile irdelenmesi

    Investigation of the rc infill wall effectiveness in the rehabilitation of existing rc school buildings employing nonlinear dynamic analyses

    ORKUN GÖRGÜLÜ

    Doktora

    Türkçe

    Türkçe

    2015

    İnşaat Mühendisliğiİstanbul Teknik Üniversitesi

    İnşaat Mühendisliği Ana Bilim Dalı

    DOÇ. DR. BEYZA TAŞKIN AKGÜL

  5. Automated scoring of CERBB2 receptors using histogram based analysis of immunohistochemistry breast cancer tissue images

    İmmünohistokimya meme kanseri görüntülerininhistogram tabanlı analiz kullanılarakCERBB2 reseptörlerinin otomatik olarak skorlanması

    KAAN AYKUT KABAKÇI

    Yüksek Lisans

    İngilizce

    İngilizce

    2019

    Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrolİstanbul Teknik Üniversitesi

    Bilişim Uygulamaları Ana Bilim Dalı

    DOÇ. DR. BEHÇET UĞUR TÖREYİN