I detta avsnitt beskrivs vart parprogrammering appliceras, hur det ska fungera och även i vilket projekt det introduceras i.

Storlek: px
Starta visningen från sidan:

Download "I detta avsnitt beskrivs vart parprogrammering appliceras, hur det ska fungera och även i vilket projekt det introduceras i."

Transkript

1 PARPROGRAMMERING Mikael Möller, Abstrakt Parprogrammering är ett arbetssätt där två programmerare arbetar tillsammans vid en dator med en uppgift. Studien behandlar frågor och svar huruvida parprogrammering är bra för ett team. Några av de aspekter som tas upp är om programmering i par bidrar till högre effektivitet, bättre kodkvalitet samt ökad samhörighet inom projektgruppen. Undersökningen görs på andra årets dataingenjörer vid Lunds Tekniska Högskola. 1. Inledning Av författarens erfarenhet har det upplevts som om parprogrammering (Williams & Kessler, 2002) underlättar och förbättrar ett teams produktivitet och kodkvalitet. Varför blir det högre produktivitet och bättre kodkvalitet? Om man arbetar i par, får varje programmerare en lust av att jobba effektivare och mer fokuserat? Under ett projekt är det viktigt att teammedlemmarna litar på varandra och jobbar mot samma mål, tillsammans. För att uppnå detta används diverse teambuildings redskap. Men hjälper även parprogrammeringen till att svetsa ihop teamet? Kan en enskild programmerares utveckling gynnas vid parprogrammering? Finns det negativa aspekter angående då en skicklig och rask programmerare blir hindrad av en sämre programmerare. För att få fram statistik och åsikter har utvecklare, som precis blivit introducerade till parprogrammering, fått svara på enkäter och blivit intervjuade. Resultatet var positivt, man jobbar effektivare och mer fokuserat. Det råder konstant utbyte av kunskap inom parprogrammerings paren. Upplägg: Studien lägger först en bakgrund och beskriver parprogrammering. I avsnitt 3 beskrivs hur undersökningen utfördes. I avsnitt 4 presenteras resultatet av denna undersökning, samt slutsatser och lösningar med hjälp av annan litteratur och studier. Avslutningsvis sammanfattas de viktigast slutsatserna. 2. Bakgrund I detta avsnitt beskrivs vart parprogrammering appliceras, hur det ska fungera och även i vilket projekt det introduceras i. 2.1 Agila mjukvaruutvecklings metoder Det finns tre stycken agila metoder vid mjukvaruproduktion som är mer kända än andra, Lean, Scrum och Extreme Programming (XP). I stora drag är skillnaden mellan de agila metoderna följande. Lean kommer från Toyota bilindustri och är en övergripande metod för hur en organisation ska skötas (Poppendieck & Poppendieck, 2003). Man fokuserar på att maximera kundvärdet och minimera slösandet med tid. Scrum går mer in på detalj då den 1

2 behandlar vad som ska utvecklas men inte hur man programmerar (Schwaber & Beedle, 2001). Till sist är XP en programvaru utvecklings metod som beskriver riktlinjer och metoder för utvecklarnas arbete under utvecklingen. XP fokuserar på enkelhet, feedback, mod och kommunikation (Beck, 1999). Många företag kombinerar de olika agila metoderna för att få ett skräddarsydd metod som passar just dem. Principen för XP är att ett team sitter och programmerar mot en och samma kod, ett repository som alla får förbättra men med kravet att det ska fungera (Beck & Andres, 2004, s.66). Med hjälp av detta repository kan man när som helst få fram en release av den funktionalitet som är implementerad vid just det tillfället. Denna release kan man visa för kunden och på så sätt kan denne känna ett förtroende om att arbetet går framåt. För att hjälp utvecklarna att uppfylla detta finns det 12 st practices in om XP (Beck, 1999, s.71). Några av dem är Simple Design, Refactoring, Collective Code Ownership, Test Driven Development (TDD), Release Regularly och Pair Programming. 2.2 Parprogrammering Parprogrammering går ut på att två utvecklare sitter och programmerar tillsammans vid en dator (Williams & Kessler, 2002). Paret är uppdelat som en driver och en navigator. Arbetet ihop går ut på att drivern och navigatorn diskuterar tillsammans fram en lösning till en implementation av en story 1. Vidare är driverns huvuduppgift att implementera själv lösningen. Samtidigt gör navigatorns sina arbetsuppgifter, som är att granska koden som driven skriver samt notera fel och idéer om vad som ska göras där näst på en todo-lista. Den listan hjälper paret att komma ihåg vad som ska göras samt att den även hjälper dem att komma ihåg vad dom har gjort. Continous Integration betyder att så fort det finns ny funktionalitet till systemet, så skall det göras en commit 2 så att resten av teamet kan ta del av den nya funktionaliteten. Vid commits är det viktigt att kommentera var någonstans något har lagts till eller ändrats. Till sin hjälp har då paren sin todo-lista som kan hjälpa dem att komma ihåg vad de gjort. Navigatorn och drivern skall byta roller ofta och man ska försöka vara lika mycket driver som navigator. 2.3 Projektbeskrivning Denna studie gjordes samtidigt som projektet och kursen (EDA260) utfördes. Kursen ges under första läsperioden på vårterminen för de som går andra året på Civilingenjörsprogrammet - Datateknik vid Lunds Tekniska Högskola. I kursen är studenterna uppdelade i team om 8-12 studenter. Under 7 veckor har teamen 6 stycken så kallade långlabbar och 6 stycken planeringsmöten. Under två timmar varje onsdag i vecka 1-6 planeras arbetet som ska göras under näst följande långlabb. Långlabbarna var mellan 8:15 till 17:00 varje måndag i vecka 2-7. System som skulle utvecklas var ett tidsregistrering och resultatgenererings program för Enduro race. Författaren var coach till ett team om 12 utvecklare som skulle för första gången jobba enligt XP modellen, och då även första gången som parprogrammerare. Många av utvecklarna hade i tidigare programmerings kurser programmerat i par under laborationer, men då inte enligt de normer som finns inom XP. I stort sätt kände inte utvecklarna i teamet varandra sedan tidigare. Det fanns enstaka bekantskaper, men ingen hade parprogrammerat med någon annan sedan tidigare. 1 En story är en beskrvining av funktionalitet som kunden vill ha implementerad. 2 Lägga till ny funktionalitet i det gemensamma repository. 2

3 3. Undersökning Genom två enkäter och individuella intervjuer fanns förhoppningen om att få fram de positiva och negativa åsikterna som utvecklarna hade om parprogrammering. 3.1 Enkät 1 Den första enkäten delades ut efter den första lång labben till ett team, det team som främst var under granskning. Den var uppdelade i ett två avsnitt, ett där man på en skala skulle markera hur mycket man man höll med om ett påstående. Och den andra delen skulle man i egna ord kommentera påståendena och några ytterligare frågor. På påståendena kunde man välja från att Jag tar helt avstånd från påståendet till Jag instämmer helt i påståendet, Ej svar var även ett alternativ. Nedan följer påståendena som var på enkät 1: 1. Navigatorns todo-lista används. 2. Byte inom paren görs? Dvs man var lika mycket driver som navigator. 3. Känner du att du jobbar effektivare och mer fokuserat än när du programmerar själv? 4. Anser du att produktiviteten och kodkvalitén är högre än när du programmerar själv? 5. Har din egen utveckling, som programmerare, gynnats av parprogrammeringen? 6. Känner du att parprogrammeringen har hjälpt dig att lära känna dina teammedlemmar snabbare? 7. Om du anser att du var den bättre programmeraren i paret vid något tillfälle, kände du dig hindrad och tyckte att det gick för långsamt? (Om du inte känt av detta svara Ej svar ) Vidare följde tre stycken frågor där utvecklarna skulle svara med egna ord: 1. Kommentarer till frågorna i tabellen. Tex om man svarat en 1:a på Todo-listan användes, vad var det då som inte fungerade? 2. Påtvingad rotation. Bra/dåligt? Kommentar? 3. Din allmänna uppfattning om parprogrammeringen. Den första enkäten hade som syfte att undersöka huruvida utvecklarna tyckte om parprogrammeringen eller ej. Vidare skulle resultat från en annan enkät, som delades ut 2 veckor efter, jämföras. Detta för att se skillnader då utvecklarna hade fått arbetat mer som parprogrammerare. 3.2 Enkät 2 Den andra enkäten delades ut efter den tredje lång labben. Den var likadan som den första enkäten förutom att två frågor, där utvecklarna skulle svara med egna ord, hade lagts till. De frågorna var: Är det någon du inte passar ihop med/passar mindre ihop med? Varför är det så? (Inga namn) Vad hade kunnat vara bättre? (tex arbetslokal?) Dessa två frågor blev fråga 3 respektive 4, det vill säga att Din allmänna uppfattning om parprogrammeringen blev fråga 5. Som nämndes tidigare skulle svaren från denna enkäten jämföras med resultaten från enkät 1. 3

4 3.3 Intervjuer Intervjuerna användes för att kunna få bättre feedback från utvecklarna då det fanns risk för att kommentarerna från enkäterna inte skulle vara tillräckligt tillfredsställande. En teori var att om utvecklarna i tal fick diskutera påståendena och frågorna skulle mer information komma fram. I ett enskilt rum fick tre stycken utvecklare (en åt gången) tillsammans med författaren kommentera påståendena och frågorna på enkät 2, detta antecknades. 4. Resultat från undersökning och jämförelse med andra studier Enkät 1 skickades ut och blev besvarad av ett team, team 6 med 12 st studenter. På grund av sämre deltagande i enkät 2 och ett intresse om andra teams åsikter, skickades enkät 2 även ut till två andra team. Enkät 2 besvarades av 17 studenter. Det var inga större skillnader på svaren från de olika team. Det intressanta var de konsekventa åsikterna i vissa frågor samt svar från vissa individer som stack ut från mängden. I samtliga figurerna under avsnitt 4 är en 1 lika med Jag tar helt avstånd från påståendet och en 5 lika med Jag instämmer helt i påståendet. 4.1 Användningen av navigatorns todo-lista Figur 1. Fråga: Navigatorns todo-lista används. Som grafen (fig. 1) visar så var det högre användning av todo-listan då den introducerades än vid tiden då enkät 2 besvarades. Många av utvecklarna kommenterar detta med att det som diskuteras implementeras direkt så att man behöver inte skriva ner något. En kommentar säger: - Kändes nästan aldrig lämpligt att skriva ner något i listan. Det som diskuterades var oftast det som hände precis då. Vissa påpekar att det säkert är en bra sak att göra, men att det glöms bort. Detta är förståeligt då det är en mängd andra moment och rutiner som är nytt. Däremot verkar det finnas en tendens till att båda i paret blir driver, vilket inte är bra. - Båda blir driver för att lösa problemet. 4

5 Kommentaren styrker detta och visar på att man förmodligen inte blir klar med diskussionen om lösningen inom paret. I andra ord att man fortsätter diskussionen samtidigt som man börjar implementerar lösningen. Detta leder in på om bytet inom paret sköttes? 4.2 Lika mycket driver som navigator Problemet att navigator rollen inte alltid uppfylls återstår. Granskning av koden görs, men i några fall tänker man inte över om vad som ska göras där näst Figur 2. Fråga: Byte inom paren sköttes? Dvs man var lika mycket driver som navigator. När parprogrammeringen introducerades så var teamet väldigt måna om att byta ofta inom paret. Som grafen (fig. 2) visar så har det gått från bra till lite sämre. En faktor är att i de par där kompetensskillnaden är större, känner den sämre programmeraren att det är säkrare om den bättre programmeraren är driver. En utvecklare säger: - Om man har sämre kompetens låter man den andra ta rodret. Men man tar över lite i alla fall. Men i de par där kompetensen är på samma nivå sker bytet automatiskt. - Det man tittar på i förväg, gör att man byter. För att förtydliga. Samtidigt som drivern implementerar, upptäcker navigatorn något som måste göras. Då görs bytet när drivern har blivit klar med det den arbetade med. Navigatorn som nu har blivit driver förklarar och kan sedan börjar implementera om inget annat ska diskuteras. Under intervjuerna kom några av utvecklarna fram till en insikt om att todo-listan är förmodligen en väldigt bra idé. Men att det har varit svårt att applicera detta då man inte riktigt är van vid arbetssättet. - Man vill inte avbryta drivern, så en todo-lista hade varit bra. Kommer nog efter ett tag. 4.3 Effektivare och mer fokuserat arbete När utvecklare jobbar i par känner merparten att de inte vill svika sin partner och då jobbare hårdare och mer motiverat (Williams & Kessler, 2002, s.21-23). När man programmerar enskilt kan man ta det lugnt ibland, läsa s, prata i telefon etc. I parprogrammering blir detta bortkastad tid för sin partner, så att undermedvetet håller man varandra fokuserade på uppgiften (Williams, 2001, s.33). Grafen (fig. 3) samt vissa kommentarer visar tydligt att utvecklarna tycker likadant. - Helt klart, man känner ett större ansvar till den andra också. 5

6 - Prestationskrav inom paret, man ville inte vara den som sölar ner Figur 3. Fråga: Kände du att du jobbade effektivare och mer fokuserat än när du programmerar själv? Enstaka utvecklare väljer att svara att det varit både mindre effektivt och mindre fokuserat. Kompatibilitet inom vissa par, se avsnitt 4.7, kan ha varit dålig och gett upphov till detta resultat. 4.4 Högre produktivitet och bättre kodkvalitet Båda programmerarna i ett par bidrar med olika, om än liten, information och kunskap. Detta leder till att bättre beslut, t.ex. beslut om design, tas (Chong m.fl., 2005). Utöver designbeslut löser paret tillsammans problem snabbare och resultatet, koden, blir kortare (Cockburn & Williams, 2001). Som nämnts tidigare känner utvecklarna hängivenhet gentemot varandra vilket resulterar i bättre coding standards Figur 4. Fråga: Anser du att produktiviteten och kodkvalitén var högre än när du programmerar själv? Grafen (fig 4) tyder på att utvecklarna märker en positiv skillnad av produktivitet och kodkvalitet gentemot då man arbetar själv. Dagen då enkät två delades ut hade omfattande refaktoriseringar gjorts, vilket kan kan ha påverkat åsikten gällande om det är högre kodkvalitet eller ej. - Man fastnade nästan aldrig, körde man fast så var det oftast ganska lätt att diskutera fram en lämplig lösning. Samt att fler misstag upptäcktes eftersom en person hela tiden granskade koden. 6

7 Williams och Kessler tar upp pair courage vilket innebär att paret skapar ett självförtroende inför sina resultat och lösningar (Williams & Kessler, 2002, s.26-27). Detta uppkommer som ett resultat av kontinuerliga diskussioner mellan varandra. De kommer även ha lättare för att erkänna om de inte förstår något och kan då be om hjälp från ett annat par. Dock påpekar några utvecklare att då man vill få fram ett resultat snabbare, vid deadlines, påverkas lösningarna. - Får lösningar som funkar men är inte lika snyggt, resultat lite snabbare. Refaktorisera sen! Detta är inte bra och ska absolut undvikas. Det är viktigt att uppfylla XP s grundstenar, kommunikation i detta fallet. Det är viktigt att samtala med kunden om att man stöter på problem och att resultatet ska stå i centrum, inte kvantiteten. En dålig lösning kan ställa till problem senare och kan vid det tillfället ta ännu längre tid att lösa än om man löst det från första början. 4.5 Studenternas utveckling gynnas av parprogrammering Vid parprogrammering byts konstant kunskap mellan programmerarna. Man lär sig om programmerings regler för design, användning av verktyg och allmänt om programmerings språket. Tillsammans med rotation av paren lär sig varje programmerare om flera delar av systemet. Detta gynnar hela projektet då det är flera som har kännedom om system när det är avslutat (Cockburn & Williams, 2001). Utvecklare, som jobbar enligt parprogrammering, har en positivare attityd, samt lär sig om samarbete, lagarbete och skapar goda kommunikations färdigheter vilket de kommer ha nytta av i deras framtida arbetsliv (Nagappan, 2003)(Williams, 2007). Större delen av studenterna har märkt att de lära sig många nya saker genom sin parprogrammerings partner (illustreras i fig. 5), men även genom egna och teamkamraters spikes 3. - Man lär sig något nytt hela tiden och kan utbytta kunskaper. - Lär sig väldigt mycket om eclipse 4, alla kan vissa tricks Figur 5. Fråga: Har din egen utveckling, som programmerare, gynnats av parprogrammeringen? Några utvecklare har jobbat för fokuserat på en viss del av koden, vilket resulterat i att de inte har haft en fullständig uppfattning om hur hela systemet har fungerat. Detta kan man 3 Spikes är hemuppgifter som delas ut då team har bestämt att de behöver kunskap inom ett område eller verktyg. Spikesen sammanfattas så att alla i team kan dra lärdom av varandras hemarbeten. 4 Eclipse är ett program som programmerare använder sig av för implementering av system vid programvaruutveckling. 7

