Agile isn’t Transformative, it’s Doctrine
Agile isn’t a transformative change that is going to catapult the Marine Corps into technological relevance, it’s what Marine leadership doctrine says we’re supposed to do. After 13 years of active duty, I did a 1-year fellowship with the private sector, changed my Military Occupational Specialty, and then went to a higher level of Command than I have ever served in. It has been a pretty amazing ride, and while I was exposed to so many new and interesting experiences including several Agile implementations, the new experiences also felt surprisingly familiar.
What is old becomes new
After completing my fellowship, which included a successful implementation of Agile, I got the bug and I went all in. Read a bunch of Agile books. Took the classes. Implemented several different versions of Agile processes. ALL. OF. THE. JIRA. I’m far from an expert, but this was not a purely academic exercise for me. With the help of some excellent mentors and alongside some enthusiastic Marines, we implemented Agile in the Marine Corps in both large and small implementations. (Quick clarification: I am not claiming any credit for implementation or even the idea to get started, simply stating I was meaningfully involved in the process, not simply an interested observer). I was honored to have the Jedi Master (Gene Kim) come on my podcast and talk about it.
After all of this, and taking some time to really process the experience, this is all about stuff we have been taught our entire time in the Marine Corps: Empowerment. Decentralized execution. Mission type orders. Commander’s intent.
To illustrate my point, let’s compare the 12 principles pulled from Agile Manifesto (published in 2001) with a couple of Marine Corps Doctrinal Publications (MCDPs, MCDP1 published 1989 and MCDP 6 published 1996):
- Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.
- (heavily inferred) … main effort becomes a harmonizing force for subordinate initiative. Faced with a decision, we ask ourselves: How can I best support the main effort? -MCDP1
- Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.
- The plan is nothing, planning is everything. The enemy gets a vote. Everyone has a plan until they get punched in the face. Need I continue?
- We must prepare to adapt to changing circumstances and exploit opportunities as they arise, rather than adhering insistently to predetermined plans that have outlived their usefulness. -MCDP1
- Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
- A good plan, violently executed now is better than a perfect plan executed next week.
- Business people and developers must work together daily throughout the project.
- __insert staff section here__ drives operations.
- We accomplish combined arms through the tactics and techniques we use at the lower levels and through task organization at the higher levels. In so doing, we take advantage of the complementary characteristics of different types of units … we use each arm for missions that no arm can perform as well” -MCDP1
- Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
- We should recognize that Marines of a given grade and occupational specialty are not interchangeable and should assign people to billets based on specific ability or temperament -MCDP1
- Subordinates are guided not by detailed instructions and control measures, but by their knowledge of the requirements and the overall mission -MCDP6
- The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
- There is no alternative to looking into a subordinate’s eyes, listening to his tone of voice -MCDP6
- We should communicate in person when possible because we communicate through our gestures and bearing -MCDP1
- Working software is the primary measure of progress.
- To devote means to unnecessary efforts or excessive means to necessary secondary efforts violates the principle of focus and is counterproductive to the true objective. -MCDP1
- The primary goal of Marine Corps leadership is mission accomplishment. All other objectives are subordinate to that. -MCTP 6-10B
- Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
- Since it is relative speed that matters, it follows that we should take all measures to improve our own speed, while degrading our enemy’s. However, experience shows we cannot sustain a high rate of speed indefinitely. -MCDP1
- Continuous attention to technical excellence and good design enhances agility.
- Self-directed study in the art and science of war is at least equal in importance to maintaining physical condition and should receive at least equal time. This is particularly true among officers; after all, the mind is an officer’s principal weapon. -MCDP1
- Simplicity–the art of maximizing the amount of work not done–is essential.
- We struggle MIGHTILY with this one
- Our command and control procedures should be designed for simplicity and speed. They should be designed for simplicity so that we can master them easily and perform them quickly and smoothly under conditions of extreme stress. -MCDP 6
- Elaborateness and detail are not generally measures of effective plans. Instead, directives should convey the minimum amount of instruction necessary for execution. Directives should be as clear, simple, and concise as each situation permits. -MCDP6
- The best architectures, requirements, and designs emerge from self-organizing teams.
- How we organize can complicate or simplify the problems of execution. By task-organizing our force into capable subordinate elements and assigning each its own task, we organize the overall mission into manageable parts. -MCDP6
- At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
- An effective command and control system provides the means to adapt to changing conditions -MCDP6
This post is not a complete and unequivocal alignment between doctrine and Agile, but they are clearly aligned to the same type of leadership. Agile is simply a translation of many validated doctrinal tactical processes that were amazingly well refined in the civilian sector. They were extremely successful and packaged exceptionally well. Now, Military personnel seem intimidated by a system that THEY invented, that is already battle-tested, and literally already a part of our institutional doctrine. We shouldn’t be intimidated, we should be going, “I know, we’ve been doing this since WWII”