Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Medan vi väntar: Diskutera Vad kan gå fel? Vad brukar gå fel? Varför då? Vad kan man göra.

Slides:



Advertisements
Liknande presentationer
Välkommen till sluta röka för gott! SLUTA RÖKA Dokumenterat hög effekt i kliniska tester DEMO.
Advertisements

Projekttitel Projektdeltagare Bild 1 Så anpassar du informationen i sidfoten Du kan enkelt anpassa vilken information som ska visas i sidfoten.
Kvalitetssäkrad leverans i Maximoprojekt
Tränings och Tävlingslära
Affärsplaner för samhällsentreprenörer?
Examensarbete - ett projekt
PRUTA INTE MED DIG SJÄLV!
Självständigt arbete 15 högskolepoäng på Statistik III
Utlandsstudier för I:are
Acando föreläsning Uppsala caseakademi
Förra måndagen gick vi igenom:
En introduktion till SEB Way
Beskriva den kommunala markanvisningsprocessen
Programmeringsteknik Föreläsning 13 Skolan för Datavetenskap och kommunikation.
Systemutvecklingsprocess, hitta objekt och lite Javakodning
Björn Thuresson CSC HPCViz/VIC Datorspelsdesign DH2650.
Projektet IT-coacher 2013 Enkäter angående intresset av IT-utbildning för seniorer gjordes i kommunerna Lidköping, Götene och Munkedal. De som svarade.
PROJEKTETS LIVSCYKEL Projektaspekter Definitionsfas Planeringsfas
Eller formativt lärande…
Produktionsplanering
Effektstyrning® av IT Vad är det? Varför då? Hur gör man?
Workshop inför Projektet
Affärsbeskrivning [Projekttitel …]
Steg 3 – Mötet RUTINER FÖR VÅRT ARBETSMILJÖARBETE
Riskhantering Säkrare resultat genom systematisk riskhantering
FL3: Techniques Interaktionsdesign i digitala medier (A.1) HT-2012, 7,5 hp Lärare: Daniel Nylén.
Känna till och ha provat metoder och verktyg för processledning
Projektledning – VBEF 01 Kristian Widén, PhD. Jag är 38 år Jag bor i Kävlinge Civilingenjör VoV, Doktor i Byggnadsekonomi, Innovationsspriding i byggsektorn.
Next previous Mjukvaruprocessen: översikt och repetition. XP: problemformulering. JUnit. Innehåll Allmännt om utvecklingsprocesser från Bruegge kapitel.
Att tillsammans påverka!
Steg 2 – Mötet HUR ÄR VÅR ARBETSMILJÖ OCH VAD BEHÖVER VI GÖRA?
SAST Stockholm Avs. Joachim Kravhantering.
Så jobbar vi med användbarhet och verksamhetstest i Ladok3
Ingenjörsprojekt för Teknisk Biologi och. Kemisk Analysteknik
Navision – RIM Rapid Implementation Methodology - anpassning.
Designstöd Daniel Fällman Institutionen för informatik Umeå universitet Design och utvärdering, 5 poäng.
MDI och användbarhet Måndagen den 27/3 Design och utvärdering, 5 poäng.
Lunds universitet / Samordnat IT-stöd vid LU / Oktober 2009 NETinfo Samordnat IT-stöd vid LU Johnny Nilsson, PL Birgitta Lastow, bitr. PL Anders.
PROJEKTLEDNING – konsten att leda mot ett gemensamt mål
PROJEKTLEDARSKAP (Kort sammanfattning från kursboken)
INFORMATIONSSYSTEM Informationssystem: datoriserat system som stödjer en organisations informationsförsörjning VERKSAMHET avbildar Definitionen alltför.
Design av autonoma mobila robotar TNE076 Kursen startar i januari 2004, 5p Finns nu som valbar för ED men andra kan också välja Går över två perioder Institutionen.
Navision – RIM Rapid Implementation Methodology – användning David Knezevic, Stockholm,
Vad är ett projekt? En grupp projektdeltagare utför under ledning av en projektledare en klart definierad uppgift, på en viss tid, med givna resurser.
FÖ8a-VT07 TFYY98/TFKI13 - A.Henry/D.Lawrence 1 Ingenjörsprojekt för Teknisk Biologi och Kemisk Analysteknik Projektet, Under- och Efter-fas (Fö8a - vt2007)
Ekonomi och användbarhet? Finns det något samband ? Vivian Vimarlund.
Formella metoder i MDI Behovet Vad menas med formell? Verktyg Exempel Att läsa: Kapitel 14 i kursboken.
Projektledarträning. Målsättning / Önskat utfall Deltagarna/teamet har en gemensam uppfattning avseende sina egna och gruppens styrkor och svagheter i.
PV7170 Föreläsning 1a Introduktion
Anders Hammar Rickard Hinsell Sharooz ArashGohar
PV7170 Föreläsning 2b Analys och förhandling
PROJEKT Projektkurs - DA7075 VT04.
PROJEKT Projektkurs - DA7075 VT04. Agenda Kursregistrering Personal, roller Åtagande Om projekt –Projektkalender Tidrapportering.
Digitalisering av text Kursintroduktion Mats Dahlström 30 Mars 2005.
Föreläsning om RUP RUP – Rational Unified Process
© Anders Broberg, Ulrika Hägglund, Lena Kallin Westin, 2003 Datastrukturer och algoritmer Föreläsning 16.
Förra måndagens program :
Införa IT-stöd i verksamheten Anna Lena Westman. Status Införa IT-stöd i verksamheten 2 Upphandling av IT-stöd för planering och uppföljning genomförd.
Handledarutbildning för Läslyftet ht15-vt16 Handledning – Ewa Wictor
1EB003: Individen och företaget Medarbetarskap Anna Alexandersson, Jonas Stjernquist,
Regeringsuppdraget Nationell informationsstruktur för vård och omsorg Monica Winge Socialstyrelsen.
Självständigt arbete i teknisk fysik 15 hp Kursansvarig: Martin Sjödin Uppsala Universitet Institutionen för teknikvetenskaper Nanoteknologi och funktionella.
L ADOK 3- PROJEKTET Version SystemöversiktSystembeskrivning Ladok3-funktionalitet månader före ursprunglig plan. Syftar till tidig.
Att starta, planera och driva projekt
Utvecklingsprojekt 2015 enligt förvaltningsplan
Kontinuitetsanalys Workshop 3 av 4 – Riskbedömning
[Förbättringsprojekt]
Sälja en produkt eller tjänst
Kreativitetssession Presentatörens namn.
Presentationens avskrift:

Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Medan vi väntar: Diskutera Vad kan gå fel? Vad brukar gå fel? Varför då? Vad kan man göra åt det? Om man utvecklar ett system...

