Coder Social home page Coder Social logo

eda397's Introduction

Agile Development Processes - lp4, vt2017

  • Thank you for a wonderful course in Spring 2017!
  • We are currently marking exam and project reports
  • Exam reviews will be after summer break on Aug-18, 13:00 - 15:00, Room J218
  • Do not forget to participate in the course evaluation!

Last update: 2017-05-23

Course Description

Agile software development aims at setting up an environment to develop software based on the following principles from the agile manifesto:

  • Individuals and interactions is valued more than processes and tools
  • Working software is valued more than comprehensive documentation
  • Customer collaboration is valued more than contract negotiation
  • Responding to change is valued more than following a plan

At the core of these principles it the realization that changes are inevitable and the conclusion that change management needs to be integrated into the development process. Agile approaches promotes iterative and incremental development by using a very tight design-code-test cycle.

In this interactive course we will explore together how to apply these agile principles to develop software and manage projects.

After passing the course, you will be able to lead agile projects, use test driven development, refactor programs, be part of a programming pair, and much more.

Teachers

Student representatives

We will select student representatives when the course starts. Please consider volunteering. We will share information about student representatives and our meetings on the following wiki page: https://github.com/oerich/EDA397/wiki/course-representatives

Course Literature

Attention: Course literature changed.

See wiki for reading instructions.

Lectures and Workshops (In progress…)

This lecture is organized in three sprints.

  • Sprint 1 (focus on getting started): We will focus on getting you started and discuss agile principles and actionable practices. Also, we will set up the project work.
  • Sprint 2 (focus on getting work done): We will focus on working in teams, applying agile practices, and collecting experience.
  • Sprint 3 (focus on theory and advanced concepts): Based on your experience in project work, we will explore more theoretical and advanced topics of agile software development.

Below you can see the date, time, room and themes for the lectures and workshops. There is also a detailed schedule in TimeEdit.

NOTE! We have booked extra time in the project rooms where you should work on the project but when there will not always be assistants on site for support.

Acceptance tests will generally be on Thursdays, 13:00-17:00. We aim for two week sprints and will share a schedule, once project groups are established.

NOTE! We plan one sprint ahead in detail and will add information as we go. The reason is that some of the planning depends on availability of (industry) guest speakers, and their lectures are to be confirmed.

Sprint 1: Focus on getting started

Date & Time Room(s)   Theme Who Slides Readings
Mar-21 15:15-17:00 Alfa Course Introduction, overview of Agile, course Q&A, assigning groups EK L1 [Mey2014, Ch. 1, 4], Cohen04
Mar-23 13:15-14:00 Alfa Project Introduction, group assignment TB, MA L2 Getting started
Mar-23 14:15-17:00 J317, J321, J322 Get started with groups, incl. 1st product owner meeting TB, MA Project teams
Mar-27 23:55 Deadline Project proposal submission
Mar-28 13:15-15:00 Styrbord (near Äran) Miniature on Agile Software Development Principles EK L3 [Mey2014, Chapter 2, 6]
Mar-28 15:15-17:00 J317, J322 Tech. support session, check off of project proposal MA
Mar-30 13:15-17:00 J317, J321, J322 Backlog planning, set commitment for 1st acceptance test TB, MA
Mar-31 13:15-15:00 Alfa Agile Software Development: Principles and Practices EK L4 [Mey2014, Ch. 8, 9], Schwaber95, Scrum guide
Apr-4 13:15-15:00 Babord Test-driven Development EK L5 [NBB2014]
Apr-4 15:15-17:00 J317, J321, J322 Open Q/A and Coaching TB, MA
Apr-5 23:55 Deadline Sprint report one Report template
Apr-6 13:15 - 15:00 J317, J322 Groups 1-5: Acceptance test, Sprint retrospective, Sprint planning TB, MA Agenda and schedule
Apr-7 13:15 - 15:00 Alfa Groups 6-10: Acceptance test, Sprint retrospective, Sprint planning TB, MA Agenda and schedule

Sprint 2: Focus on getting work done