8 lösa genom att man tvingar sig själv till arbete med andra uppgifter vid rotation av paren (Williams & Kessler, 2002, s.77-81). Ett resultat av en studie vid North Carolina State University markerar att parprogrammering inte påverkar studenters prestation negativt (Nagappan, 2003). Vidare visar en studie ifrån University of California UC-Santa Cruz att fler studenter blir godkända på kurser då de parprogrammerat under kursens gång (McDowell, 2002). 4.6 Parprogrammering = teambuilding De konstanta diskussionerna inom paren, tillsammans med rotering av medarbetare gör att studenterna får tillfälle att på kortare tid lära känna flera i teamet (Williams & Kessler, 2002, s.77). Resultatet blir att fler litar på varandra och man har lättare för att kommunicera och dela med sig av problem (Williams & Kessler, 2002, s.30)(cockburn & Williams, 2001). En ökning av kommunikationen är positivt för projektet då informations flödet ökar inom teamet Figur 6. Fråga: Känner du att parprogrammeringen har hjälpt dig att lära känna dina teammedlemmar snabbare? Grafen (fig 6) visar på att sådant är även fallet i de teamen som varit med i undersökningen. - Det är lättare att komma in och bli en grupp när man programmerar i par, känns som att det är lättare att diskutera med andra gruppmedlemmar när man är två också. En studie vid Unversity of Wales visar på att studenter med låg självsäkerhet är de som gillar parprogrammering mest (Thomas, Ratcliffe & Robertson, 2003). Tillsammans med en kommentar från en utvecklare stärks detta påstående. - Ingen är rädd för att ta för sig. Tror att vissa är blyga annars, men tar för sig i det här teamet. 4.7 Kompatibilitet - vem passar ihop med vem? Det finns två signifikanta resultat av parning, båda är på samma kunskapsnivå respektive en är bättre än den andra. Studier visar att över 9 av paren tycker att ens samarbete har varit kompatibelt under arbetet (Katira m.fl., 2004)(Williams m.fl., 2006). Varierande personligheter och olik självsäkerhet är ingen kritisk faktor för kompatibiliteten då par ska sättas ihop (Katira, Williams & Osborne Towards, 2005). I fallet där båda besitter liknande kunskaper blir det sällan problem och det är även den parningen man uppskattar mest som utvecklare (Williams, 2007)(Williams m.fl., 2006). Mestadels funkar det bra då en duktig och en sämre programmerare har paras ihop. Den bättre hjälper att höja den svaga partnerns kunskapsnivå (Williams & Kessler, 2002, s.61). Men tyvärr funkar inte alltid detta. T.ex. kommenterar en utvecklare från ett annat team: 8

9 - Jag klarar inte av att programmera med vissa i gruppen som kan väldigt mycket om programmering, men inte bryr sig speciellt mycket om XP-programmering. För mig är det viktigt att den jag programmerar med är social och kan prata och berätta mycket, eftersom jag oftast inte är riktigt lika duktig på att programmera. Av kommentaren verkar det som om några duktiga programmerarna inte har tillämpat XP helt och hållet än. Brist på kommunikation verkar även vara en faktor. En teknik för att lösa det är att ta ifrån tangentbordet från den duktige programmeraren, med andra ord tvinga den att bli navigator. På så sätt måste denne förklara och förmedla, genom kommunikation och diskussion, problemen och lösningar till den nya drivern (Williams & Kessler, 2002, s.155). Det finns en del duktiga programmerare som alltid vill jobba ensamma, då de tycker att det går för långsamt när de programmerare med någon som är sämre än dem själva (Williams, 2007). Från enkät svar ha det inte förekommit att någon hellre vill arbeta ensam. Som grafen (fig 7) visar är det >5 som besitter liknande kompetens (de som svarat Ej svar ). Däremot finns det några duktiga programmerare som upplevt att det gått långsamt, samtidigt som vissa duktiga programmerare tycker det är bra att bli avbruten och bli tvungen att förklara. Följande kommentarer speglar detta tydligt. - När detta händer är det tråkigt. - Jag anser inte att man blir tillbakahållen om man är bättre än sin partner, utan snarare att man får tillfälle att verkligen försöka visa för sig själv att man förstår och kan förklara. 60,0 50,0 40,0 30,0 20,0 10,0 0,0 Figur 7. Fråga: Om du anser att du var den bättre programmeraren i paret vid något tillfälle, kände du dig hindrad och tyckte att det gick för långsamt? (Om du inte känt av detta svara Ej svar ) Vidare finns problem då den svaga programmeraren har brist på motivation, arbetsmoral och vilja att bli bättre. Detta är ytterst frustrerande för dennes partner. I slut ändan måste alla i teamet vara lagspelare för att teamet ska fungera. Och om en person bara bidrar negativt till teamet, skall denne tas bort (Williams & Kessler, 2002, s.61). Personer med för dålig självsäkerhet märks tydligt och bör hanteras direkt. T.ex kan man genom parprogrammering och hjälp från teammedlemmar hjälpa denne att bygga upp ett bra självförtroende och god självsäkerhet. Ifall personen inte blir bättre, och att den tynger ner teamet genom att de tvingas jobba övertid, bör denna personen bli omplacerad (Williams & Kessler, 2002, s ). Med stor talang kommer ofta ett stort ego. Williams och Kessler tar upp expert-expert problemet, där dåligt samarbete blir ett resultat på grund av två egocentriska individer. Om båda har en my way or the highway -inställning kommer problem uppstå. Om man lyckas para två experter kan de lösa de allra största svårigheter och då definitivt vara en tillgång till teamet (Williams & Kessler, 2002, s.99). 9

10 4.8 Rotation Som vi nämnt tidigare lär sig utvecklarna av varandra, då är det även viktigt att rotera runt mellan paren så att kunskap sprids ännu mer (William & Kessler, 2002, s.81). Frågan är när det är lämpligt att byta partner? Vissa team tycker det är bra att byta varje timme och vid svårigheter efter varje halvtimme (Beck & Andres, 2004). De flesta studenterna som besvarade enkäterna tyckte att det kändes naturligt att göra rotation efter varje story, alternativt efter varje task 5 om det var en stor story. Några tyckte det var bra att bli avbruten för att tvingas rotera. Detta i direkt motsats till andra som tyckte det var jobbigt när de var mitt uppe i problemlösandet och var tvungen att lämna något man påbörjat. Det verkar inte finns någon gyllene regel för när man ska rotera, men en kombination av de ovannämnda förslagen är det som teamet, som främst varit under granskning, föredrar. 4.9 Arbetsmiljö Det har klagats på att laborationslokalen har haft för dålig ventilation och man har efterfrågat större skärmar. Enstaka programmerare påpekar att det hade varit skönt med tillgång till ett litet tyst rum om man behövde koncentrerar sig extra mycket över ett svårt problem. De flesta tycker att det inte varit något problem att sitta tillsammans vid en dator och programmera. Men en person uttrycker sig enligt: - Arbetsplatsen är inte anpassat. Man måste flytta tangentbord/mus och sträcka sig. Vid North Carolina State University har man anpassa och byggt upp laborationslokalen för att passa parprogrammeringen perfekt. Den signifikanta skillnaden är att varje dator har två skärmar, två möss och två tangentbord. Detta leder till bättre parprogrammering då paret inte behöver byta plats vid bytet mellan driver och navigator(williams, 2007). Sammanfattning Alla som svarade på enkäterna och deltog i intervjuer var positiva till parprogrammering. Man tycker det är roligare att jobba och kan med hjälp av sin partner lättare hålla sig fokuserad på uppgiften. Arbetet görs effektivare och produkten resulterar i högre kvalité. På grund av samtidig introduktion av många andra XP praktiker har det varit svårt att följa driver och navigator rollerna till fullo. Man har lätt för att kommunicera och diskutera programmerings svårigheter som ställs inför teamet. I och med konsekvent rotation mellan paren lär sig utvecklarna mer om hela systemet och kan på kortare tid bekanta sig med sina teammedlemmar. Kompatibilitet i parprogrammerings paren har inte alltid varit perfekt. Det som främst orsakar detta är då det finns en ansenlig skillnad i kunskapsnivå inom paret. 5 Om teamet anser att en story är stor och kräver flera implementations moment, kan denna delas upp i mindre tasks för att underlätta arbetet. 10