2 ETSA01 Ingenjörsprocessen för programvaruutveckling – Metodik Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Föreläsning 1: Kursen, Projektet, Kravhantering och Projektplanering

3 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Utmaning Kan man förstå software engineering utan att ha upplevt stora programvaruprojekt? Kan man förstå vad som händer i stora programvaruprojekt utan att ha studerat software engineering?

4 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Jonas Wisbrant - minimal CV Samhällsvetare vid LU1989 Kommunikation och webbutveckling1990 Programvaruingenjör LTH i Helsingborg2002 Institutionen för Datavetenskap 2002 LUCAS - Center for Applied Software Research Datorer i System Algoritmer och datastrukturer Ingenjörsprocessen Det Norske Veritas 2008 Institutionen för Datavetenskap !2009 EASE / Programvaruportalen / kommunikation Datorer i System Ingenjörsprocessen

5 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Agenda Kursen Projektet Kravhantering: –Vad är ett bra krav? Projektplanering –Estimering och schemaläggning –Riskhantering Att göra inför övning 1 kl i E:3308 –Wiki-intro för C och I I pausen: Bilda projektgrupper och köpa kompendier

6 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Bilda projektgrupper och köp kompendium i pausen Skriv upp dig på en av grupperna Alla ska ha sex deltagare. –D- och I-grupperna har övning Torsdagar kl 8-10 –C- och i-grupperna har övning Fredagar kl 8-10 Notera gruppnummer och övningslokal Köp kompendium Grupp 01Deltagare (namn) från D eller IProgram to 8-10 E:0522 Lisa LarssonD1 Kalle KarlssonIE3

