Föreläsning 4 Arkitektur, design, kodning

Storlek: px
Starta visningen från sidan:

Download "Föreläsning 4 Arkitektur, design, kodning"

Transkript

1 ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Föreläsning 4 Arkitektur, design, kodning Jonas Wisbrant 2 Agenda Kursinformation Arkitektur Design Kodning Produktlinjer Konfigurationshantering - forts 3

2 Detta har hänt... Pratat krav och plan och test Övning 3: Utformat testfall Fått återkoppling och kanske reviderat krav och plan inför MS1 Haft kursombudsmöte Påbörjat testplan med testspecifikation? Förbereda testrapport? Påbörjat design? Börjat programmera? 4 Ombudsmöte Långsiktiga utmaningar: Möjlighet till samtidig skrivning i en wiki-sida Möjlighet att ladda ned föreläsningsfilmerna Önskemål inför nästa kursomgång: Mer tidigt stöd för wikin, wiki-lathund och kanske gör-det-själv-labb, ordnad peer-support? Bättre struktur på informationsmaterialet: - Kompendiet ostrukturerat - bättre logisk följd - Övningsfrågorna borde finnas i kompendiet - Bättre beskrivning av hur projektet ska gå till - Wikins templates stämmer inte med projektbeskrivningen (kurswebb) Önskemål på kort sikt: Förtydligande av vad som förväntas av manual/lathund i projektet. Förtydligande av om det är frågan om ett studentprojekt, fiktivt verkligt projekt eller både-och. Finns inget självklart svar. Förtydligande av att man inte kan räkna med föreläsningsfilmerna under hemtentan Eventuellt nytt möte måndag 9/5 kl

3 Kan man förstå software engineering utan att ha upplevt stora programvaruprojekt? Utmaning Kan man förstå vad som händer i stora programvaruprojekt utan att ha studerat software engineering? = barcode reader Operator = electronic lock Barcode printer PC Kravspecifikation = pincode terminal Fas 1 Specifikation Projektplan Testplan Extra exit door Bicycle garage Entry door Fas 2 Design Designdokument Exit door Fas 3 Implementation och enhetstest Fas 4 Systemtest Exekverbar källkod Dokumenterat genomförda systemtest Projekthandledare Projektgrupp QA från IP3 6 Hur ska vi gör med manualen / lathund? Svar: Vet ej! På lämpligt sätt... ;-) Detta vill vi uppnå: En metod för att bli klokare på hur systemet skall användas Smidigare acceptanstest (kurs-läge) Utnyttja/förstå kopplingen: Likhet: Förlopp Testfall Skillnader: - Inramning - Språkbruk - Kontext 1. Börja 2. Genomför 3. Slutför Användarfall Manual 7

4 Önskemål om Versionshistorien Kommentera gärna bort länkarna till 0.x-versionerna eller åtminståne till de outnyttjade versionerna 8 Kursinformation V 4: Nu: Arkitektur, design, kodning, versioner Ti kl 24: MS 1 eller To Ö: Mer om test: T V 5: Må kl 13 F: Utvecklingsprocesser, vidareutveckling, om tentamen To övning: Om tenta och återkoppling testplan Notera: och i andra kurser -> ingår INTE i denna kurs 9

5 Arkitektur och Design 10 Design är både en aktivitet och ett resultat arkitektur -> design -> kod är en vettig hierarki. 11

6 Modulär nedbrytning Helt system Helt system Helt system M1 M1 M11 M12 M2 M3 M2 M21 M3 M22 12 men man kan ju även designa bottomup M11 M12 M21 M22 M1 M11 M12 M2 M21 M22 M3 Hela systemet M1 M11 M12 M2 M3 M21 M22 13

7 Alltså Top-down Bottom-up Toppom-dup 14 Koppling I hur stor utsträckning är enheter i programmet kopplade till varandra? Man vill ha låg koppling 15

