Agile, People, Project Management, Software Development

#Agile Pattern Management

I thing I have noticed with individuals that I believe are great team members is that they manage or lead based on sets of data and not just points of information. It has been noted that humans are exceptional in pattern recognition and spatial analysis of those patterns. One news item that got me re-considering this train of thought was the news item where gamers had helped to quickly solve a Protein folding problem with the HIV virus.

In thinking about how humans can recognize and manage by patterns, I think that Agile uses this pattern recognition strength to help ensure that agile projects can be successful. How does Agile do this? I believe there are three ways:

  1. Agile helps to create patterns for review
  2. Agile formalizes the review of these patterns
  3. Agile minimizes the use of non-pattern deliverables

1. Agile helps to create patterns for review

One thing that is implicit in the Agile processes but is not talked about overtly is that all of the Agile processes help to create patterns. Delivering in iterations, User Story Mapping, Kan Ban Boards, Story Slicing, and other practices all create visual patterns that people can review and consume easily. Many of these processes feed into the principles of Visual Project Management with Burn-Up and Burn-Down charts to help communicate project status easily with client Stake Holders. Almost all non-construction tasks on Agile projects result in the creation of Visual patterns that can be used for management and decision-making.

2. Agile formalizes the creation and review of these patterns

Agile also understands that the creation of these patterns needs to be done repetitively and according to a schedule. Like any good experiment, statistics need to be gathered in a structured way so that the numbers of factors changing at one time is minimized. Also understood is that significance of an aberration in a pattern is not after one point but after a succession of points in a larger series of data. To do this we must have multiple iterations of the same size to ensure that comparisons can be made between iterations.

Agile also understands that the creation of these patterns is just one half of the work. By scheduling retrospectives and planning meetings at consistently recurring times for every iteration, Agile ensures that the patterns will be reviewed and actions will be recommended and undertaken if required.

Agile minimizes the use of non-pattern deliverables

Just as important as the creation of these patterns are the minimization of non-pattern deliverables. Agile understands that these deliverables provide inefficient communication of information and their use should be minimized. Any large written document without patterns should be minimized and attempted to be translated into a pattern. These documents are typically the large up-front documents that defined requirements or architecture previously.

Typically you will find that any documentation that can generated patterns are encouraged in Agile. (Such as User Stories and Automated Test Cases)

What is a pattern?

To me a pattern follows these two simple rules:

  1. It can be displayed at a reasonable and readable size on an A3 sheet of paper or on a wall where all the stickies can be easily read and seen within an individual’s  field of vision
  2. It is either a table, graph, diagram, collection of stickies, or a picture

The Agile Pattern Mind set

The last piece of the puzzle is the Agile Pattern Mind set that is required to use these patterns that are created. As mentioned earlier, the great team members on the Agile projects know that some actuals to estimates will be higher and some lower. The experienced team members know when something is not just a data point, but when it is a trend and an issue and requires some action to be undertaken. These team members also know that you can’t over-react on every individual issue and overage or else you will drive your team crazy.

I believe this skill of managing by trends in Project Managers applies equally to both Traditional and Agile Project Managers. The Agile methodology just has a process that creates the patterns that perhaps allows these decisions to be made easier and at the correct time.

Re-posted from http://bornagainagilist.wordpress.com

About Terry Bunio

Terry Bunio has worked for Protegra for 14+ years because of the professionalism, people, and culture. Terry started as a software developer and found his technical calling in Data Architecture. Terry has helped to create Enterprise Operational Data Stores and Data Warehouses for the Financial and Insurance industries. Along the way Terry discovered that he enjoys helping to build teams, grow client trust and encourage individual career growth, completing project deliverables, and helping to guide solutions. It seems that some people like to call that Project Management. As a practical Data Modeller and Project Manager, Terry is known to challenge assumptions and strive to strike the balance between the theoretical and real world approaches for both Data Modelling and Agile. Terry considers himself a born again agilist as Agile implemented according to the Lean Principles has made him once again enjoy Software Development and believe in what can be accomplished. Terry is a fan of Agile implemented according to the Lean Principles, the Green Bay Packers, Winnipeg Jets, Operational Data Stores, 4th Normal Form, and asking why

Discussion

No comments yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: