Föreläsning 3: Test, Konfigurationer. Övning 2 Riskhantering, intressenter och kravgranskning.
|
|
- Kurt Lindberg
- för 6 år sedan
- Visningar:
Transkript
1 Föreläsning 3: Test, Konfigurationer Ingenjörsprocessen metodik ETSA01 VT15 Jonas Wisbrant 105 Detta har hänt... Pratat och skapat krav och plan Övning 2 Riskhantering, intressenter och kravgranskning. Projektet har granskat 0.9 och reviderat utifrån identifierade problem inför krav 0.99? 106
2 Jonas Wisbrant - kort CV Samhällsvetare vid LU 1989 Kommunikation och webbutveckling 1990 Programvaruingenjör LTH 2002 Institutionen för Datavetenskap LUCAS - Center for Applied Software Research Diverse undervisning Det Norske Veritas 2008 Institutionen för Datavetenskap EASE / Programvaruportalen / kommunikation Datorer i System Ingenjörsprocessen Datavetenskap + LU-webb 2011 Datavetenskap + LTH-webb 2013 Datavetenskap, LTH-webb EGNA Studier Kursombud - nytt försök Beslut: D - Rasmus Göransson, D - Oscar Sigurdsson, C - Måns Ansgariusson, I -??? 108
3 Kursinformation V 16: Nu: Föreläsning - Testning, Konfigurationer Idag kl 24: + krav föregående granskning - ICE: Projekthandledare Övning 3: Test Om testfall: T.1-8 (i förväg) Påbörja testplan: T Återkoppling på 0.99 och projektplan fb3 V 17: Må kl 10: Föreläsning - Arkitektur mer om test, demo Ö4: Mer om test 0.x Individual inspection Inspection meeting Inspection protocoll Good version 0.99 Supervisor review Supervisor feedback 1.0 Better version Hög tid att kolla på koden Downloads på: 110
4 Agenda Verifiering & Validering Vad är testning? Testprocessen Testtekniker Konfigurationshantering står inte så tydligt i boken regler för projektet finns i projektmaterialet på kurswebben Produktlinjer står inte så tydligt i boken (kort i mån av tid) 111 Varför trillade den första Ariane V-raketen ned? Vad kan gå fel? Vad brukar gå fel? Varför då? Vad kan man göra åt det? Ariane 5 Flight 501 Failure A Case Study of Errors Ken Robinson School of Computer Science and Engineering University of New South Wales, 16th December 1996 Revised: 22rd March
5 Verifiering & validering Ingenjörsprocessen metodik ETSA01 VT15 Jonas Wisbrant 113 Verifiering & Validering Verifiering Bygger vi produkten rätt? Följer vi kravspecifikationen? Validering Bygger vi rätt produkt? Kommer beställaren att bli nöjd? Når beställaren sina affärsmål? 114
6 Verifiering & Validering täckning 115 Varför testar man? täckning Man vill hitta fel för att man vill förbättra produkten Man vill visa att produkten är bra Man vill ta reda på hur många fel som finns i produkten för att man vill veta hur bra produkten är. men oavsett vilket så kan man aldrig visa att det inte finns fel, bara att det finns fel 116
7 Fel, fel, och fel Fel (error) Fel (fault) Programkod Blackbox täckning Varianter Kodtäckning Konfigurationer Enhetstest Fel (failure) Fel felrättning felidentifiering observation av fel 117 Testprocessen vs V-modellen (VoV) hantering (Verifiering) täckning Implementation Enhetstest 118
8 Testprocessen vs. och Integration acceptanstest system systemtest Bottom up Top down integrationstest enhetstest komponenter = består av 119 Dynamisk vs statisk testning täckning täckning Statisk testning (): Hitta fel utan att exekvera programmet projekt Verktyg? Ja Dynamisk testning: Exekvera programmet för att hitta fel 120
9 Enhetstest - testfall för procedurer/metoder För att testa procedur F(x1,...xn), gör följande: Sätt tillstånd till rätt värde Definiera värden för parametrar x1, xn Anropa Svar = F(x1,...xn) Jämför Svar med rätt resultat Registrera om resultatet var korrekt eller inte Kan stödjas med verktyg, t ex CuTest, CUnit, Med objektorientering kan t ex JUnit användas 121 / täckning täckning Testfall bestäms t ex baserat på specifikationer av gränssnitt i design Test utförs i samband med integration av olika delar av systemet Testfall måste utföras för varje del som integreras --> automatisering önskvärd Regressionstest = upprepad testning vid ändring av programvara Kan utföras under utveckling och under underhåll 122
10 Testplanering Indata: spec... Manual Prototyper... Testplanering Testplan Testprocess (t ex stat / dyn, miljö) spårning Testobjekt (test) Dokumentation av resultat HW & SW requirements Begränsningar Testfall 123 Testfall, två exempel täckning täckning Test case: Buy cola Pre-condition: Machine in start state. Post-condition: Machine in start state. A cola can received. 1. Press the cola selection button. 2. Insert a 10kr coin. 3. Insert a 5kr coin. 4. Receive a cola can. Test case: Press more than one button Pre-condition: Machine in start state. Post-condition: Machine in start state. A water can is received. 1. Press the water selection button. 2. Press the beer selection button. 3. Insert a 5kr coin. 4. Receive a water can. 124
11 Spårbarhet mot krav Alla krav ska testas av minst ett testfall Alla testfall ska testa minst ett krav Detta kan t ex visas i en matris (krav x testfall) i testplanen 125 Black-box vs. White-box täckning täckning Black-box Programet ses som en svart låda och man utnyttjar inte någon kunskap om koden i samband med definition av testfall specifikationen används för att ta fram testfall White-box Kräver tillgång till koden Testar utfall och inre funktion - täcker vi koden - täcker vi vägarna Testar utfall/resultat 126
12 Black-box -test Programkoden ses som en svart låda och man utnyttjar inte någon kunskap om koden i samband med definition av testfall specifikationen används för att ta fram testfall 127 Ekvivalenspartitionering täckning täckning Hitta värden för in och utdata som behandlas på inbördes enhetligt sätt ekvivalensklasser ekvivalensklasser indata Komponent utdata ekvivalensklasser 128
13 stestning För n variabler, ett intervall var Vanlig gränsvärden: innanför eller på gränser => 4n+1 testfall (gröna) Robust-test: även utanför gränserna => 6n+1 testfall (röda) variabel 1 Worst-case: även alla kombinationer av gränsfall (men inte robust-test): 5^n testfall (vita) variabel Parvis testning täckning täckning Vissa fel single mode T ex lägga in viss typ av kurs Andra fel uppstår som kombination av två parametrar: T ex lägga in viss typ av kurs för viss institution Parvis testning: täck alla möjliga kombinationer av värden för alla möjliga par av parametrar Eller ännu fler parametrar T ex lägga in viss typ av kurs för viss institution för visst år och viss studentgrupp Antag ett system för att hantera kurser och studenter, med följande parametrar: Kurstyp (G1, G2, A) Institution (CS, EIT, Math, ) År (2012, 2013, 2014, 2015) Studentgrupp (C, D, E, ) 130
14 parametrar täckning Parvis testning värden n parametrar med m möjliga värden vardera ger m 2 par av värden för varje par av parametrar Första med resten ger m 2 (n-1) par, andra med resten m 2 (n-2) par, osv n Antal par = m 2 (n k) = m 2 (n k) = m 2 n k=1 n k=1 (n n) + (n 1) 2 = m 2 n(n 1) /2 Varje testfall täcker (n 1) + (n 2) = i = i = n(n 1) /2 Om varje testfall täcker olika par krävs det alltså m 2 testfall I praktiken omöjligt ha unika par för varje testfall och olika antal värden för olika parametrar n 1 i=1 n 1 i= 0 par 131 Stresstestning täckning Kontrollera vad som händer vid hög belastning, t ex: Telefonväxel # telefoner > max # samtidiga samtal > max ERROR: ArrayOutOfBounds? 132
15 V-modellen för programvaruutvecking täckning Genomförande av test och rapportering Programkod Blackbox Kodtäckning Varianter Enhetstest Konfigurationer I simulerad miljö endast i utvecklingsmiljön I mer verklig miljö i testuppsättning I verklig miljö Tänk kommunikation: - mellan individer och organisationer - över tiden Alla fel rapporteras/registreras Testfall Resultat Feltyp Allvarlighet Ev ytterligare beskrivning 133 Tänk dokumentation: - Vad fungerar? - Vad fungerar ännu INTE? V-modellen för programvaruutvecking Testprotokoll Redogör för resultatet av test t.ex. en tabell med testfall, testresultat datum, etc 134 täckning Programkod Blackbox Kodtäckning Varianter Konfigurationer Enhetstest
16 Färdigtestat? Skillnader och likheter mellan en testrapport täckning och ett granskningsprotokoll? täckning När vi gjort vad vi lovat i projekt- och testplan: t ex visat att alla kraven på alla abstraktionsnivåer är uppfyllda:...traverserat alla grenar i koden......med alla upptänkliga kombinationer av variabler......på alla plattformar......med max+ belastning Tillräckligt bra? 136
17 Sammanfattning - Test Testfall täckningsmatris Black-box-test White-box-test Ekvivalensklasspartitionering täckning Testning kan påvisa fel, men inte bevisa att det inte finns fel Testprocessen kopplar samman integration med testning: enhetstest, integrationstest, systemtest, acceptanstest Testmetoder kan vara antingen black box eller white box Dokumentgranskning är en testform där man kritiskt läser ett dokument på ett systematiskt sätt. 137 Verifiering Validering Dynamisk testning Statisk testning Enhetstest stestning Parvis testning Stresstest Code coverage Bransch coverage Testprotokoll Konfigurationshantering Ingenjörsprocessen metodik ETSA01 VT15 Jonas Wisbrant 138
18 Diskussion: Försök förklara för din granne: Vad är det för skillnad mellan: Konfiguration Version Variant? Hur håller vi isär pågående versioner från frysta? 139 Konfigurationshantering Testprotokoll Utb.- plan Test Process Kod Manualer Olika versioner Olika produktvarianter Olika kunder 140
19 Configuration Management Configuration management (CM) is a field of management that focuses on establishing and maintaining consistency of a system's or product's performance and its functional and physical attributes with its requirements, design, and operational information throughout its life. 141 Configuration Management Configuration management (CM) is a field of management that focuses on establishing and maintaining consistency of a system's or product's performance and its functional and physical attributes with its requirements, design, and operational information throughout its life. 142
20 Typiska frågor man kan vilja ha svar på Vilka kunder har installerat en viss version av systemet? Vilken hårdvara och OS krävs för en viss version? Vilka versioner har levererats av ett visst system? Vilka versioner påverkas om jag ändrar en viss komponent i systemet? Hur många olika ändringar håller man på att göra av ett visst system? Hur många rapporterade men ännu ej rättade fel finns det i ett system hos en viss kund? 143 Planering av konfigurationhantering Bestäm vad som ska konfigurationshanteras Projektdokument inte säkert Produktdokument ja Organisationsdokument ja, men inte av projektet Bestäm rutiner för konfigurationshantering Bestäm ansvarig för konfigurationshantering Bestäm hur ändringshantering ska gå till Bestäm vilka verktyg för konfigurationshantering som ska användas (och vilken typ av databas man ska använda) 144
21 , releaser och delta V 1.0 release V 1.1 version V 1.2 version V 1.3 version V 2.0 release V 2.1 version V1.0 V1.1 V1.2 Delta 1 Delta 2 Lagra ändringar i delta Hålla reda på ändringshistoria ID för varianter/grenar V1.1a V1.1.1 V1.0 V1.1 V1.2 V2.0 Delta? V1.1b 145 Ändringshantering ordnad övergång Begär ändring genom att fylla i formulär Analysera ändringsbegäran Om ändring nödvändig och korrekt { Utvärdera hur ändring kan göras + kostnad Skicka förfrågan till CCB Om ändring accepterad { Ändra i systemet Uppdatera ändringsbegäran tillverka ny version av systemet } } 146
22 Formulär för ändringshantering, del av information Del 1 Namn Projekt Ändring nr Anledning Objekt att ändra Del 2 Utredare Resultat av utredning Del 3 Del 4 Förslag på ändring Skattad tid CCB-möte, datum CCB beslut Ansvarig för ändring Kommentar Ny version: 147 CCB Change Control Board Strategiska beslut om vilka ändringar som ska ske Inte bara tekniska beslut Representerar kund, projekt och andra intressenter För programvara som används i flera produkter blir det mer komplicerat 148
23 Systembygge Bygga en fungerande version av hela systemet från de komponenter som finns, t ex Senaste versionerna av allt En viss version av en viss produkt En viss version av en viss produkt till en viss kund En viss version av en viss produkt till en viss plattform Behövs t ex vid systemtest och andra tester (och såklart vid leverans) 149 Tekniska och politiska versioner? Teknisk version varje gång man sparar praktiskt men inget man fattar beslut kring Politisk version när man ändrar nummer: Låser historiken Underlag för beslut Beskriver förändringar Kopplar ihop olika dokument Möjliggör ordnad förgrening 150
24 Ändringshantering i ert projekt 151 Baserat på: Efter baseline dvs efter att milstolpe uppnåtts Ansvariga för dokument som bestämmer vem som får ändra vad Uppdatering av versionsnummer Spridande av information inom gruppen Speciella regler för kravspecifikationen (efter baseline får man inte ändra utan att ansöka hos projekthandledaren) Kort version av vår process: 1. Person A finds out that there is something wrong in a document 2. Person A locates the fault in the document (currently in version 1.0) 3. Person A notifies the person responsible for the document (person B) and asks for permission to change it 4. Person B gives person A permission to change the document 5. Person A updates the document, updates the version number to 1.1 and gives it to person B. 6. Person B is now responsible for telling all persons that are working with the document or depend on it, that there is a new version. Versionshistoria i dokument och ändringsformulär Eller implementera detta i driven i samråd med handledare 152
25 Dvs, era versionsnummer för kravspecifikation blir t ex 0.0 första version inom projektet 0.x nya versioner efter arbete med dokumentet 0.99 version inlämnad till projekthandledare 1.0 dokument för godkänd milstolpe 1.1 ny version efter att projekthandledare godkänt ändring Innan 0.99 gör ni som ni själva vill - Från och med 1.0 ska ni följa procedurer för ändringshantering 153 Konfigurationshantering - sammanfattning Ändringshantering görs för att rätt beslut ska tas baserat på både tekniska frågor och affärsbeslut I projektet får ni göra mycket som ni vill innan v 0.99, men efter det måste ni följa procedurerna i kompendiet. För kravspecifikationen måste ändringar efter 1.0 godkännas av projekthandledaren. - Innan 0.99 gör ni som ni själva vill - Från och med 1.0 ska ni följa procedurer för ändringshantering 154
26 155 Om från SMIL 50 år Plattformar & produktlinjer Ingenjörsprocessen metodik ETSA01 VT15 Jonas Wisbrant 156
27 157 Plattformar inom produktutveckling Inte bara inom programvara: Black & Decker Battery Pack Motor Pack Bilindustri Peugeot, Fiat, Toyota, etc 158
28 Software product line A software product line is a set of software-intensive systems that share a common, managed set of feature that satisfy the specific needs of a particular market segment or mission and that are developed from a common set of core assets in a prescribed way. F k1 F k2 F kn Plattform v. k F k+1.1 F k+1.2 F k+1.m Plattform v. k Vad innebär detta? Parallell utveckling -> lägre kostnader, fler produkter, kortare tid till marknad per produkt Ökad komplexitet: t ex nya krav och påverkar flera produkter (och plattformar). Mer komplexa projektplaner, testning, organisation Långsiktiga beslut för plattform, kortsiktiga beslut för produkter Nya produkter innehåller funktioner från tidigare produkter -> I stort sett aldrig specifikation från 0. Mycket arv 160
29 Kursinformation V 16: Nu: Föreläsning - Testning, Konfigurationer Idag kl 24: + krav föregående granskning - ICE: Projekthandledare Övning 3: Test Om testfall: T.1-8 (i förväg) Påbörja testplan: T Återkoppling på 0.99 och projektplan fb3 Hög tid att kolla på koden för garaget 0.x Good version Individual inspection V 17: Må kl 10: Föreläsning - Arkitektur mer om test, demo Ö4: Mer om test Inspection meeting Inspection protocoll 0.99 Supervisor review Supervisor feedback Better version
Detta har hänt... Jonas Wisbrant - kort CV. Kursombud - nytt försök. Föreläsning 3: Test, Konfigurationer. Pratat och skapat krav och plan
Föreläsning 3: Test, Ingenjörsprocessen metodik ETSA01 VT15 Jonas Wisbrant Detta har hänt... Pratat och skapat krav och plan Övning 2 Riskhantering, intressenter och kravgranskning. Projektet har granskat
Detta har hänt... Kursinformation. Utse kursombud - nytt försök. Föreläsning 3: Test, Konfigurationer. Pratat och skapat krav och plan
Föreläsning 3: Test, Ingenjörsprocessen metodik ETSA01 VT14 Jonas Wisbrant Detta har hänt... Pratat och skapat krav och plan Övning 2 Riskhantering, intressenter och kravgranskning. Projektet har granskat
INGENJÖRSPROCESSEN METODIK ETSA01 VT13 JONAS WISBRANT. Övning 2 Riskhantering, intressenter och kravgranskning.
Föreläsning 3: Test, & INGENJÖRSPROCESSEN METODIK ETSA01 VT13 JONAS WISBRANT 2 Detta har hänt... Pratat och skapat krav och plan Övning 2 Riskhantering, intressenter och kravgranskning. Projektet har granskat
Programvaruutveckling - Metodik 2016 Jonas Wisbrant
Föreläsning 3: Test och efterläsning om kodning Programvaruutveckling - Metodik 2016 Jonas Wisbrant 1 Kursinformation Detta har hänt: Pratat och skapat krav (och plan) Övning 2 Riskhantering, intressenter
Föreläsning 3 Verifiering och Validering
ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Föreläsning 3 Verifiering och Validering Jonas Wisbrant 2 Detta har hänt... Pratat och skapat krav och plan Övning 2 Riskhantering, intressenter
Är instruktionerna oklara, projektet rörigt och allmänt frustrerande?
Detta har hänt... Pratat och skapat krav och plan Övning 2 Riskhantering, intressenter och kravgranskning. Genomfört granskningar inför 2 x 0.99 och omarbete? ETSA01 Ingenjörsprocessen för programvaruutveckling
Föreläsning 3 Verifiering och Validering
ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Föreläsning 3 Verifiering och Validering Jonas Wisbrant 2 Detta har hänt... Pratat och skapat krav och plan Några har kommit i kontakt med IP3-projekt
Föreläsning 4: Konfigurationer, Plattformar & Design I Programvaruutveckling - Metodik 2016 Jonas Wisbrant
Föreläsning 4: Konfigurationer, Plattformar & Design I Programvaruutveckling - Metodik 2016 Jonas Wisbrant 1 Snabbrepris: Test Testning kan påvisa fel, men inte bevisa att det inte finns fel Testprocessen
Föreläsning 4 Arkitektur, design, kodning
ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Föreläsning 4 Arkitektur, design, kodning Jonas Wisbrant 1 Agenda Kursinformation Arkitektur Design Kodning Produktlinjer Konfigurationshantering
Var är vi? Föreläsning 4 Arkitektur, design, kodning. Agenda. Kursinformation. Produktlinjer. Konfigurationshantering - forts. Detta har hänt...
Agenda Kursinformation ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Arkitektur Design Kodning Föreläsning 4 Arkitektur, design, kodning Produktlinjer Jonas Wisbrant Konfigurationshantering
konfiguration och version och variant?
Att fundera på medan vi väntar: Vad är det för skillnad mellan konfiguration och version och variant? ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik & Föreläsning 4 Arkitektur, design, kodning
Föreläsning 4 Arkitektur, design, kodning
ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Föreläsning 4 Arkitektur, design, kodning Jonas Wisbrant 2 Agenda Kursinformation Arkitektur Design Kodning Produktlinjer Konfigurationshantering
Agenda. Kursinformation. Manual för systemstart... Föreläsning 6: Utvärdering och om tentamen
Föreläsning 6: Utvärdering och om tentamen Ingenjörsprocessen metodik ETSA01 VT14 Jonas Wisbrant Agenda Kursinformation Sammanfattning av kursen och operativ utvärdering Schemalagda kursaktiviteter Cykelgarageprojektet
Agenda. Föreläsning 6: Utvärdering och om tentamen. Kursinformation
Föreläsning 6: Utvärdering och om tentamen Ingenjörsprocessen metodik ETSA01 VT14 Jonas Wisbrant 288 Agenda Kursinformation Sammanfattning av kursen och operativ utvärdering Schemalagda kursaktiviteter
Agenda. Projektbeskrivning avsnitt 8: Acceptanstest - MS4 i korthet. Kursinformation
Föreläsning 6: Utvärdering och om tentamen INGENJÖRSPROCESSEN METODIK ETSA01 VT13 JONAS WISBRANT Agenda Kursinformation Sammanfattning av kursen och operativ utvärdering Schemalagda kursaktiviteter Cykelgarageprojektet
INGENJÖRSPROCESSEN METODIK ETSA01 VT13 JONAS WISBRANT
Föreläsning 6: Utvärdering och om tentamen INGENJÖRSPROCESSEN METODIK ETSA01 VT13 JONAS WISBRANT 2 Agenda Kursinformation Sammanfattning av kursen och operativ utvärdering Schemalagda kursaktiviteter Cykelgarageprojektet
Några grundläggande begrepp
Några grundläggande begrepp Validering bygger vi rätt system? Uppfyller kravspecifikationen de verkliga behoven? Verifiering bygger vi systemet rätt? Uppfyller det färdiga systemet kravspecifikationen?
Exercise 1b: Requirements evaluation
Resurser Produktmål Tidplan Projektplan Idé Affärsmål Användarfall Risker Krav Design Gränssnitt hårdvara Återanvänd kod Funktionella krav Kvalitetskrav Granskning Programkod Applikation Validera Kodgranskning
Exercise 1b: Requirements evaluation
Resurser Produktmål Tidplan Idé Affärsmål Användarfall Risker Krav Gränssnitt hårdvara Återanvänd kod Funktionella krav Kvalitetskrav Granskning Programkod Applikation Validera Kodgranskning Versioner
Detta har hänt... Föreläsning 2: Projektplanering & granskning. Pratat och provat kravhantering. Bildat projektgrupper :-) Skaffat litteratur?
Föreläsning 2: ering & granskning Ingenjörsprocessen metodik ETSA01 VT14 Jonas Wisbrant 60 Detta har hänt... Pratat och provat kravhantering Bildat projektgrupper :-) Skaffat litteratur? Kommit igång med
Diskutera medan vi väntar. Agenda. Föreläsning 4: Design och praktisk testning. Arkitektur & Design
Diskutera medan vi väntar Ingen kursinformation idag. MS1 på onsdag MS2 på onsdag efter påsk. 1. Läs kurswebben och kursplanen och egen projektplan 2. Fråga projekthandledarna Föreläsning 4: och praktisk
INGENJÖRSPROCESSEN METODIK ETSA01 VT13 JONAS WISBRANT
Föreläsning 2: ering & granskning INGENJÖRSPROCESSEN METODIK ETSA01 VT13 JONAS WISBRANT 57 Detta har hänt... Pratat och provat kravhantering Bildat projektgrupper :-) Skaffat litteratur? Kommit igång med
Föreläsning 5 Processer, vidare utveckling
OBS! Grupp 12-16 och 23-26 har övning i E:3336 på torsdag [http://www.google.com/googlebooks/chrome/] 1 ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Föreläsning 5 Processer, vidare utveckling
Föreläsning 5 Processer, vidare utveckling
OBS! Grupp 12-16 och 23-26 har övning i E:3336 på torsdag ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Föreläsning 5 Processer, vidare utveckling Jonas Wisbrant [http://www.google.com/googlebooks/chrome/]
Verifiering & validering -
Verifiering & validering - INGENJÖRSPROCESSEN forts. METODIK ETSA01 VT13 Verifiering och validering rep. INGENJÖRSPROCESSEN METODIK ETSA01 VT13 JONAS WISBRANT 1 1 Från F3 Verifiering & Validering Verifiering
Exercise 1b: Requirements Evaluation ETSA01 INGENJÖRSPROCESSEN 1 - METODIK VT15
Exercise 1b: Requirements Evaluation ETSA01 INGENJÖRSPROCESSEN 1 - METODIK VT15 Lund U niversity Computer Science Jonas W isbrant ETSA01 Ingenjörsp ro cessen metodik V-modellen för programvaruutvecking
Verifiering & Validering. Integrationstest. Enhetstest. Verifiering och & validering rep. -
Från F3 Verifiering och & validering rep. - INGENJÖRSPROCESSEN forts. METODIK ETSA01 VT13 INGENJÖRSPROCESSEN METODIK ETSA01 VT13 JONAS WISBRANT Verifiering & Validering Verifiering Bygger vi produkten
Föreläsning 2: Projekt, Kravhantering, Dokumentgranskning
ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Föreläsning 2: Projekt, Kravhantering, Dokumentgranskning Jonas Wisbrant 2 Detta har hänt... Pratat krav Bildat projektgrupper :-) Skaffat litteratur?
Detta har hänt... Kursinformation. Agenda. Kursinformation
Detta har hänt... Pratat krav Bildat projektgrupper :-) Skaffat litteratur? Kommit igång med projektwikin: Formulerar krav Genomfört en övning: Hur var den? ETSA01 Ingenjörsprocessen för programvaruutveckling
Föreläsning 2: Projekt, Kravhantering, Dokumentgranskning
ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Föreläsning 2: Projekt, Kravhantering, Dokumentgranskning Jonas Wisbrant 2 Detta har hänt... Pratat krav Bildat projektgrupper :-) Skaffat litteratur?
Projektplan, Cykelgarage
Projektplan, Cykelgarage Johan Anderholm, (dt08ja5@student.lth.se) Jon Andersen (dt08ja8@student.lth.se) Marcus Carlberg (dt08mc4@student.lth.se) Simon Ekvy (dt08se2@student.lth.se) Stefan Johansson (dt08sj7@student.lth.se)
Detta har hänt... Agenda. Kursinformation. Kursinformation
Detta har hänt... Pratat krav Bildat projektgrupper :-) Skaffat litteratur? Kommit igång med projektwikin: Formulerar krav Genomfört en övning: Hur var den? ETSA01 Ingenjörsprocessen för programvaruutveckling
Utmaning. Föreläsning 1: Kursen & Projektuppgift Utvecklingsprojekt & Kravhantering. Agenda F1. Jonas Wisbrant - kort CV
Utmaning Kan man förstå software engineering utan att ha upplevt stora programvaruprojekt? ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Föreläsning 1: Kursen & Projektuppgift Utvecklingsprojekt
Testplan Cykelgarage
Testplan Cykelgarage Stefan Johansson D08 (dt08sj7@student.lth.se) Johan Anderholm D08 (dt08ja5@student.lth.se) Angelica Gabasio D08 (dt08ag8@student.lth.se) Marcus Carlberg D08 (dt08mc4@student.lth.se)
Detta har hänt... Sammanfattning - Krav. Agenda F2. Föreläsning 2: Projektplanering & granskning
Föreläsning 2: ering & granskning Ingenjörsprocessen metodik ETSA01 VT14 Jonas Wisbrant Detta har hänt... Pratat och provat kravhantering Bildat projektgrupper :-) Skaffat litteratur? Kommit igång med
Testplanering, test-first, testverktyg
Testplanering, test-first, testverktyg Mats Skoglund Department of Computer and Systems Sciences Stockholm University/Royal Institute of Technology Stockholm, Sweden 12 mars 2007 Mats Skoglund Page 1(33)
TDDI02. Programmeringsprojekt. Föreläsning 3 Jonas Lindgren, Institutionen för Datavetenskap, LiU
TDDI02 Programmeringsprojekt. Föreläsning 3 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Verifikation, Validering och Testning XP Extreme Programming Vad är ett fel? I engelskan
2015-05-14. Agenda. Kursinformation. Manual för systemstart. Föreläsning 6: Summering och om tentamen. Målgrupp:
Föreläsning 6: Summering och om tentamen ETSA01 Ingenjörsprocessen 1 - Metodik VT15 Markus Borg Agenda Kursinformation Sammanfattning av kursen och operativ utvärdering Schemalagda kursaktiviteter Cykelgarageprojektet
Diskutera medan vi väntar
Diskutera medan vi väntar Kan man utveckla programvara täckning på olika sätt? beslut 226 Föreläsning 5: Processer och vidareutveckling Ingenjörsprocessen metodik ETSA01 VT14 Jonas Wisbrant 227 Detta har
Exercise 4a: Test 2 ETSA01 INGENJÖRSPROCESSEN 1 - METODIK VT15. Lund University Computer Science ETSA01 Ingenjörsprocessen - Metodik VT15 Exercise 1
Exercise 4a: Test 2 ETSA01 INGENJÖRSPROCESSEN 1 - METODIK VT15 Lund University Computer Science ETSA01 Ingenjörsprocessen - Metodik VT15 Exercise 1 Agenda L4: Some quick reminders Testing in the projects
Testning. 1DV404, HT14 Jesper Andersson Kap 21 + Testing Primer
Testning 1DV404, HT14 Jesper Andersson Kap 21 + Testing Primer UP Faser Elaboration ü Syfte: Fastställa och validera en basarkitektur för systemet vilket ger en stabil grund för den största delen av utvecklingsarbetet
Streamade föreläsningar på webben
Streamade föreläsningar på webben Synligt inom LU Vänligen sprid inte filmerna! Ni bör inte synas Skicka gärna frågor om innehåll via formuläret! Möjligen nacken på 2-3 främre rader Ni kan komma att höras
Streamade föreläsningar på webben. Föreläsning 1: Kursen & Projektuppgift. Utvecklingsprojekt & Kravhantering. Utmaning. Jonas Wisbrant - kort CV
Streamade föreläsningar på webben ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Föreläsning 1: Kursen & Projektuppgift Synligt inom LU Vänligen sprid inte filmerna! Ni bör inte synas Utvecklingsprojekt
Föreläsning 6. Utvärdering, om tenta, avrundning
ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Föreläsning 6 Utvärdering, om tenta, avrundning Jonas Wisbrant 1 Agenda Kursinformation Sammanfattning av kursen och operativ utvärdering Schemalagda
Föreläsning 6. Utvärdering, om tenta, avrundning. Agenda. Kursinformation. Schemalagda kursmoment. Jonas Wisbrant. Kursinformation
Agenda Kursinformation ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Sammanfattning av kursen och operativ utvärdering Schemalagda kursaktiviteter Cykelgarageprojektet Föreläsning 6 Tentamen
Configuration testing Why? Vad det är tänkt att koden ska göra. Performance testing Kommentarer Skriva om koden som kommentar
Skapa testfall Testing Köra testen Hitta fel Inspections and reviews Verifiera resultatet Formal methods Static analysis Completeness Verifiering Kvalitet Maintainability Validering Traceability Fault
Platina och kvalité. Rasmus Staberg, Teknisk direktör, 2014-04-08
Formpipe Platina och kvalité Rasmus Staberg, Teknisk direktör, 2014-04-08 04 08 1 Formpipe Presentation Bakgrund Platina släpptes som första release år 2000. Fick pris för Best in show från Bill Gates
Föreläsning 5 Processer Vidare utveckling
Detta har hänt... ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Föreläsning 5 Processer Vidare utveckling Pratat krav, plan, test, design Övning 4: Test, partitioner och täckning Jobbat med
Regressionstestning teori och praktik
Regressionstestning teori och praktik Lic. Emelie Engström emelie.engstrom@cs.lth.se Software Engineering Research Group LUND UNIVERSITY Sweden SWELL the Swedish Research School in Software Verification
Medan vi väntar: Diskutera
Medan vi väntar: Diskutera Om man utvecklar ett system... Vad kan gå fel? Vad brukar gå fel? Varför då? Vad kan man göra åt det?... samt notera kurswebben: http://cs.lth.se/etsa01...... samt köp kurskompendium
Specifikationer i kompendiet Övningar på moodle.cs.lth.se Support Onsdag kl i E: (84?) Frågestund: F3
Börja koda onsdag eftermiddag? Specifikationer i kompendiet Övningar på moodle.cs.lth.se Support Onsdag kl 13-17 i E:2182-83 +(84?) Frågestund: F3 Föreläsning 2: Projektplanering & Granskning ETSA02 Programvaruutveckling
Uppgift v1: Teststrategi i sammanhang Terese Berger. Teststrategi. Projekt CiviCRM. Version 0.9. Sida 1(7)
Teststrategi Projekt CiviCRM Version 0.9 Sida 1(7) Innehållsförteckning Referenser...2 Revisioner...2 1. Inledning...3 1.1 Uppgift...3 1.2 Bakgrund...3 1.3 Organisation...4 1.4 Granskning och godkännande...4
Diskutera medan vi väntar. Detta har hänt... Agenda. Föreläsning 5: Processer och vidareutveckling. Kan man utveckla programvara
Diskutera medan vi väntar Kan man utveckla programvara täckning på olika sätt? beslut Föreläsning 5: Processer och vidareutveckling 226 227 Detta har hänt... Agenda Pratat krav, plan, test, design Övning
ETSA01 Ingenjörsprocessen 1 - Metodik VT15 Markus Borg
Föreläsning 4: Design och praktisk testning ETSA01 Ingenjörsprocessen 1 - Metodik VT15 Markus Borg 1 Min frånvaro Spårbarhet för säkerhetskritiska programvarusystem Bilindustri - ISO 26262 Processautomation
Configuration Management
Configuration Management En möjliggörare för värdeskapande smart industri CM Forum SIS TK 280, TK 611 och CM vad är kopplingen? Er digitala information bör vara beskaffad så här! Era identifierare bör
CM FORUM. Introduktion till. Configuration Management (CM) / Konfigurationsledning. Tobias Ljungkvist
Introduktion till Configuration Management (CM) / Konfigurationsledning Tobias Ljungkvist 2017-08-30 1 CM enligt SS-EN ISO 10007_2004 Konfigurationsledning är en ledningsaktivitet som tillämpar teknisk
Steget efter CAD Data Management. Per Ekholm
Steget efter CAD Data Management Per Ekholm Agenda Vilka processer/discipliner stöds i PDMLink Dokument management Configuration Management Change Management Project Management Hur utvärderar jag behovet?
Min frånvaro. Agenda. Föreläsning 4: Design och praktisk testning
Föreläsning 4: Design och praktisk testning ETSA01 Ingenjörsprocessen 1 - Metodik VT15 Markus Borg Min frånvaro Spårbarhet för säkerhetskritiska programvarusystem Bilindustri - ISO 26262 Processautomation
Vad händer med L3: ΔL3-L4 för Krav följs upp av annan projektgrupp. Föreläsning 5: V&V II + Design II Efterläsning Kodning
Föreläsning 5: V&V II + Design II Efterläsning Kodning Programvaruutveckling - Metodik 2016 Jonas Wisbrant 1 Vad händer med L3: ΔL3-L4 för Krav följs upp av annan projektgrupp PHL kopierar L3 + PHL-protokoll
Streamade föreläsningar på webben
Medan vi väntar: Diskutera Om man utvecklar ett system... Vad kan gå fel? Vad brukar gå fel? Varför då? Vad kan man göra åt det?... samt notera kurswebben: http://cs.lth.se/etsa01...... samt köp kurskompendium
Föreläsning 4: Test II, Design I Programvaruutveckling - Metodik 2017 Markus Borg
Föreläsning 4: Test II, Design I Programvaruutveckling - Metodik 2017 Markus Borg 1 Agenda F4 Kursformalia Översikt Kursbetyg Projektet Nästa fas: Construction Burndown charts Programvarutestning - del
Agenda. Föreläsning 6: Summering och om tentamen Kursinformation
Föreläsning 6: Summering och om tentamen ETSA01 Ingenjörsprocessen 1 - Metodik VT15 Markus Borg 1 Agenda Kursinformation Sammanfattning av kursen och operativ utvärdering Schemalagda kursaktiviteter Cykelgarageprojektet
Hemtentamen: ETSA01 Ingenjörsprocessen för programvaruutveckling metodik Jonas Wisbrant
Hemtentamen: ETSA01 Ingenjörsprocessen för programvaruutveckling metodik Jonas Wisbrant 2014-06-02 1 Inledning 1.1 Mål Tentamensformen, dvs hemtentamen, har valts eftersom den möjliggör att ni både kan
Kursinformation. Metodik för programvaruutveckling. Utvecklingsprocessen för programvara. Innehåll. Processmodell. Exempel
Kursinformation Metodik för programvaruutveckling Föreläsning 3 Latex ok för litteraturstudierapport (prata med mig bara) Nästa föreläsning är av Björn Regnell (jag är med också) Presentationer imorgon
Processbeskrivning Test
ProcIT-P-017 Processbeskrivning Test Lednings- och kvalitetssystem Fastställt av Sven Arvidson 2012-06-20 Innehållsförteckning 1 Inledning 3 1.1 Symboler i processbeskrivningarna 3 2 Testprocessen 4 2.1
Testning på 3 föreläsningar. PV7180 Verifiering och Validering. Litteratur. Vad är testning? Varför testa och olika syn? Målet med testning
ning på 3 föreläsningar Första föreläsningen Översikt PV7180 Verifiering och Validering Föreläsning 3 ning del 1 Andra föreläsningen Coverage ing, OO-ing, Utvärdering av tekniker Tredje föreläsningen Automatiserad
Programdesign. Dokumentera. Dokumentera
Programdesign Dokumentera Välj datastruktur så programmet blir så enkelt som möjligt. Välj algoritm så programmet blir lättläst, robust och effektivt. Analysera programmet för att få en bra metod. Överväganden
Agil testning i SCRUM
Agil testning i SCRUM Petter Salomonsson Petter.salomonsson@addq.se Tel: 0708-398435 Kort presentation AddQ Consulting AB tydlig fokus på test och kvalitetssäkringstjänster erbjuder mycket erfarna konsulter
Exercise 1a: Requirements and project kick-off
Exercise 1a: Requirements and project kick-off INGENJÖRSPROCESSEN METODIK ETSA01 VT13 Lund University Computer Science ETSA01 Ingenjörsprocessen - Metodik VT13 Exercise 1 5 Exercise Sessions Ex 1a: Requirements
Detta har hänt... Föreläsning 2: Projektplanering & Granskning Bildat projektgrupper. Pratat och provat kravhantering. Skaffat litteratur?
Föreläsning 2: Projektplanering & Granskning ETSA01 Ingenjörsprocessen 1 Metodik VT15 Markus Borg 1 Detta har hänt... Bildat projektgrupper Pratat och provat kravhantering Skaffat litteratur? Kommit igång
Programdesign. minnesutrymme storlek på indata. DA2001 (Föreläsning 15) Datalogi 1 Hösten / 20
Programdesign Välj datastruktur så programmet blir så enkelt som möjligt. Välj algoritm så programmet blir lättläst, robust och effektivt. Analysera programmet för att få en bra metod. Överväganden vid
Exempel på verklig projektplan
Exempel på verklig projektplan Detta är ett exempel på en proffessionell projektplan hämtad ur verkliga livet. Den visas inte i sin fullständighet, det mesta är bortklippt, men strukturen och mycket av
Hemtentamen: ETSA02 Programvaruutveckling Metodik
Hemtentamen: ETSA02 Programvaruutveckling Metodik Jonas Wisbrant 2016-05-31 1. Mål Tentamensformen, dvs. hemtentamen, har valts eftersom den möjliggör att ni både kan visa att ni har grundläggande kunskap
Hemtentamen: ETSA01 Ingenjörsprocessen för programvaruutveckling metodik
Hemtentamen: ETSA01 Ingenjörsprocessen för programvaruutveckling metodik Jonas Wisbrant 2011-05- 26 1 Inledning 1.1 Mål Tentamensformen, dvs hemtentamen, har valts eftersom den möjliggör att ni både kan
ISTQB Testarens ledstjärna
ISTQB Testarens ledstjärna SSTB SAST-möte 2012-02-23 Vilka är vi? Mångårig erfarenhet från testarbete, testare, testledare, testchef. Utveckling av test metoder och processer. Test kurser. Jobbar som Systemarkitekt
Sara Skärhem Martin Jansson Dalarna Science Park
Sara Skärhem Martin Jansson Dalarna Science Park Sara Skärhem Martin Jansson Vad är innovation? På Wikipedia hittar man: En innovation är en ny idé, till exempel i form av en produkt, lösning, affärsidé,
TDDI02. På denna föreläsning: Programmeringsprojekt, Föreläsning 3. Verifikation, validering och testning
TDDI02 Programmeringsprojekt, Föreläsning 3 Anton Sundblad Filip Strömbäck Med utgångspunkt i tidigare slides av Jonas Lindgren På denna föreläsning: Verifikation, validering och testning Begreppsdistinktioner
Sammanfattningar Essentials of Software Engineering
Sammanfattningar Essentials of Software Engineering F10, Testning Quality Assurance (QA) inkluderar testning. Testning är en aktivitet som handlar om att utvärdera produktens kvalitet, och att förbättra
Produktens väg från idé till grav
Produktens väg från idé till grav Lars Lundgren Senior Consultant, Risk Management i3tex Riskhantering Idè Avsedd användning Specifikationer Konstruktion Verifiering Validering Postproduktion Slut Produkten
TDDI02. På denna föreläsning: Programmeringsprojekt, Föreläsning 3. Filip Strömbäck. Verifikation, validering och testning
TDDI02 Programmeringsprojekt, Föreläsning 3 Filip Strömbäck Med utgångspunkt i tidigare slides av Jonas Lindgren På denna föreläsning: Verifikation, validering och testning Begreppsdistinktioner Lite populistiskt
RUTIN FÖR DRIFTSÄTTNING
Styrande dokument Rutindokument Rutin Sida 1 (10) RUTIN FÖR DRIFTSÄTTNING Sida 2 (10) INNEHÅLLSFÖRTECKNING Rutin driftsättning... 3 Syfte... 3 Planera driftsättning... 3 Installera och testa... 5 Överföra
Deluppgift 2 Kravhantering a) (2p) När man diskuterar krav brukar man ange två olika typer av krav. Beskriv dessa och ge exempel.
Page 1 (5) Hemuppgift 1DV404 150115-150118 Deluppgift 1 Processmodeller a) (4p) Alla mjukvaruutvecklare följer någon form av utvecklingsprocess i sitt arbete. Diskutera vad organisationer brukar ange som
SF Bio App. Repport. Test summary. 1- Syfte. 2. Produktöversikt. Författare: Zina Alhilfi Datum: Version: v1,0
Test summary SF Bio App. Repport Författare: Zina Alhilfi Datum: 2017-03-13 Version: v1,0 Granskad: Klar Ref: Test plan V1,0 Status: klar 1- Syfte Syftet med denna slutrapport är att redovisa vilka testaktiviteter
SCRUM. Marcus Bendtsen Institutionen för datavetenskap
SCRUM Marcus Bendtsen Institutionen för datavetenskap 2 Metodik Systematiskt tillvägagångssätt för att garantera utfallet Metodiken behöver passa kontexten och tillgängliga resurser Verifiering av metodiken
Konstruktion av datorspråk
Konstruktion av datorspråk Fö2: Funderingar kring hur man kan bedöma programspråk samt några fler detaljer i Ruby Peter Dalenius peter.dalenius@liu.se Institutionen för datavetenskap Linköpings universitet
Metoder och verktyg för funktionssäkerhet
Metoder och verktyg för funktionssäkerhet Projektstart 1. Hantera kraven En bra process är grunden för att hantera kraven i ett säkerhetsprojekt. Det krävs att du har en tydlig spårbarhet mellan krav och
Kurser och seminarier från AddQ Consulting
Kurser och seminarier från AddQ Consulting Med fokus på kvalitet och effektivitet bidrar vi till att underlätta människors vardag. Kompetensutveckling är nyckeln till framgång för dig som jobbar med test,
Skolan för Datavetenskap och kommunikation. Programmeringsteknik. Föreläsning 13
Skolan för Datavetenskap och kommunikation Programmeringsteknik Föreläsning 13 information om p-uppgiften P-uppgiften Spec Prototyp Granskning Krav på P-uppgiftslösningen Redovisning av P-uppgiften P-uppgiften:
Mer OOP. Variation i typ. Medlen repetition. Generiska klasser. Gränssnitt - Interface. Mer om klasser Några exempel UML
Målet Mer OOP Mer om klasser Några exempel UML Modularitet Språkligt modulära enheter Få gränssnitt Små gränssnitt Tydliga gränssnitt Dold information Återanvändbarhet Variation i typer Variation i datastrukturer
men borde vi inte också testa kraven? Robert Bornelind
men borde vi inte också testa kraven? Robert Bornelind Presentation på SAST 15 års jubileum 14 oktober 2010 SQS Software Quality Systems Nordic Innehåll Introduktion Kvalitet, tid och kostnad Process Testning
Streamade föreläsningar på webben. Medan vi väntar: Diskutera. Utmaning. Föreläsning 1: Projektuppgift & kravhantering. Om man utvecklar ett system...
Medan vi väntar: Diskutera Streamade föreläsningar på webben Om man utvecklar ett system... Vad kan gå fel? Vad brukar gå fel? Varför då? Synligt inom LU Vad kan man göra åt det? Vänligen sprid inte filmerna!...
Att fatta rätt beslut vid komplexa tekniska upphandlingar
Att fatta rätt beslut vid komplexa tekniska upphandlingar Upphandlingsdagarna 2015 Stockholm 29 januari 2015 1 Inledning Den här presentation kommer att undersöka de vanligaste fallgroparna vid komplex
men borde vi inte också testa kraven?
men borde vi inte också testa kraven? Robert Bornelind Presentation på SAST, 24 februari 2011 SQS Software Quality Systems Sweden AB Innehåll Introduktion Kvalitet, tid och kostnad Process Testning av
Teststrategier och Testcertifiering. Per Strandberg, Maj 2013
Teststrategier och Testcertifiering Per Strandberg, Maj 2013 1 Lite om Test i Allmänhet och ISTQB Certifiering Mål med testning? Förebygga fel Hitta fel eller risk Underlätta och ge stöd vid utveckling
Vad är RTCA DO-178C? och: Hur arbetar Saab med dessa krav? Lars Ljungberg, Saab AB, Avionics Systems
Vad är RTCA DO-178C? och: Hur arbetar Saab med dessa krav? Lars Ljungberg, Saab AB, Avionics Systems 2018-05-07 FUNCTONAL SAFETY DO-178C är processorienterad dentifiera risker (hazards) och de säkerhetsfunktioner
Kursöversikt Certifierad Mjukvarutestare
Kursöversikt Certifierad Mjukvarutestare Kurs Poäng (5 yh poäng/vecka) Examensarbete 20 Grunderna inom test 20 Kommunikation i arbetslivet 15 Lärande i arbete 1 60 Lärande i arbete 2 60 Projektarbete 15
Symptom på problemen vid programvaruutveckling
eller Varför är det bättre med halsbränna i början av ett projekt än i slutet? Eva Hådding ehadding@rational.com Symptom på problemen vid programvaruutveckling Användarnas och verksamhetens behov ej uppfyllda
LIPS 1, 2002 Lätt Interaktiv Projektstyrningsmodell
LIPS 1, 2002 Lätt Interaktiv Projektstyrningsmodell Christian Krysander Tomas Svensson Översikt av Lips Projektstyrningsmodell Utvecklingsmodell Vad är ett projekt? Definition av ett projekt: En grupp
Testdriven utveckling. Magnus Jonsson Siemens Medical Solutions
Testdriven utveckling Magnus Jonsson Siemens Medical Solutions 2 Soarian Stort projekt, ca 400 personer i projektet Distribuerad utveckling i USA, Indien och Sverige Web baserat lösning med admin client
PMM (Process Maturity Metrics) Allmänt. Mätetal för framgångsfaktorer. 1. CM konfigurationsstyrning
PMM (Process Maturity Metrics) PMM är en metod för att mäta processmognad i utvecklingsprojekt. I korthet går metoden ut på att man utvärderar sin utvecklingsprocess med avseende på ett antal framgångsfaktorer