Date & Time Room(s)   Theme Who Slides Readings
Easter Break
Apr-20 13:15 - 17:00 J321, J317, J322 Open Q/A and Coaching TB, MA
Apr-21 13:15 - 15:00 Alfa Lean Software Development EK L6 [Mey2014, Ch. 9]
Apr-25 13:15 - 17:00 J321, J317, J322 Open Q/A and Coaching TB, MA, EK
Apr-26 23:55 Deadline Sprint report two
Apr-27 13:15 - 17:00 J321, J317, J322 Groups 1-10: Acceptance test, Sprint retrospective, Sprint planning TB, MA Agenda and schedule

Sprint 3: Focus on theory and advanced concepts of agile

Current state of planning, changes might happen.

Date & Time Room(s)   Theme Who Slides Readings
May-2 13:15 - 15:00 Styrbord Agile vs. Plan-driven EK L7 [Mey2014, Ch. 2, 3, 11]]
May-2 15:15 - 17:00 J321, J317, J322 Open Q/A and Coaching TB, MA
May-4 13:15 - 17:00 J321, J317, J322 Open Q/A and Coaching
Both Terese and Magnus are sick, but available for questions via mail.
TB, MA
May-5 13:15 - 15:00 Alfa Information Flow in Agile Development EK L8 [Mey2014, Ch. ]
May-9 13:15 - 15:00 Gamma Continuous Integration and Deployment EK L9 [Mey2014, Ch. 7], [SB2017], [KPH2016], [RHW+2015], [NBB2014]
May-9 15:15 - 17:00 J321, J317, J322 Open Q/A and Coaching TB, MA
May-10 23:55 Deadline Sprint report three
May-11 13:15 - 17:00 J321, J317, J322 Groups 1-10: Acceptance test, Sprint retrospective TB, MA Agenda and schedule
May-16 13:15 - 15:00 Delta Discussion of exam Canceled because of illness. The available examples show the type of questions you can expect, but please keep in mind that the course content has changed. EK exam-examples
May-17 23:55 Deadline Postmortem report
May-18 13:15 - 15:00 Delta Daniel Borgentun (Guest Lecture) Scaling up Agile (Practical Implications and examples from The Scaled Agile Framework (SAFe)) EK L10
May-18 15:15 - 17:00 Delta Presentation of Results Project teams
May-19 13:15 - 15:00 Alfa Patrizio Pelliccione (Guest Lecture) Architecture and Agility for complex systems EK L11
May-19 15:15 - 16:00 Alfa Discussion of exam EK exam-example2

Note that JXXX refers to Jupiter XXX

Additional Resources

  • Kanban (video)
  • Pair programming (video)
  • Why is it difficult to implement Scrum? (video)
  • Product Owners in a nutshell (video)
  • Unit testing (Part 1, Part 2)
  • Automated acceptance testing (video)

Examination

The examination consists of three parts:

  1. A Software Development project where you work in groups to develop an Android or iOS app using agile practices.

  2. A Post-mortem Report that outlines your group's experience with agile practices during the software development project.

  3. A Written exam based on the main course book, the papers listed in the table above and the material presented in lectures as well as on your project.

To pass the course it is extremely important that you read all the course material, participate in lectures and are active in and finish your project. If you do not, you will fail! Remember that this is a master level course and requires considerably more than most bachelor level courses.

Your final grade will be set according to the Grading Policy

eda397's People

Contributors

data-track-reviewer avatar morganericsson avatar magagr avatar teresebesker avatar oerich avatar gdetrez avatar epaphos avatar

Stargazers

 avatar Jonathan Granström avatar Henrik Björk avatar  avatar Miglavs avatar Moses Msafiri avatar Pedram avatar  avatar  avatar Carsten Griesheimer avatar Johannes Sjoberg avatar Davíð Arnarsson avatar haozhenxiao avatar Marcello Steiner avatar

Watchers

Davíð Arnarsson avatar James Cloos avatar  avatar Berto Gomez avatar  avatar  avatar haozhenxiao avatar Pedram avatar Marianne Törnqvist avatar mukama_2 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.