7 ETSA01 Ingenjörsprocessen för programvaruutveckling – Metodik Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Kursen

8 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Kursen Innehåll Projektplanering Kravhantering Arkitekturdesign Testning Modeller av utvecklingsprocessen för programvara Formalia 5 hp Obligatorisk för C1, D1, alternativobligatorisk för I3 Moment  Föreläsningar  Övningar  Projekt  Hemtentamen Del 1 av 3 kurser 8

Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Pedagogisk idé Vi genomför ett utvecklingsprojekt under rimligt ordnade former och kryddar med teori och reflektioner. Learing while doing... Föreläsning Hemarbete Övningar Projekt

10 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Översikt

11 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Kurslitteratur Bok Pankaj Jalote, A Concise Introduction to Software Engineering, Springer, –J: 6.2-5, kursivt Kompendium Software Engineering Research Group, Project and Exercises in the Software Engineering Process, –Säljs av institutionen 50;-

12 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Examination Projektarbete 26 timmar hemtenta xx juni: U3 Kravgranskning (10 av 60 p) Beskriv hur en kravgranskning går till och förklara målsättning, varför denna typ av granskning är viktig, vem som bör delta, samt vilka typer av fel man bör leta efter. Diskutera vilka svårigheter som finns då man vill införa denna typ av granskningar i en organisation samt ange tänkbara lösningar på dessa problem. Ange också om det finns några alternativ till denna typ av granskning och vilka dessa i så fall är.

13 ETSA01 Ingenjörsprocessen för programvaruutveckling – Metodik Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Projektuppgiften

14 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Projektuppgiften Arbeta i grupper om 6 personer Genomför utvecklingsprojekt från början till slut –Projektplanering –Kravidentifiering och kravanalys –Design och implementation –Testning –Leverans Leverabler –Projektplan –Kravspecifikation –Testplan & testspecifikation –Designdokument –Exekverbar applikation Plattformar –Moinwiki för dokumenten –Java/swing för programvaran

Uppgift: Programmera ett cykelgarage

Uppdrag

Uppgift: Programmera ett cykelgarage Uppdrag Målmiljö

Uppgift: Programmera ett cykelgarage Uppdrag Målmiljö Faser och leverabler

Uppgift: Programmera ett cykelgarage Faser och leverabler Uppdrag Målmiljö Utvecklingsmiljö

Uppgift: Programmera ett cykelgarage Faser och leverabler Utvecklingsmiljö Uppdrag Målmiljö Aktörer

Uppgift: Programmera ett cykelgarage Faser och leverabler Aktörer Utvecklingsmiljö Uppdrag Målmiljö Dokumentmiljö

Uppgift: Programmera ett cykelgarage Faser och leverabler Aktörer Dokumentmiljö Utvecklingsmiljö Uppdrag Målmiljö

23 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Kick-start: Etablera projektgrupper senast i pausen 172 personer --> 28,67 29 grupper Anmäl dig på anslagna lappar i senast i pausen Kursledningen fördelar de som inte anmält sig Grupperna är igång på TORSDAG KL 8. –Har konto i projekt-wikin –Har förbrett Övning 1! Nästa onsdag kl 24 är de två första dokumenten inlämnade Första deadline om 224,5 h

24 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Projektwikin Självförklarande ;-) Läsrätt: –egen grupp –QA-grupp från IP3 –kursledning (med automatik)

25 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1

