UTGÅNGSPUNKT KURSMÅL: Programmering (= kodning) och design (= konstruktion) är teknikområden. Kodning av lite större volym
|
|
- Astrid Sundberg
- för 8 år sedan
- Visningar:
Transkript
1 UTGÅNGSPUNKT Programmering (= kodning) och design (= konstruktion) är teknikområden. Framställning av stora/komplexa system kräver dessutom t ex många programmerare/teams personalfrågor (specialister, utbildning, ersättare...) externa frågor (marknadsföring, kontrakt...) kvalitetssäkring (produkter, processer...) dokumentation, olika slag management (ledning, uppföljning, resursfördelning...) Till stor del icke-tekniska frågeställningar. Området Software Engineering omfattar både dessa tekniska och icke-tekniska kompetenser. Metodiskt arbetssätt i projektarbetsform behövs. Allmänt: 1 förstå problemet 2 planlägg lösningen 3 genomför planen 4 utvärdera resultatet KURSMÅL: Kodning av lite större volym Programutveckling i metodisk projektform, med dokumentationer Kunskap om några element inom Software Engineering FÖRKUNSKAPER: God förtrogenhet med något högnivåspråk Praktisk kunskap om datastrukturer och algoritmer EXAMINATION: Hemtentamen på SE-relaterat stoff - D Bell: Software Engineering for Students - A Programming Approach Addison-Wesley Valfria källor Projektgenomförande, med - rudimentär kravspecifikation - designspecifikation och -presentation - implementation - användarmanual - efterstudie Endast betyg G SOFTWARE ENGINEERING? Innehåll i föreläsningar, ungefär, och i mån av tid Projektarbete Ledning/styrning/ organisation Kravanalys Konstruktion Extrem programmering SE - översikt Implementation Livscykel, metodik allmänt Testning Underhåll Kvalitetsaspekter En praktisk och vetenskaplig del av datalogi (?) - som anger metoder, verktyg, riktlinjer, attityder... - för konstruktion av (stora, komplexa) PV-system... - i enlighet med användares/beställares intentioner... - inom föreskrivna budget- och tidsramar... - och med hänsyn till kvalitets- underhållsaspekter... SE is the body of THEORY and PRACTICAL TECH- NIQUES that can be brought to bear on the process of developing [... som syftar till att kunna utveckla... ] software. MEST ÖVERGRIPANDE MÅL? - förmåga att urskilja och rätta sig efter kunders önskemål/krav (behovsstyrt, inte teknikstyrt!) - användande av ingenjörsmässiga principer/ idéer/kvaliteter/attityder INGENJÖRSMÄSSIGHET? Konstruktion av PV är inte (längre) ett ad hoc -jobb utfört av enstaka, kreativa individer i den mörka skrubben, utan ett välorganiserat, metodbaserat teamwork, baserat på känd teknik
2 Användbarhet (effectiveness) ca 2% Efter Bells bok Använt efter ändringar Använt enligt leverans Övergivet eller omarbetat Betalt, men inte levererat Levererat, men inte använt TRADITIONELL ARBETSGÅNG, GROVT Projektfas, SE-fas produkt/ allmänt dokument 1. förstå kravanalys kravspecifikation problemet 2: planlägg planering projektplan lösningen (tid, resurser) 3: genomför design designspec., ev planen (konstruktion) på flera nivåer VARFÖR SE UPPKOMMIT implementation (kodning) kod Total systemkostnad 4: utvärdera testning ny kod, uppresultatet (validering, daterade verifikation) dokument flera nivåer andel av kostnaden Andel kostnad för maskinvara Andel kostnad för programvara... varav utveckling Nedbrytning i flera steg, mer precisierade delsteg.... varav underhåll förr tiden nu PROJEKT? BEGREPPSDISTINKTIONER En tillfällig kraftsamling (endeavour) som genomförs för att skapa en unik produkt, tjänst eller resultat. (efter PM- BOK 2004) ett definierbart ändamål: Det definieras i en kravspecifikation - funktionalitet, prestanda, uppträdande... ett unikt företag: Inte rutinarbete, avser inte nåt som gjorts identiskt tidigare entillfällig aktivitet: Givna tidpunkter för start och avslut, enligt krav. Metod: Metodik: ett specifikt, konkret, detaljerat, strukturerat förfaringssätt inklusive verktyg. Algoritmisk. t ex JSP, XP grundmodeller, generella och gemensamma drag, för en räcka metoder. Processmodell? t ex prototyping, unified process Annan definition: Ett projekt är en kombination av resurser som förs ihop för att skapa något som inte fanns förut. (efter Cleland och Ireland, 2002) Metodologi: läran om hur metoder konstrueras, kan värderas, generella egenskaper PROJEKT HANTERING (management)? planering, organisering, styrning, övervakning, förändring, hantering av osäkerhet, risker,... Speciellt för PV-projekt: produkten är icke-konkret, osynlig, svårt för en manager att urskilja framstegen standardiserade processer saknas, det går inte att förutsäga när problem kommer att uppstå den snabba teknikutvecklingen kan orsaka att tidigare erfarenheter inte längre gäller
3 Kravanalys Kravanalys Strikt vattenfallsmodell Design 1 Design 2 Implementation Test 1 Test 2 Vattenfallsmodellen med återhopp Design 1 Design 2 Implementation Test 1 Test 2 FLER BEGREPP: V & V VALIDERING: Med VALIDERING menar man att slå fast att det som levereras (eller interna dokument på vägen) har en FUNK- TIONALITET i enlighet med det beställaren avsett. Det relaterar till KUNDEN, hans förväntningar VERIFIKATION: Med VERIFIERING menar man, något striktare, att slå fast att produkten (och steg på vägen!) lever upp till kravspecifikationen! Denna kan ju beskriva mer än funktionaliteten (andra kvaliteter). Verifiering kan också avse koll av mer interna tekniska lösningar, allmänna programvarukrav,... Lite POPULÄRT har det sagts (Boehm): Kravanalys Vattenfallsmodellen i praktiken? Design 1 Design 2 Implementation Test 1 Test 2 VALIDATION: VERIFICATION: Are we building the right product? Are we building the product right? SPIRALMODELLEN (Boehm 1988) Varje varv utgör en fas. Exempelvis... v 1: ger en concept of operation v 2: ger en validerad kravspec v 3: ger en validerad design v 4: ger en testplan v 5:... I varje varv äger i princip samma följd av delaktiviteter rum, oavsett fas. Kan i korthet vara t ex... Sätt upp målet: Beskriv målet för varvet, identifiera begränsningar, risker, konstatera vilka alternativ som kan väljas. Riskanalys: Värdera alternativ, välj bästa utifrån befintliga risker. Utveckling, verifiering/validering: Genomför aktiviteten. Kolla. Planering: Utvärdering, beslut om fortsättning, planering inför den. FRAMSTÄLLNING AV KRAV (Requirements engineering) 1 Rimlighetsstudie (feasibility study) Kan systemet bidra med något?... implementeras?... integreras? 2 Kravinsamling (elicitation) och analys Svårt: Verksamhetsfolk (VF) kanske inte kan uttrycka det dom vill, är orealistiska, har egna och varierande begrepp, outtalad kunskap. Verksamhetens omgivning kan förändras. Procedur: i) Förstå verksamhetens domän ii) Samla krav från VF vy-orienterad metod scenarier etnografisk metod iii) Klassificera krav iv) Lös konflikter mellan krav v) Prioritering mellan krav vi) Kolla kravens konsistens, kolla mot kunden Detta sker förstås iterativt, och vissa aktiviteter i samarbete med VF. 3 Kravspecifikation (processen) Skriv ihop dokumentet. 4 Kravvalidering Kolla giltighet, konsistens, kompletthet, rimlighet, verifierbarhet
4 Några egenskaper hos en kravspecifikation Den.. ska specificera bara det externa uppträdandet (vad, inte hur) ska speca eventuella begränsningar i implementationen (men inte många!) ska själv vara lätt att ändra (för detta kommer att behövas!) ska kunna funka som referens vid underhåll, och under alla utvecklingsfaser ska också klargöra vilka anständiga responser som ska ges på oönskade händelser under drift. En kravspecifikation kan innehålla... Identifikation Sammanfattning Innehållsförteckning Inledning Användarna Funktionella krav skall-krav bör-krav eventuellt -krav Produktkomponenter programvara maskinvara dokumentation Effektivitet Kompatibilitet Konfiguration Installation och service Tillförlitlighet Ordförklaringar Index Exempel på rubrikerna i en verklig kravspecifikation 1 Revisionshistoria 2 Introduktion 2.1 Syfte 3 Definitioner och förkortningar 4 Projektets syfte 4.1 Projektbakgrund 4.2 Mål 4.3 Effekt 5 Kund och andra intressenter 5.1 Kund 5.2 Andra intressenter 6 Användare 7 Avgränsningar 7.1 Lösning 7.2 Implementation 7.3 Externa kopplingar 7.4 Övrigt 8 Fakta och förutsättningar 9 Krav 9.1 Händelseflöden 9.2 Funktionalitet 9.3 Användargränssnitt 9.4 Användbarhet 9.5 Felhantering 9.6 Data 9.7 Statistik och rapporter 9.8 Prestanda 9.9 Säkerhet 9.10 Administration och informationsförsörjning 10 Osäkerheter och risker 10.1 Beroenden 10.2 Stabilitet 10.3 Prestanda 10.4 Andra identifierade risker 11 Användardokumentation och utbildning 12 Tidsuppskattning 13 Väntrum 14 Lösningsidéer Projektarbete kräver... fördelning av arbete mellan grupper, individer, ev. med hänsyn till kompetenser flitig kommunikation mellan grupper/individer beroende mellan individers/gruppers alster en tidsplan kontrollpunkter för att avgöra om planen måste ändras dokumentation, för att - beskriva mål och förlopp för ev. ersättare - samla erfarenheter - förbättra processen... En projektplan skall (åtminstone)... vara nedskriven i förväg beskriva vad som ska uträttas (inte hur) vara välskriven, strukturerad, kortfattad, begriplig ta hänsyn till tänkbara olyckshändelser gärna vara modulariserad
5 En projektplan kan innehålla Översikt Intro till jobbet, kunden. Planens egen org. Fasplan Vilka utvecklingsfaser (metoder), produkter, datum? Organisationsplan Vilka team, ansvar? Testplan Vem? Procedurer? Verktyg? Förändringsplan Hur hantera? Dokumentationsplan Vilka, när, till vem? Vem godkänner? Utbildningsplan Internt, externt. Vem, när, resurser? Plan för rapportering och reviews Vad, till vem, när? Installationsplan Vilken procedur? Plan för kvalitetssäkring Standarder? Varuplan (.. deliverables) Vad ska levereras, när? Resursplan Persontid, datortid. Summering av milstolpar. EXEMPEL PÅ MILSTOLPAR från ett PUM-projekt : Fas Milstolpe Datum när milstolpen planeras uppnås Förstudiefasen Förstudiedokument klart Definitionsfasen Kravspecifikationsdokument klart Kontrakt skrivet Acceptansvillkor framställda Projektplan klar Designfasen Designdokument klart Programmerarhandbok klar Systemtestfall framställda Integrationstestfall framställda Modultestinstruktioner framställda Programmeringsfasen Teknisk dokumentation klar Användarhandledning klar Testfasen Modultest klara Integrationstest klar Systemtestning klar Avslutningsfasen Efterstudiedokument klart Acceptansöverenskommelse klar Slutrapport från kvalitetsarbetet klar Återkoppling klar ANM: För täta, för små. Borde nog innehålla mer av godkänt/accepterat PLANERINGSVERKTYG: Bar Chart - GANTT-diagram 1 2 tidpunkter Quality assurance person A person B A1 B1 B2 Quality manager person C person D D1 C1 D2 Quality assurance uppgifter Activity network - PERT-diagram B2 A1(t) C1 START 1 2 D1 B1 D2 EXEMPEL PÅ ORGANISATION: Software director Programme manager Programme manager Project manager Project manager Project manager Team leader Team leader Team leader Team members
6 KOMPETENSKRAV? Graden av skicklighet som kan krävas för olika faser eller arbetsmoment vid programvaruutveckling. OBS! Taget från Bells lärobok! Kravspec Övergripande design Detaljerad design Kodning Debugging/ testning Exempel på rubrikerna i verklig projektplan (1) 1 Revisionshistoria 1.1 Ändringslogg 1.2 Relaterade dokument 2 Förutsättningar och bakgrund 2.1 Syfte 2.2 Bakgrund 3 Mål 3.1 Affärsmål 3.2 Systemmål 3.3 Kvalitetsmål 4 Omfattning och resultat 4.1 Projektets uppgift 4.2 Avgränsningar 4.3 Förväntade resultat 5 Kopplingar till andra projekt 6 Projektorganisation 6.1 Styrgrupp 6.2 Projektorganisation 6.3 Ansvar 6.4 Ansvarmässig avgränsning 6.5 Projektmöten 6.6 Samverkan och rapportering 6.7 Resursplan 7 Arbetsmetodik 7.1 Arbetsmetod 7.2 Verifiering 7.3 Validering 7.4 Upphandling/köp 7.5 Kommunikationsplan 7.6 Testplan 7.7 Kvalitetsplan Exempel på rubrikerna i verklig projektplan (2) DESIGN - NÅGRA VIKTIGA NYCKELORD 8 Tidplan och milstolpar 8.1 Milstolpar 8.2 Tidplan 8.3 Leverabler från kund 8.4 Utrullning 8.5 Kriterier för överlämning 9 Kostnader 9.1 Utvecklingsmiljö 9.2 Testmiljö 9.3 Produktionsmiljö 10 Risker 10.1 Beroenden 10.2 Stabilitet 10.3 Prestanda 10.4 Andra identifierade risker 11 Projektavslut 11.1 Överlämning till drift och förvaltning 11.2 Utvärdering 12 Ändringshantering modularisering =små, överblickbara bitar modulkvalitet = bra egenskaper som kännetecknar dessa information hiding =göm viss, detaljerad kunskap abstraktioner (en följd av info hiding) =access via gränssnitt hierarkisk syn =lagermodell språkoberoende = högre nivå, mer oberoende implementation metodik =hur man urskiljer moduler
7 Modul Modul - abstraktioner - lager Viktigast: överblickbar, förståelig för en person/ett team. Därför ska den inte vara alltför stor (eller komplex) ha ett väl avgränsat syfte (~ hög cohesion ) ha få relationer till andra moduler (= låg coupling ) Interfacelager Abstraherar bort detaljer i kommunikationen En modul kan vara t ex en enda subrutin (eller process) en databeskrivning (utan algoritmer) (oftare?) ett hopbygge av flera, mindre sådana, om hög cohesion råder. En klass (motsvarande)! Databaslager Abstraherar bort filhantering, konkret uppbyggnad, kommandostruktur Lösning av applikationen Datastrukturlager Abstraherar bort konkret implementation av strukturer, algoritmiska detaljer Maskinnära lager: Abstraherar bort lågnivådetaljer KWIC-index KWIC = Key Word In Context (efter van Vliet) Dataflödesdesign - notation Ursprunglig text: Software Engineering should be a compulsory topic. gör ett KWICindex bibliotek input output kund Generera alla ordvisa cirkulära : Software Engineering should be a compulsory topic. Engineering should be a compulsory topic. Software should be a compulsory topic. Software Engineering be a compulsory topic. Software Engineering should a compulsory topic. Software Engineering should be compulsory topic. Software Engineering should be a topic. Software Engineering should be a compulsory Kontextdiagram Sortera en alfabetiskt: rader sorterade a compulsory topic. Software Engineering should be be a compulsory topic. Software Engineering should compulsory topic. Software Engineering should be a Engineering should be a compulsory topic. Software should be a compulsory topic. Software Engineering Software Engineering should be a compulsory topic. topic. Software Engineering should be a compulsory läs input gör sortera skriv ut Dataflödesdiagram
8 Arkitektur (µ-skala!) Skriv ut Introducera alla nyckelord och fördefinierade identifierare Sätt upp intialvärden förteckning förteckning tabell tabell Skapa tom tabell Skaffa access till dokument flera index index index Exempel på hierarkisk strukur: Skapa KWICindex rad dokument dokument flera rad Läs en rad Skapa alla Sortera in alla index index Sortera in ett Skapanästa En OO-syn på KWIC-indexproblemet DETALJERAD DESIGN (MODULDESIGN, MODULKONTRAKT) Förslag på modulattribut som måste specificeras: (IEEE Standard 1016, från van Vliet) öppna() initiera() skrivut() skaparadindex() index dokument processa() sorterain(rad) 1. Identifikationen (namnet), unikt 2. Typen, alltså t ex subsystem, package, klass, fil, subrutin, Syfte, övergripande 4. Funktionen, relaterat till kravspecen 5. Beståndsdelar, om sådana i sin tur finns 6. Beroenden, relationer till andra komponenter 7. Gränssnitt till andra komponenter, i detalj 8. Externa resurser 9. Utförande, beskrivning av algoritmer, exceptions etc - en förfining av funktion. Motivera val! 10. Data, beskrivning av representation, format, avsikt med interna data rad i processa() rad i
9 IMPLEMENTATION: Begreppet strukturerad programmering kan förklaras på olika sätt: Programkod ska kunna läsas och förstås i den följd programtexten anger Använd styrstrukturerna på ett systematiskt sätt En ingång, utgång Texten ska återspegla den logiska strukturen Skriv för folk, inte för kompilatorer Använd inte GOTO EVALUERING - BEDÖMNING AV SPRÅK Vilka möjligheter har man att i språket kunna modularisera på ett vettigt sätt, också i det stora? göra egna abstraktioner? införa information hiding? skapa oberoende mellan moduler? skriva läsbar kod? Hur är det med ortogonaliteten? få, kraftfulla konstruktioner som kan kombineras godtyckligt stark typning? gäller blandning av typer, typkontroll, när denna äger rum UTNYTTJA DET SPRÅKET TILLHANDAHÅLLER! Exempel på saker som kan ingå i en checklista vid walkthrough - inspection av kod: På hur många sätt går det att ta sig från start till slut här? felaktig användning av data oinitierade variabler, arrayindex utanför gränser, dangling pointers deklarationsfel användning av icke deklarerade storheter, dubbel deklaration i ett block 0..3 beräkningsfel 0-division, overflow, typmismatch, operatorprioriteter logikfel < i stället för <=, and-or, prioriteter 1..N 1..2 fel i styrning oändliga loopar, varvräknarfel 1..M interfacefel antalet, typerna/sorterna på parametrar, globala data 4 x ((N + (1 + M)) + 2)??
10 TESTNING - EXEMPEL (1): Effektivitet av felsökning i ett realtidsprojekt med 400 utvecklare (van Vliet): %-andel funna %-andel funna totaldesignfel kodningsfel effektvitet Designreview Kodreview Testning En specifikation : Ett program läser in tre heltalsvärden från en rad. De tre värdena tolkas som längderna på tre sidor i en triangel. Programmet skriver ut ett meddelande som anger om triangeln är likbent, liksidig eller om alla tre sidorna är olika. Uppgift: Skriv ett antal testfall (dvs kategorier plus några specifika testdata per kategori) som du anser testar programmet på ett bra sätt. Kostnadseffektivitet, samma studie: Designreview Kodreview Testning TESTNING - EXEMPEL (3): TESTNING - EXEMPEL (2): Kod: #include <stdlib.h> #include <stdio.h> int main(void) { int x, y, z; scanf("%d %d %d", &x, &y, &z); if (x == y && y == z) printf("triangeln är liksidig.\n"); else if (x == y x == z y == z) printf("triangeln är likbent.\n"); else printf("alla sidor i triangeln är olika.\n"); return EXIT_SUCCESS; } Exekvering: unix> make testprogram... unix> testprogram Triangeln är likbent. unix> testprogram Triangeln är liksidig. unix> testprogram Triangeln är liksidig. unix> testprogram Alla sidor i triangeln är olika. unix> testprogram Klas, Kalle och Lotta Alla sidor i triangeln är olika
11 TESTNING - EXEMPEL (4): TESTNING - EXEMPEL (5): Självevaluering angående testfall/-data: 1. Har du testfall som representerar en giltig oliksidig triangel! OBS att fall som 1, 2, 3 eller 2, 5, 10 inte gör det - sådana trianglar finns inte! 2. Har du testfall som representerar en giltig liksidig triangel? 3. Har du testfall som representerar en giltig likbent triangel? OBS att ett testfall som har 2, 2, 4 inte kan räknas! 4. Har du åtminstone tre testfall som representerar giltiga liksidiga trianglar, så att du provar alla tre permutationer av två lika sidor (t ex 3, 3, 4 och 3, 4, 3 och 4, 3, 3)? 5. Har du ett testfall där en sida är 0? Självevaluering... -forts. 9. Har du ett testfall med tre heltal större än 0 så att summan av två är mindre än det tredje? (1, 2, 4 eller 12, 15, 30). 10. Har du testat minst tre permutationer av ovanstående? 11. Har du ett testfall där alla sidorna är 0? 12. Har du ett minst ett testfall med värden som inte är heltal? 13. Har du åtminstone ett testfall som specificerar fel antal värden? 14. För varje testfall ovan, specificerade du (i förväg!) det förväntade resultatet? 6. Har du ett testfall där en sida är negativ? 7. Har du ett testfall med tre heltal större än noll där summan av två är lika med det tredje? Dvs, om programmet påstår att 1, 2, 3 representerar en oliksidig triangel så innehåller det en bug! 8. Har du åtminstone tre testfall i kategori 7 så att att du provar alla permutationer där en sida är lika med summan av de andra två (t ex 1, 2, 3 och 1, 3, 2 och 3, 1, 2) utarbeta och dokumentera tester, inkl förväntat utfall, i förväg! gör alltså inga tester i flykten! använd dina mest kompetenta (kreativa) programmerare som testare! en test kan aldrig bevisa frånvaron av fel - bara påvisa förekomsten! en test som inte påvisar något fel är förmodligen en undermålig test (, eller...?) när ska man sluta testa? EXTREM PROGRAMMERING (1) Extremt? moment genomförs kontinuerligt utvecklingscykler är små, korta lite dokumentation utanför koden Vad krävs/önskas? inte för stora projekt kundrepresentant på plats planerings spel, user stories helst parprogrammering Karakteristiskt? utgår från utvecklares behov ingen stor administrativ apparat, lite dokumentation smidig hantering av förändringar snabba resultat, god kvalitet förväntas ingen egentlig design-spec kanske inte heller sedvanlig kravspec! Planering: täta möten kund - utvecklare planerings spel - user stories små, täta uppdateringar till kunden kund hos utvecklarna
12 EXTREM PROGRAMMERING (2) Design: ingen specifikation i förväg enhetstester/testfall produceras före motsv. kod, är en form av spec. för enheten ofta automatiserat testande acceptanstest av varje story refactoring - byt namn på metod/något - gör en bit kod till egen metod/motsv. - flytta på metoder/... - verktyg finns, görs för ökad läsbarhet, förenklingar Kodning: parprogrammering kollektivt ägande kontinuerlig integration fysisk närhet mellan utvecklare Dokumentation: vissa kundkrav annars kräver xp inte mycket koden är viktigaste dokumentet, skall vara högkvalitativ story na, diagram,... acceptanstester kan fungera som kravspec
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
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
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
TDDI02. Programmeringsprojekt. Föreläsning 1 Jonas Lindgren, Institutionen för Datavetenskap, LiU
TDDI02 Programmeringsprojekt. Föreläsning 1 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Kursinformation Vad är Software Engineering? Hur går ett projekt till? Anatomin hos
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
TDDI02. Programmeringsprojekt. Föreläsning 1 Jonas Lindgren, Institutionen för Datavetenskap, LiU
TDDI02 Programmeringsprojekt. Föreläsning 1 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Kursinformation Vad är Software Engineering? Hur går ett projekt till? Anatomin hos
TDDI02. På denna föreläsning: Programmeringsprojekt, Föreläsning 1. Kursinformation Vad är Software Engineering? Hur går ett projekt till?
TDDI02 Programmeringsprojekt, Föreläsning 1 Anton Sundblad Filip Strömbäck Med utgångspunkt i tidigare slides av Jonas Lindgren På denna föreläsning: Kursinformation Vad är Software Engineering? Hur går
TDDI02. Programmeringsprojekt, Föreläsning 1. Filip Strömbäck. Med utgångspunkt i tidigare slides av Jonas Lindgren
TDDI02 Programmeringsprojekt, Föreläsning 1 Filip Strömbäck Med utgångspunkt i tidigare slides av Jonas Lindgren Kursledning Kursledare Kursassistent Handledare Etikmoment Examinator Kursadministratör
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
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
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
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
Exempel på verklig kravspecifikation
Exempel på verklig kravspecifikation Detta är ett exempel på en proffessionell kravspecifikation hämtad ur verkliga livet. Den visas inte i sin fullständighet, det mesta är bortklippt, men strukturen och
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
TDP003. Föreläsning 2. Filip Strömbäck
TDP003 Föreläsning 2 Filip Strömbäck 1 Kursinformation 2 Projektplan 3 Frågor 4 Genomgång av projekt 5 Vad är ett API? 6 Kom ihåg TDP003 Filip Strömbäck 2 Vad händer härnäst? V37 V38 V39 V40 Planeringsdokument
Arbeta i projekt. Anders Hessel ITP-projekt Uppsala Universitet
Arbeta i projekt Anders Hessel 2003-02-05 ITP-projekt Uppsala Universitet Varför Projekt? Vad är projekt? Varför projekt? Svårighet? Undervisning Bilda projektgrupp Formell grupp - har ledare Roller Konflikter
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?
Projektplan. LiTH Segmentering av MR-bilder med ITK Anders Eklund. Version 1.0. Status. Bilder och grafik projektkurs, CDIO MCIV LIPs
Segmentering av MR-bilder med ITK 2006-02-02 Projektplan Version 1.0 Status Granskad Godkänd Bilder och grafik projektkurs, CDIO MCIV LIPs 1 PROJEKTIDENTITET MCIV 2006 VT Linköpings Tekniska Högskola,
LIPS Kravspecifikation. Institutionen för systemteknik Mattias Krysander
LIPS Kravspecifikation Institutionen för systemteknik Mattias Krysander Kandidatprojekt 2019 Antal Autonom taxibil (2, 5-personersgrupper) 3 Autonom eftersöksdrönare 2 Autonom undsättningsrobot 2 Autonom
Ramverk för projekt och uppdrag
Peter Yngve IT-centrum 2011-02-10 1.0 1 (9) Ramverk för projekt och uppdrag Peter Yngve IT-centrum 2011-02-10 1.0 2 (9) BAKGRUND/MOTIV... 3 MÅL OCH SYFTE... 3 DEFINITIONER AV PROJEKT... 3 MODELL FÖR PROJEKTSTYRNING...
LiTH Autonom styrning av mobil robot 2007-02-15. Projektplan. Martin Elfstadius & Fredrik Danielsson. Version 1.0
Projektplan Martin Elfstadius & Fredrik Danielsson Version 1.0 Status Granskad Godkänd 1 PROJEKTIDENTITET Autonom styrning av mobil robot Vårterminen 2007 Linköpings Tekniska Högskola, ISY Namn Ansvar
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.
Innehåll (3) Innehåll (2) Innehåll (5) Innehåll (4) Innehåll (6) Innehåll (7) Dokumenthistorik. beställare, Översiktlig beskrivning av projektet
Bilden hämtad från http://www.liu.se/cul-resurser/lips/kartor/fore.htm Projektplanering Om inte projektet planeras noga, kommer det garanterat att misslyckas Projektplanen Krav på en projektplan Beskriver
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
Projektplanering. Projektplanen. Om inte projektet planeras noga, kommer det garanterat att misslyckas
Bilden hämtad från http://www.liu.se/cul-resurser/lips/kartor/fore.htm Projektplanering Om inte projektet planeras noga, kommer det garanterat att misslyckas Projektplanen Beskriver hur projektet ska utföras
Objektorienterad programmering, allmänt
Objektorienterad programmering, allmänt Sven-Olof Nyström Uppsala Universitet 17 juni 2005 1 Vilka egenskaper vill vi att program ska ha? Förslag (en partiell lista): De ska... gå snabbt att skriva vara
Viktiga egenskaper hos ett program (Meyer): Objektorienterad programmering, allmänt. Vilka egenskaper vill vi att våra program ska ha?
Viktiga egenskaper hos ett program (Meyer): Objektorienterad programmering, allmänt Sven-Olof Nyström Uppsala Universitet 17 mars 2005 1. Korrekthet 2. Robusthet 3. Utökbarhet 4. Återanvändbarhet 5. Kompatibilitet
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
Projektplan. LiTH AMASE 2006-02-15 Accurate Multipoint Acquisition from Stereovision Equipment. Johan Hallenberg Version 1.0
AMASE 2006-02-15 Projektplan Johan Hallenberg Version 1.0 Granskad Godkänd 1 PROJEKTIDENTITET VT2006, AMASE Linköpings tekniska högskola, ISY Namn Ansvar Telefon E-post Mikael Karelid kundansvarig (KUN)
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
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
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?
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
Processinriktning i ISO 9001:2015
Processinriktning i ISO 9001:2015 Syftet med detta dokument Syftet med detta dokument är att förklara processinriktning i ISO 9001:2015. Processinriktning kan tillämpas på alla organisationer och alla
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
Objektorienterad analys och design
Objektorienterad analys och design Objektorienterad analys och design 1 Dagens föreläsning Första delen, innan rasten: Motivation och bakgrund Analys Funktioner Andra delen, efter rasten: Objektorienterade
Testning av program. Verklig modell för programutveckling
Fel i program När man skriver program uppkommer alltid fel. Felen kan indelas i följande kategorier: Under kompileringen upptäcker kompilatorn fel som handlar om att man använt konstruktionerna i programspråket
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
UML: Exempel. Ett modelleringsspråk. UML: Ansvar. UML: tre huvudanvändningar. Exempel: En klass position storlek. UML Unified Modelling Language
Ett modelleringsspråk : Exempel Fönster Klassnamn Unified Modelling Language Av Booch, Jacobson, Rumbaugh Exempel: En klass position storlek Attribut (instansvariaböe) Resultatet av en sammanslagning av
Abstrakta Klasser 2. Kodning är bara en liten del i programvaruutvecklingen 6% 1% 6% Abstrakta Klasser - deklaration. Programutveckling sker i faser
Abstrakta Klasser 1 God klassdesign placerar gemensamma attribut och metoder så högt som möjligt i hierarkin men ibland kan dessa egenskaper inte definieras fullständigt Abstrakta klasser innehåller ofta
Praktikum i programvaruproduktion
Praktikum i programvaruproduktion Introduktion Föreläsare/Ansvarig: Pontus Boström Email:pontus.bostrom@abo.fi Rum A5055 Assistent: Petter Sandvik Email: petter.sandvik@abo.fi Rum: A5048 Föreläsningar:
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?
2014-2015 Alla rättigheter till materialet reserverade Easec
1 2 Innehåll Introduktion... 4 Standarder... 5 Översikt: Standarder... 6 1058.1-1987 IEEE Standard för Software Project Management Plans... 7 Ingående dokument... 8 Syfte och struktur... 9 ITIL... 10 ITIL
Bilaga 5 b: Mall för projektplan
Handbok för strategisk kommunal vattenplanering Bilaga 5 b: Mall för projektplan Hur ska bilagan användas? Detta är ett exempel på en mall för en projektplan med exempel på vad den kan innehålla. De flesta
Före Kravspecifikationen
projektidé BP0 förstudie BP1 förberedelse BP2 Kravspecifikationen Beskriver VAD som ska utföras i projektet? projektdirektiv beslutspunkter specifikationer planer kunddokument rapporter protokoll M beställarens
Datavetenskapligt program, 180 högskolepoäng
GÖTEBORGS UNIVERSITET UTBILDNINGSPLAN IT-fakultetsstyrelsen 2013-02-14 Datavetenskapligt program, 180 högskolepoäng (Computer Science, Bachelor s Programme, 180 credits) Grundnivå/First level 1. Fastställande
Objekt-orienterad utveckling. Objektorienterad analys och design. Objekt-orienterad programutveckling. Objekt-orienterad analys och design: Litteratur
Objekt-orienterad utveckling Saker man vill uppnå: Objektorienterad analys och design Sven-Olof Nyström Uppsala Universitet 16 mars 2005 en systematisk metod för att gå från problembeskrivning till färdigt
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,
WEBBSERVERPROGRAMMERING
WEBBSERVERPROGRAMMERING Ämnet webbserverprogrammering behandlar funktionalitet för webblösningar och samspelet mellan beställare, användare, formgivare och utvecklare. Ämnets syfte Undervisningen i ämnet
+Överskådlighet Normalt sätt blir ett program skrivet i det procedurella paradigmet överskådligt. Modifikationer på delproblem kan ske med lätthet.
Uppgift 1 Ett programmeringsparadigm är i grund och botten ett sätt att arbeta, ett sätt att möta problem. Det finns flera olika paradigm där varje paradigm har sina egna styrkor och svagheter. Det som
Robotgräsklippare 2014-01-22 PROJEKTPLAN. Robotgräsklippare. Version 1.1. Status. Granskad. Godkänd. Robotgräsklippare.
2014-01-22 PROJEKTPLAN Version 1.1 Granskad Status Godkänd LIPS Projektplan i 2014-01-22 PROJEKTIDENTITET 2014/2015 Njudungsgymnasiet T4 Namn Ansvar Telefon E-post Isak Linehag Dokumentansvarig 070-332
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
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
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
729G75: Programmering och algoritmiskt tänkande. Tema 1, föreläsning 1 Jody Foo
729G75: Programmering och algoritmiskt tänkande Tema 1, föreläsning 1 Jody Foo Föreläsningsöversikt Kursinfo / Om kursen Algoritmer Objektorienterad programmering i praktiken terminologi använda objekt
Inspel till dagens diskussioner
Intro till Agil Projektledning CMB 11 juni 2018 Mats Nyman Wenell Management AB Inspel till dagens diskussioner Historik och bakgrund Agila manifestet och de agila principerna SCRUM Kort om SAFe Wenell
Bilaga 5 b Mall för projektplan
Bilaga 5 b Mall för projektplan Hur ska bilagan användas? Detta är ett exempel på en mall för hur en projektplan skrivs och vad den kan innehålla. De flesta organisationer har egna mallar för projektplaner
TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 11 Jonas Lindgren, Institutionen för Datavetenskap, LiU
TDDC30 Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 11 Jonas Lindgren, Institutionen för Datavetenskap, LiU På denna föreläsning: Designmönster Adapter, Factory, Iterator,
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
Linköpings universitet 1 TDP029. Systemutveckling. Systemutveckling. Vanliga faser. Fler faser. Systemutvecklingsmetod
Systemutveckling TDP029 Systemutveckling Annika Silvervarg COIN/HCCS/IDA Systemutveckling kallas processen att ta emot en beställning på ett datorsystem, skriva en strukturerad kravspecifikation på systemet,
Webbserverprogrammering
Webbserverprogrammering WES Webbserverprogrammering Ämnet webbserverprogrammering behandlar funktionalitet för webblösningar och samspelet mellan beställare, användare, formgivare och utvecklare. Ämnets
Process IT-utveckling, översikt
Process IT-utveckling, översikt Producent Externt Producent SLU Beslutsfattare Kund Användare Ide-utveckling Kravspec Resursanalys Offert Offert Upphandling Beslut kravspeccifikation uppdragsspecifikat
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
Projektstyrning - kortversionen Jan-Åke Olofsson
Projektstyrning - kortversionen 2013-01-23 Jan-Åke Olofsson Projektstyrning är en hjälp att nå dit du vill Om det inte spelar någon roll vart du kommer, ja då kan du klara dig utan projektstyrning eller
PROJEKTPLAN. Programmerbar modellbåt Pontus Brånäs, Wojtek Thorn Version 1.1. Status
PROJEKTPLAN Pontus Brånäs, Wojtek Thorn Version 1.1 Status Signatur Datum Granskad 2015-01-22 Godkänd LIPS Projektplan i projektgrupppontek@outlook.com PROJEKTIDENTITET Projektgrupp 2, 2014/2015, Programmerbar
Projektplan. LiTH Reglering av Avgaser, Trottel och Turbo 2008-02-11. Fredrik Petersson Version 1.0. Status. Reglerteknisk Projektkurs RATT LIPs
Fredrik Petersson Version 1.0 Status Granskad 2008-02-11 NL, PA Godkänd 1 2 PROJEKTIDENTITET VT 2008, RATT-Gruppen Linköpings tekniska högskola, ISY- Fordonssystem Namn Ansvar Telefon E-post Daniel Ahlberg
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
Att utveckla, förvalta, och införa FGS:er Testmetodik
Vägledning Testmetodik Att utveckla, förvalta, och införa FGS:er Testmetodik Vägledning för arbetet med förvaltningsgemensamma specifikationer RAFGS1D2A20171025 Kontakta oss Information om arbetet med
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
TDDC74 - Projektspecifikation
TDDC74 - Projektspecifikation Projektmedlemmar: Namn Efternamn abcde123@student.liu.se Namn Efternamn abcde123@student.liu.se Handledare: Handledare handledare@ida.liu.se eller handledare@student.liu.se
Projektarbete DAVC20
Projektarbete DAVC20 DAVC20, Per Strömgren 2002-10-28 Make a plan. Then follow the plan. Watts Humphrey 2 DAVC20, Per Strömgren, 1 Vad handlar detta om?! 3 DAVC20, Per Strömgren Examination För godkänt
Objektorienterad analys och design
Objektorienterad analys och design Sven-Olof Nyström Uppsala Universitet 16 mars 2005 1 Objekt-orienterad analys och design: Litteratur Skansholm: Kapitel 4 Se även 1. http://www.uml.org/ 2. http://www-306.ibm.com/software/rational/uml/
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
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)
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
Mälardalens högskola
Teknisk rapportskrivning - en kortfattad handledning (Version 1.2) Mälardalens högskola Institutionen för datateknik (IDt) Thomas Larsson 10 september 1998 Västerås Sammanfattning En mycket viktig del
Agil programutveckling
Agil programutveckling Pontus Evertsson D00, Lunds Tekniska Högskola d00pe@efd.lth.se Anna Jennerheim D00, Lunds Tekniska Högskola d00aj@efd.lth.se 2003-05-15 1 1. Inledning 3 2. Extreme Programming (XP)
SKOLFS. beslutade den XXX 2017.
1 (11) Föreskrifter om ändring i Skolverkets föreskrifter (SKOLFS 2010:247) om ämnesplan för ämnet programmering i gymnasieskolan, inom kommunal vuxenutbildning på gymnasial nivå och inom vidareutbildning
PROJEKTLEDNING. Vad är ett PROJEKT? Ett projekt:
PROJEKTLEDNING Page: 1 Vad är ett PROJEKT? Ett projekt: är unikt ej återkommande har definierad budget är tidsbegränsat har väldefinierade mål har en temporär organisation Page: 2 Page 1 Projektets omgivning
Preliminär specifikation av projekt
Preliminär specifikation av projekt Projektets namn: Infraröd Minneslåda (numera omdöpt till FastSync) Uppdragsgivare: Alex Olwal aolwal@cs.columbia.edu Deltagare: Johan Ullberg Nils
TDP005. Föreläsning 1. Filip Strömbäck
TDP005 Föreläsning 1 Filip Strömbäck 1 Kursinformation 2 Mjukvaruprojekt 3 Metoder 4 Kravspecifikation 5 Systemdesign och OOP 6 Testning 7 Kom ihåg TDP005 Filip Strömbäck 2 TDP004 och TDP005 TDP005 Filip
729G75: Programmering och algoritmiskt tänkande. Tema 1. Föreläsning 1 Jody Foo
729G75: Programmering och algoritmiskt tänkande Tema 1. Föreläsning 1 Jody Foo Föreläsningsöversikt Kursinfo / Om kursen Algoritmer Objektorienterad programmering i praktiken terminologi använda objekt
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
LIPs Daniel Axehill ChrKr Projektdirektiv_Saab_v3 CKr
Daniel Axehill 2006-01-19 Sida 1 Projektnamn Beställare Daniel Axehill, ISY Projektledare Student Projektbeslut Torbjörn Crona, Daniel Axehill Projekttid Läsperiod 3-4, vårterminen 2006. Projektet klart
LUNDS UNIVERSITET. Projektledning
Projektledning 1 Vad är ett projekt?? 2 Vad är ett projekt? PMIs definition är: Ett projekt är en temporär satsning i syfte att skapa en unik produkt, tjänst eller resultat. Kännetecken Temporär Unik Successivt
Projektarbete med IT-verktyg - modulanpassat
Projektarbete är att arbeta på ett strukturerat sätt. Genom att kombinera projektmetodik, kunskap om och hur ett projekt fungerar, och ett planeringsverktyg, IT-stöd, kan Du få ett strukturerat och effektivt
Card Consulting. Projektmetodik Lars Ahlgren Card Consulting
Projektmetodik Lars Ahlgren Card Consulting Denna artikel ger en övergripande beskrivning av en universell och etablerad projektmetodik. Läsaren förutsätts ha en grundläggande förståelse för processer
Projektstyrningspolicy för Strängnäs kommun
1/5 Beslutad: Kommunfullmäktige 2014-03-24 7 Gäller fr o m: 2014-03-25 Myndighet: Diarienummer: Ersätter: Ansvarig: Kommunstyrelsen KS/2013:68-003 Ingen befintlig policy Utvecklingsavdelningen Projektstyrningspolicy
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
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
Programmera i C Varför programmera i C när det finns språk som Simula och Pascal??
Programmera i C Varför programmera i C när det finns språk som Simula och Pascal?? C är ett språk på relativt låg nivå vilket gör det möjligt att konstruera effektiva kompilatorer, samt att komma nära
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
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
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
Programmering = modellering
Programmering = modellering Ett datorprogram är en modell av en verklig eller tänkt värld. Ofta är det komplexa system som skall modelleras I objektorienterad programmering består denna värld av ett antal
Projektdirektiv. Verksamhet och Informatik (1)
(1)10 (2)10 Innehållsförteckning 1 DOKUMENTSTYRNING... 4 1.1 shistorik...4 1.2 Referenser...4 1.3 avvikelse och förändringshantering i projektet...4 2 BAKGRUND OCH BESLUT OM PROJEKT... 5 2.1 Bakgrund...5
PROGRAMMERING. Ämnets syfte. Kurser i ämnet
PROGRAMMERING Ämnet programmering behandlar hur mjukvaror skapas, anpassas och utvecklas samt programmeringens roll i informationstekniska sammanhang som datorsimulering och praktisk datoriserad problemlösning.
Design av inbyggda system. Innehåll. Hårdvarunära design. Hårdvarunära design. Hårdvarunära design. Hårdvarunära design TDD
Innehåll Design av inbyggda system Erfarenhet/Utmaningar värda att tänka på Avbrottsrutiner och huvudloopar hantering av gemensamma data hur och varför Designspecar bra / dåligt / hur / varför / när Inbyggt
För varje par av påstående/anledning svara med ett av följande alternativ (½ p per rätt svar):
Fråga 1 (3p) Kap 5 Special interfaces, Kap 10 Techniques at work För varje par av påstående/anledning svara med ett av följande alternativ (½ p per rätt svar): A: Både påståendet och anledningen är korrekta
Design av inbyggda system
Design av inbyggda system Innehåll Hårdvarunära design Erfarenhet/Utmaningar värda att tänka på Avbrottsrutiner och huvudloopar hantering av gemensamma data Kopplingsschema hur och varför 10 sätt att lyckas