Tuesday, 9 November 2010

TO-LO-PO-SO-GO

Jeremy Worrell, managing consultant at Fujitsu Services, has developed a set of MyCreativity rules for use with Southbeach Modeller. They help with the structured exploration of problems and opportunities according to Edward de Bono's TOLOPOSOGO stages. Jeremy has kindly agreed to share them with the community. Feedback is welcome to the address given below.

// Jeremy Worrell's Creativity at Work MyCreativity Library

#JeremyWorrell.Create.1TO
focus "Might the real focus be broader or narrower than [this]?"
focus "What is it about [this] which really demands some new thinking?"
focus "Would strong thinkers consider [this] is the best focus?"

goal "Might the real focus be broader or narrower than [this]?"
goal "What is it about [this] which really demands some new thinking?"
goal "Would strong thinkers consider [this] is the best goal?"
goal "Could we be more ambitious than [this]?"


#JeremyWorrell.Create.2LO
agent "What else do we know about [this]?"
agent "Does [this] have any unique features?"
potential+useful "How can we get more of [this]?"
potential+useful "What else is needed to produce [this]?"
potential+harmful "What can counteract [this] so we don't get as much?"
*(, harmful) "What intermediaries lie between [from] and [to]?"
* "Who else knows about {this}? What light can they shed?"
* "Where is {this} used? What does that tell us?"
* "What is the life-cycle of {this}? What did it come from? What does it turn into?"
questionable(,) "How can we verify {this}?"
* "How can we quantify what we know about {this}?"
questionable(,) "What disagreement is there about {this}? How can we be more objective?"


#JeremyWorrell.Create.3PO
agent "How could we re-state [this]?"
agent "What synonyms are there for [this]?"
harmful "What's the very worst form [this] could take?"
useful "What would be a perfect extreme of [this]?"
agent "What analogies are there to [this] in related worlds?"
agent "What are the fixed features of [this]?"
harmful "Who might think [this] is actually beneficial?"
produces(&a=agent, useful) "What other benefits could [&a] bring?"
agent "How would my thnking heros handle [this]?"
harmful "Counteract [this] with a magic agent?"
useful "Create or boost [this] with a magic agent?"


#JeremyWorrell.Create.4SO
produces(, harmful) "What could change about [from] to reduce [to]?"
produces+insufficient(, useful+goal) "Could we add more [from], or a different sort of [from]?"
produces(&a=*, &b=useful) produces(&a, &c=harmful) "Could we change [&a] to get [&b] without [&c]?"
action "What else might happen if we [this]?"
useful "Who might seek to oppose [this], and why?"
goal "Will [this] meet legal and compliance constraints? If not, how could we adapt it?"

Monday, 8 November 2010

Questions for thinking about simple contradictions

Simple contradictions arise in many models, many times over. A simple contradiction is when something produces something useful, but also something harmful. Everything has pros and cons, so contradictions are everywhere in the world and in your models. If your models don't contain contradictions, you are not thinking hard enough. Extracting contradictions from a model, and thinking through all the possible ways to improve the system is hard work. By adding rules that recognize contradictions anywhere where they appear in a model, and linking these to creative suggestions, can help you to work rigorously and quickly through options for improving any situation.

Here is a set of rules you can use. They are not the only rules possible, but they have been found to be useful. Before are two screen shots, showing the rules working in practice in Southbeach Modeller.

//A useful set of questions to ask about any contradictory situation, for example, A produces useful B but A also produces harmful C
#contradictions.brainstorming

//introduction
produces(&a=*, &b=useful) produces (&a, &c=harmful) "What solutions come to mind if we ask: How can we have the benefits of {&b} without {&c}?"

//right problem?
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Does {&a} really produce {&c}? Are we looking at the right problem? Is {&c} produced by something else?"

// incremental
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Is there a way to intervene and limit the ability of {&a} to produce {&c}?"
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Is there a way to completely prevent {&a} from producing {&c}?"
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Find a way to remove {&c} while it is being produced by {&a}."

