Oppgave gjennomgang Kap. 5 og 6.

Slides:



Advertisements
Liknende presentasjoner
Effektiv prosjektplanlegging
Advertisements

STATISTISK KVALITETSSTYRING
Etterlevelse - Arbeidstillatelse
Litt mer om PRIMTALL.
Hjemmeoppgave 1: Å høre etter NAVN: ……………………………….. DATO: ……………………….
Praktisk info til prosjektkunder
Grafisk design Visuell kommunikasjon
Mitt selskap og logo KF oppgave Av FLT Student.
ISO 9000:2000 Prosessorientering v/Per L. Berge Excellence Norway
Gjenfinningssystemer og verktøy II
Ideutvikling - Problemdefinisjonen. Hva gjør de erfarne problemløserne? •Samler og analyserer informasjon og data •Snakker med mennesker som kjenner problemet.
Levende HMS-system – hva betyr det i praksis?
Å overleve oppgaveskriving: Litteraturgjennomgang
11. Legitimitet og makt Påstandene:
Java Server Faces (JSF) en introduksjon Frode Eika Sandnes.
1 8. februar 2005 TDT4285 Planl&drift av IT-syst Forelesning nr 14 Redundans TDT4285 Planlegging og drift av IT-systemer Våren 2005 Anders Christensen,
Eksempel AOA (Activity On Arc)
Moralsk arbeidsdeling og bedrifters samfunnsansvar Alexander W. Cappelen Senter for etikk og økonomi, NHH.
13. februar 2004TDT4285 Planl&drift IT-syst (M15)1 Automatisering TDT4285 Planlegging og drift av IT-systemer Anders Christensen, IDI.
23. januar 2004TDT4285 Planl&drift IT-syst1 Tjeneroppgraderinger TDT4285 Planlegging og drift av IT-systemer Anders Christensen, IDI.
Oppgave gjennomgang Kap. 3 og 4.
Skisse til løsningsforslag
1 Oppgave gjennomgang Kap Oppgaver -Kap 12: 1, 2, 3, 5, 7, 8, 11, 18, 19.
EVALUERING AV PRODUKTER, PROSESSER OG RESSURSER. Gruppe 4 Remi Karlsen Stian Rostad Ivar Bonsaksen Jonas Lepsøy Per Øyvind Solhaug Andreas Tønnesen.
Skisse til løsningsforslag
Grunnleggende testteori
Verifikasjon og validering
Prototyping In 140 Sommerville kap. 8. Mål Forstå hensikten med prototyping i forskjellige utviklingsprosjekt Forstå forskjellen mellom evolusjonær og.
Repetisjon kap 6,7,8.
Kravanalyse og spesifikasjon
Norsk Finansbarometer 2012 Norsk Finansbarometer 2012 Norsk Finansbarometer 2012 TNS Gallup Oslo, 2012 Det norske skadeforsikrings- markedet og dets bevegelser.
Tidligere eksamensspørsmål
Empiriske metoder Oppgaveanalyse, observasjon
Combining Compound Conceptual User Interface Components with Modelling Patterns - a Promising Direction for Model-based Cross-platform User Interface Development.
Hvordan uttrykke krav Kapittel 4.4. Innledning Målet er å samles rundt ett entydig språk som ikke kan misforståes eller feiltolkes. Gjør sporbarheten.
Software Requirements Elicitation
Presentasjon  SW faults og failure/testing issues –Gruppe 1 Petter Therese Kjell Gunnar Christian Eva.
Gruppe 3 – Presentasjon 2 Henning Kristiansen, Mats Lindh, André Hauge og Vegard Simensen.
Testing av system Gruppe 6 Henrik Bækhus Morten A. Iversen Mathias Bondeson Gunnar K. Kulleseid Svein Ivar Kristiansen Ronny Hulthin.
DEKOMPONERING OG MODULARITET ~Gruppe 4~. Gjennomgang Designtyper/kriterier innen dekomponering Dekomponeringsspesifikasjon Strukturert og objektorientert.
Teknikker for å bedre design- prosessen -Design by contract -Prototyping design -Fault-tree analyses.
Improving Products Gruppe Presenteres av : Hege-Kristin Johansen Herman Kolås Marianne Ates Marit Finden Jonas Lillevold André Johansen Tom.
Automated Testing Tool & When to Stop Testing
Konfigurasjonsstyring Configuration Management
Problemstyring Problem Management
PROSJEKT: UADRESSERT REKLAME Omnibus: 23. august – 30 august 2006
Simulering av visuell oppmerksomhet
1 Oppgave gjennomgang Kap. 1 og 2. 2 Oppgaver -Kap 1: 5, 6, 7, 10, 12, 16, 22 og 25 -Kap 2: 2, 6, 10, 12, 13, 14 og 20.
Spørsmål og aktiviteter på ulike nivåer
Page 1 WE MOVE THE INDUSTRY THAT MOVES THE WORLD RISK MANAGEMENT Fra operatørenes ståsted Solakonferansen 2014 Øivind Solberg, PhD.
Prosjektledelse In 140 Forelesning Nr 18 a Sommerville kap
BUCS Utfordringer og valg av fokus Tor Stålhane. Rammebetingelser Første spørreundersøkelse viser at det vi gjør må kunne: Brukes sammen med UML Passe.
7. Typography, Readability & Legibility Lesbarhet.
Objektorientert utforming In 140 Sommerville kap. 12.
1 GeoPortal – Rammeverk Introduksjon. 2 Teknisk rammeverk - Interoperabilitet Interoperabilitet evne til å kommunisere, kjøre programmer, eller overføre.
Programvareendring del 1 In 140 Forelesning Nr 21 Sommerville kap 27, 1. Del.
Kap. 5 del 2 – SLR(1), LR(1) og LALR(1) – grammatikker INF5110 – v2005 Arne Maus, Ifi UiO.
Forstudie Nå situasjonen: dagens situasjon med ulemper og fordeler
Gamle systemer In 140 Forelesning Nr 19 Sommerville kap 26.
Foretak Bjørnar Sæther SGO 4601 V-07. Struktur på forelesningen Hva er foretak? Foretak i økonomisk geografi Dimensjoner ved foretak Foretak og territorier.
Objektorientert utforming In 140 Forelesning Nr 11 Sommerville kap 12 – del 1.
1 Utvikling av kritiske systemer Kort sammendrag Kap. 1 og 2.
Objektorientert design In 140 Sommerville kap 12 – del 1.
1 Utvikling av kritiske systemer Introduksjon Kap. 1 og 2 i Storey.
Hasardidentifikasjon
1 Feiltolerant programvare Hvordan få systemet til å fungere selv om det finnes ”faults”? Kap 6, Storey.
Android-Programmering Våren Oversikt Long-running operasjoner Introduksjon til Android services On-demand service Bruk av servicer på tvers av prosesser.
Kap. 23 – Software Engineering How Information Technology Is Conquering the World: Workplace, Private Life, and Society Professor Kai A. Olsen,
Håvard Hansen Doktorgradsstipendiat Institutt for markedsføring
IN3030 – Effektiv parallellprogrammering Uke 1 2. del, våren 2019
Utskrift av presentasjonen:

Oppgave gjennomgang Kap. 5 og 6

Oppgaver Kap 5: 1, 6, 7, 9, 10, 11, 12, 13, 18, 23, Kap 6: 3, 4, 14, 15, 16, 17, 18, 34, 35, 36, 37, 38

Svar på spørsmål 5.1 De fire hovedteknikkene for å sikre ”safety” gjennom design er: Å produsere et system som er ”safe” i seg selv. Benytte designteknikker som hindrer eller minimerer tilfellene av hasarder (interlocks, guards). Benytte teknikker som kontrollerer hasarder når de oppstår (failsafe devices, damage control and containment). Benytte teknikker som har som mål å redusere skadene av hasarder (warning devices, the training of staff in emergency procedures).

Svar på spørsmål 5.6 og 5.7 6) V-modellen identifiserer de ulike stegene i utviklingsprosessen og indikerer avhengigheter og relasjoner mellom de ulike stegene. Modellen kan tegnes på forskjellige måter og vise ulike nivåer av detaljer. Den kan f.eks. vise output fra hver fase og flyten av data mellom fasene. Se figurene 1.4, 5.1 og 12.1 i boka. 7) En enkel ”safety” livssyklusmodell kan benyttes til å modellere et system, uansett hvilket sikkerhetsnivå (integrity level) det har. Aktivitetene som utføres i hver fase vil derimot variere utifra hvilket sikkerhetsnivå en modellerer.