11 Källförteckning Beck, K., 1999, Embracing Change with Extreme Programming. Computer - Volume 32 Issue 10, October Los Alamitos, CA: IEEE Computer Society Press. sid Beck, K. & Andres C., 2004, Extreme Programming Explained: Embrace Change (2nd Edition). Boston, MA: Addison-Wesley Professional. Chong J. m.fl., 2005, Pair Programming: When and Why it Works. 17th Workshop of the Psychology of Programming Interest Group, Sussex University, June Cockburn A. & Williams L., 2001, The Costs and Benefits of Pair Programming. Extreme programming examined Katira N. m.fl., 2004, On Understanding Compatibility of Student Pair Programmers, SIGCSE '04 Proceedings of the 35th SIGCSE technical symposium on Computer science education Katira N., Williams L. & Osborne Towards J., 2005, Increasing the Compatibility of Student Pair Programmers. ICSE '05 Proceedings of the 27th international conference on Software Engineering McDowell C. m.fl., 2002, The effects of pair-programming on performance in an introductory programming course. ACM SIGCSE Bulletin Volume 34 Issue 1, March Inroads: paving the way towards excellence in computing education. Nagappan N. m.fl., 2003, Improving the CS1 Experience with Pair Programming. SIGCSE '03 Proceedings of the 34th SIGCSE technical symposium on Computer science education Schwaber K. & Beedle M., 2001, Agile Software Development with Scrum. Upper Saddle River, NJ, USA: Pearson Education, Inc. Thomas L., Ratcliffe M. & Robertson A., 2003, Code Warriors and Code-a-Phobes: A Study in Attitude and Pair Programming. ACM SIGCSE Bulletin - Volume 35 Issue 1, January Poppendieck M. & Poppendieck T., 2003, Lean Software Development: An Agile Toolkit. Boston, MA: Addison-Wesley Inc. Williams L., 2001, Integrating Pair Programming into a Software Development Process. CSEET '01 Proceedings of the 14th Conference on Software Engineering Education and Training s Williams L. & Kessler R., Pair Programming Illuminated. Boston, MA: Pearson Education, Inc. Williams L. m.fl., 2006, Examining the Compatibility of Student Pair Programmers. Proceedings of AGILE 2006 Conference (AGILE'06). Williams L., December 2007, Lessons Learned from Seven Years of Pair Programming at North Carolina State University. ACM SIGCSE Bulletin Volume 39 Issue 4. 11

Djupstudie i parprogrammering

Djupstudie i parprogrammering Djupstudie i parprogrammering Abstrakt P. Abrahamsson D05, Lunds Tekniska Högskola dt05pa1@student.lth.se P. Norlander D07, Lunds Tekniska Högskola dt07pn3@student.lth.se 2011-02-25 Denna studie handlar

Läs mer

En studie om parprogrammering i praktiken

En studie om parprogrammering i praktiken En studie om parprogrammering i praktiken Mia Nyström Karin Wanhainen Johan Rix 29 maj 2002 Sammanfattning Parprogrammering är en av de mest omdiskuterade grundstenarna i Extreme Programming (XP). All

Läs mer

Scrum + XP samt konsekvensanalys

Scrum + XP samt konsekvensanalys Scrum + XP samt konsekvensanalys Daniel Nimren dt05dn8 Douglas Frisk dt05df1 Dept. of Computer Science, Lunds Tekniska Högskola, Sweden {dt05dn8 dt05df1}@student.lth.se 1 mars 2010 Sammanfattning Denna

Läs mer

TDP023 Projekt: Agil systemutveckling

TDP023 Projekt: Agil systemutveckling TDP023 Projekt: Agil systemutveckling Johan Åberg johan.aberg@liu.se Tre moment Projekt 8hp Marknadsföring av produkt 2hp Kopplat till projektarbetet Individuell rapport 2hp Kopplat till projektarbetet

Läs mer

Scrum + XP = sant. Kristian Björk D06, Lunds Tekniska Högskola dt05kb1@student.lth.se. Frederik Blauenfeldt Jeppsson. dt06fb8@student.lth.

Scrum + XP = sant. Kristian Björk D06, Lunds Tekniska Högskola dt05kb1@student.lth.se. Frederik Blauenfeldt Jeppsson. dt06fb8@student.lth. Scrum + XP = sant Kristian Björk D06, Lunds Tekniska Högskola dt05kb1@student.lth.se Frederik Blauenfeldt Jeppsson D06, Lunds Tekniska Högskola dt06fb8@student.lth.se 2010-03-02 1 Abstract Scrum och XP

Läs mer

Agil programutveckling

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)

Läs mer

12 principer of agile practice (rörlig)

12 principer of agile practice (rörlig) X-treme programming 12 principer of agile practice (rörlig) Ge nöjd kund genom tidig och kontinuerliga leveranser Den viktigaste punkten som betyder att min vill ha kontinuerlig feedback Välkomna sena

Läs mer

TDDD26 Individuell projektrapport

TDDD26 Individuell projektrapport TDDD26 Individuell projektrapport Kort beskrivning av projektet Vi hade som projekt att utveckla en digital media servicer som skulle hjälpa filmentusiasten att organisera sitt filmbibliotek. Programmet

Läs mer

XP vs. Tillverkningsindustrin

XP vs. Tillverkningsindustrin Djupstudie i Coaching av programvaruteam Lunds Tekniska Högskola 2006-02-20 XP vs. Tillverkningsindustrin Hur behandlar man The FIVE dysfunctions of a TEAM? Emil Svärdh D02, Lunds Tekniska Högskola d02es@efd.lth.se

Läs mer

Programmering av NXT Lego- robot Labbrapport för programmering av en Lego- robot

Programmering av NXT Lego- robot Labbrapport för programmering av en Lego- robot KUNGLIGA TEKNISKA HÖGSKOLAN Programmering av NXT Lego- robot Labbrapport för programmering av en Lego- robot Josef Karlsson Malik 2015-09- 02 jkmalik@kth.se Introduktionskurs i datateknik (II0310) Sammanfattning

Läs mer

Kevin Lane Kungliga Tekniska Högskolan Introduktionskurs i Datateknik (II1310) TIEDB0. [NXT Legorobot] [Programmering och felsökning]

Kevin Lane Kungliga Tekniska Högskolan Introduktionskurs i Datateknik (II1310) TIEDB0. [NXT Legorobot] [Programmering och felsökning] [NXT Legorobot] [Programmering och felsökning] Kevin Lane 28/8-12 klane@kth.se Introduktionskurs i datateknik II1310 1 Sammanfattning I denna laboration så fick vi programmera och felsöka en LEGO-robot.

Läs mer

extreme Programming refactored - recension och analys av Kent Becks senaste definition av XP

extreme Programming refactored - recension och analys av Kent Becks senaste definition av XP extreme Programming refactored - recension och analys av Kent Becks senaste definition av XP Måns Gunnarsson d01mg@efd.lth.se Sammanfattning Denna djupstudie består av en recension av andra upplagan av

Läs mer

Lean software development och lättrörlig utveckling

Lean software development och lättrörlig utveckling Lean software development och lättrörlig utveckling TOBIAS FORS & MIKAEL LUNDGREN Agenda Vi vill visa: Ett pågående paradigmskifte i mjukvaruvärlden Nämligen: Lean: en teoribas för lättrörlig utveckling

Läs mer

Gruppdynamik och gruppsykologi i Extremet Programming

Gruppdynamik och gruppsykologi i Extremet Programming Gruppdynamik och gruppsykologi i Extremet Programming Jerry Malm, d02jm@efd.lth.se Gustav Olsson, d02og@efd.lth.se Lunds Tekniska Högskola Lund, den 22 februari 2005 Sammanfattning Denna djupstudie kan

Läs mer

SCRUM vs. XP en jämförelse mellan två lättviktsmetodiker

SCRUM vs. XP en jämförelse mellan två lättviktsmetodiker SCRUM vs. XP en jämförelse mellan två lättviktsmetodiker Phut Tran D01, Lund Tekniska Högskola d01pt@efd.lth.se 21 februari 2006 Innehållsförteckning ABSTRACT... 3 1 INLEDNING... 4 2 VAD ÄR EN LÄTTVIKTSMETODIK?

Läs mer

Peopleware: Productive Projects and Teams

Peopleware: Productive Projects and Teams Peopleware: Productive Projects and Teams S. Jacob Rosberg D03, Lund Institute of Technology, Sweden D03jr@efd.lth.se 2006-02-21-1 - Innehållsförteckning 1. Abstrakt... 3 2. Inledning... 4 3. Sammanfattning

