January 02, 2013

Scrum Framework and Flow

It's a simple way to teach how Scrum works  (through its framework and flow).   l Hope it will be useful for Coaches, Mentors and Scrum Specialists. (To enlarge click on the picture).

Scrum beyond the enemy lines

Historical perspective

In recent years, the Agile paradigm is increasingly being adopted by large corporations across the globe. Whatever the reasons for bringing these companies to use Agile, in general it is possible to venture the inference that the vast majority of these companies are seeking some gain in process efficiency, so that in the end, some tangible result will be possible in the financial sphere.
Rightly or wrongly, this amplification of the Agile experience, has been greatly facilitated by Scrum. And since Scrum, somehow, seems to be palatable to executives and managers, we can say that it is a great initial catalyst for the Agile philosophy in the corporate context.

Corporate challenges

The corporate world is often harsh (and even cruel), which makes the process of systemic adoption of Scrum (of Agile in general) extremely difficult and in most cases, very long.
The difficulties encountered in organizationally complex environments are varied, but usually it is possible to identify some key features:
  • The need for aligning Scrum with aspects of corporate governance in IT (SOX, ITIL, COBIT, regulatory bodies).
  • The lack of a shared clearness on the reason (pain or pleasure) for adopting Scrum (or the Agile philosophy in general).
  • The lack of clearness about this cause results in a diverging sense of urgency between the areas involved in a Scrum project.
  • And finally, political games are played within companies, with little regard for who or what gets hurt. Often a Scrum project may suffer boycotts simply because of a struggle for power, visibility or the company's financial budget.

Systemic Thinking

Unfortunately there is no magic bullet for resolving these questions. However, if it were possible to sum up in one idea the primary lesson in this environment, it would be: Develop your ability to systemically understand an organization.

Because of this we need a broad understanding of some characteristics related to systems:
  • Systems possess a complexity of details - This means that a system can be composed of several and different parts.
  • Every system is dynamically complex - This means that the system can acquire emergent properties according to the movement of the parts.
  • In general, systems seek equilibrium – For this reason a system will resists change as a way of ensuring its own survival.
  • And the best way to change a system is to understand the relation of cause and effect between its parts.

These little lessons mentioned above, heavily impact the political and technical issues relating to the adoption of Scrum. Remember that Scrum is a framework, a fact that makes it incomplete by nature. And since Scrum is incomplete, a systemic understanding about the organization is a vital approach for building the necessary expansion of the framework.
An example of this is understanding how Scrum can evolve its artifacts, rules, roles and ceremonies, to integrate with other company processes, such as: Change Management, Demand Management, Audit, etc..

In practice, Scrum can directly or indirectly influence of be influenced by these processes. So once again, the systemic understanding will prove crucial for creating a relation of equilibrium between these parts.

A quick tip to generate this relation of equilibrium is to communicate with other areas of the company about the following dimensions of integration with Scrum:
  • Who will perform the integration?
  • What is the impact of integration, for Agility within Scrum?
  • What is the impact of the Agile way on these integrations?
  • At what stage of the Scrum cycle will these integrations will be performed?


It is worth highlighting the politics surrounding the adoption of Scrum, because this systemic view also helps understanding the interrelationships of cause and effect involving the "political games" of the company. Most times, this political aspect will turn out to be the most important factor to either facilitate or prevent the adoption of Scrum.
Often we brush away the subject, and attribute the problems to cultural issues of the company. What is culture, however, if not a system of values, beliefs and behaviors? For this reason, once again it becomes important to understand the organization systemically, so that we can effect a cultural change in the company. For in reality you do not change an entire system, without first going through its parts. Thus, the ability to understand an organization systemically is the best way to find out which parts, if treated first, will have the greatest chance of causing a more effective change throughout the system.

About the author:

Manoel Pimentel Medeiros - Coach with 18 years experience in IT, where he worked with Coaching and Training for executives and teams in Consultancy, Banking and Telecom environments.He is managing editor of the magazine Visão Agiland has written about Agile and coaching for portals and magazines in Brazil and abroad. He has alsolectured at national and international events on agility. Hwas a pioneer in the use and disclosure of agile methods in Brazil.

December 30, 2012

The Cynefin Framework - Explained by Dave Snowden

Coaching for Metaprovement

Are you good at math? If so, please help me executethis calculation: 1 +2 +1 +3 +1 +2 =? Got it? If yes, congratulations! Your logical thinking is good since you are making good use of the cognitive process.But is the cognitive process really the only way toresolve this question?

In a nutshell, cognition is the mental process of "connection" between the neurons and it is through this mechanism that thought emerges. There is an interesting aspect about this cognitive process: sincethe brain gets used to follow the same structure of interconnected neurons, over time it excels in executing the path that has already been established by the interconnected neurons.

Human beings behave the way they think, that is, behavior is generated by thought. This is a true wonder of the human mind, because this ability to create habits of implementation out of structures of interconnected neurons is what allows/encourages a person to be proficient in specific behaviors.

However, besides advantages, this feature also carries a burden for people's lives. This burden rests on the idea that the more an individual repeats certain, unhealthy behaviorthe more your brain will also become a true expert in performing that behavior. The same reasoning applies to feelings, since every feeling is also generated by a thought. This way, based on continuous repetition, the brainbecomes an expert in cultivating certain feelings. Sothe most effective way to change a behavior orfeeling is precisely to change the thought underlying it.

