Agile Methodology

https://www.versionone.com/wp-content/uploads/2015/06/agile101-software-dev-300x200.gif
Original at: https://www.versionone.com/wp-content/uploads/2015/06/agile101-software-dev-300×200.gif

Agile Scrum Methodology

Scrum is a management and control process that cuts through complexity to focus on building software that meets business needs. With Scrum methodology, the “Product Owner” works closely with the team to identify and prioritize system functionality in form of a “Product Backlog”. The Product Backlog consists of features, bug fixes, non-functional requirements, etc. – whatever needs to be done in order to successfully deliver a working software system.

  • A “process framework” is a particular set of practices that must be followed in order for a process to be consistent with the framework. (For example, the Scrum process framework requires the use of development cycles called Sprints, the XP framework requires pair programming, and so forth.)
  • “Lightweight” means that the overhead of the process is kept as small as possible, to maximize the amount of productive time available for getting useful work done.

Lean and Kanban Software Development

Lean Software Development focuses the team on delivering Value to the customer, and on the efficiency of the “Value Stream,” the mechanisms that deliver that Value. The main principles of Lean methodology include:

  • Eliminating Waste
  • Amplifying Learning
  • Deciding as Late as Possible
  • Delivering as Fast as Possible
  • Empowering the Team
  • Building Integrity In
  • Seeing the Whole
image1
Original at: https://www.infoq.com/articles/hiranabe-lean-agile-kanban

Lean also concentrates on the efficiency of the use of team resources, trying to ensure that everyone is productive as much of the time as possible.

Kanban is based on 3 basic principles:

  • Visualize what you do today (workflow): seeing all the items in context of each other can be very informative
  • Limit the amount of work in progress (WIP): this helps balance the flow-based approach so teams don ‘t start and commit to too much work at once
  • Enhance flow:
    http://dsdmofagilemethodology.wdfiles.com/local--files/start/ass11.PNG
    http://agilemodeling.com/images/lifecycleFDD.gif
    Continue reading "Agile Methodology"