Läs mer

Djupstudie Code smells / Refaktorisering. Martin Larsson dt08ml5 Stefan Johansson, dt08sj7

Djupstudie Code smells / Refaktorisering. Martin Larsson dt08ml5 Stefan Johansson, dt08sj7 Djupstudie Code smells / Refaktorisering Martin Larsson dt08ml5 Stefan Johansson, dt08sj7 27 februari 2012 Innehåll 1 Inledning 1 2 Bakgrund 1 2.1 extreme programming....................... 1 2.2 Programvaruutveckling

Läs mer

KUNGLIGA TEKNISKA HÖGSKOLAN. Laboration II1310. Programmera Lego Mindstorm robot i NXC

KUNGLIGA TEKNISKA HÖGSKOLAN. Laboration II1310. Programmera Lego Mindstorm robot i NXC KUNGLIGA TEKNISKA HÖGSKOLAN Laboration II1310 Programmera Lego Mindstorm robot i NXC Johnny Vu 120904 Jvu@kth.se Introduktionskurs i datateknik II1310 Sammanfattning Vi har genomfört en laboration för

Läs mer

SCRUM. Marcus Bendtsen Institutionen för datavetenskap

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

Läs mer

Planeringsspelets mysterier, del 1

Planeringsspelets mysterier, del 1 Peter Lindberg Computer Programmer, Oops AB mailto:peter@oops.se http://oops.se/ 28 februari 2002 Planeringsspelets mysterier, del 1 Om jag ska spela ett sällskapsspel för första gången så vill jag att

Läs mer

Kanban i Extreme Programming

Kanban i Extreme Programming Kanban i Extreme Programming N. Fors och N. Hansson D06, Lunds Tekniska Högskola [niklas.fors niklas.hansson.06]@gmail.com 2mars2010 Abstract Kanban is a scheduling approach from the work philosophy just-intime

Läs mer

SCRUM och agil utveckling

SCRUM och agil utveckling SCRUM och agil utveckling Johan Åberg johan.aberg@liu.se Agile Manifesto We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:

Läs mer

SCRUM och mycket mer

SCRUM och mycket mer Typ av dokument Anvisning Skapad Senaste uppdatering 2008-01-27 2008-11-13 1 (5) Sida 1 Det minsta möjliga? SCRUM och mycket mer Om man nu vill vara agile och inte har allt tid i världen, vad skall man

Läs mer

MINA ARBETSLIVSFÄRDIGHETER

MINA ARBETSLIVSFÄRDIGHETER MINA ARBETSLIVSFÄRDIGHETER Denna uppgift hjälper dig att ta fram dina styrkor. Uppgiften är främst avsedd för dig som redan har arbetslivserfarenhet. Målet är att du ska få hjälp med yrkesmässig planering

Läs mer

LEGO Mindstorm-robot

LEGO Mindstorm-robot KUNGLIGA TEKNISKA HÖGSKOLAN LEGO Mindstorm-robot Programmering av LEGO Mindstorm-robot i språket NXC Kim Hammar 2/6-2013 Kimham@kth.se Introduktionskurs i Datateknik 1311 Sammanfattning En viktig del av

Läs mer

Introduktion till programmering med hjälp av Lego Mindstorm

Introduktion till programmering med hjälp av Lego Mindstorm Kungliga Tekniska Högskolan Introduktion till programmering med hjälp av Lego Mindstorm Laborationsrapport gällande programmering inom NXC Simon Jansson 31 08 2014 simonjan@kth.se Introduktionskurs i datateknik

Läs mer

F9 del B Organisatoriskt. EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson Datavetenskap, LTH

F9 del B Organisatoriskt. EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson Datavetenskap, LTH F9 del B Organisatoriskt EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson Datavetenskap, LTH 1 Projektet - moment Projektstartsmöte 6 Iterationer (en per vecka) - 10-12 team - 12-14 personer

Läs mer

Deluppgift 2 Kravhantering a) (2p) När man diskuterar krav brukar man ange två olika typer av krav. Beskriv dessa och ge exempel.

Deluppgift 2 Kravhantering a) (2p) När man diskuterar krav brukar man ange två olika typer av krav. Beskriv dessa och ge exempel. Page 1 (5) Hemuppgift 1DV404 150115-150118 Deluppgift 1 Processmodeller a) (4p) Alla mjukvaruutvecklare följer någon form av utvecklingsprocess i sitt arbete. Diskutera vad organisationer brukar ange som

Läs mer

Agil projektmetodik Varför och vad är det?

Agil projektmetodik Varför och vad är det? Agil projektmetodik Varför och vad är det? Boris Magnusson Datavetenskap LTH 2016-02-08 Lite större projekt Sträcker sig över tid Involverar många deltagare som behöver arbeta parallellt Planeras - delas

Läs mer

Programmera Lego Mindstormsrobotar

Programmera Lego Mindstormsrobotar KUNGLIGA TEKNISKA HÖGSKOLAN Programmera Lego Mindstormsrobotar En introduktion till programmering Oskar Rosén 28/08-12 oros@kth.se Introduktion i datateknik (II1310) Sammanfattning Denna laboration gav

Läs mer

Projekt Rapport. RaidPlanner. Jeanette Karlsson UD10

Projekt Rapport. RaidPlanner. Jeanette Karlsson UD10 Projekt Rapport RaidPlanner Jeanette Karlsson UD10 Abstrakt: Denna rapport handlar om mitt projekt i kursen Individuellt Mjukvaruutvecklings projekt. Rapporten kommer att ta upp hur jag gått tillväga,

Läs mer

Laboration i datateknik

Laboration i datateknik KUNGLIGA TEKNISKA HÖGSKOLAN Laboration i datateknik Felsökning och programmering av LEGO NXT robot Daniel Willén 2012 09 06 dwill@kth.se Introduktionskurs i datateknik II1310 Sammanfattning Syftet med

Läs mer

Kristoffer Eriksson Christer Oscarsson Andreas Dahlberg Martin Bengtsson

Kristoffer Eriksson Christer Oscarsson Andreas Dahlberg Martin Bengtsson Rapport grupp 4 Software Engineering Kristoffer Eriksson Christer Oscarsson Andreas Dahlberg Martin Bengtsson 2009-10-29 Processer Sprinter Scrum har varit till stor hjälp för oss för att nå våra mål,

Läs mer

[Introduktion till programmering ]

[Introduktion till programmering ] KUNGLIGA TEKNISKA HÖGSKOLAN [Introduktion till programmering ] [Laboration med NXC] Tobias Johansson 05/09/13 tobiaj@kth.se Introduktionskurs i datateknik, II1310 Sammanfattning Vad som gör en ingenjör

Läs mer

KUNGLIGA TEKNISKA HÖGSKOLAN KISTA. Lego Linefollower. Få en robot att följa linjen på golvet!

KUNGLIGA TEKNISKA HÖGSKOLAN KISTA. Lego Linefollower. Få en robot att följa linjen på golvet! KUNGLIGA TEKNISKA HÖGSKOLAN KISTA Lego Linefollower Få en robot att följa linjen på golvet! Felix Ringberg 2012-08-09 felixri@kth.se Introduktionskurs i datateknik II1310 Sammanfattning I den här laborationen

Läs mer

Effekter av införande av agila metoder. Daniel Sundmark Mälardalens högskola

Effekter av införande av agila metoder. Daniel Sundmark Mälardalens högskola Effekter av införande av agila metoder Daniel Sundmark Mälardalens högskola Agila metoder Agila metoder Values T. ex., working software over comprehensive documentation (Agile manifesto) Agila metoder

Läs mer

ÄR DINA MEDARBETARE MOTIVERADE?

ÄR DINA MEDARBETARE MOTIVERADE? Dale Carnegie Trainings ledarskapsguide: ÄR DINA MEDARBETARE MOTIVERADE? Lär dig motivera olika typer av medarbetare och bygg relationer som skapar entusiasm, motivation och engagemang på arbetsplatsen.

Läs mer

Scrums användning i Extreme Programming projekt. Lunds Tekniska Högskola D07 Lars-Olof Rydgren EDA270 2011-03-01

Scrums användning i Extreme Programming projekt. Lunds Tekniska Högskola D07 Lars-Olof Rydgren EDA270 2011-03-01 Scrums användning i Extreme Programming projekt Lunds Tekniska Högskola D07 Lars-Olof Rydgren EDA270 2011-03-01 1 Sammanfattning I denna djupstudie givet av kursen Coaching i Programvaruutveckling på Lunds

Läs mer