8 Koppling påverkas av Antal gränssnitt mellan olika delar Typ av gränssnitt Enkla gränssnitt ger lägre koppling än komplicerade gränssnitt Åtkomst av interna detaljer ger högre koppling än endast anrop av funktioner Kommunikation av endast data ger lägre koppling än kommunikation av kontrollinformation Vid objektorientering komponent-nivå-koppling t ex när en klass har en annan klass som instansvariabel Interaktionskoppling (som gränssnitt ovan) Koppling baserat på ärvning 16 Samhörighet (Cohesion) Hela systemet M1 M11 M12 Hur väl innehållet i en del hänger samman M2 M3 Slumpvis inga meningsfulla beroenden, M21 bara paketerat M22 Logiskt t ex en modul som sköter all utmatning av data Temporal t ex en modul som sköter all uppstart eller avslut Procedurbaserad när procedurer som utförs efter varandra slås ihop, t ex innehållet i en loop Kommunikationsbaserad när delar som behandlar samma data slås ihop Sekvensiell när serier av procedurer som utgör indata till varandra slås samman Funktionell när innehållet står för en enstaka funktion, t ex sortera vektor 17

9 Diskutera i grupper om 2-3 personer Varför är det viktigt med låg koppling och hög samhörighet i allmänhet i ert projekt Hur ska man göra för att uppnå detta rent konkret i ett projekt som ert? Hela systemet M1 M11 M12 M2 M21 M22 M3 18 Mål med en arkitekturdesign (dokument) Förståelse och kommunikation Möjliggöra återanvändning på hög nivå Stöd för konstruktion och utveckling Underlag för analys 19

10 Arkitekturdesign, olika vyer Modul-beskrivning t ex programkod med relationer Klass A är beroende av Klass B Komponenter och konnektorer t ex binärer och kopplingar Object A delar data med objekt B Allokeringsbeskrivningar fysisk allokering av systemets komponenter låsreglerna finns i systemet, låstimern finns i dörrposten 20 Arkitekturer: Exempel Delad data gemensam information repository Client-server -modellen Klient 1 Klient 2 Klient n Nätverk Delsystem 1 Delsystem 2 Delsystem n Betj. 1 Betj. 1 Betj. m Abstract-machine modellen / Layered system Pipes and filters 21

11 Delad data gemensam information repository Delsystem 1 Delsystem 2 Delsystem n Fördelar: Effektivt med mycket data De som producerar data måste inte veta så mycket om mottagaren Backup, etc lätt Svårigheter: Alla delsystem använder samma dataform Vidareutveckling kan vara svårt eftersom mycket bygger på en viss datamodell Olika krav på detta 22 Client-server -modellen Klient 1 Klient 2 Klient n Nätverk Betj. 1 Betj. 1 Betj. m Fördelar: Distribuerad arkitektur Lätt att lägga till klienter och betjänare Svårigheter: Nya enheter måste kanske anpassas Ingen gemensam datamodell 23

12 Layered system: Exempel OSI - referensarkitektur 24 Hur ska man välja arkitektur? Kvalitetskrav påverkar beslutet, t ex: Prestanda (svarstid, genomströmning) Inte för mycket kommunikation, Säkerhet mot intrång (Security) Kritiska funktioner i lägre lager, Säkerhet för användaren (Safety) Operationer i begränsat antal moduler, Tillgänglighet Redundanta komponenter, Underhållbarhet Komponenter som är lätta att förstå för sig själva, låg komplexitet, 25

13 Utvärdering - Mått på design? Hur avgör man om en design är bra? Några förslag: Graph impurity Informationsflöde = size * (inflow * outflow) 2 Weighted methods per class:... WMC= n " i=1 c i! Hela systemet M1 M11 M12 M2 M21 M22 M3 Inte uppenbart hur man ska mäta detta! 26 Ett förslag: Graph impurity GI = n e 1 n = antal noder e = antal bågar GI = 0: perfekt Är detta ett bra mått på en design? - Varför? - Varför inte? 6-5-1= = -8 27

