21
GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

Embed Size (px)

Citation preview

Page 1: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

GEF499Systèmes en temps réel

Fiabilité de logiciel(Partie II)

Page 2: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

2

Synopsis

Quantifier la fiabilité des composants

Intensité de la défaillance des logiciels

Fiabilité des systèmes fiabilité des systèmes en série

fiabilité des systèmes en parallèle

fiabilité « k parmi n »

Exercice

Page 3: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

3

Rappel- Définition de la fiabilité

fiabilité, R(t) - la probabilité que, lorsque opérant sous des conditions environnementales fixes, un système exécutera sa fonction destinée adéquatement pour un intervalle spécifié de temps.

la fiabilité est évaluée sur un intervalle de temps R(t = 6 heures) = 95%

ainsi, la fiabilité est une fonction d’un taux de défaillance (intensité) et d’un intervalle de temps désiré.

Page 4: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

4

Rappel – Modèles de fiabilité dynamiques

la fiabilité change due aux changements au logiciel

T

T

en utilisation le taux de défaillance de logiciel est en fait “constant”, pour n’importe quelle version• • •

Page 5: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

5

Quantifier la fiabilité des composants

étant donné des composants d’un processus Poisson homogène avec une intensité de défaillance (), alors la fiabilité peut être exprimée comme:

R(T) = e - T

Rel

iabi

lity

Time

1.0la fiabilité diminue exponentiellement avec le temps de “mission”

Page 6: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

6

Fiabilité d’un composant - Exemple 1

Supposez qu’un composant a été testé et jugé avoir un temps moyen entre défaillance (MTBF) de 200 heures, quelle est la probabilité que le composant ne

faillira pas pendant 8 heures d’utilisation normale dans le lab?

Solution:

= 1/ MTBF = 0.005 défaillance par heure

R(T=8 heures) = e -(0.005)(8)

= 0.961 or 96.1%

Page 7: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

7

Fiabilité d’un composant - Exemple 2

Prenons une sonde spatiale sans équipage avec un besoin d’opérer sans défaillance pour une mission de 25 ans, ayant une probabilité de 95%, Quel est le MTBF requis?

Solution:

= - ln (R(T)) / T

= -ln(0.95) / [(25)(365)(24)]

= 0.0000002 défaillance par heure

MTBF = 5,000,000 heures!

Page 8: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

8

Rappel – Fiabilité et temps

en termes de fiabilité de logiciel, nous devons distinguer trois formes de temps: durée calendaire – temps écoulé normal temps d’horloge – le temps qu’un processeur opère

réellement durant une durée calendaire temps d’exécution – le temps qu’un programme logiciel

exécute sur un processeur donné

cependant, nous allons plus probablement évaluer la fiabilité des logiciels en termes de temps d’exécution, mais pour réaliser une analyse de systèmes, nous avons besoin de parler de fiabilité en termes de durée calendaire ou de temps d’horloge.

Page 9: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

9

Intensité des défaillances de logiciel

étant donné que la majorité des fiabilités de logiciels seront mentionnées en termes de temps d’exécution, il est nécessaire d’identifier deux intensités de défaillance distinctes: une basée sur le temps d’exécution, , et une

autre basée sur le temps d’horloge, t

alors, t = c

où, c représente l’utilisation moyenne

Page 10: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

10

Intensité des défaillances de logiciel - Exemple

Prenons une tâche périodique avec un temps d’exécution estimé de une(1) heure, fiabilité de 99.5%. De plus, nous savons que la tâche se répète à toutes les 200 msec avec un temps de computation moyen de 2000 sec. déterminer le temps d’horloge basé l’intensité

