Yazılım Kalite Ölçümü
42 Questions
5 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

Yazılım ölçümü yapılmadan, yazılımın kontrolü nasıl olur?

Yazılım üretimi ölçülemez ise kontrol edilemez.

Yöneticiler, yazılımın ölçülmesini neden önemli bulurlar?

  • Projeler için ölçülebilir hedefler belirlemek için. Örneğin, yazılım sisteminin ne kadar güvenilir olması gerektiği. (correct)
  • Şirkette kullanılmaya başlanan yöntem veya yazılım geliştirme araçlarının etkinliğini ölçmek için. (correct)
  • Tüm seçenekler doğru. (correct)
  • Farklı bölüm çalışanlarının ücretlerini belirlemek için. (correct)
  • Yazılım üretimi için maliyeti tahmin etmek için. (correct)
  • Farklı projelerde geliştirilen yazılım ürünlerini karşılaştırmak için. (correct)
  • Yazılım mühendisleri, yazılımları neden ölçer?

    Yazılım mühendisleri, süreç ölçümleri ile sistemin kalitesini izlemeye, kesin ölçülebilir terimlerle kalite ve performans gereksinimlerini belirlemeye, sertifika için ürün ve süreç özelliklerini ölçmeye ve var olan ürünler ile uygulanan süreçlerden faydalanarak gelecekteki ürün geliştirmeler için tahmin yapabilmeye ihtiyaç duyarlar.

    Halstead'ın kaynak programın kalite güvencesini kestirmek için kullandığı ölçütler nelerdir?

    <ul> <li>Programda bulunan farklı işleç (operatör) sayısı</li> <li>Programda bulunan farklı işlenen (operand) sayısı</li> <li>İşleç yinelenmelerinin toplamı</li> <li>İşlenen yinelenmelerinin toplamı</li> </ul> Signup and view all the answers

    Halstead tarafından geliştirilen yazılım ölçümünde, hangi ölçütlerin kullanılmasını önermektedir?

    <p>Program uzunluğu, program hacmi ve program gücü ölçütleri.</p> Signup and view all the answers

    MCCABE, programın kontrol akışı biçiminde gösterimine dayalı olarak neyi belirlemektedir?

    <p>MCCABE, programın karmaşıklık derecesini belirlemektedir.</p> Signup and view all the answers

    Program grafı veya akış grafı neyi göstermektedir?

    <p>Program grafı veya akış grafı, programın kontrol akışını göstermektedir.</p> Signup and view all the answers

    MCCABE, yazılım karmaşıklığını ölçerken neyi esas almaktadır?

    <p>MCCABE, program grafındaki döngü karmaşıklığını esas almaktadır.</p> Signup and view all the answers

    Program grafındaki kapalı bölgeler sayısının, modülün karmaşıklığını vermekle hiçbir ilgisi yoktur.

    <p>False (B)</p> Signup and view all the answers

    MCCABE ölçüsü neyi saptamada da kullanılabilir?

    <p>MCCABE ölçüsü, en yüksek modül büyüklüğünü saptamada da kullanılabilir.</p> Signup and view all the answers

    Çok sayıda programlama projesi üzerinden derlenen bilgilere göre, model büyüklüğünün hangi değerde olması gerektiği belirlenmiştir?

    <p>Çok sayıda programlama projesi üzerinden derlenen bilgilere göre, model büyüklüğünün en çok V(G) = 10 olması gerektiği belirlenmiştir.</p> Signup and view all the answers

    Döngü karmaşıklığının bu sayıyı aşması halinde ne olur?

    <p>Döngü karmaşıklığının bu sayıyı aşması halinde, modülün sınanması işlemi büyük ölçüde zorlaşmaktadır.</p> Signup and view all the answers

    Tüm yazılımların aynı kalitede ve aynı bileşenlerle aynı sonucu vermesi beklenir.

    <p>False (B)</p> Signup and view all the answers

    Yazılımları tümüyle test etmek mümkündür.

    <p>False (B)</p> Signup and view all the answers

    Kalite güvenirliği neye dayanmaktadır?

    <p>Kalite güvenirliği geçmiş bilgilere ve sınamaya dayanmaktadır.</p> Signup and view all the answers

    Başarı oranı nasıl hesaplanır?

    <p>Başarı oranı = Başarılı süre / Toplam işletim süresi formülü ile hesaplanır.</p> Signup and view all the answers

    Yazılım güvenirliliğinin ve geçerliliğinin ölçülmesi için kaç tane model geliştirilmiştir?

    <p>Yazılım güvenirliliğinin ve geçerliliğinin ölçülmesi için 1980'lerde 100'e yakın model geliştirilmiştir.</p> Signup and view all the answers

    Yazılım güvenirliliğinin ve geçerliliğinin ölçülmesi için en yaygın olan dört model hangileridir?

    <p>Schneidewind Model (A), Jelinski/Moranda Model (B), Musa Basic - Musa/Okumoto Log. Poison Execution-time Model (C), Tüm seçenekler doğru. (D), Littlewood-Verrall Model (E)</p> Signup and view all the answers

    Güvenirlik modelleri, istatistiki verilere dayanarak neyi saptamaktadır?

    <p>Güvenirlik modelleri, istatistiki verilere dayanarak yazılımın güvenirliliğini saptamaktadır.</p> Signup and view all the answers

    Güvenirlik modellerinin çalıştırılması sonucunda hangi değerler elde edilir?

    <p>Güvenirlik modellerinin çalıştırılması sonucunda, toplam hata sayısı, güvenirlilik düzeyi, sistemde yapılan revizyon sonucunda kalan hata sayısı gibi değerler elde edilir.</p> Signup and view all the answers

    Bir yazılımın güvenirlik modeli değerlendirilirken hangi sorulara cevap aranmalıdır?

    <p>Modele göre yazılım ne kadar geçerlidir, modeli kullanarak yazılımın güvenirliliğinin ölçümü ne kadar kolaydır, modeli kullanmak için yazılımın ne kadarına ihtiyaç vardır, modeli yazılım ölçümünde kullanmak kolay ve anlaşılır mı ve model dış etkenlerden etkileniyor mu gibi sorular.</p> Signup and view all the answers

    Bell laboratuarlarında yapılan çalışma ile yazılımın güvenirliğini sağlamak için en iyi yöntemlere odaklanılmış ve yazılımın gelişiminden müşteriye teslimine kadar kaç tane aktivite belirtilmiştir?

    <p>Bell laboratuarlarında yapılan bir çalışma ile yazılım güvenirliğini sağlamak için en iyi yöntemlere odaklanılmış ve yazılımın gelişiminden müşteriye teslimine kadar 25 aktivite belirtilmiştir.</p> Signup and view all the answers

    Yazılım güvenirliliğini sağlamak için belirtilen 25 aktivite hangi kategoriler altında toplanabilir?

    <p>Yazılım güvenirliliğini sağlamak için belirtilen 25 aktivite, Olabilirlilik&amp;Gereksinimler, Tanımlamak&amp;Uygulamak, Sistem Testi, Teslim&amp;Bakım kategorileri altında toplanabilir.</p> Signup and view all the answers

    Nesneye yönelik yazılımlarda test stratejileri ve test teknikleri, diğer yazılımlardan neden farklıdır?

    <p>Nesneye yönelik yazılımlarda test stratejileri ve test teknikleri diğer yazılımlardan farklıdır çünkü sistem gereksinim tanımları, sınıf modelleri, sistem tasarımı ve nesne tasarımındaki hataların, kodlama sürecinden önce test edilerek belirlenmesi gerekir.</p> Signup and view all the answers

    Nesneye yönelik analiz ve tasarım modellerinin test edilmesi için neden klasik yöntemler yerine formal teknik gözden geçirmeler kullanılır?

    <p>Nesneye yönelik analiz ve tasarım modellerinin test edilmesi için klasik yöntemler yerine formal teknik gözden geçirmeler kullanılır çünkü bu modeller çalıştırılabilir olmayabilir.</p> Signup and view all the answers

    Nesneye yönelik analiz ve tasarım modellerinin test edilmesi sırasında hangi kontroller yapılır?

    <p>Nesneye yönelik analiz ve tasarım modellerinin test edilmesi sırasında doğruluk ve tutarlılık kontrolü yapılır.</p> Signup and view all the answers

    Doğruluk kontrolü hangi kontrolleri içerir?

    <p>Modellerin mantıksal doğruluk düzeyi incelemesi. (A), Gerçek dünyaya uyumluluk kontrolü. (B), Tüm seçenekler doğru. (C), Sözdizimsel doğruluk kontrolü. (D)</p> Signup and view all the answers

    Tutarlılık, hangi yöntemler ile kontrol edilebilir?

    <p>Tutarlılık ise, Sınıf-Sorumluluk-İşbirliği (CRC) ve nesne ilişki modeli ile her sınıfın diğer sınıflarla ilişkilerinin test edilmesi ile kontrol edilebilir.</p> Signup and view all the answers

    Nesneye yönelik yazılımlarda, birim kavramı ne olarak değişmektedir?

    <p>Nesneye yönelik yazılımlarda, birim kavramı sınıf veya nesne olarak değişmektedir.</p> Signup and view all the answers

    Nesneye yönelik yazılımlarda, birim test nasıl tanımlanmaktadır?

    <p>Nesneye yönelik yazılımlarda, birim test sınıf testi olarak tanımlanmaktadır.</p> Signup and view all the answers

    Sınıf testi, birim testinden nasıl farklıdır?

    <p>Birim Testi algoritma ayrıntılarına ve veri akışına odaklanırken, Sınıf Testi paketlenmiş işlemler ve durum değişimlerine odaklanır.</p> Signup and view all the answers

    OO yazılımları, hiyerarşik kontrol yapılarına sahip olduğu için, bütünlük testinde yukarıdan aşağıya veya aşağıdan yukarıya test stratejileri uygulanabilir.

    <p>False (B)</p> Signup and view all the answers

    OO yazılımlarda hangi bütünlük testleri kullanılmaktadır?

    <p>OO yazılımlarda, Kullanım Temelli veya Thread-Temelli bütünlük Testleri kullanılmaktadır.</p> Signup and view all the answers

    Kabul veya sistem test aşamasında, hangi ayrıntılar önemli değildir?

    <p>Kabul veya Sistem testi aşamasında, sınıf ilişkilerindeki ayrıntılar önemli değildir.</p> Signup and view all the answers

    Kabul veya sistem testi aşamasında, diğer yazılımlar gibi ne sağlanmalıdır?

    <p>Kabul veya Sistem testi aşamasında, diğer yazılımlar gibi kullanıcı bakış açısıyla gereksinimlerin karşılanmasına sağlanmalıdır.</p> Signup and view all the answers

    Kabul veya sistem testi aşamasında, hangi test kullanılmaktadır?

    <p>Kabul veya Sistem testi aşamasında, kara kutu testi kullanılmaktadır.</p> Signup and view all the answers

    Test-case'ler, OO Analiz aşamasında oluşturulan hangi diyagramlardan faydalanılarak hazırlanabilir?

    <p>Test-case'ler, OO Analiz aşamasında oluşturulan “Nesne-Davranış” ve “Olay-Akış” diyagramlarından faydalanılarak hazırlanabilir.</p> Signup and view all the answers

    Bölümlemeli Sınıf Testi, test case sayısını artırarak yapılabilir.

    <p>False (B)</p> Signup and view all the answers

    Bölümlemeli Sınıf Testinin amacı nedir?

    <p>Bölümlemeli Sınıf Testinin amacı, test case sayısını azaltarak sınıfların test edilmesidir.</p> Signup and view all the answers

    Girdi ve çıktılar nasıl kategorize edilir?

    <p>Girdi ve çıktılar kategorize edilerek her kategori için test-case oluşturulur.</p> Signup and view all the answers

    Miras alınan metodlar, asla yeniden test edilmemelidir.

    <p>False (B)</p> Signup and view all the answers

    Çok biçimlilik (Polymorphism) Özelliğinin test üzerine etkisi nedir?

    <p>Çok biçimlilik (Polymorphism) Özelliğinin test üzerine etkisi, çok biçimli bileşenlerin olası tüm bağlanma (binding) durumları için ayrı bir test yapılması gerektiğidir.</p> Signup and view all the answers

    Study Notes

    Kalite Ölçümü ve Değerlendirmeleri

    • Yazılım incelemesi
    • Yazılım ölçütlerinin test adımlarında kullanımı
    • Kalite Güvenirliğinin kestirimi ve modelleri

    Yazılım Ölçümü

    • Yazılım üretimi ölçülemezse kontrol edilemez (Tom De Marco)
    • Yöneticiler ve yazılım mühendisleri için farklı ölçme gereksinimleri vardır
    • Yöneticiler:
      • Yazılım üretiminin maliyetini belirlemek
      • Farklı departman çalışanlarının verimliliğini ölçmek
      • Farklı projelerdeki yazılım ürünlerini kıyaslamak
      • Projeler için ölçülebilir hedefler belirlemek (örneğin yazılımın güvenilirliği)
      • Yazılım geliştirme yöntemlerinin ve araçlarının etkinliğini ölçmek

    Yazılım Mühendislerinin Ölçüm Gereksinimleri

    • Süreç ölçümleriyle sistemin kalitesini izlemek (örneğin tasarım değişiklikleri, kod hataları)
    • Kesin ölçülebilir terimlerle kalite ve performans gereksinimlerini belirlemek
    • Sertifika için ürün ve süreç özelliklerini ölçmek (örneğin modüllerin 100 satırdan fazla olmaması)
    • Var olan ürün ve süreçlerden faydalanarak gelecekteki ürün geliştirmeler için tahmin yapmak

    Yazılım Ölçümü (Halstead)

    • Kaynak programın kalite güvenilirliğini kestirmek üzere kullanılır
    • m: Programdaki farklı işlem sayısı
    • k: Programdaki farklı işlenen sayısı
    • M: İşleç yinelenmelerinin toplamı
    • K: İşlenen yinelenmelerinin toplamı
    • Program uzunluğu (U): m log₂m + k log₂k
    • Program Hacmi (H): (M + K) log₂(m + k)
    • Program gücü (G): H / O

    Yazılım Karmaşıklığı Ölçümü (McCabe)

    • Kontrol akışına dayalı olarak programın karmaşıklığını belirlemek
    • Program grafiğini (flow graph) kullanarak karmaşıklığı ölçmek
    • Graf içerisindeki kapalı bölgeler ve dışarıda kalan bölgelerin sayısı ile modülün karmaşıklığını belirlemek (örneğin Şekil-3.1'deki V(G) = 5)
    • McCabe ölçüsü, yüksek modül büyüklüğünü saptamada kullanılabilir, V(G) = 10 olması gerektiği belirlenmiştir.
    • Döngü karmaşıklığının bu sayıyı aşması, modülün testini zorlaştırır.

    Yazılım Güvenirliği

    • Tüm yazılımların aynı kalitede, bileşenlerde ve sonuçlarda olması beklenmez
    • Bir yazılımın tüm test edilmesi mümkün değildir
    • 1000 satırlık bir ticari yazılımda en az 1 kod hatası bulunur
    • Kalite güvenirliği; geçmiş bilgilere ve sınamaya dayanarak tahmin edilir
    • Başarı oranı = Başarılı süre / Toplam işletim süresi formülü ile kestirilir

    Yazılım Güvenirliği Modelleri

    • 1980'lerde 100'e yakın model geliştirilmiştir
    • Schneidewind, Jelinski/Moranda, Musa Basic (Musa/Okumoto Log. Poison Execution-time), Littlewood-Verrall en yaygın olanlardır
    • Modeller, istatistiki verilere dayanarak yazılımın güvenirliğini ölçer
    • Çalıştırılma sonuçları; toplam hata sayısı, güvenirlilik düzeyi, sistemdeki kalan hata sayısı gibi bilgiler elde edilir

    Yazılım Güvenirlik Modeli Değerlendirme

    • Bir yazılım birden fazla modele göre test edilmeli ve sonuçlar karşılaştırılmalıdır
    • Modelin geçerliliği, kullanılabilirliği, ihtiyaca uygunluğu, anlaşılırlığı ve dış etkenlerden etkilenme durumu incelenmelidir

    Yazılım Güvenirliği Sağlama Adımları

    • Bell laboratuarlarında yapılan çalışma, yazılımın gelişiminden teslim sürecine kadar 25 farklı aktivite tanımlamıştır
      • Olabilirlilik ve Gereksinimler: İşlevsel profilleri belirleme, hataları tanımlama, müşteri ihtiyaçlarını tanımlama, organizasyon yönetimi, bileşenler arası güvenilirliği tanımlama, işlevsel kaynaklara odaklanma, hatalı kodlamaları bulma, yazılım güvenilirliğini ölçme
      • Sistem Testi: Testleri yönetme, gözlemleme, gerekli ek testleri belirleme, test edilen objelerin güvenilirliğini ölçme, yazılımı kullanıma sunma, yazılımın güvenirliğini kontrol etme, müşteri memnuniyetini izleme, ürüne rehberlik ve ilerleme kaydetme

    Nesneye Yönelik Test

    • Nesneye yönelik yazılımlarda test stratejileri ve teknikleri farklıdır
    • Sistem gereksinimleri, sınıf modelleri, sistem tasarımı ve nesne tasarımındaki hatalar test edilmelidir
    • Formal teknik incelemeler kullanılır
    • Analiz ve tasarım modelleri, çalıştırılabilir olmasa da, test edilebilir

    Nesneye Yönelik Analiz ve Tasarım Modelleri Testi

    • Doğruluk ve tutarlılık için gözden geçirme yapılır
    • Modellerin mantıksal, sözdizimsel ve gerçek dünyaya uyumluluk kontrolu yapılır
    • Sınıf-Sorumluluk-İşbirliği (CRC) ve nesne ilişkisi modelleri kullanılarak test edilir

    Nesneye Yönelik Yazılım Testi

    • Birim kavramı sınıf veya nesne olarak değişmektedir
    • Sınıflar, test-case tasarımları için uygun birimdir
    • Birim ve sınıf testleri, algoritma ayrıntıları, veri akışı ve paketlenmiş işlemler (OO yazılımlar hiyerarşik kontrolden yoksundur) incelenir

    Nesneye Yönelik Yazılım Kabul Testi

    • Sınıf ilişkileri, diğer yazılımlar gibi önemli değildir
    • Gereksinimlerin karşılanması, testler için kara kutu testleriyle ve kullanım senaryolarıyla doğrulanır
    • Test-case ler, OO Analiz aşamasındaki "Nesne-Davranış" ve "Olay-Akış" diyagramları kullanılarak oluşturulur

    Bölümlemeli Sınıf Testi

    • Test case sayısını azaltmak için sınıflar kategorize edilir
    • Miras alınan metodlar yeniden test edilmelidir
    • Çok biçimlilik (polymorphism) durumları için ayrı bir test yapılmalıdır

    Studying That Suits You

    Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

    Quiz Team

    Related Documents

    Description

    Bu quiz, yazılım kalite ölçümü ve değerlendirmeleri üzerine odaklanmaktadır. Yazılım mühendisleri ve yöneticilerin ölçme gereksinimlerini anlamalarına yardımcı olacak bilgileri içermektedir. Yazılım üretim süreçlerinin kontrol edilmesi için gerekli kriterleri keşfedin.

    More Like This

    Software Quality Measurement Quiz
    5 questions

    Software Quality Measurement Quiz

    EffectualWatermelonTourmaline avatar
    EffectualWatermelonTourmaline
    Software Quality Assurance Quiz
    5 questions
    Use Quizgecko on...
    Browser
    Browser