Agile Software Development
Offered By: ETH Zurich via edX
Course Description
Overview
Agile methodology has taken the software development industry by storm. Everyone wants to be agile, but what does it really mean and how do you achieve agile development?
This computer science course cuts beyond the agile methodology hype and teaches you the fundamental agile concepts that span a wide range of methodologies. It analyzes the key agile ideas, their benefits, their limitations, and how best to take advantage of them to enhance your software skills and show employers that you have mastered an essential component of today's IT industry.
The course is divided into six parts:
- The Agile manifesto and the context of agile methods
- Agile principles: what key methodological ideas underlie the agile movement?
- Agile roles: how does agile redefine traditional software jobs and tasks, in particular the manager's role?
- Agile practices: what are the concrete techniques that agile teams use to apply these methods?
- Agile artifacts: what practical tools are essential to the work of agile developers?
- Agile assessment: among agile ideas, which ones are essentially hyped and useless, which ones are actually harmful, and which ones will truly help you effectively produce high-quality software?
Unlike many presentations of agile methods, this course takes a strictly objective view of agile methods, enabling you to retain the best agile principles and practices.
For the second runof the course we have revised the learning material and created a new final exam.
Syllabus
- Context, the Agile Manifesto, Agile Methods, Official Agile Principles, Agile Values
- Principles, the enemy: Big Upfront Anything, organizational principles, technical principles, a few method-specific principles
- Roles, traditional manager roles, the three Scrum roles, other Agile roles
- Practices, meetings, development, release, testing, management
- Artifacts, from user stories to burndown charts, assessment on Agile methods
Taught by
Bertrand Meyer
Tags
Related Courses
Software as a ServiceUniversity of California, Berkeley via Coursera Software Testing
University of Utah via Udacity The Hardware/Software Interface
University of Washington via Coursera Software Debugging
Saarland University via Udacity Introduction to Systematic Program Design - Part 1
The University of British Columbia via Coursera