14 Kodning 28 Kodning Kombineras med enhetstestning Kodningsstandarder kan finnas Kodgranskningar kan utföras 29

15 Ett exempel på en kodningsstandard (Java) Basic File names File organization Indention (4 characters) Comments Declarations (1/line) Statements (if always with {}) White space (2 lines between ) Naming conventions Additional Naming (semantic consistency, understandable abbreviations, ) Constant names instead of raw numbers) Every class should have a comment Avoid static variables File size < 200 LOC Exempel från Xuefen Fang, Using a coding standard to improve program quality Quality Software, Varför vill man ha denna typ av standarder? Ökad rörlighet Personer kan gå mellan projekt Erfarenheter best practice Trovärdighet Vilka problem finns att införa standarder? Vad kan man göra för att komma tillrätta med problemen? 31

16 Design/arkitektur är även att bestämma ansvar Varje modul/klass/etc ska utvecklas av någon Person, avdelning, företag, Även resurser i organisationen kan påverka design/ arkitektur Organisation speglar design (och vice versa?) 32 Plattformar 33

17 Plattformar inom produktutveckling Inte bara inom programvara: Black & Decker Battery Pack Motor Pack Bilindustri Peugeot, Fiat, Toyota, etc Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F4 34 Software product line A software product line is a set of softwareintensive 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 productlines/about_pl.html Plattform v. k F k+1.1 F k+1.2 F k+1.m Plattform v. k+1 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F4 35

18 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 36 Er design i projektet Ingen mall finns Alla klasser ska beskrivas Namn, konstruktorer, publika metoder, ärvning Ange även ansvarig för klasser/metoder Rita grafiskt (klassdiagram) Följ gränssnitt enligt projektbeskrivningen. 37

19 Konfigurationshantering Testpro tokoll Design Utb.- plan Test Manualer Projektplan Krav Process Kod Olika versioner Olika produktvarianter Olika kunder 38 Diskussion: Försök förklara för din granne: Vad är det för skillnad mellan konfiguration och version och variant? & Vad betyder:

20 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. 40 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. 41

21 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? 42 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) 43

22 Versioner, 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 V1.1b Delta? 44 Ä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! } } 45

23 Formulär för ändringshantering, del av information Del 1 Namn Projekt Ändring nr Anledning Objekt att ändra Del 3 Förslag på ändring Skattad tid CCB-möte, datum CCB beslut Del 2 Utredare Resultat av utredning Del 4 Ansvarig för ändring Kommentar Ny version: 46 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 47

24 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) 48 Sammanfattning och i andra kurser -> ingår inte i denna kurs Design görs på olika nivåer: arkitektur -> design -> kodning Man vill ha låg koppling och hög sammanhållning Exempel på vanliga arkitekturer: delad data, client server, layered system, pipes and filters Kvalitetskravkrav påverkar arkitekturen Plattformsbaserad utveckling ger parallellism och kortare tid till marknad, men också ökad komplexitet Ä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. 49

25 Uppgift: Programmera ett cykelgarage Uppdrag Faser och leverabler Målmiljö Kravspecifikation = barcode reader Operator = electronic lock Barcode printer PC = pincode terminal Fas 1 Specifikation Projektplan Testplan Fas 2 Design Extra exit door Bicycle garage Entry door Designdokument Fas 3 Implementation och enhetstest Exit door Fas 4 Systemtest Utvecklingsmiljö Aktörer Dokumentmiljö Projekthandledare Projektgrupp QA från IP3 Alltså V 4: Ti kl 24: MS 1 eller eller annan ÖK! To Ö: Mer om test: T.9-11 Tips: Titta på en gammal tenta... V 5 inleds med tecknad serie 51 Exekverbar källkod Dokumenterat genomförda systemtest

konfiguration och version och variant?

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