Kanban. Marcus Hammarberg. torsdag den 15 september 2011 (v.)

Kanban. Marcus Hammarberg. torsdag den 15 september 2011 (v.) Kanban Marcus Hammarberg Kanban? Vad sjutton är Kanban för något? Jag brukar beställa yakiniku... http://blog.huddle.net/wp-content/uploads/2009/08/team-building-exercises-improving-teamwork.jpg Kanban

Läs mer

Scrum. på fem minuter

Scrum. på fem minuter Scrum på fem minuter Det talas mycket om scrum och lättrörliga metoder just nu A simple method for the management of complex projects... Äldre metoder fokuserar på att hålla tidsplanen, scrum inriktar

Läs mer

Testdriven utveckling. Magnus Jonsson Siemens Medical Solutions

Testdriven utveckling. Magnus Jonsson Siemens Medical Solutions Testdriven utveckling Magnus Jonsson Siemens Medical Solutions 2 Soarian Stort projekt, ca 400 personer i projektet Distribuerad utveckling i USA, Indien och Sverige Web baserat lösning med admin client

Läs mer

BESKRIVNING AV PROCESSMETODEN SCRUM

BESKRIVNING AV PROCESSMETODEN SCRUM NORDSCRUM BESKRIVNING AV PROCESSMETODEN SCRUM NORDSCRUM BESKRIVNING AV PROCESSMETODEN SCRUM INNEHÅLLSFÖRTECKNING inledning... 3 SCRUM... 3 Bakgrund... 3 Faser... 3 Ramverket... 3 Nordscrum... 4 StudentProjekt...

Läs mer

DD2458-224344 - 2014-12-19

DD2458-224344 - 2014-12-19 KTH / KURSWEBB / PROBLEMLÖSNING OCH PROGRAMMERING UNDER PRESS DD2458-224344 - 2014-12-19 Antal respondenter: 26 Antal svar: 18 Svarsfrekvens: 69,23 % RESPONDENTERNAS PROFIL (Jag är: Man) Det var typ en

Läs mer

50IDÉER OCH TIPS OM MEDARBETAR- ENGAGEMANG LEDARGUIDE MEDARBETARENGAGEMANG

50IDÉER OCH TIPS OM MEDARBETAR- ENGAGEMANG LEDARGUIDE MEDARBETARENGAGEMANG 50IDÉER OCH TIPS OM MEDARBETAR- ENGAGEMANG LEDARGUIDE MEDARBETARENGAGEMANG ! 50IDÉER OCH TIPS OM MEDARBETAR- ENGAGEMANG 50 IDÉER OCH TIPS OM MEDARBETARENGAGEMANG 1 2 3 4 5 SKAPA EN GOD RELATION Relationen

Läs mer

SCRUM. på fem minuter

SCRUM. på fem minuter SCRUM på fem minuter DET TALAS MYCKET OM SCRUM OCH LÄTTRÖRLIGA METODER JUST NU A simple framework for managing complex projects Traditionella metoder fokuserar på att hålla planen, Scrum inriktar sig på

Läs mer

Studie av estimeringstekniker för Extreme Programming. F. Stål D08, Lunds Tekniska Högskola

Studie av estimeringstekniker för Extreme Programming. F. Stål D08, Lunds Tekniska Högskola Studie av estimeringstekniker för Extreme Programming F. Stål D08, Lunds Tekniska Högskola dt08fs5@student.lth.se 27 februari 2012 Sammanfattning Den här studien syftar på att analysera ett fåtal estimeringsteknikers

Läs mer

Laborationsrapport av robotprogrammering

Laborationsrapport av robotprogrammering KUNGLIGA TEKNISKA HÖGSKOLAN Laborationsrapport av robotprogrammering Programmering av LEGO MINDSTORMS robot Rikard Bjärlind 2012-09-07 E-post: bjarlind@kth.se Introduktionskurs i datateknik (H12) II1310

Läs mer

Felsökande av en Lego Mindstorm robot

Felsökande av en Lego Mindstorm robot KTH Felsökande av en Lego Mindstorm robot Med hjälp av NXC Hampus Liljedahl 3/9-12 hliljed@kth.se Introduction to Computer Studies II1310 Sammanfattning Jag har gjort en labb där jag felsökte en färdigskriven

Läs mer

Elevernas uppfattningar om alltmer digitaliserad undervisning

Elevernas uppfattningar om alltmer digitaliserad undervisning Resultat Elevernas uppfattningar om alltmer digitaliserad undervisning Fråga 1 Mycket inspirerande (6) till mycket tråkigt (1) att arbeta med etologisidan Uppfattas som mycket inspirerande eller inspirerande

Läs mer

Therese Hansson & Magnus Jonsson. Motivationsfaktorer - Test inom Agila utvecklingsprojekt

Therese Hansson & Magnus Jonsson. Motivationsfaktorer - Test inom Agila utvecklingsprojekt Motivationsfaktorer - Test inom Agila utvecklingsprojekt Magnus Jonsson & Therese Hansson Flerårig erfarenhet från ett globalt utvecklingsprojekt där vi införde Agile & Scrum metodik i hela organisationen

Läs mer

EDA270 Djupstudie Konflikthantering

EDA270 Djupstudie Konflikthantering 8 2009 EDA270 Djupstudie Konflikthantering Abstrakt: Den här djupstudien avser att ge en god grund i konflikthantering där bland annat ABC triangeln och isbergsprincipen behandlas. Vidare redogörs det

Läs mer

Simon Boström Introduktionskurs i Datateknik

Simon Boström Introduktionskurs i Datateknik KTH KISTA Linefollower Med parprogrammering i NXC Simon Boström 2014-09-04 simbos@kth.se Introduktionskurs i Datateknik Sammanfattning Laborationstillfället var till för att man som ny på KTH skulle lära

Läs mer

Scaled Agile Framework

Scaled Agile Framework Scaled Agile Framework Grunder för självorganisation Vad är det och är det bra? @svante_lidman svante.lidman@coreboost.se 1 Vem är Svante? Senaste 6-7 åren Konsultat inom Large-Scale Lean/Agile De +20

Läs mer

Effektiva team med effektiv teori

Effektiva team med effektiv teori Effektiva team med effektiv teori Björn Åkesson D05, Lunds Tekniska Högskola dt05ba2@student.lth.se 24 februari 2009 Abstract Denna rapport undersöker olika teamteorier och projekt och sammanfattar de

Läs mer

Enkätresultat. Kursenkät, Flervariabelanalys. Datum: 2010-03-29 08:47:04. Aktiverade deltagare (MMGF20, V10, Flervariabelanalys) Grupp:

Enkätresultat. Kursenkät, Flervariabelanalys. Datum: 2010-03-29 08:47:04. Aktiverade deltagare (MMGF20, V10, Flervariabelanalys) Grupp: Enkätresultat Enkät: Status: Kursenkät, Flervariabelanalys stängd Datum: 2010-03-29 08:47:04 Grupp: Besvarad av: 13(40) (32%) Aktiverade deltagare (MMGF20, V10, Flervariabelanalys) Helheten Mitt helhetsomdöme

Läs mer

HUR UTVÄRDERAR DU DIN KLUBB? Ett viktigt utvärderingsverktyg för klubbar

HUR UTVÄRDERAR DU DIN KLUBB? Ett viktigt utvärderingsverktyg för klubbar ADMINISTRATIV VÄGLEDNING HUR UTVÄRDERAR DU DIN KLUBB? Ett viktigt utvärderingsverktyg för klubbar HUR UTVÄRDERAR DU DIN KLUBB? Ett viktigt utvärderingsverktyg för klubbar - administrativ vägledning Du

Läs mer

PROGRAMMERING I NXC. Sammanfattning KUNGLIGA TEKNISKA HÖGSKOLAN

PROGRAMMERING I NXC. Sammanfattning KUNGLIGA TEKNISKA HÖGSKOLAN KUNGLIGA TEKNISKA HÖGSKOLAN PROGRAMMERING I NXC Namn: Michel Bitar 2012-08- 25 E- post: mbitar@kth.se Introduktionskurs i datateknik, II1310 Sammanfattning Intressant och lärorik laboration om att programmera

Läs mer

Mitt USA I augusti 2013 flyttade jag till North Carolina, USA. Mitt enda mål var att bli en bättre simmerska, men det jag inte visste då var att mycket mer än min simning skulle utvecklas. Jag är född

Läs mer

Sammanställning av generell kursenkät för V15 Ledarskap för vårdens utveckling Datum: 2015-04-07 Besvarad av: 13(30) (43%)

