Loading...

Course Description

This course introduces students to Agile Software Development principles and processes with an emphasis on Scrum.


Course Details

This course is intended for students who are new to Agile methodology as well as those who wish to gain a more thorough understanding of the Agile Software Development principles and processes. After a brief overview of traditional approaches to managing software development projects, students explore Agile Software Development principles and processes. The main emphasis is on the Scrum framework: students gain understanding of the core concepts like Scrum roles, events and artifacts, as well as planning and execution of sprints.

Through role playing and class discussions, students explore the characteristics and skills of an effective Scrum Master, Product Owner and Development Team.

While emphasis is on Scrum, the most popular Agile framework currently in use, students additionally learn about several other Agile methodologies and frameworks.

Students are also introduced to a large variety of concepts, ideas and the mindset supporting Agility. Students learn about requirements analysis, modelling and project management in an Agile environment, quality assurance, engineering practices such as continuous integration, servant leadership and management approaches, how to build effective teams and increase performance and Agile culture and common tools.


Course Level Learning Outcomes

By completion of this course, successful students will be able to:

  • Understand the Agile Software Development values and principles, concepts, practices and frameworks. 
  • Understand the Scrum framework, its applicability to software development projects, main roles, events, artifacts and concepts
  • Participate in an Agile Software Development team’s planning and execution processes in a variety of roles

Topics of Instruction

  • Traditional approaches to software development
  • Introduction to Agile concept, values, principles
  • Introduction to iterative and incremental development
  • Focus on Scrum: theory, values, Scrum Team, roles and responsibilities, events, sprint, artifacts
  • Requirements analysis and modelling in an Agile environments
  • User stories
  • Project management in an Agile environment including gauging progress, realignment, controlling the project, reporting
  • Common tools/concepts: Sprint board, burn down/up charts, velocity
  • Role of Project Manager on Scrum Team
  • Introduction to other Agile/iterative methodologies including Extreme Programming, Kanban/Scrumban, RUP, SAFe, Nexus
  • Quality assurance: importance, responsibilities, practices
  • Test Driven Development
  • Concept and engineering practices: Technical Debt, Continuous Integration, Unit and integration testing
  • Leadership and building effective teams, traditional management approaches
  • Servant leadership: concepts, practices, criticisms
  • Common tools and methods
  • Planning and estimation including planning poker
  • Moving towards Agility in your organization: impediments, techniques, practices

Prerequisites

OR

  • A minimum of 6 months experience working in software development with any programming language
  • Familiarity with software development methodologies and testing

Applies Towards the Following Program(s)

Loading...

Thank you for your interest...

Unfortunately, this course is not currently open for enrolment.

If you have a Professional and Continuing Education account, take note of the course number and submit a course inquiry to be notified if new sections become available.

Questions?

Required fields are indicated by .