Kararlılık ve güvenilirlik arasında bir fark var mı (en azından yazılım mühendisliği bağlamında) veya birbirlerinin yerine kullanılabilir mi? Değilse, güvenilir ancak zorunlu olarak kararlı olmayan sistemlerin örnekleri nelerdir?
Kararlılık ve güvenilirlik arasında bir fark var mı (en azından yazılım mühendisliği bağlamında) veya birbirlerinin yerine kullanılabilir mi? Değilse, güvenilir ancak zorunlu olarak kararlı olmayan sistemlerin örnekleri nelerdir?
Yanıtlar:
Diyelim ki bir uygulamamız var, her 5 dakikada bir kilitlenmesinin yanı sıra mükemmel çalışıyor, ancak veri kaybı olmadan anında yedekleniyor.
Aklımda güvenilir ama istikrarlı değil.
Kararlı olmamasına rağmen veri kaybetmemesine ve düzgün çalışmamasına güvenebilirim.
Aslında, internet temelde budur. Kararlı olmaktan uzaktır - bağlantılar düşer ve tekrar ortaya çıkar, paketler çarpışır ve kaybolur ve her türlü diğer kararsız şeyler gerçekleşir. Bununla birlikte, içerdiği tüm dengesizliğin ne kadar güvenilir olduğu oldukça şaşırtıcı.
Bu tanımlar, karakteristikleri ve alt karakteristikleri bölen ISO 9126 Standardından gelir: bu tablo , bu pdf veya wikipedia veya makale
Kararlılık: Belirli bir sistemin, sistem değişikliklerinden kaynaklanabilecek olumsuz etki olan değişiklik duyarlılığını karakterize eder.
Güvenilirlik aşağıdakileri içeren ana bir özelliktir:
Amaç: iki sayı eklemek için bir program yazın
Güvenilir ancak kararsız:
add(a,b):
if randomInt mod 5 == 0:
throw exception
else
print a+b
Kararlı ama güvenilir değil:
add(a,b):
if randomInt mod 5 == 0:
print a+a
else
print a+b
Kütüphaneleri değerlendirme bağlamında, terimler tamamen farklı şeyler ifade eder.
Güvenilir bir kütüphane, kesintili arızalar olmadan işini yapan kütüphanedir.
Sabit bir kütüphane çok fazla değişmeyen kütüphanedir.
İstikrar ve Güvenilirlik yazılım geliştirmede farklı şeylerdir, ancak her ikisi de kardeş terimler olarak kullanılır :)
Daha önce bahsedilen bazı yorumları kabul ediyorum ve benim 2 sent eklemek istiyorum.
Güvenilirlik , bir denemenin, testin veya herhangi bir ölçüm prosedürünün tekrarlanan denemelerde aynı sonucu verdiği derecedir.
Kararlılık güvenilirliği (bazen test, yeniden test güvenilirliği olarak da adlandırılır) zaman içinde ölçüm cihazlarının anlaşmasıdır. Kararlılığı belirlemek için, ileride bir tarihte aynı konular üzerinde bir ölçüm veya test tekrarlanır. Sonuçlar, stabilite ölçüsü vermek için ilk test ile karşılaştırılır ve ilişkilendirilir.
Bu konuda daha fazla referans verilmiştir:
Güvenilir fakat Kararlı Değil :
add(a,b):
if a == nil || b == nil:
throw exception
else
return (a+b)
Kararlı ama Güvenilir Değil :
add(a,b):
if a == nil || b == nil:
return 0
else
return (a+b)