Sammanställning av generell kursenkät för V15 Ledarskap för vårdens utveckling Datum: 2015-04-07 Besvarad av: 13(30) (43%) Sammanställning av generell kursenkät för V15 Ledarskap för vårdens utveckling Datum: 2015-04-07 Besvarad av: 13(30) (43%) 1. Det var lätt att veta vilken nivå som förväntades på mitt arbete fördelning

Läs mer

Agila metoder och motivation

Agila metoder och motivation Agila metoder och motivation Varför blir man produktiv av att flytta lappar på en whiteboard? Tomas Jansson tomas.jansson@kau.se Agila metoden Scrum Sprint planning Every 24 hours Daily scrum Sprint backlog

Läs mer

FÖRELÄSNING 8 DSV2PVT

FÖRELÄSNING 8 DSV2PVT Föreläsning 8 DSV2:PVT Kvalitet i mjukvara 1 FÖRELÄSNING 8 DSV2PVT Kvalitet i mjukvara, utvecklingsmodeller Beatrice Åkerblom beatrice@dsv.su.se Institutionen för Data- och Systemvetenskap (DSV) IT-Universitetet

Läs mer

Lean programvaruutveckling

Lean programvaruutveckling Lean programvaruutveckling Av Ludvig Hagmar (d01lh@efd.lth.se eller l_hagmar@hotmail.com) Den 12:e Februari 2006 Abstract: Denna djupstudie behandlar den agila metoden Lean software development eller Lean

Läs mer

LEGO NXT Robotprogrammering

LEGO NXT Robotprogrammering KUNGLIGA TEKNISKA HÖGSKOLAN LEGO NXT Robotprogrammering Laboration med parprogrammering Filip Forsby 2012-08-27 forsby@kth.se II1310 Introduktionskurs i datateknik Sammanfattning Denna rapport beskriver

Läs mer

Scrum. på fem minuter

Scrum. på fem minuter Scrum på fem minuter DET TALAS MYCKET OM SCRUM OCH LÄTTRÖRLIGA METODER JUST NU STÄLL DIG FÖLJANDE FRÅGOR A simple method for the management of complex projects... Äldre metoder fokuserar på att hålla planen,

Läs mer

Agile-metoder, XP och ACSD

Agile-metoder, XP och ACSD Användarcentrerad systemdesign. Föreläsning 12 Agile-metoder, XP och ACSD Stefan Blomkvist MDI / IT, stefan.blomkvist@it.uu.se & Profdoc AB www.profdoc.se www.it.uu.se/edu/course /homepage/acsd/s04 XP

Läs mer

Undvika återkoppling. Avsätta för lite tid för våra medarbetare och vårt team

Undvika återkoppling. Avsätta för lite tid för våra medarbetare och vårt team Du har säkert hört talas om att våra misstag är våra bästa läromästare, men handen på hjärtat, vore det inte ganska skönt att slippa några av dem? Nedan har vi samlat ett axplock av de vanligaste misstag

Läs mer

Föreläsningsanteckningar Olof Röhlander 17 mars 2015

Föreläsningsanteckningar Olof Röhlander 17 mars 2015 Föreläsningsanteckningar Olof Röhlander 17 mars 2015 Konsten att ta en chans och få saker att hända! Vad krävs för att vi ska nå våra mål och förverkliga våra drömmar? Hur blir man bra på något? Standardtipset

Läs mer

Kursanalys. Douglas Wikström 15 juni Problemlösning och programmering under press (DD2458) Högskolepoäng (hp): 9 Kursen gavs: Period 1-2, 2008

Kursanalys. Douglas Wikström 15 juni Problemlösning och programmering under press (DD2458) Högskolepoäng (hp): 9 Kursen gavs: Period 1-2, 2008 Kursanalys Douglas Wikström 15 juni 2009 1 Kursdata Beteckning: Problemlösning och programmering under press (DD2458) Högskolepoäng (hp): 9 Kursen gavs: Period 1-2, 2008 Kursledare: Douglas Wikström Kursassistent:

Läs mer

Laboration - Programmering av LEGO Mindstorm robot

Laboration - Programmering av LEGO Mindstorm robot Laboration - Programmering av LEGO Mindstorm robot Ayumi Sjöbergh Miyake 1 september 2012 miyake@kth.se II1310 Introduktionskurs i datateknik 1 Sammanfattning Laborationen gick ut på att hitta och rätta

Läs mer

Laboration i datateknik

Laboration i datateknik KUNGLIGA TEKNISKA HÖGSKOLAN Laboration i datateknik Programmering av LEGO-robot Rickard Eriksson 2012-09-06 rieri@kth.se Introduktionskurs i datateknik II1310 Sammanfattning Denna rapport är till följd

Läs mer

Att införa Extreme Programming genom processförbättring

Att införa Extreme Programming genom processförbättring Att införa Extreme Programming genom processförbättring Johan Thiborg-Ericson Vahagn Baghomian 14-02-28 Sammanfattning Syftet med denna studie är att studera hur agila metoder uppkommer som en naturlig

Läs mer

Återkoppling att få gruppen att arbeta. Ann-Marie Falk Irene Karlsson-Elfgren Örjan Östman

Återkoppling att få gruppen att arbeta. Ann-Marie Falk Irene Karlsson-Elfgren Örjan Östman Återkoppling att få gruppen att arbeta Ann-Marie Falk Irene Karlsson-Elfgren Örjan Östman Grupparbete inom kursen Aktiva studenter i grupparbeten våren 2007 Inledning I denna rapport beskriver vi återkoppling

Läs mer

UNGDOMSENKÄTER. Magelungen Kolloverksamheter BONDEGATAN 35 116 33 STOCKHOLM TELEFON 08-556 93 196 www.magelungen.com info@magelungen.

UNGDOMSENKÄTER. Magelungen Kolloverksamheter BONDEGATAN 35 116 33 STOCKHOLM TELEFON 08-556 93 196 www.magelungen.com info@magelungen. UNGDOMSENKÄTER Sammanställning av utvärderingsenkäter ifyllda av ungdomar som deltagit i någon av Terapikoloniers sommarverksamheter 2013. Enkäter skickas efter avslutad sommarperiod på Terapikolonier

Läs mer

Dagbok Mikael Lyck 810717-0071

Dagbok Mikael Lyck 810717-0071 Dagbok Mikael Lyck 810717-0071 2/6 Slutredovisning, redovisningen gick bra vi hade ju redan byggt ihop spelet så vi var inte särskilt oroliga. Allt som allt är jag väldigt nöjd med slutprodukten. 11/5

Läs mer

BOKSAMMANFATTNING MOTIVATION.SE

BOKSAMMANFATTNING MOTIVATION.SE BOKSAMMANFATTNING MOTIVATION.SE 150 ledningsgrupper senare - vår bild av en dold potential Detaljerade fallstudier av verkliga ledningsgruppssituationer och typiska problem såväl som konkreta tips för

Läs mer

Effektiva team. Arbetsteam som fungerar på högre

Effektiva team. Arbetsteam som fungerar på högre Effektiva team Arbetsteam som fungerar på högre utvecklingsnivåer: Slutför sina projekt snabbare Producerar varor och tjänster med högre kvalitet Genererar större avkastning Högre utvecklingsnivåer?! En

Läs mer

F7 Agila metoder. EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson, Ulf Asklund Datavetenskap, LTH

F7 Agila metoder. EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson, Ulf Asklund Datavetenskap, LTH F7 Agila metoder EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson, Ulf Asklund Datavetenskap, LTH 1 XP - Scrum - Kanban Agila metoder Vad innehåller SCRUM Hur skiljer sig XP och SCRUM KANBAN

Läs mer

Många gånger förväxlar vi gränslöshet med vänlighet och är rädda för att personer som vi gillar inte skulle gilla oss om vi satte gränser.

Många gånger förväxlar vi gränslöshet med vänlighet och är rädda för att personer som vi gillar inte skulle gilla oss om vi satte gränser. Att sätta gränser på arbetet är en bra grund för att skapa en trivsam och effektiv arbetsmiljö. Vi, tillsammans med våra kollegor, har olika värderingar, behov och föreställningar om vad som är rätt. Otydliga

Läs mer

Användarcentrerad systemdesign

Användarcentrerad systemdesign Användarcentrerad systemdesign Föreläsning 11: Agile-processer och ACSD Stefan Blomkvist Avdelningen för MDI/IT, Uppsala Universitet, Stefan.Blomkvist@hci.uu.se www.it.uu.se/edu/course /homepage/acsd/

Läs mer