de la défaillance = - ln(R(=1)/ = - ln(0.995) = 0.005 déf/hr

t = c = (0.01) (0.005) = 0.00005 déf/hr

Page 11: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

11

Fiabilité des systèmes – systèmes en série

Rsys = Ri pour tous les composants i

Exemple Soit RA = 90%, RB = 97.5%, RC = 99.25%

Rsys = (.9)(.975)(.9925) = 87.1 %

*Présume qu’au point de vue fiabilité, tous les composants sont indépendants.

A B C

Page 12: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

12

Systèmes en série - Exemple

Prenons une sonde spatiale avec 10,000 composants identiques et un besoin de fiabilité de 25 ans de 95%, quel est le taux de défaillance requis des composants?

c1 c2 c10000•••

Solution:

RC = (Rsys)1/10000 = 0.999995

c = -ln(.999995)/[(25)(365)(24)] = 2.28 E-11

Page 13: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

13

Définir la probabilité de défaillance comme: Qi = 1 - Ri, alors

Qsys = Qi

il s’en suit que Rsys = 1 – Qsys, ou

Rsys = 1 - (1 - Ri)

Fiabilité des systèmes – systèmes parallèles

A

B

C

Exemple

Soit RA = 90%, RB = 97.5%, RC = 99.25%

Rsys = 1 - (.1)(.025)(.0075) = 99.998%

Page 14: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

où “k parmi n”, [ ] = n! / (k!(n-k)!)

14

un cas spécial de la configuration d’un système parallèle en quoi il est requis que seulement k parmi n composants identiques soient nécessaires pour réussir:

Rsys = [ ] Rci (1 - Rc)n-i

Fiabilité des systèmes - k parmi n

A

A

A

nii=k

n

nk

Page 15: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

15

Exemple supposez que la fiabilité de

c1 est 90% et que vous en avez besoin d’au moins deux pour que le système fonctionne

Fiabilité des systèmes - k parmi n

c1

c1

c1

solution:

Rsys = [ ] Rci (1 - Rc)3-i

= [ ] Rc2 (1 - Rc) + [ ] Rc

3 (1 - Rc)0

= (3)(.81)(.1) + (1)(.729)(1)

= 97.2%

3ii=2

3

32

133

Page 16: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

16

Exercice – Composantes de système

Considérez un système EW fait des composantes suivantes: 2 écrans tactiles, dont seulement un a besoin de

fonctionner pour que le système fonctionne chaque écran tactile contient un logiciel identique un processeur de système et le logiciel d’intégration du

système un ECM avec un logiciel de brouillage intégré

Supposez que l’utilisation du matériel est de 100% en d’autres mots, tout le matériel fonctionne pour la

durée entière de la mission

Page 17: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

17

Exercice – données sur les composants

Composants Taux d’erreur (heures

d’exécution)

Utilisation R(t=4)

TD - - .95

TD s/ w 0.002 0.65 ?

SP - - .98

SP s/ w .010 .95 ?

ECM - - .925

ECM s/ w .012 .35 ?

Page 18: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

18

Exercice – Questions

a) Déterminez la fiabilité globale du système pour une mission de 4 heures?

b) Quelle est la probabilité d’avoir au moins un écran fonctionnel pour une mission de 2 heures?

c) Quel est le lien le lien le plus faible dans le système? Qu’est-ce qui pourrait être fait pour améliorer la fiabilité générale du système (présumant que vous ne pouvez pas changer significativement la fiabilité des composantes sans un redesign sérieux). Dessinez le schéma de principe de la nouvelle fiabilité et trouvez Rsys.

Page 19: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

19

Exercice – Questions (cont)

Présumez que nous avons maintenant 4 sous-systèmes ECM (logiciel et matériel combinés) et pour que le système soit fonctionnel n’importe quels 3 sous-systèmes sur 4 doivent être fonctionnels

d) Dessinez le schéma de principe pour la nouvelle fiabilité et calculez la fiabilité du système.

Page 20: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

20

References

[1] Musa, J.D., Iannino, A., Okumoto,K. “Software Relibility - Measurement, Prediction, Application”, Chapter 4, McGraw-Hill 1987.

Page 21: GEF499 Systèmes en temps réel Fiabilité de logiciel (Partie II)

21

Questions