Development methodologies

Collecting terms software engineers use everyday, but often with different meanings.

Agile, scrum, extreme programming

Agile is an iterative way of managing projects based on a set of principles.

Iteration is the repetition of a process in order to generate a sequence of outcomes. Each repetition of the process is a single iteration, and the outcome of each iteration is then the starting point of the next iteration. - Wikipedia

We can repeat the same process in every iteration:

Or alternate between different processes:

Agile is a set of principles, scrum is a framework.

What are these principles? - See Agile manifesto

What is this framework about?

Scrum criticism: very well defined (opposing the principle of interactions over tools)

Extreme programming is another framework?

take best practices to an extreme level.

Theme, epic, story, task

We organise work items into groups and hierarchies. But what is the baseline in this structure?

User story

Epic

Milestone?

Boards

We can use boards to visualize work and limit items. The end goal is to see who works on what.

Kanban

Scrum

Sources

Ways of Working

#sw #teamwork