Läs mer

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 1 Agenda Kursinformation Arkitektur Design Kodning Produktlinjer Konfigurationshantering

Läs mer

Var är vi? Föreläsning 4 Arkitektur, design, kodning. Agenda. Kursinformation. Produktlinjer. Konfigurationshantering - forts. Detta har hänt...

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

Läs mer

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 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

Läs mer

Diskutera medan vi väntar. Agenda. Föreläsning 4: Design och praktisk testning. Arkitektur & Design

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

Läs mer

Verifiering & Validering. Integrationstest. Enhetstest. Verifiering och & validering rep. -

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

Läs mer

Verifiering & validering -

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

Läs mer

Detta har hänt... Kursinformation. Utse kursombud - nytt försök. Föreläsning 3: Test, Konfigurationer. Pratat och skapat krav och plan

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

Läs mer

Föreläsning 3: Test, Konfigurationer. Övning 2 Riskhantering, intressenter och kravgranskning.

Föreläsning 3: Test, Konfigurationer. Övning 2 Riskhantering, intressenter och kravgranskning. 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.

Läs mer

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

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

Läs mer

Agenda. Föreläsning 6: Utvärdering och om tentamen. Kursinformation

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

Läs mer

Agenda. Kursinformation. Manual för systemstart... Föreläsning 6: Utvärdering och om tentamen

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

Läs mer

INGENJÖRSPROCESSEN METODIK ETSA01 VT13 JONAS WISBRANT. Övning 2 Riskhantering, intressenter och kravgranskning.

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

Läs mer

Agenda. Projektbeskrivning avsnitt 8: Acceptanstest - MS4 i korthet. Kursinformation

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

Läs mer

INGENJÖRSPROCESSEN METODIK ETSA01 VT13 JONAS WISBRANT

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

Läs mer

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

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

Läs mer

Detta har hänt... Föreläsning 2: Projektplanering & granskning. Pratat och provat kravhantering. Bildat projektgrupper :-) Skaffat litteratur?

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

Läs mer

INGENJÖRSPROCESSEN METODIK ETSA01 VT13 JONAS WISBRANT

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

Läs mer

Föreläsning 3 Verifiering och Validering

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

Läs mer

Utmaning. Föreläsning 1: Kursen & Projektuppgift Utvecklingsprojekt & Kravhantering. Agenda F1. Jonas Wisbrant - kort CV

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

Läs mer

Streamade föreläsningar på webben

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

Läs mer

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. 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

Läs mer

Föreläsning 6. Utvärdering, om tenta, avrundning

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

Läs mer

Föreläsning 6. Utvärdering, om tenta, avrundning. Agenda. Kursinformation. Schemalagda kursmoment. Jonas Wisbrant. Kursinformation

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

Läs mer

Föreläsning 3 Verifiering och Validering

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

Läs mer

Är instruktionerna oklara, projektet rörigt och allmänt frustrerande?

Ä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

Läs mer

Streamade föreläsningar på webben

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

Läs mer

Programvaruutveckling - Metodik 2016 Jonas Wisbrant

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

Läs mer

Exercise 1b: Requirements evaluation

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

Läs mer

2015-05-14. Agenda. Kursinformation. Manual för systemstart. Föreläsning 6: Summering och om tentamen. Målgrupp:

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

Läs mer

Detta har hänt... Sammanfattning - Krav. Agenda F2. Föreläsning 2: Projektplanering & granskning

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

Läs mer

Exercise 1b: Requirements evaluation

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

Läs mer

Hemtentamen: ETSA01 Ingenjörsprocessen för programvaruutveckling metodik

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

Läs mer

Exercise 1b: Requirements Evaluation ETSA01 INGENJÖRSPROCESSEN 1 - METODIK VT15

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

Läs mer

Agenda. Föreläsning 6: Summering och om tentamen Kursinformation

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

Läs mer

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 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

Läs mer