Introduktion i programmering med språket NXC

Introduktion i programmering med språket NXC KUNGL. TEKNISKA HÖGSKOLAN Introduktion i programmering med språket NXC Oliver Bogren Medlaborant: Gabriel Tigerström 2013-09-06 obogren@kth.se II1310 Introduktionskurs i datateknik Sammanfattning Laborationen

Läs mer

OPQ. Team-egenskaper: Urvalsrapport. Namn Sample Candidate. Datum 31 december 2013. www.ceb.shl.com

OPQ. Team-egenskaper: Urvalsrapport. Namn Sample Candidate. Datum 31 december 2013. www.ceb.shl.com OPQ Team-egenskaper: Urvalsrapport Namn Sample Candidate Datum 31 december 2013 www.ceb.shl.com Inledning Sample Candidate har nyligen besvarat det frågeformulär om yrkespersonlighet som heter OPQ32 (Occupational

Läs mer

Robotprogrammering felsökning & analys.

Robotprogrammering felsökning & analys. KUNGLIGA TEKNISKA HÖGSKOLAN Robotprogrammering felsökning & analys. Användning utav BricX Command Center Haval Amir Rabiee 2013-09-03 E-post havalsr@kth.se Introduktionskurs i datateknik II1310 Sammanfattning

Läs mer

Processimulering --- I teori och i praktik

Processimulering --- I teori och i praktik Processimulering --- I teori och i praktik Bernt Nilsson, LTH 1 Kursen Processimulering Avancerad kurs på 7,5 hp Jan-mars, årskurs 4 En av studenternas sista kurs (innan Xjobb) (15 hp oblig. projektering

Läs mer

Kursöversikt Certifierad Mjukvarutestare

Kursöversikt Certifierad Mjukvarutestare Kursöversikt Certifierad Mjukvarutestare Kurs Poäng (5 yh poäng/vecka) Examensarbete 20 Grunderna inom test 20 Kommunikation i arbetslivet 15 Lärande i arbete 1 60 Lärande i arbete 2 60 Projektarbete 15

Läs mer

Så får du bättre. självkänsla. Experter Frågor och svar Intervjuer Steg för steg-guider Praktiska tips SIDOR

Så får du bättre. självkänsla. Experter Frågor och svar Intervjuer Steg för steg-guider Praktiska tips SIDOR Så får du bättre 1234 självkänsla Experter Frågor och svar Intervjuer Steg för steg-guider Praktiska tips 8 SIDOR Självkänsla Våga ta steget mot ett bättre självförtroende och ett rikare liv! En dålig

Läs mer

Labbrapport - LEGO NXT Robot

Labbrapport - LEGO NXT Robot KUNGLIGA TEKNISKA HÖGSKOLAN Labbrapport - LEGO NXT Robot Programmering och felsökning Stefan Sarkis 2014-09-02 ssarkis@kth.se Introduktionskurs i datateknik (II1310) Sammanfattning Denna rapport handlar

Läs mer

Familj och arbetsliv på 2000-talet - Deskriptiv rapport

Familj och arbetsliv på 2000-talet - Deskriptiv rapport Familj och arbetsliv på 2-talet - Deskriptiv rapport Denna rapport redovisar utvalda resultat från undersökningen Familj och arbetsliv på 2- talet som genomfördes under 29. Undersökningen har tidigare

Läs mer

Föräldrarnas syn på terapikoloniverksamheten 2008

Föräldrarnas syn på terapikoloniverksamheten 2008 Föräldrarnas syn på terapikoloniverksamheten 2008 En utvärdering genomförd under hösten 2008 För Terapikolonier AB Eva Huld Sammanfattning Terapikolonier AB:s verksamhet utvärderas kontinuerligt. Som en

Läs mer

Fem steg för bästa utvecklingssamtalet

Fem steg för bästa utvecklingssamtalet Fem steg för bästa utvecklingssamtalet Hitta drivkraften, styrkan och nå målet! Gita Bolt 2013 Copyright: airyox AB Mångfaldigande av denna skrift, helt eller delvis, är enligt lagen om upphovsrättsskydd

Läs mer

PROJEKTLEDNING inom produktutveckling. Individuell inlämningsuppgift KPP039 Produktutvekling 3 Boris Mrden 2010-01-10

PROJEKTLEDNING inom produktutveckling. Individuell inlämningsuppgift KPP039 Produktutvekling 3 Boris Mrden 2010-01-10 PROJEKTLEDNING inom produktutveckling Individuell inlämningsuppgift KPP039 Produktutvekling 3 Boris Mrden 2010-01-10 Innehållsförteckning Inledning... 3 Projektarbete... 4 Projektledning & Ledarskap...

Läs mer

2010-12-27 SCRUM. Vattenfallsmodellen. Analys. Design. Kod. Test. Rational Unified Process Agile. Kallas också linjär sekventiell modell.

2010-12-27 SCRUM. Vattenfallsmodellen. Analys. Design. Kod. Test. Rational Unified Process Agile. Kallas också linjär sekventiell modell. Vattenfallsmodellen SCRUM Analys Kallas också linjär sekventiell modell Introduktion Design Kod Test Rational Unified Process Agile DSDM Adaptive Software Development Crystal Feature-Driven Development

Läs mer

Varför ska man använda ett CMS? Vilka är fördelarna och är det alltid bra? Kattis Lodén 2010-03-18

Varför ska man använda ett CMS? Vilka är fördelarna och är det alltid bra? Kattis Lodén 2010-03-18 Varför ska man använda ett CMS? Vilka är fördelarna och är det alltid bra? Kattis Lodén 2010-03-18 Innehåll Inledning... 3 Fakta... 4 Innehåll... 4 Texthantering... 4 Granskning och versionshantering...

Läs mer

Aktivitet ett: Kommunicera! Aktiviteter i praktiken. Parprogrammering. Aktiviteter. Parprogrammeringens sju myter. Parprogrammeringens sju myter

Aktivitet ett: Kommunicera! Aktiviteter i praktiken. Parprogrammering. Aktiviteter. Parprogrammeringens sju myter. Parprogrammeringens sju myter Aktiviteter i praktiken Extreme Programming Aktivitet ett: Kommunicera! Sven and Olle are two farmers way up in the northernmost part of Scandinavia, where people are few and far between and words are

Läs mer

Är gränsen nådd? En temperaturmätning av tjänstemännens gränslösa arbetssituation.

Är gränsen nådd? En temperaturmätning av tjänstemännens gränslösa arbetssituation. Är gränsen nådd? En temperaturmätning av tjänstemännens gränslösa arbetssituation. 1 Inledning Unionen har i tidigare studier sett att arbetslivet har förändrats för tjänstemännen. Tjänstemannaarbetet

Läs mer

Programmering av en Lego robot

Programmering av en Lego robot KUNGLIGA TEKNISKA HÖSKOLAN Programmering av en Lego robot - En laboration i kodning i språket NXC Felix Thim 2012-09-06 fthim@kth.se Introduktionskurs i datateknik II1310 Sammanfattning Denna rapport handlar

Läs mer

TATA65-Diskret matematik

TATA65-Diskret matematik 1 (6) TATA65-Diskret matematik Sändlista Inger Erlander Klein Tea Nygren Siv Söderlund Fredrik Wiklund Carl Johan Casselgren Göran Forsling Kurskod TATA65 Examinator Carl Johan Casselgren Kursen gavs Årskurs

Läs mer

INTERAKTIVA WORKSHOPÖVNINGAR

INTERAKTIVA WORKSHOPÖVNINGAR INTERAKTIVA WORKSHOPÖVNINGAR INLEDNING INTERAKTION: SAMVERKAN, SAMSPEL ELLER ÖMSESIDIG PÅVERKAN? Vad betyder det att något är interaktivt? Det är lite av ett modeord och många vill använda det. Många gånger

Läs mer

Kursmål. Kursens delar. Obligatorisk närvaro

Kursmål. Kursens delar. Obligatorisk närvaro EDA270: Coaching av programvaruteam S1: Kursintroduktion, Agila metoder! Görel Hedin, Lars Bendix Datavetenskap LTH Kursmål Projektledning/Coaching Hur team fungerar Hur man leder/coachar team Hur man

Läs mer

Objektorienterad programmering och Java

Objektorienterad programmering och Java Objektorienterad programmering och Java Sändlista Inger Klein Jonas Detterfelt Siv Söderlund Johan Högdahl Jonas Kvarnström Peter Dalenius Kurskod Examinator TDDC69 Jonas Kvarnström Kursen gavs Årskurs

Läs mer