26 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Wiki-intro för C och I kl i E:3308 Hur man använder den Supportfrågor under övning 1 Rigga om jag blir sen

27 ETSA01 Ingenjörsprocessen för programvaruutveckling – Metodik Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Om projekt

Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Gruppdiskussion Vad kan gå fel? Vad brukar gå fel? Varför då? Vad kan man göra åt det? Om man utvecklar ett system...

29 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Hur svårt det är att koka pasta... och var man börjar beror på om man gjort det förut

30 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Projekt är något mer eller mindre unikt Från beställares synvinkel: –en investering som ska gå med vinst –avstämningspunkter för att se om det går som man tänkt sig Från utförares synvinkel: –en teknisk uppgift som ska bli klar i tid –avstämningspunkter för att visa att man klarar att utföra uppgiften UTMANING: Vi bygger inte ytterligare ett hus, gipsar nästa ben eller kokar pasta igen vi gör innovation on demand

31 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Innovationsprojekt vs. en-gång-till-projekt Likheter –Planering och uppföljning –Samarbete och kommunikation –... Skillnader –Engångsprojekt –Hög komplexitet –Lätt att ändra sent i projektet –...

32 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Ska vi börja med projektplanen eller kravspecifikationen? Beroende av varandra Kraven är en del av produkten. Sista versionen måste sparas. Planen är en del av processen. Erfarenheterna bör sparas.

33 ETSA01 Ingenjörsprocessen för programvaruutveckling – Metodik Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Om kravhantering - del 1

34 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Agenda Krav –Definition, olika sorter Kravhanteringsprocessen –Identifiera, analysera, dokumentera, validera Undersökning om verkligheten Lite större perspektiv

35 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 [Alan Davis] Tidiga faser är viktiga

36 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Standish Group Survey ”Chaos Report” (1994) Top 10 Challenges 1. Lack of User Input 2. Incomplete Requirements 3. Changing Requirements 4. Lack of Executive Support 5. Technology Incompetence 6. Lack of Resources 7. Unrealistic Expectations 8. Unclear Objectives 9. Unrealistic Time Frames 10. New Technology [Standish Group, 1995] “Top 10 challenges”

37 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Måste Önskemål Produkt- egenskap Kontrakt Beslut Begränsning Funktion Idé Behov Lönsam Investering Underlag för test Vad är ett krav?

38 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Olika abstraktionsnivåer Användarnivå: –Användare, kunder, ingenjörer hos kunder,… Systemnivå: –Arkitekter, utvecklare, ingenjörer hos kunder,… Designnivå: –Arkitekter, utvecklare,… [Sommerville07]

39 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Olika sorters krav Funktionella krav –Beskriver vilka funktioner systemet ska erbjuda Kvalitetskrav (kallas även icke-funktionella krav) –Begränsningar för funktionerna –Påverkar ofta hela produkten

40 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Kvalitetskrav Tillförlitlighet –Mognadsgrad, feltolerans, återhämtningsförmåga Användbarhet –Begriplighet, lärbarhet, handhavande, attraktivitet Effektivitet –Tidsbeteende, resursutnyttjande Underhållsbarhet –Analyserbarhet, ändringsbarhet, stabilitet, testbarhet Portabilitet Uppfyllandegrad (standarder etc) Delar av ISO9126, se också Ingproc 2

41 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Funktionella krav, exempel Systemet ska kontrollera att användaren inte väntar max 15 sekunder mellan myntiläggning. Efter 15 sekunder sker time-out. Vid time-out returnerar systemet erlagda mynt. Om en kund trycker på en knapp för en vara som inte finns händer ingenting

42 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Kvalitetskrav, exempel Det får maximalt gå 1.0 sekund från en myntiläggning till att systemet är redo att ta emot nästa mynt. Programvaran får högt använda 6 kbyt RAM Programvaran får högt använda 65 kbyt ROM