Föreläsning 2: Projekt, Kravhantering, Dokumentgranskning

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?

Läs mer

Föreläsning 2: Projekt, Kravhantering, Dokumentgranskning

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?

Läs mer

Specifikationer i kompendiet Övningar på moodle.cs.lth.se Support Onsdag kl i E: (84?) Frågestund: F3

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

Läs mer

CM FORUM. Introduktion till. Configuration Management (CM) / Konfigurationsledning. Tobias Ljungkvist

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

Läs mer

Medan vi väntar: Diskutera

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

Läs mer

Detta har hänt... Agenda. Kursinformation. Kursinformation

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

Läs mer

Detta har hänt... Kursinformation. Agenda. Kursinformation

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

Läs mer

Platina och kvalité. Rasmus Staberg, Teknisk direktör, 2014-04-08

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

Läs mer

Distribuerade affärssystem

Distribuerade affärssystem Distribuerade affärssystem Kursens mål Bygga upp, strukturera och programmera distribuerade system med en flerskiktsarkitektur Beskriva och förklara teorier och uttryck som används inom affärskritiska

Läs mer

Inkapsling (encapsulation)

Inkapsling (encapsulation) UML UML är en standard för att dokumentera och visualisera sina tankar och beslut under analys och design. Att lära sig allt om UML får inte plats i den här kursen, men vi kommer lära oss vissa delar.

Läs mer

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 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

Läs mer

Min frånvaro. Agenda. Föreläsning 4: Design och praktisk testning

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

Läs mer

Konstruktion av datorspråk

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

Läs mer

ETSA01 Ingenjörsprocessen 1 - Metodik VT15 Markus Borg

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

Läs mer

Detta har hänt... Föreläsning 2: Projektplanering & Granskning Bildat projektgrupper. Pratat och provat kravhantering. Skaffat litteratur?

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

Läs mer

Configuration Management

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

Läs mer

Projektkaos. Chaos-rapporten. 34% av projekten avslutades i tid och enligt budget... ... 66% misslyckades!

Projektkaos. Chaos-rapporten. 34% av projekten avslutades i tid och enligt budget... ... 66% misslyckades! Projektkaos. Chaos-rapporten 34% av projekten avslutades i tid och enligt budget...... 66% misslyckades! 1 Standish Group, 2003 (www.standishgroup.com) Praxis Hantera krav Använd komponentarkitekturer

Läs mer

Steget efter CAD Data Management. Per Ekholm

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?

Läs mer

Projektplan, Cykelgarage

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)

Läs mer

Introduktionsmöte Innehåll

Introduktionsmöte Innehåll Introduktionsmöte Innehåll Introduktion till kursen Kursens mål och innehåll Undervisning Datavetenskap (LTH) Introduktionsmöte ST 2019 1 / 14 EDAA01 Programmeringsteknik - fördjupningskurs Ingen sommarkurs

Läs mer

Hemtentamen: ETSA02 Programvaruutveckling Metodik

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

Läs mer

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 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

Läs mer

TPFD - TestPlan Före Design BESKRIVNING AV AKTIVITETER

TPFD - TestPlan Före Design BESKRIVNING AV AKTIVITETER TPFD Beskrivning Rev 4 1(10) TPFD - TestPlan Före Design BESKRIVNING AV AKTIVITETER Anv.krav Terminologi Detaljkrav Konfigdok Hantera Utgåvor Projektplan Testplan Test-o-felrättning Ändringslogg Återst.

Läs mer

Hemtentamen: ETSA01 Ingenjörsprocessen för programvaruutveckling metodik Jonas Wisbrant

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

Läs mer

Välkommen till. Datastrukturer, algoritmer och programkonstruktion. eller DOA

Välkommen till. Datastrukturer, algoritmer och programkonstruktion. eller DOA Välkommen till Datastrukturer, algoritmer och programkonstruktion eller DOA Jag: Christer Labbassar: Caroline: Johan: Agenda, före lunch Inledning om DOA-kursen Backspegel Mål Syfte Examination Om lärande