//coping
produces(&a=*, &b=useful) produces (&a, &c=harmful) "How much of a problem is {&c}? Can we find a way to cope with {&c}?"
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Can we put off the harmful effects of {&c} for the time being? How will we cope with {&c} in the future?"
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Could {&c} be converted into something less harmful?"
produces(&a=*, &b=useful) produces (&a, &c=harmful) "What can we introduce to counteract the harmful effects of {&c} produced by {&a}?"
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Assuming we cannot remove {&c} or its effects, can we find a positive use for {&c}?"

// re-design
produces(&a=*, &b=useful) produces (&a, &c=harmful) "What does the next generation of {&a} look like?"
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Can {&a} be modified so that as to produce less {&c}."
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Find the part of {&a} that produces {&c} and remove that part without impacting the ability of {&a} to provide {&b}."
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Combine {&a} with something else so that the {&c} is no longer a problem."
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Combine {&b} with something else so that the {&c} is no longer a problem."
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Change the design of {&a} so that it produces no {&c} at all."
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Find an alternative to {&a} that does not produce {&c} yet still produces {&b}."

// the system
produces(&a=*, &b=useful) produces (&a, &c=harmful) "In what way could the system be changed so that the production of {&c} by {&a} is insufficient to have harmful effects?"
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Is {&c} a problem for {&b}. Can we separate {&a} or {&b} from {&c} into different systems?"
produces(&a=*, &b=useful) produces (&a, &c=harmful) "If the production of {&c} is unavoidable can we find a way to isolate the {&c} so that it cannot harm the system?"
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Can we add something to the system that reduces or eliminates {&c}?"
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Can we add something to the system that makes {&b} more useful so that {&c} is peceived as less of a problem"
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Add something to the system that mininises the need for {&b} so that less {&a} is needed so that less {&c} is produced."
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Do we need {&a} for reasons other than {&b}? If not we can remove {&a} and avoid {&c}."

// next generation of b
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Think about the future. Will we be obtaining {&b} in another way? Will {&a} therefore be less relevant, solving the problem of {&c}?"
produces(&a=*, &b=useful) produces (&a, &c=harmful) "How will the demand for {&b} change in the future? Will it still be obtained from {&a} and will {&c} therefore still be a problem?"
produces(&a=*, &b=useful) produces (&a, &c=harmful) "What does the next generation of {&b} look like?"
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Can we reduce the need for {&b}? If so we can reduce use of {&a} and therefore produce less {&c}."
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Find an alternative to {&b} that has the benefits of {&b} but is not dependent on {&a}."
produces(&a=*, &b=useful) produces (&a, &c=harmful) "What does the next generation of a system that contains {&b} look like?"
produces(&a=*, &b=useful) produces (&a, &c=harmful) "Do we need {&b}? If not we can remove {&a} and avoid {&c}."

In the screen shot below (Example 1) showing a simple model to illustrate the principle, the user has clicked on the block labelled 'car' and the Modeller has found the contradiction and generated the suggestion list.

In the second screen shot (Example 2) the user has clicked on the block labelled 'economic growth and the tool has found two contradictions and generated the questions for them using the MyCreativity rules above. In each case, the user has set scope 'laser'. If the scope had been widened, clicking in one place on the diagram would have applied the rules recursively across the diagram. Using rules like this, it is easy to find all contradictions in any model. The simplest rule to find all contradictions in a model is:

produces(&a=*, &b=useful) produces (&a, &c=harmful) "{&a} produces useful {&b} and also produces harmful {&c}"

For the model below, it would produce:

1.   [economic growth] produces useful [quality of life] and also produces harmful [pollution]
2.   [economic growth] produces useful [quality of life] and also produces harmful [resource degradation]
3.   [cars] produces useful [travel] and also produces harmful [pollution]



Example 1






















Example 2