43 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Kravhanteringsprocessen Dokumentera krav Validera krav Analysera krav Identifiera krav Nästa vecka: –Hur hittar vi, analyserar och dokumenterar krav –Hur säkerställer vi att vi förstått? –Hur ska vi prioritera?

44 ETSA01 Ingenjörsprocessen för programvaruutveckling – Metodik Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Om projektplanering

45 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F2 Typiskt innehåll i en projektplan Inledning: projektmodell, utvecklad produkt, affärsmål, begränsningar Projektorganisation: utvecklingsorganisationen, andra intressenter Hårdvara och programvara som krävs för projektets genomförande Arbetsnedbrytning: aktiviteter, leverabler, milstolpar Tidplan: när varje aktivitet påbörjas och avslutas, när varje milstolpe ska uppnås Uppföljning och rapportering: hur detta ska ske? Riskanalys

46 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Tre viktiga delområden inom projektplanering Kostnadsskattning Schemaläggning Riskhantering

47 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Kostnadsskattning Viktigaste (dvs dyraste) faktorn: persontid. Alltid svårt att veta, men viktigt ändå Olika angreppssätt –Expertbedömning –Algoritmiska modeller

48 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Schemaläggning AktivitetTid (d)Beroenden A15 A25 A310A1 A42A3 A510 A615A3, A5 Aktivitetsnätverk för kritisk väg Gantt-diagram

49 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Time Management T1 M1 T2 S S T3 M2 T4 M3 T5 E E /15 31/31 10/36 0/0 48/48 Activity Network 1.Define Milestones 2.Draw network graph 3.Earliest starting time 4.Last possible starting time 5.Critical path UTidBeroenden T110 T212T1 T315 T416T1, T3 T517T4

50 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Riskhantering Strategier Reducera konsekvens Minska risk Alternativ (plan B) Sannolikhet låg [1] hög [5] hög låg Konse- kvens RiskSKPrio (S x K)Strategi Hårdvara försenad 2510 Undersöka alternativ Konstruera simulator Ont om persontid428Minska scope Strulig beställare515Andas... Riskprocess

51 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F2 Sammanfattning Programvaruprojekt speciella eftersom de är en av, komplexa, och eftersom det går att ändra sent Projektplanen innehåller t ex projektorganisation, arbetsnedbrytning, tidplan och riskanalys Kostnadsskattning kan göras baserat på expertbedömningar eller algoritmiska modeller Riskhantering sker i fyra steg: identifiera risker, bedöm risker, behandla risker, följ upp risker

52 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Kommunikation i projektet över tiden Specifikation & plan Bekräfta System Godkänna Beställarens projekt Utvecklarens projekt Visioner & krav

53 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Signaler i projektet Behov Idéer Visioner Förväntningar Krav Avtal Plan Data Specifikationer Pengar Protokoll Beslut Förslag Prototyper Frågor Förtydliganden System Testresultat Acceptans Aktör AMediaMeddelande Återkoppling Meddelande Aktör B

54 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Intressenter (stakeholders) Gränssnitt Underleverantör Kundansvarig Utvecklare Projektledare Utvecklare Slutanvändare IT-funktion Sponsor Beställare

55 Lunds universitet / LTH / Datavetenskap / ETSA01 VT 2010 / F1 Att göra inför övning 1 Kursdeltagare: Prio 1: Kom på banan nu! –Skaffa wiki-konton enligt kurswebb –Läsa K:2-6 –Göra A:7.1-6 och A:8.3-6 Prio 2: –Läsa J:3-4 –Uppdatera: ETSA01/gruppXX/grup pmedlemmar ETSA01/gruppXX/grup pmedlemmar Kursledning: Prio 1: Kom på banan nu! –Rigga kurswikin –Förbereda övning 1 Kl 15.15: –C & I vi ses i E:3308 Nästa måndag –Lite mer om projekt –Mer om kravhantering –Kursombud –Datum för tenta Kl 15.15: –C & I vi ses i E:3308 Nästa måndag –Lite mer om projekt –Mer om kravhantering –Kursombud –Datum för tenta