Is it SAFe? Or is it Scrum?
What's SAFe? Are you doing Scrum? This might sound like dialogue outtakes from an old movie. But it is actually about alternative approaches to application development.
Scrum is sometimes shown in all caps as SCRUM but it is not an acronym. SAFe on the other hand stands for Scaled Agile Framework. Both have official websites: https://www.scrum.org/ and https://www.scaledagileframework.com/.
Both are approaches to Agile development. In the case of SAFe, Agile is its middle name. This whole thing started earlier in the decade when a group of developers published The Manifesto for Agile Software Development. The idea was to get away from older and cumbersome coding practices, which despite everybody's best intentions for detailed planning often started with little more than a manager saying: "I need you guys to write a program that [fill in the blank].
Because of heroic efforts by developers, that method usually worked, otherwise we would have had no applications to run since the personal computer revolution. And there was the Waterfall Method that organized development into steps starting with writing requirements (what a concept!) for the planned application. Then it went to phases of design, coding, QA, production and maintenance. Often those phases were handled by different teams with limited interaction or feedback. It worked more or less like an automobile assembly line. But it was rarely a collaborative process.
Agile is a collaborative process starting with a new emphasis on:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
There are 12 guiding principles to Agile that you can read about here. This is great but it's what MBA types call high level. You can see the whole battlefield from 10,000 feet. But what's going on in the trenches? On a day-to-day basis when you are trying to produce an app, what is everybody supposed to be doing? That's where SAFe and Scrum comes into play. They are essentially ways to actually do Agile development. They take different approaches, so you might ask: "What's the difference between SAFe and Scrum?"
Krishna Ramalingam gives basic answers to that question in a seven-minute YouTube video:
"Bottom line both are offshoots of Agile principles," he tells his audience. "Both talk about releasing in short iterations. The fundamental difference with SAFe is Scaled Agile Framework. Scrum focused on a smaller project unit and provides the framework on how this has to be handled."
With Scrum a team is working in iterations called sprints, Ramalingam explains. He uses the example of 10 teams working on 10 projects that will eventually come together as one product.
"All the 10 projects start and stop the sprint at the same time," he explains. "This way planning dependencies become easier and it also gives a view of what each of the teams can implement so as to deliver a bigger meaningful feature for the product level. So you align all the teams and you start sprinting."
A sprint might be three weeks and after that there would be a one week "hardening sprint" where the teams address issues that come up in the review. The advantage of this approach is that all the team members have an idea of what is going on with the other projects. It helps avoid that dreadful question: "Why did you do that?" With this kind of coordinated effort, ideally the 10 projects come together in one app.
"At the end of this you do a complete product level demo and promote the code to the production server and make a formal product release," Ramalingam explains.
But Scrum leaves some of the nitty gritty parts of the project up to the team members to figure out on their own, he adds. This is where SAFe offers more guidance. It covers things like "how budgeting should be done, the strategy and the governance under which the agile release trains are executed," he says. It offers more guidance on how 10 projects and be coordinated so they become one final application. Ramalingam sees this as something best suited for larger organizations.
"Should you follow Scrum or SAFe in your organization?" he asks at the conclusion of his video. "If you're starting out new in a small way or have independent small projects it would be best to implement Scrum. As your organization matures, you may eventually evolve practices that are similar to SAFe. If you have a large organization and want to go all out in your strategic planning down to the bottom level engineer, you may be better off starting with SAFe. There is no right or wrong answer. Understand the benefits and pitfalls of both the frameworks and choose wisely."
To achieve that level of understanding and make informed choices, you need an in-depth look at these frameworks. You can find out much more about both SAFe and Scrum at VS Live in Las Vegas, a six-day event running March 1 – 6. Learn about all the Code Trip here.
Posted by Richard Seeley on 12/12/2019