In practice such a change of thinking is not something that is easy to achieve. To demonstrate one possible way of meeting this challenge, however, we must return to the calculation presented in the opening paragraph of this text. Now, instead of following the almost instinctive thought of calculating the sentence, it is possible to ask questions like:What do these figures mean? Why these numbers? Why this type of calculation? Arethere other ways to achieve the same result?What will be done with the result of this calculation? Etc.

When we approach the problem this way, we are applying a process called metacognition, or rather ameta-thought, which can also be explained cleareras "thinking about thinking." To enable this metacognition, we can adopt a meta position, or in other words, a position outside the box. This way anindividual can see with more clarity how a thought is structured, and hence question the criteria used to construct that thought.

One could argue that this natural ability of metacognition is the basis for continuous improvement of human behavior. Its practice is, therefore, extremely healthy for the personal and professional success of an individual and, consequently, of an organization.

Yet many people neglect this natural ability of metacognition and because of this must go through a very painful experience generated by a certainthought before they allow themselves to make a new mental strategy (metacognition) regarding this thought.

I used a play on words to call this processmetaprovement, i.e. meta improvement, which briefly means using metacognition to improve thegoal oriented improvement. Helping the individual in this metaprovement process is one of the primary goals of coaching. This includes providing thenecessary inputs for the individual to take different perspectives in order to broaden their perception of their behavior and especially the impact generated by it. Once this perception has been broadened, the individual can take responsibility for an inspection and adaptation process, starting with themetacognition of his own thoughts and, consequently, of this own behavior.

As can be seen, exercising metaprovement is a good solution to puncture thoughts that are unfavorable forhealthier and better, goal oriented performance. We should also note that "even if one has walked a lot, it is always possible to switch to a better path." That is, even if you excel in certain behavior, you can always apply metaprovement to construct even better behavior. This is the basis of mankind’s real progress.

More information
Introductory article on Metacognition:

Definition of 
metaposition (PLN):


A special thanks to my friend Serge Rehem for the inspiration of playing word games.

About the author:

Manoel Pimentel Medeiros - Coach with 18 years experience in IT, where he worked with Coaching and Training for executives and teams in Consultancy, Banking and Telecom environments.He is managing editor of the magazine Visão Agiland has written about Agile and coaching for portals and magazines in Brazil and abroad. He has alsolectured at national and international events on agility. Hwas a pioneer in the use and disclosure of agile methods in Brazil.

December 29, 2012

Pinky and The Brain - A tale of the difficult art of simplicity in the design of software

Original article published in ScrumAlliance.

Pinky and The Brain is a cartoon about two mice (Pinky and The Brain) who are opposites in nearly every way. The interesting thing about this cartoon, and why it’s relevant to software development, is the struggle between the key characters. I will use them to illustrate the ideal of balance between technology solutions and simplicity.

First, let’s learn a bit about the characters. For those of you unfamiliar with Pinky and The Brain, The Brain (the short mouse with the big head) is the thinker. Pinky, the taller mouse with the big smile, is a goofy jokester. The Brain has a high IQ that he uses to plan and create highly complex solutions to simple problems, often much more complex solutions than are needed. For example, when asked to invent a device for drinking lemonade, The Brain’s solution would likely be a super engine with hydraulically driven pressure tubes, initiated by a solar energy collector and stored in a thermo-nuclear device. Brilliant, but perhaps a bit too involved. A simple glass might do just as well.

The Brain makes some of the same mistakes we make in software development. How often has an analyst or software architect established a super-sized project, using various combinations of technologies and techniques, just to create a simple screen to access a database? It’s not that his solution is wrong; it’s just too complex and risky for the problem at hand. I am not speaking only of the complexity inherent in combining technologies and techniques; I am also speaking of the complexity in fully understanding how the technologies work together, which can kill the productivity of the project.
Then there is Pinky, who believes in everything that The Brain says. Unlike The Brain, Pinky’s tendency is to simplify things. By using his intuition and doing the easiest possible thing, he inevitably achieves more effective results, with less effort, than The Brain. Pinky represents those who prefer simple and easy solutions to software problems. The flip side, though, is that these same individuals might lack the vision necessary to solve problems that require a more complex or scalable solution.
Neither Pinky, with his overly simplistic view, nor The Brain, with his exaggerated complexity, is a model to follow in our approach to software development. Instead, it is important to note that the characters perform optimally when in partnership, balancing an intelligent solution with a simple approach. Too often, we design a spacecraft when we really only need a simple car. At the same time, if we limit the design of the car too much (not giving it a large enough engine, perhaps), we run the risk of over-simplifying the problem. Solutions that lack vision can be just as detrimental to the success of a project as solutions that are overly complex.
Remember, too, that in software, our solution must be aligned with business rules in terms of the scope of the application, and that any solution should enable the implementation of changes or updates that will allow us to adapt to the progressive needs of the customer.
Know the technologies, seek knowledge, and explore possibilities, but always remember that a project is an investment and that all parties want to have good results. Whenever possible, make simple solutions the priority. By doing so, you reduce the complexity and the risk of failure. Striving for a balance between complexity and simplicity will maximize your level of productivity. Use technology as it was intended: to help and not harm you. Think about it!