Läs mer

Föreläsning 2. Objektorienterad analys och design. Analys: att modellera världen. Design: att strukturera program.

Föreläsning 2. Objektorienterad analys och design. Analys: att modellera världen. Design: att strukturera program. Föreläsning 2 Objektorienterad analys och design. Analys: att modellera världen. Design: att strukturera program. Vår process Kravbeskrivning (3 dagar). Enkel form av användningsfall (use cases). Analys

Läs mer

Mer OOP. Variation i typ. Medlen repetition. Generiska klasser. Gränssnitt - Interface. Mer om klasser Några exempel UML

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

Läs mer

Kravspecifikation Cykelgarage

Kravspecifikation Cykelgarage Kravspecifikation 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)

Läs mer

L0009B. Moment. Introduktion till geografiska databaser: G:\L0009B\Allmänt\IntroGeoDB.pdf (F)

L0009B. Moment. Introduktion till geografiska databaser: G:\L0009B\Allmänt\IntroGeoDB.pdf (F) L0009B Moment FL 1: Kursintroduktion. Kursinformation: G:\L0009B\Allmänt\KursInformationL0009B.pdf (F) Kursplan: Se https://portal.student.ltu.se/stuka/kurs.php?kurs=l0009b&lang=swe (F) Allt som markerats

Läs mer

Arkitektur Michael Åhs

Arkitektur Michael Åhs Arkitektur Michael Åhs Kalle & Hobbe: En utvecklares drömsystem 1. Vad är arkitektur? 2. Arkitektur i UML Innehåll 3. Utveckla en arkitektur 4. Arkitektur i projektet Del 1 - Vad är Arkitektur? Pattern-Oriented

Läs mer

Kursinformation. Metodik för programvaruutveckling. Utvecklingsprocessen för programvara. Innehåll. Processmodell. Exempel

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

Läs mer

Mer om språk och Ruby

Mer om språk och Ruby Mer om språk och Ruby TDP007 Konstruktion av datorspråk Föreläsning 2 Peter Dalenius Institutionen för datavetenskap 2014-01-21 Översikt över dagens föreläsning 1. Hur kan man bedöma ett språk? 2. Enhetstestning

Läs mer

TDDI02. Programmeringsprojekt. Föreläsning 2 Jonas Lindgren, Institutionen för Datavetenskap, LiU

TDDI02. Programmeringsprojekt. Föreläsning 2 Jonas Lindgren, Institutionen för Datavetenskap, LiU TDDI02 Programmeringsprojekt. Föreläsning 2 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Anatomin hos en projektplan Vad är klok design? Projektarbete kräver.. Fördelning

Läs mer

PMM (Process Maturity Metrics) Allmänt. Mätetal för framgångsfaktorer. 1. CM konfigurationsstyrning

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

Läs mer

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 [http://www.google.com/googlebooks/chrome/] 1 ETSA01 Ingenjörsprocessen för programvaruutveckling Metodik Föreläsning 5 Processer, vidare utveckling

Läs mer

TDDD78, TDDE30, 729A85 Objektorienterad programmering och Java

TDDD78, TDDE30, 729A85 Objektorienterad programmering och Java jonas.kvarnstrom@liu.se 2018 TDDD78, TDDE30, 729A85 Objektorienterad programmering och Java Kursinformation Examinator, kursledare: Jonas Kvarnström Fråga kommentera avbryt! Utan OO har vi datastrukturer

Läs mer

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/]

Läs mer

REGELVERK & HANDBÖCKER

REGELVERK & HANDBÖCKER 1 (5) REGELVERK & HANDBÖCKER Innehåll sid. Uppdateringar/kompletteringar 2 Nyskrivning av rutiner 4 Gränsytan mellan systemsäkerhet och programvarusäkerhet 5 2 (5) Uppdateringar/kompletteringar Software

