12th Session: Agile Software development

Software development and System Architecture Bootcamp

What is Agile

  • Agile is a methodolody that emphasises

    • Collaboration between the development team and business stakeholders
    • Frequent delivery of business value
    • Small, self-organizing teams
    • Innovative ways to create, test and deploy code

      Agile software development refers to a group of software development methodologies based on iterative development, where requirements and solutions evolve through collaboration between self-organizing cross-functional teams.

Untitled


image.png


Key Agile Concept: Kanban

  • Kanban is Japanese for “visual signal” or “card.” Kanban helps you harness the power of visual information by using sticky notes on a whiteboard to create a “picture” of your work.
  • eg Trello is a web-based Kanban project management application. It enables easy, real-time collaboration between team members and even multiple teams and projects.
  • Seeing how your work flows within your team’s process lets you not only communicate status but also give and receive context for the work.

image.png


Key Agile Concept: Scrum

  • Scrum is a simple framework for effective team collaboration on complex software projects.
  • Subset of the agile approach that focuses on adaptation, inspection transparency
  • Uses incremenetal and iterative practices during the development process
  • The Framework is based off The Scrum Guide which Scrum co-creators Ken Schwaber and Jeff Sutherland have written to explain Scrum clearly and succinctly
  • Scrum roles include the
    • Scrum master - responsible for making sure the team uses scrum tools and practices, and keeps the project moving forward.
    • Product owner - acts as a middle person between the customers and the development team - responsible for ensuring all expectations for the final output have been clearly communicated and agreed on by stakeholders
    • Development team - work to create and test the final product’s incremental releases.

image.png


Key Agile Concept: Sprint

  • A sprint, also known as an iteration, is a short (ideally two to four week) period in which the development team implements and delivers a “done” product increment.
  • A new Sprint starts immediately after the conclusion of the previous Sprint.
  • Agile workflows are usually done in 2 week sprints.

image.png


Key Agile Concept: Backlog

  • A backlog is a list of features or technical tasks which the team maintains. The backlog is the primary point of entry for knowledge about requirements, and the single authoritative source defining the work to be done. The backlog is expected to change throughout the project’s duration as the team gains knowledge.

image.png

Did you find this article valuable?

Support Blessing Aliu by becoming a sponsor. Any amount is appreciated!