https://mitsloan.mit.edu/ideas-made-to-matter/10-agile-ideas-worth-sharing

agile.png

Nearly 20 years into the agile revolution, it’s a given that software development has been inextricably altered by the avid embrace of agile practices. Are large-scale systems engineering initiatives next?

professor of management science at MIT Sloan, recently laid out a case for applying agile to development realms outside of software. “Every company is trying to be more agile — it’s become part of the regular engineering management lexicon,” he said. “It's shocking how quickly it’s being adopted.”

Agile replaces the traditional, linear “waterfall” development model, in which projects are preplanned and fully built out before they are tested, with an iterative process where small parts of projects are being built and tested simultaneously.Companies have embraced agile for a variety of reasons — to boost product innovation, more quickly meet customer demands, accelerate delivery cycles, reduce risk, and improve productivity.

But while agile has a proven track record in software development, it hasn’t been put to the test or used extensively in other types of development, such as manufacturing or engineering, said Eppinger, faculty co-director of the MIT System Design and Management program.

In a recent webinar, Eppinger outlined agile practices that, with some minor adjustments, can deliver benefits to other engineering practices and industries. A major telecommunications company, for example, used agile to facilitate the design of hardware and cloud-based connected services.

According to Eppinger, these 10 tenets of agile software development can be adapted for other types of complex engineering systems:

1. Spiral development cycles

In the traditional waterfall methodology, tasks and deliverables are broken up into staged gates of highly specific processes. Once each phase is complete, the output is reviewed; if something isn’t right, work continues on that phase until the output meets all the specified requirements, and only then does development move on.

By comparison, a spiral model is more fluid and iterative, addressing a problem through multiple passes, and cycling through the various stages of design until issues are resolved in small increments.

2. Time-boxed sprints

This practice splits development tasks into a series of iterations that must be accomplished within a specific time period — two weeks is a common benchmark, for example. Time boxing helps demonstrate progress and keeps everyone working within the same fixed parameters. It’s a concept that can easily be applied to non-software development projects to keep everyone working toward the same set of goals, Eppinger said.

3. Scrum teams

These are groups of individuals charged with working on a set of tasks to meet agreed-upon product requirements by following a common set of goals.

Key to the scrum lineup are the product owner, who is in charge of requirements and prioritizing tasks that must happen within the sprint cycle, and the scrum master, whose job it is to enlist new resources when necessary and resolve problems.

While these positions may not exist formally in most teams outside of software development, Eppinger said there are ways to source the roles using existing talent. For example, a standard product manager role could be modified to serve as a product owner, while someone versed in both leadership and project management could be trained to serve as a scrum master.

4. Daily meetings

A key tool in the sprint, daily meetings set the context for the coming day’s work, facilitate coordination, and serve as a forum to address any lingering concerns or problems. Eppinger said there’s no reason why agile’s hallmark daily meetings can’t be leveraged to keep other kinds of product and service development projects on track.