Läs mer

TDDD78, TDDE30, 729A85 Objektorienterad programmering och Java

TDDD78, TDDE30, 729A85 Objektorienterad programmering och Java jonas.kvarnstrom@liu.se 2019 TDDD78, TDDE30, 729A85 Objektorienterad programmering och Java Kursinformation Examinator, kursledare: Jonas Kvarnström Fråga kommentera avbryt! Utan OO har vi datastrukturer

Läs mer

Några grundläggande begrepp

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?

Läs mer

Exempel på verklig projektplan

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

Läs mer

Programutvecklingsprojekt Projektgrupp Elvin. Detailed Design Document

Programutvecklingsprojekt Projektgrupp Elvin. Detailed Design Document Programutvecklingsprojekt 2003-04-24 Projektgrupp Elvin Detailed Design Document Björn Engdahl Fredrik Dahlström Mats Eriksson Staffan Friberg Thomas Glod Tom Eriksson engdahl@kth.se fd@kth.se d94-mae@nada.kth.se

Läs mer

Metoder och verktyg för funktionssäkerhet

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

Läs mer

Streamade föreläsningar på webben. Medan vi väntar: Diskutera. Utmaning. Föreläsning 1: Projektuppgift & kravhantering. Om man utvecklar ett system...

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!...

Läs mer

Testplan Cykelgarage

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)

Läs mer

Att fatta rätt beslut vid komplexa tekniska upphandlingar

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

Läs mer

Objektorienterad programmering

Objektorienterad programmering Objektorienterad programmering Aletta Nylén http://user.it.uu.se/~aletta Epost: aletta.nylen@it.uu.se Rum: 1216 Kursinfo Lärare: Aletta Nylén Jesper Wilhelmsson Litteratur: Object-Oriented Software Development

Läs mer

TDDI02. Programmeringsprojekt. Föreläsning 2 Jonas Lindgren, Institutionen för Datavetenskap, LiU

TDDI02. Programmeringsprojekt. Föreläsning 2 Jonas Lindgren, Institutionen för Datavetenskap, LiU TDDI02 Programmeringsprojekt. Föreläsning 2 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Anatomin hos en projektplan Vad är klok design? Tidsbokning Bokningslistor på Jonas

Läs mer

Symptom på problemen vid programvaruutveckling

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

Läs mer

Testning på 3 föreläsningar. PV7180 Verifiering och Validering. Litteratur. Vad är testning? Varför testa och olika syn? Målet med testning

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

Läs mer

Mer om språk och Ruby

Mer om språk och Ruby Mer om språk och Ruby TDP007 Konstruktion av datorspråk Föreläsning 2 Peter Dalenius Institutionen för datavetenskap 2017-01-17 2 Översikt 1. Hur kan man bedöma ett språk? 2. Enhetstestning 3. Likhet i

Läs mer

Programmering. Seminarier i datavetenskap, datorteknik och informationsteknik. Niklas Broberg niklas.broberg@chalmers.

Programmering. Seminarier i datavetenskap, datorteknik och informationsteknik. Niklas Broberg niklas.broberg@chalmers. Programmering Seminarier i datavetenskap, datorteknik och informationsteknik Niklas Broberg niklas.broberg@chalmers.se 2015-09-24 Hur många från Datavetenskap? Datateknik? Informationsteknik? Översikt

Läs mer

Testplanering, test-first, testverktyg

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)

Läs mer

Dokumentation och presentation av ert arbete

Dokumentation och presentation av ert arbete Dokumentation och presentation av ert arbete Reglerteknik Linköpings universitet Dagens föreläsning Första timmen Kursens mål Projektmodellen LIPS och dess användning i kursen Olika former av redovisning

Läs mer

Designmönster - EMW. Kent Petersson epost1: kentp@cs.chalmers.se epost2: kent.petersson@emw.ericsson.se URL: http://www.cs.chalmers.