Svar på spørsmål 5.9, 5.10, 511 9) Viktige karakteristikker av en system spesifikasjon inkluderer: Correctness Completeness (en spesifikasjon må også si hva et system ikke skal gjøre). Consistency (en spesifikasjon må ikke si forskjellige ting på forskjellige steder). Unambiguity. 10) En vanlig årsak til ufullstendig spesifikasjon er at man ikke spesifiserer hva systemet skal gjøre i situasjoner som vi anser å være umulige. 11) Det er svært vanskelig å skrive en komplett utvetydig spesifikasjon med et naturlig språk. Utvetydig språk gjør det også vanskelig å benytte automatiske metoder for å sjekke spesifikasjonen om den er riktig, komplett og konsistent. Problem med utvetydighet kan takles ved å benytte semi-formelle eller formelle spesifikasjonsspråk.

Svar på spørsmål 5.12 12) Svakheter i spesifikasjonen er ofte ikke synlige før systemet er komplett, og å rette opp i slike feil er da ofte svært kostbart. En måte å takle feil i spesifikasjonen er å benytte software animation, også kjent som prototyping. Denne teknikken benyttes til å illustrere ulike karakteristikker ved systemet definert i spesifikasjonen. Generelt benyttes animasjon til å undersøke spesielle aspekter ved systemet i stedet for å tilfredsstille hele spesifikasjonen. Fordelen med denne teknikken er at den tillater en ingeniør som er ansvarlig for kravdokumentene å undersøke hvilke implikasjoner deres avgjørelser har, og gir dem mulighet til å endre feil før hele systemet er designet ferdig. Denne prosessen belyser også misforståelser i kravene forårsaket av tvetydighet. Teknikken er ulik fra simulering som studerer utførelsen av et forsøksdesign. Software animation benyttes til å validere spesifikasjonen, mens simulering benyttes til å undersøke design.

Svar på spørsmål 5.13 13) Progressive integration: Her kombineres først et lite antall moduler for å lage et minimalt system, som deretter testes (problemer som oppdages fjernes). Deretter legges det til ekstra moduler etter hverandre og testing utføres i hvert steg. Denne prosessen fortsetter helt til systemet er fullstendig. Big bang integration: Her kombineres alle modulene umiddelbart og hele systemet testes som en helhet.

Svar på spørsmål 5.18 18) Det er naturlig å etablere en strategi for operasjon og vedlikehold av systemet på et tidlig tidspunkt, når den kan påvirke design prosessen. Ofte utføres planleggingen av operasjon og vedlikehold i parallell med design fasen.

Svar på spørsmål 5.23 23) Hovedaktivitetene i en ”safety analysis process” er: 1) Analyser hasardene. a) identifiser potensielle hasarder. b) evaluer hendelsene som leder til disse hasardene. 2) Identifiser ”safety-related” systemer. 3) Sett sikkerhetsnivå (safety integrity level) for disse systemene. 4) Design systemet ved å benytte kriteriene som ligger til grunn for det sikkerhetsnivået som er satt. 5) Utfør en sikkerhetsnivåanalyse som fastsetter hvilket sikkerhetsnivå som systemet har oppnådd. 6) Forsikre, utifra resultatene i analysen i 5), at sikkerhetsnivået som ble satt i 3) har blitt oppnådd. Sikkerhetsanalyse er en vedvarende prosess som fortsetter igjennom hele utviklingsprosessen.

Svar på spørsmål 6.3 3) Tilfeldig (random) fault Tilfeldig feil i HW. - Systematisk (systematic) fault Spesifikasjonsfeil, HW designfeil, SW feil (bug). Vanligvis defineres disse som design ”faults”. Feil inntreffer under gitte betingelser og vil inntreffe hver gang betingelsene er til stede.

