-
Notifications
You must be signed in to change notification settings - Fork 54
Home
Scrum, Waterfall, Lean, Prince2: what do they all have in common?
One perspective is that they are individual software methodologies, offering different approaches on how to build software.
However, here, we are going to consider a second perspective: that building software is all about managing risk, and that these methodologies are acknowledgements of this fact, and they differ because they have different ideas about which are the most important risks to manage.
Hopefully, after reading through some of the articles here, you'll come away with:
- An appreciation of how risk underpins everything we do as developers, whether we want it to or not.
- A framework for evaluating software methodologies and choosing the right one for the task-at-hand.
- A new way to look at the software development process: it's an exercise in managing different kinds of risk.
- The tools to help you decide when a methodology is letting you down, and the vocabulary to argue for when it's a good idea to deviate from it.
- Risk-First is a Pattern Language (think Design Patterns, or TVTropes)
- "Software Development Is All About Risk" - Kent Beck
- Who Is This For?
- Quick, High-Level Summary
If you feel something important is missing, or you spot a mistake, we need help.
Although this is a Wiki, it's not meant to be an open-ended discussion of software techniques like Ward's Wiki. In order to be concise and useful, discussions need to be carried out by either:
- Opening an Issue.
- "Star"ing the project: this will cause you to be invited to join the Risk-First organisation
Some easy-to-digest ideas that will set the scene for examining the practices later.
- A Simple Scenario
- Development Process
- Meeting Reality
- It's Just Risk
- Evaluating Risk
- Cadence
- De-Risking
- A Conversation
- One Size Fits No One
Part 2: The Risk Landscape
Risks are often very similar across different software projects. And, if you know about them, you can look for them. This section attempts to break them down for you:
- The Risk Landscape
- Feature Risk
- Communication Risk
- Complexity Risk
- Dependency Risk
- Scarcity Risk
- Deadline Risk
- Software Dependency Risk
- Process Risk
- Boundary Risk
- Agency Risk
- Coordination Risk
- Map And Territory Risk
- Operational Risk
- Staging And Classifying
Part 3: Practices
This part is a discussion of the different practices within Software Development, and how they mitigate and accentuate the different risks.
- Analysis
- Coding
- Contract
- Delivery
- Design
- Documentation
- Estimation
- On-Site-Customer
- Prioritisation
- Requirements Capture
- Real Options
- Research Spike
- Review
- Standards
- Support
- Terms-Of-Reference
- Testing
- Training
Part 4: Methodologies
A more in-depth look at software methodologies and how their chosen practices reflect their position on what the most critical risks are.
- Introduction
- Waterfall
- Extreme Programming
- Scrum
- Lean
- PMBoK and Prince2
- Programming, Motherf
- DevOps
- 12 Factor
A more light-hearted collection of blog posts related to the software development process, aiming to use what we've learnt in real-life contexts.
- Case Study
- Regression Testing
- Minimizing The Downside
- Issue Tracking
- Surfacing Risks
- Silver Bullets
- Stories Of Failure
- Discuss here.
- Watch/Star this project to be invited to join the Risk-First team.