Designmönster - EMW. Kent Petersson epost1: kentp@cs.chalmers.se epost2: kent.petersson@emw.ericsson.se URL: http://www.cs.chalmers. Designmönster - EMW Kent Petersson epost1: kentp@cs.chalmers.se epost2: kent.petersson@emw.ericsson.se URL: http://www.cs.chalmers.se/~kentp arbetar på Inst. för Datavetenskap, Cth & Gu, 50% och Software

Läs mer

Labb 1: Vad, hur, och varför?

Labb 1: Vad, hur, och varför? Labb 1: Vad, hur, och varför? jonas.kvarnstrom@liu.se 2017 "En sak i taget": Öva grunder innan det blir mer komplicerat Starkt önskemål från studenter: Prova på kontrollstrukturer Labb 1: Intro till grunder

Läs mer

Separation of Concern. Objekt-orienterad programmering och design (DIT953) Niklas Broberg / Johannes Åman Pohjola, 2018

Separation of Concern. Objekt-orienterad programmering och design (DIT953) Niklas Broberg / Johannes Åman Pohjola, 2018 Separation of Concern Objekt-orienterad programmering och design (DIT953) Niklas Broberg / Johannes Åman Pohjola, 2018 Modulär design Fördelar med välgjord modulär design: Lätt att utvidga Moduler går

Läs mer

Kursprogram, ETSF20 Programvaruutveckling för stora projekt (PUSP), 7,5 hp

Kursprogram, ETSF20 Programvaruutveckling för stora projekt (PUSP), 7,5 hp Kursprogram, ETSF20 Programvaruutveckling för stora projekt (PUSP), 7,5 hp Version 1.0 Christin Lindholm Läsåret 2018/2019 Våren 2019 1. Inledning Syftet med kursen är att ge grundläggande kunskaper i

Läs mer

Statistik över heltal

Statistik över heltal Övningsuppgift Statistik över heltal Steg 2 Författare: Mats Loock Kurs: Inledande programmering med C# Kurskod:1DV402 Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande

Läs mer

Testning. 1DV404, HT14 Jesper Andersson Kap 21 + Testing Primer

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

Läs mer

Programmering B med Visual C++ 2008

Programmering B med Visual C++ 2008 Programmering B med Visual C++ 2008 Innehållsförteckning 1 Repetition och lite nytt...5 I detta kapitel... 5 Programexekvering... 5 Loop... 5 Källkod... 6 Verktyg... 6 Säkerhetskopiera... 6 Öppna, kompilera,

Läs mer

Mjukvarudesign. Designprocessen. Teknisk design. Konceptuell design

Mjukvarudesign. Designprocessen. Teknisk design. Konceptuell design RE SD PD I UT IT ST AT Mjukvarudesign System Requirement Specification Inkrementell och iterativ! Konceptuell design (VAD) Systemdesign (OOA) Arkitekturell (grovkornig, UML) Teknisk design (HUR) Programdesign

Läs mer

TDDI02. Programmeringsprojekt, Föreläsning 2. Filip Strömbäck. Med utgångspunkt i tidigare slides av Jonas Lindgren

TDDI02. Programmeringsprojekt, Föreläsning 2. Filip Strömbäck. Med utgångspunkt i tidigare slides av Jonas Lindgren TDDI02 Programmeringsprojekt, Föreläsning 2 Filip Strömbäck Med utgångspunkt i tidigare slides av Jonas Lindgren På denna föreläsning: Dokument - kravspecifikation, projektplan Vad är klok design? Projektarbete

Läs mer

Metoder för utveckling av produktlinjer

Metoder för utveckling av produktlinjer Metoder för utveckling av produktlinjer Magnus Eriksson, PhD Senior systemingenjör Bakgrunden till programvaruproduktlinjer Sedan 60:talet har effektiv återanvändning efterstävats Svårt att lyckas, småskalig

Läs mer