Svar på spørsmål 6.4 4) Permanent Transient Intermittent Forsvinner ikke av seg selv. Korrektiv aksjon må utføres. Designfeil er alltid ”permanent”. Transient Feil som inntreffer, men forsvinner etter en liten stund. F.eks. alfapartikler som endrer bitmønster i minnebrikker. Intermittent Feil som kan inntreffe, forsvinne for så å komme tilbake igjen. Resultat av f.eks. dårlige loddinger, manglende beskyttelse mot elektromagnetisk stråling.

Svar på spørsmål 6.14, 6.15 14) Fault coverage: Andelen av alle faults som er håndtert med ”avoidance”, ”removal”, ”detection” eller ”tolerance”. Vanlige mål inkluderer: - fault removal coverage (the success in finding faults during the testing phase of system development) - fault detection coverage (the ability of a system to detect faults during operation) - fault tolerance coverage (the ability of a system to tolerate faults) 15) Redundans: Bruk av ekstra enheter/funksjonalitet i et system, som ikke er nødvendig hvis systemet er feilfritt, og som har som mål å tolerere feil.

Svar på spørsmål 6.16, 6.17 16) Failures som er et resultat av lignende faults i redundante moduler kalles ”common-mode failures” (fellesfeil). Slike problemer kan takles ved å forbedre dependabiliteten til de enkelte modulene, men takles mest effektivt med å benytte diversitet. 17) I diverse systemer implementeres samme funksjonalitet på forskjellige måter. Diversitet kan benyttes til å takle tilfeldige komponent feil og noen former for designfeil. Diversitet vil derimot ikke takle feil i spesifikasjonen siden de diverse implementasjonene er utviklet utifra den samme (feilaktige) spesifikasjonen.

Svar på spørsmål 6.18, 6.34 18) Bruk av diversitet løser ikke alle problemene med common-mode failures (fellesfeil) fordi: 1) Diversitet takler ikke spesifikasjonsfeil. 2) Erfaring viser at selv ulike (diverse) designteam gjør de samme design feilene. 34) Software feiltoleranse kan være to ting: Toleranse av SW faults, f.eks. vha. HW. Toleranse av faults (både HW og SW) ved bruk av SW.

Svar på spørsmål 6.35 N-versjon programmering kjører parallell eksekvering av N uavhengig utviklet, funksjonelt like versjoner (basert på samme spesifikasjon). Avgjørelsen om outputen taes av en voter. M1 M2 M3 MN ……. input Voter system feil modul 1 modul N Riktig output modul output

Svar på spørsmål 6.36 Recovery blocks benytter flere forskjellige programversjoner, men i motsetning til N-versjon programmering kjøres disse ikke i parallell. Den avgjørende modulen er en aksept test. Prosessen begynner med at outputen fra den første versjonen testes for aksept. Hvis outputen ikke aksepteres, vil systemet gå tilbake til den systemtilstanden det var i før den første versjonen ble kjørt (kan gjøres ved å etablere ”recovery point”). Deretter blir den andre versjonen kjørt og dens output testet for aksept, osv. Hvis alle programversjonene (modulene) kjøres og ingen aksepteres så vil systemet feile.

Svar på spørsmål 6.36 ……… M1 M2 M3 Mn A1 A2 A3 An input modul 1 aksept test 1 modul N suksess riktig output system feil aksept test N

Svar på spørsmål 6.37, 6.38 37) Duplisering av identiske software moduler gir ingen beskyttelse mot software feil, sidene de samme feilene vil være tilstede i alle versjonene. 38) Ikke-programmerbare moduler er attraktive i utvikling av sikkerhetskritiske systemer fordi de normalt har lavere kompleksitet enn programmerbare moduler. Ikke-programmerbare enheter er ofte lettest å benytte i systemer som har failsafe tilstander. Derimot er det vanskelig å benytte ikke-programmerbare enheter i systemer som ikke har failsafe tilstander. (eks. backup system for flight control computer).