Dependability engineering

6 belangrijke vragen over Dependability engineering

De suggestie wordt gewekt dat de control software voor een radiotherapie machine, die gebruikt wordt om patiënten te behandelen met kanker, geimplementeerd moet worden door het gebruik van N-version programming. Graag commentaar of dit een goede suggestie is

Voordeel van N-version programming:
- Vergroot de design diversity dus de kans op faults die resulteren in failures moeten kleiner worden
- Vergroot de availabilty van het systeem

Nadeel
- kosten worden vergroot
-complexiteit wordt vergroot
- Verbetering in reliability in de praktijk wordt gelimiteerd doordat de mogelijke common errors gemaakt door verschillende ontwikkelteams

Er is geen noodzaak voor hoge beschikbaarheid en de verhoogde complexiteit en kosten zullen de overall kosten van het systeem te groot maken.

Een formele specificatie en een correctheidsbewijs van de programmatuur die op grond daarvan is ontwikkeld, is en krachtige manier om fouten zo veel mogelijk te vermijden. Noem minstens 2 redenen waarom ook deze methode echter niet leidt tot programmatuur waar gegarandeerd nooit iets mis kan gaan

1. De specificatie kan fouten bevatten
2. Het correctheidsbewijs kan fouten bevatten
3. Er kunnen omgevingsfactoren opspelen waar geen rekening mee is gehouden

Wat is redundantie en wat is diversiteit?

Redundantie = het toepassen van het meervoudig uitvoeren van cruciale delen van het systeem, zodat bij het uitvallen van 1 van die delen het gehele systeem in principe kan blijven werken
Diversiteit = het inzetten van redundante onderdelen die op verschillende wijzen zijn ontwikkeld, bijvoorbeeld verschillende programmeertalen, door verschillende onafhankelijke teams, etc.
  • Hogere cijfers + sneller leren
  • Niets twee keer studeren
  • 100% zeker alles onthouden
Ontdek Study Smart

Welke activiteiten in een softwareproces dragen bij tot foutvermijding?

1. requirements reviews to check dat de requirements compleet en consistent zijn
2. requirements management
3. formal specification
4. system modeling
5. design en program inspections
6. static analysis
7. test planning and management

Geef 2 redenen waarom verschillende versies van een systeem op vergelijkbare manier failen

1. Er kan een specificatie error zijn die in beide versies geimplementeerd is
2. het probleem kan een numeriek probleem zijn die niet expliciet gevangen wordt
3. De specificatie kan dubbelzinning zijn en verkeerd geintepreteerd zijn door beide teams

Leg uit waarom je alle exceptions expliciet afhandeld in een systeem die een hoog availibility niveau moet hebben

Omdat de default exception handler in de meeste systemen ervoor zorgt dat een applicatie ophoudt te werken. Natuurlijk is dat ongewenst bij een high availabilty

De vragen op deze pagina komen uit de samenvatting van het volgende studiemateriaal:

  • Een unieke studie- en oefentool
  • Nooit meer iets twee keer studeren
  • Haal de cijfers waar je op hoopt
  • 100% zeker alles onthouden
Onthoud sneller, leer beter. Wetenschappelijk bewezen.
Trustpilot-logo