1 / 17

YAZILIM MÜHENDİSLİĞİNDE BAŞARILI DENEYLERİ NASIL GERÇEKLEŞTİREBİLİRİZ?

YAZILIM MÜHENDİSLİĞİNDE BAŞARILI DENEYLERİ NASIL GERÇEKLEŞTİREBİLİRİZ?. Çağatay ÇATAL* , ** ve Banu DİRİ** cagataycatal@ieee.org , banu@ce.yildiz.edu.tr . * TÜBİTAK-MAM, Bilişim Teknolojileri Enstitüsü ** Yıldız Teknik Üniversitesi , Bilgisayar Mühendisliği. İÇERİK. Motivasyon

whistler
Télécharger la présentation

YAZILIM MÜHENDİSLİĞİNDE BAŞARILI DENEYLERİ NASIL GERÇEKLEŞTİREBİLİRİZ?

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. YAZILIM MÜHENDİSLİĞİNDE BAŞARILI DENEYLERİ NASIL GERÇEKLEŞTİREBİLİRİZ? Çağatay ÇATAL*, ** ve Banu DİRİ** cagataycatal@ieee.org, banu@ce.yildiz.edu.tr * TÜBİTAK-MAM, Bilişim Teknolojileri Enstitüsü **Yıldız Teknik Üniversitesi, Bilgisayar Mühendisliği

  2. İÇERİK Motivasyon Giriş Deneysel Geçerleme İhtiyacı Yetersiz Deneylerin Nedenleri Deneylerin Tekrarlanabilirliği YM için Deney Süreci Örnek Raporlama Formatı Sonuçlar

  3. MOTİVASYON NATO Yazılım Mühendisliği Konferansı, 1968, Almanya International Conference on Software Eng., 1973, ABD UYMS ilk defa 2003, Türkiye YAKLAŞIK 40 YIL ! YETERSİZ OLGUNLUK DÜZEYİ ! “Yazılım fonksiyonel büyüklüğü problemi” IFPUG, Mark-II, COSMIC, Use Case Points (UCP), Uzman Servis yönelimli mimari (SOA), Model Güdümlü Mimari (MDA), Ürün Hattı Mimarisi (PLA), İlgiye Yönelik Mimari “Nesnel veriler” vs “Popülerlik ve Pazarlama stratejisi”

  4. GİRİŞ Yazılım yeniden kullanılabirliği; 1960’lar alt rutinler, 1970’lerde modüller, 1980’lerde nesneler, 1990’larda bileşenler ve 2000’lerde yazılım ürün hatları FonksiyonelNesneye yönelikBileşen tabanlı Üretkenlik ??? Geçen 30 yıla rağmen üretkenlik incelenmemiş ve yıllar sonra C++ dilinin üretkenlikdeki olumsuz etkileri raporlanmış (Hatton, 1998) Yazılım üzerinde deneyleri gerçekleştirerek teoriler ortaya koyan YM dalı, “Deneysel Yazılım Mühendisliği”

  5. DENEYSEL GEÇERLEME İHTİYACI 1968 YAZILIM KRİZİ, deneylerle doğrulanmamış, öznel Krizden bahsediyorsak, diğer dallardaki kusur oranları ile kıyaslama yapılmalı (Maibaum, 1997) Yazılım Krizi olmadığı iddia ediliyor (Tichy,1995) Deneysel geçerleme ihtiyacı bulunan 400 YM makalesinden %40 ’ında hiç deneysel bilgi yok, diğer disiplinlerde ise bu oran %15. (Zelkowitz, 1998) Yazılım dergilerindeki makalelerden sadece %30’unun deneysel geçerliliği var ve sadece %10’u formal bir yöntem izliyor

  6. YETERSİZ DENEYLERİN NEDENLERİ Geleneksel bilimsel yöntemler uygun değil iddiası Eğitim sırasında, bilimsel yöntemlerin önemi YM için vurgulanmalı İstatistiksel verileri yorumlamadaki yetersizlik İstatistik dersi sırasında, YM ile ilişkili örnekler seçilmesi YM için deneysel tasarım ve analiz kitaplarının yetersizliği Türkçe makaleler ve kitaplar yayımlanmalı

  7. YETERSİZ DENEYLERİN NEDENLERİ Yayımlanabilir olmadığı düşünülüyor. Birçok disiplinde, Teorisyenler ve Deneyciler Y.lisans ve Doktora tezleri ile Deneyci sayısı artmalı Teknoloji çok hızlı değişiyor, deneye gerek yok! Çok fazla faktör var, kontrolü zor! Deney yapmak çok pahalı!

  8. DENEYLERİN TEKRARLANABİLİRLİĞİ 1962’de Schibuzawa, TRF isimli hormonu izole ettiğini ve aminoasit oluştuğunu iddia etmiş. Ancak diğer laboratuvarlarda aktif olmamış ve iddialarının güvensiz olduğu tespit edilmiş. 1962 yılından sonra Schibuzawa hiç makale yazmamış ve iddiaları zamanla kaybolmuş 10 yıl sonra Guillermin ve Schally, TRF izolasyonunu gerçekleştirmiş (aminoasit oluşumu dışında) ve NOBEL ödülünü kazanmış. 1989’da Pons ve Fleischmann isimli fizikçiler soğuk füzyonu gerçekleştirdiklerini iddia etmiş ancak deneyler tekrarlanamamıştır. Deneyler açık ve yeterli şekilde raporlanmalı!

  9. YM İÇİN DENEY SÜRECİ

  10. DENEY SÜRECİ1. Tanımlama Deney neden yapılıyor? Çalışmanın nesnesi (object of study): Çalışılan nesneler YSA ve Bayes ağlarıdır. Amaç: Yazılım kusur kestirimi problemi için 2 yöntemin performansını değerlendirmektir. Kalite odağı (quality focus): Kestirim performanslarının güvenilirliğidir. (reliability) Perspektif: Perspektif, araştırmacının bakış açısıdır. Bağlam (context): Deney NASA’nın açık veri kümeleri üzerinde gerçekleştiriliecektir.

  11. DENEY SÜRECİ2. Planlama 2.1 Bağlam Seçimi:Deneyde görev alanların, sonuçlara etkisi büyüktür. 4 boyutta değerlendirilebilir. (Çevrim içi/dışı, öğrenci/profesyonel, basit/gerçek problemler, spesifik/genel) 2.2 Hipotez formülasyonu:Sıfır (null) ve alternatif hipotezler ifade edilmelidir. H0: Pysa >= P ba H1: Pysa < Pba İstatistiksel testler bu sıfır hipotez red edilir ya da kabul edilir. 2.3 Değişkenlerin Seçimi:Bağımsız ve bağımlı değişkenler seçilir. Kusur sayısı, bağımlı değişken; CC, LOC bağımsız değişken 2.4 Öznelerin Seçimi:Bir popülasyondan örneklem alınmasıdır. “Olasılıklı” ya da “olasılıklı olmayan” örnekleme Olasılıklı ise; basit rasgele, sistematik, tabakalı rasgle, uygunluk, kota örneklemesi şeklinde 5’e ayrılır.

  12. DENEY SÜRECİ2. Planlama 2.5 Deney Tasarımı: Sıfır hipotezini red edebilmek için tasarım. Tek faktörlü ve 2 işlemli:Örneğin; yeni bir test yöntemi olan A ile B kıyaslanacak olsun. Test yöntemi faktör olarak, A ve B de işlem (treatment) olarak ifade edilecektir. 2 ye ayrılır. Tamamen rasgele tasarım:Özneler, 2 farklı yönteme rasgele atanır. Analiz için T-test ya da Mann-Whitney kullanılır Eşli kıyaslama tasarımı: Her özne 2 işlemi aynı nesne üzerinde uygular ancak uygulama sırası farklıdır. Analiz için; eşli T-test, işaret testi, Wilcoxon kullanılabilir. Tek faktörlü ve 2 işlemden fazlalı:A, B, C kıyaslansın. Analiz için ANOVA ya da Kruskall-Wallis kullanılır. 2 faktörlü:2 işlem, 2 faktör olsun. İsterler belgesi B faktörü, tasarım yaklaşımı A faktörü olsun ve tasarım belgelerinin anlaşılırlığı üzerine deney gerçekleştirilsin. İyi ve kötü şeklinde isterler belgesi için 2 işlem değeri, yapısal ve nesneye yönelik tasarım şeklinde 2 işlem değeri kullanılabilir. Analiz için, ANOVA. 2 faktörden fazlalı:Faktöriyel tasarım olarak adlandırılır. Montgomery’nin kitabı incelenebilir.

  13. DENEY SÜRECİ2. Planlama 2.6 Enstrümantasyon:Nesneler (kod, tasarım veya test belgesi), rehberler (katılımcıların işlerini kolaylaştıracak belgeler), ölçüm enstrümanları(formlar, mülakat soruları) belirlenmelidir. 2.7 Geçerlilik Değerlendirmesi:Deney sonuçlarının genelleştirilmesi sırasında oluşabilecek tehlikeler belirlenmelidir. Sonuç geçerliliği: Ölçümlerin güvenilir olmaması, gürültüler oluşması, istatistiksel teslerin varsayımlarının ihlalil, özel sonuca ulaşmayı düşünerek deneyi yapma (fishing) İç geçerlilik (internal):Tekli gruplar için, deneyin yapıldığı zamanın anlamının olup olmadığı, motivasyonun zamanla azalması... Yapı geçerliliği (construct): iki yöntem kıyaslanırken birbirine göre iyi olma durumunun ne anlama geldiğinin tanımlanmaması,... Dış geçerlilik (external): Endüstride güncel test araçları kullanırken deneyde eski araçlarla çalışmak, ...

  14. DENEY SÜRECİ (3 ve 4) 3. Operasyon:Hazırlık, yürütme ve veri geçerliliği aşamalarından oluşur. Hazırlıkta katılımcılar bilgilendirilmeli. Veriler elle, otomatik araçla ya da mülakatlarla toplanabilir. Veri geçerliliği için, aykırı değer analizi (outlier) yapılabilir. 4. Analiz ve Yorumlama: Tanımlayıcı istatistik: Veri kümesinin dağılımı incelenerek görselleştirilir. Veri kümesini azaltma: Aykırı değerler, çıkarılmalı. Gereksiz bilgi taşıyan veriler de PCA veya faktör analizi ile çıkarılabilir. Hipotez testi: Parametrik ve parametrik olmayan diye 2ye ayrılır. T-test, F-test, eşli T-test, ANOVA parametrik testlerdendir. Chi-2, Binom, Mann-Whitney, Wilcoxon, işaret testi, Kruskal-Wallis parametrik olmayan gruba girer. Hipotez testleri gerçekleştirildikten sonra hipotezlerin red ya da kabul durumu belirlenerek deney yorumlanır.

  15. DENEY SÜRECİ- Sunum ve Paketleme 1. Giriş 1.1. Problem Tanımı 1.2. Tanımın Özeti 2. Planlama 2.1 Bağlam Seçimi 2.2 Hipotez Formülasyonu 2.3 Değişkenlerin Seçimi 2.4 Öznelerin Seçimi 2.5 Deney Tasarımı 2.6 Enstrümantasyon 2.7 Geçerlilik doğrulaması 3. Operasyon 3.1 Hazırlık 3.2 Yürütme 3.3 Veri geçerliliği 4. Analiz ve Yorumlama 4.1 Tanımlayıcı istatistik 4.2 Veri azaltma 4.3 Hipotez testi 5. Tartışma ve Sonuçlar 6. Ek

  16. SONUÇLAR Türkiye’deki araştırmacılar, deneylere daha fazla önem vererek yeni teoriler ve yaklaşımlar üretmenin yanı sıra varolan teorilerin geçerliliğini de sağlamalıdır. Ulusal yazılım sektörümüz için, en iyi uygulamalar üniversitelerde ve sonrasında şirketlerde deneysel yöntemlerle ele alınmalıdır. Aksi halde; gittikçe artan yaklaşımlar, yöntemler, araçlar ve teknikler ortamında nesnel deneysel veriler yerine modaya uyarak seçimler gerçekleştirilebilir ve ulusal bir yazılım krizi doğabilir. Açıklanan süreç ve raporlama formatı ile, deneysel makalelerimizin kabul oranı artacaktır. Süreç iyileştirme çalışmalarında firmalar, bu çalışmadaki süreci uygulayabilir ve nesnel bilgiler oluşturabilir. 2007 yılında PROFES (product focused software process improvement) konferansındaki en iyi makale, açıklanan şekilde raporlanmıştır.

  17. TEŞEKKÜRLER TÜBİTAK MAM BTE PK. 21, 41470 GEBZE-KOCAELI Tel: +90-262-677 25 00 ; Faks: +90-262-646 31 87 www.bte.mam.gov.tr

More Related