Software Engineering, Project Management, and Effectiveness
As a program manager, it’s tough to shape a process with the team, if the team can’t “see” it. When you have a mental model you can share with the team, things move a lot faster. The problem with life cycles and end-to-end processes, is that people don’t usually know what the end-to-end actually looks like. When you can show people the end-to-end life cycle on a whiteboard, and you can show how the different activities fit together, the light-bulbs go off, and people get down to business. It empowers them.
One of the most important mental models I developed was a visual frame for Agile development. For lack of a better name, I’ll just call it the Agile Life-Cycle Frame. While it looks simple, that’s its power. I was able to use the same frame to illustrate how to bake in security, performance, and customer-focused activities, into Agile development using the same frame over and over again.
Agile Life-Cycle Frame The power of the Agile Life-Cycle Frame is that it helps people that don’t know Agile, very quickly follow the intent. The frame also helps bridge the gap between the project cycle and the product cycle. Here is what the Agile Life-Cycle Frame looks like:
What makes this frame useful and simple to use is the backbone of it: Exploration, Iteration 0, Iteration N, Release Preparation, and Release. Those phases are easy to identify with, and then it’s easy to plug-and-play different activities within each phase, as appropriate.
Agile Security Engineering With the Agile Life Cycle Frame, we can simply “overlay” key security activities to bake security into Agile development. Sometimes I call this the “Security Engineering Overlay.” Here is what Agile Security Engineering looks like:
Agile Performance Engineering With the Agile Life-Cycle Frame, we can also “overlay” key performance activities to bake performance into Agile development. Sometimes I call this the “Performance Engineering Overlay.” Here is what Agile Performance Engineering looks like:
Customer-Connected Engineering With the Agile Life-Cycle Frame, we can also overlay specific customer-focused activities, that bring Customer-Connected Engineering to life. Here is what Customer-Connected Engineering looks like:
How To Use the Agile Life-Cycle Frame You can use the Agile Life-Cycle Frame to show, share, and shape your current Agile development processes. Your frame might vary. The first step is to put your process down on paper. Keep things flexible, but at the same time, keep in mind what should be durable. If you can’t articulate your process with any sort of repeatability, it’s tough to get folks on board, or to change things in any meaningful way.
I kept these frames simple on purpose to help illustrate the power of having a model. But, the model is only useful if the model is simpler than what it is actually modeling. I did use a more complete set of activities in the Customer-Connected Engineering Frame so that you can see an alternative example, that might help prompt ideas for your own Agile Life-Cycle model.
You Might Also Like