Posts Tagged ‘systems-thinking’

Cap the conference :)

Friday, May 9th, 2008

Marc Evers and I were a bit buzzed… We hoped, this year, to start announcing agile open earlier (and, unlike last year, not keep repeating ‘we should get started’). Well, unlike last year, we didn’t keep repeating it. We just didn’t get round tuit…

So last week, we finally got together around a whiteboard, decided that we did want to hold it in June (like last year, and as we planned), but we didn’t have a location etc. and didn’t want to spend as much time as last year in sending out invoices, dealing with exceptions etc.

So, we decided to go with an affordable conference location and leave things like hotel, dinner out of the basic package. That means we can send out just one type of invoice - you come two days, or you don’t, and  beside diet preferences there are no options. Well, you can of course volunteer (we got spontaneous offers for that. ) or sponsor.  We also decided to cap the conference at just thirty participants, so we could go with the venue. One of the reasons being, we thought we can’t get that many participants in a month anyway… Surprise, surprise, sending out the invite to a couple of mailinglists, and we’ve already passed the twenty participants mark. And we have some sponsors as well (we didn’t expect many in this timeframe, so we’re pleasantly surprised. Now we have to make sponsor packages :) and facilitate the other volunteers so we can self-organize )

So, without much further ado, I’m proud to announce the next

Agile Open Europe 2008

will take place in Utrecht, NL on June 5th and 6th. A vibrant place to push the envelope and do business together. And yes, we will find Belgian Beer - one participant listed that as a dietary requirement ;)  Looks like its’ going to be good fun again. See you there!

And if you ’still’ haven’t registered - there’s a handful of places left…

Beyond Agile?

Friday, March 14th, 2008

Have you been involved in an ‘agile transition’ (or some other form of process improvement)?
Have your co-workers complained there was not enough process?
Have your co-workers complained there was too much process?
(more…)

Promise is Debt paper translated to english

Wednesday, February 6th, 2008

Marc and I finished translating Belofte maakt schuld to English, we proudly present: Promise is Debt.  In this case study, based on our own stories, we apply systems thinking to a common destructive behaviour pattern in IT organisations: overpromise when you underdeliver, and then overpromise some more…

So far we had a good response on  Belofte maakt schuld, overpromising and underdelivering seems to be even more common than we thought.

Writing papers in two languages is an experiment for me, usually I write in English, and I used to write in Dutch when I was writing articles for Dutch IT magazines. Writing and editing a translation gives me a fresh perspective on the text, and in the meantime I’ve had some more discussions on the topic. In the end, I came to the conclusion that if you really want accurate estimates, and stop overpromising, you have to foster a culture where saying no is ok.

One highly ineffective habit of software development teams

Thursday, January 17th, 2008

And that habit is: ‘overpromise and underdeliver’ Marc Evers and I just pubished a new article on this topic in Dutch, Belofte maakt schuld (’promise is debt’). It is a case study, in which we apply systems thinking to this highly destructive habit. We plan to make an english translation available later on.

As an aside, I’m inspired to use the word habit today, after stumbling across this interview with Ivar Jacobson in our local industry magazine Bits & Chips (in Dutch), in which he explains to use ‘habits’ over ‘process’, because process has become such a loaded term.

This was registering with me, because Marc mentioned a couple of days ago, that he was looking for an alternative to the word process. After some mulling about, we came up with this:

A process is what happens (as the total of actions by the people), a habit is what people do normally. You want people to change their habits, if you want a more effective process…

A popular way of doing that is by ‘installing new procedures’. Procedure is an even more loaded or dreaded word, that means a process in the narrow sense, what people are expected to do. But basically, if you follow a methodology by the book, that is what you are doing: following, or trying to follow new procedures.

But, old habits die hard. Belofte maakt schuld (’Promise is debt’) is yet another example of how to let people fall back: ignore the reasons for an initial success, and let the team fall back on its’ old habits by increasing the pressure to deliver… “I already promised this to the customer, you could produce as much earlier (under the false promise of time to make up for any corners cut during a crunch), so stop whining, stop testing, stop pairing, just deliver…”.

And then when the teams’ velocity drops even more, promise even more to the customer. ‘Just’ rely on the teams aim to please…

Congruent?

Thursday, November 1st, 2007

Yesterday saw the trial run of People vs Process: Cultural Patterns of Software Organisations. We had a lively session with eleven active and critical (in a good sense) participants. We got useful feedback for the next rounds, and a solution for a puzzle we couldn’t solve before: an example organization with a congruent culture.

congruent? by daden

congruent? by Alexander Aden

As Nynke Fokma puts it:

“Congruent culture: starship enterprise -> when going somewhere, we can go where no one has gone before, we can carry anything and we can beam ourselves anywhere, but this is all science fiction, or is it”

As Jerry Weinberg describes it:

“Everyone is involved in improving everything all the time.”

So far we had come up with Toyota as a possibility. However, I’m a bit wary of using Toyota as an example - the risk of a Toyota cargo cult in IT is slightly too big to use it all the time. Searching around, you can find gems like Two Faced Toyota :

“Meanwhile, Toyota’s playing footsie with federal regulations. Their Texas-built pickup hits dealer showrooms in February– at the same time other manufacturers are beginning to introduce some of their 2008 models. But Toyota is adamant the new Tundra is an ’07. That’s because the U.S. government is changing the way they calculate the fuel mileage ratings for ‘08 model year pickups. [..]

As you can imagine, Toyota’s heavy emphasis on their new gas-guzzling leviathan hasn’t gone unnoticed by auto-oriented environmentalists. In fact, environmental groups are finally facing reality: their automotive eco-darling is (gasp!) nothing more than a business. A business that conforms to all CAFE regulations, of course, but will do whatever it takes to make a profit. “

Porsche came up as a possible alternative, now the most profitable car maker. I read about it in the financial times, and should have kept a clipping. They say so themselves in the Porsche Principle, and this:

“On the labour market, because to secure our long-term success we don’t eliminate jobs, we secure and create them. On the business base issue, because we are committed to Germany and are a constant reminder to others that one can succeed here too. “

Sounds good, but whenever I see one of their gaz-guzzling high speed SUV’s pass by, I don’t know. Not bad for a car maker, and very effective and efficient. But still a car maker.

A participant suggested Semco. Marc and I went… Duh! We knew about that one, but somehow it didn’t come up during the preparation. Semco is a federated business, operating out of Brasil. It’s ceo Ricardo Semler wrote about it in the Seven Day Weekend :

“At the risk of offering a description, Semco is a federation of businesses with a minimum common denominator. What I mean is we are not monolithic, yet there are common themes and threads uniting us. All our business units are highly engineered, premium providers and market leaders in their niches. We haven’t ventured into any of them by chance.”

From their values page:

10 – Have the humility to recognize our errors and understanding that we can always improve.

Sounds close enough.

So, now we’re still looking for examples of a congruent culture example in IT or electronics. Or something to dispell our happy feeling about Semco. Anyone?

Stability is boring… - spiral upwards instead!

Tuesday, October 30th, 2007

Preparations for the trial run of People vs Process: Cultural Patterns of Software Organisations this Wednesday are starting to wind down. The presentation, exercises and stories we want to do are virtually done. Marc uses cultural patterns to describe some common failure modes when starting with an agile way of working : Agile choreographies in the culture space:

Most of the time, transitioning to an agile approach means going from a Variable or Routine culture to a Steering culture.

Practices like daily stand-up meetings, short iterations, frequent releases, iteration retrospectives, test driven development, continuous integration, big visible charts, stop the production line mentality all help improve the visibility and stability of the software development system.

These are all indicators for a steering culture.

smoking, nose picking and driving by mike klineThe transitioning process itself often escapes the attention of the unwary. That can result in an oblivious or variable transformation process, which in turn can result in one of the failure modes Marc mentions. A heroic (variable) or unconscious transformation can result in reduced performance, that you often won’t be able to notice… Or you’ll get lots of ‘resistance’ and think ‘how did that happen?’

The process of transformation itself can be done in a steering way, for instance by using a change backlog. It helps if one knows, for instance by experience, where to look. Because we don’t have a stable process yet, we have to rely on observation. To know what to observe, we can rely on experience. Either our own, as we go along, or re-using past experiences, e.g. from an experienced mentor/coach who knows where to look.

Using past experiences in various contexts to choose practices that apply in a new context, and doing risk analysis combined with scenario planning (elaborate, or back-of-the-envelope, depending on the complexity of the environment) already gives the change effort itself some characteristics of an anticipating culture.

Pink Swirl, by tanakawhoFor risk analysis, some of the failure modes Marc mentions are valuable input. Up-front identification and analysis of risks, their likelihood and mitigation strategies can be done in a simple ‘agile’ fashion as well - get the people involved in a room around a flip chart and brainstorm away for an hour or so. Then keep the flip chart on the wall, and re-visit it every iteration or two. As in all things ‘agile’ we do an ongoing assessment - of risks materializing, as well as potential new risks…

Otherwise, the result of an oblivious or variable transformation process might be, ‘that agile method does not work, let’s try to surf to the next wave…’

Photo Credits:

  1. Smoking, Picking Nose and Driving by Mike “Dakinewavamon” Kline
  2. Pink Swirl by tanakawho

Systemsthinking for every day use - a tale of web site traffic

Monday, October 29th, 2007

I read in several places that systems thinkers tend to keep their work to themselves, and that stories work best to get more people to do it.

So, here is a story with a diagram of effects - want more traffic? .

Context: Last week, Marc Evers and I were working on a quote for a community website, based on a request for proposal we got. We made the diagram to clarify our interpretations about the clients ‘business’ - a not for profit foundation supporting a community of practice.

I’m involved in a number of websites, e.g. to support my business, conferences and as of recently wyrd web - a budding company to support more of that. The diagram helped me understand this client, and some of my other contexts involving a community and its’ website(s) - e.g. systems administrators don’t always see why uptime and responsiveness provides business value to a community of practice (which if done well supports a thriving eco-system).

We decided to send the diagram to the client, and then I posted it. The diagram itself is isomorphic with part of its message: quality content drives traffic, which in turn drives quality content. The post attracted a nice comment, which helps me to write more about this topic :) .

We’ll see in the coming weeks whether this diagram helped the clients’ contact person in sharing our understanding of an effective website’s value with the not-for profit’s board.


It’s just a script

Monday, October 22nd, 2007

As a programmer told me:

One programmer is fanatical about code quality, he is especially strong against duplication. He is also the one who maintains an install program for our servers, and one for development workstations. They should be quite similar in operation - however they are two different scripts, one was once a copy from the other, but they have now diverged. This means defects have to be repaired twice, and the scripts are a complicated mess that only that programmer can maintain, with a lot of effort.

When I asked him “why did you duplicate these scripts” he said: “The what? oh yes, that is not a program. That is something I just put together so we can install our program. It’s not a program, it’s just a script… “

Oblivious, by James CraigFor some reason this second programmer sees the install script as a
non-program, so the same routine that applies to programs, does not apply to ’scripts’, therefore duplication is not a ‘problem’ - he can not see it as a problem, even when the first programmer asks him about it.

The second Programmer has an oblivious pattern for one part of the project where he may apply a routine or steering pattern to other parts.
The first Programmer seems to be aiming for a congruent culture (albeit, so far a culture of one person only, a micro-culture so to say):

Congruent culture - everyone is involved in improving everything all the time; it is a culture of ongoing reflection and improvement.

So in that view

Scripts are programs too

And if there is a problem (defects caused by duplication in this case), you stop, work on the problem, find out what caused it and what we can do to prevent it from happening again. And, last but not least, we do this with the whole team, so everybody can step away from their micro-culture.

In a way, a congruent pattern makes it irrelevant whether something is a program or not…. if something gets in the way, we do something about it.

(This post is part of a series on cultural patterns of organisations. Marc Evers and I are hosting a trial workshop next week, so we’ll be posting some more stories and pattern descriptions as we are working on our introductory presentation this week).

Credits:

(photos under a creative commons 2.0 ‘by’ license)

“Oblivious” by James Craig (picture of a standing duck oblivious of a waterfall, because it faces the other way)

“Oblivious” by Emily Nieves (picture of a lady in the water with her eyes closed)

If panic then change routine

Tuesday, October 16th, 2007

While procrastinating on the next post, Nynke jumped ahead with scenario planning and Marc continues with his routine on routines - we follow our routines (except when we panic) on what happens when a routine culture breaks down because of a foreign element. I could have anticipated that…

So this episode was supposed to be on how cultural patterns work on different levels, sort of like fractals, with stories. The first story already got quite more elaborate then I planned (and I wanted at least two in for the first story…), and I have no pictures for it! I’ll panic (following Marc’s lead ;) ) and leave the stories for (maybe) tomorrow.

About my routine (when in panic, why not make a blog entry about blogging and me, which is what blogs are supposed to be about, no? ;) )

My current process for posting a blog entry, is that I collect fieldstones, and when I feel one is strong enough, I go out and hunt for pictures. Because the feedback (steering…) on some posts suggested that posts with pictures and/or posts that are well prepared attract more readers as well as more comments (hint: I like comments)… So adding pictures became a routine… And in that routine, I have to follow the rules: post only with pictures…

To keep up with Marc and Nynke, I have broken that routine ;)

Routine, Variable - or would you rather stay oblivious?

Monday, September 24th, 2007

To me (agile) software development is about delivering business value to the customer (by as little software as possible), and doing what works in practice. Today I’m writing a bit about routine versus variable cultures in organisations.

A current project, recent writings by Marc Evers and Nynke Fokma and upcoming sessions on organizational cultural patterns (based on Gerald Weinberg’s work) inspire me to write a little about… routine :) , so I can explain what the session is about, and evolve my understanding beyond what’s in the book. I’ve been using variations of this model for quite a while now, so it is about time to write about it :)

My mentoring/coaching clients fall roughly in two categories: those doing some form of chaos development, and those who supposedly have a bureaucratic, routine based process.

Digging deeper, my clients fall into one category: those who have some form of chaos development…

I’ll explain my digging along two lines:

  1. Routine processes are uninteresting strategically
  2. Routine processes are not focused on results. They only (seem to) work, because result-oriented people find a way to work around it and don’t tell anybody…
  3. Routine is boring

Routine software development culture :
“We are developing software - follow The Rules”

Routine processes are uninteresting strategically

As Marc Evers writes in Keep on failing (in the small…):

“Predictable projects are not interesting, not in a strategic sense. If it’s predictable, there’s probably someone who has already done it or even created a product or service for it. Most interesting, strategic IT projects are in the complex space, where cause and effect are only coherent in retrospect and do not repeat. Best practices, recipes and step-by-step methods don’t work here. You need to steer based on feedback instead, through a cycle of probe, sense, respond”

the beat of life

So, if you want to create an entirely new market, you have to work based on feedback, if you want to go somewhere with an innovative product, you have to dance to the beat of life, and create your own beats :)

Routine processes are not focused on results

Because, to get anything done in a routine environment, you have to bend the rules. “The Rules” are usually made to prevent change of any kind, and “The Rules” have a tendency to grow in volume. As they grow in volume, they inevitably start to contradict themselves. Therefore, my clients only fall into one category ;)

Now, as an investor or product owner, if you start a new project, you might feel tempted by the false idol of “The Rules”. It is easy to find IT suppliers who happily work with “The Rules”, making big, fixed-price contracts and maybe even using some form of Model Driven Architecture / Design, which is a translation of working by “The Rules” in software development terms. . .

As Nynke Fokma writes in Great innovations that help the world

“The intention of MDD, model and routine driven developments, is to make software work routine. It is a focus on the tool rather than on people”

So, why do routine-oriented people get scared when you mention agile. They hear a transformation from:

“We are developing software - follow The Rules”
to:
“We are developing software”,

which would be a Variable culture.

The mental image of a Variable culture for someone in a Routine culture looks like this:

variable expansion, by Andreas Kolleger

“Variable Expansion”

If you remove “Follow the Rules”, Routine people can’t see the safety net. A Variable culture doesn’t have a safety net, so we don’t want to go there from routine.

However, as a mentor, a Variable culture is a much more pleasant state to start than a Routine culture - there are no “The Rules” to unlearn…

People in a variable organisation know that they are developing software, which makes them more aware than people in an oblivious culture:
“Are we developing software, really?”
“Oh, no, this is not software, It’s just some macro’s I made in Excel and Access” (never mind that these macro’s are the only things that are keeping track of millions of euros worth of business, as I saw in a moderately large manufacturer).

Clients in the variable space are usually a lot of fun for me. They are results oriented, and often have delivered software recently. They know they are developing software, they hire me to do better.

Usually, when they get to the point to hire a mentor or go for training, they know they have a bit too much chaos development. They already have some areas for improvement in mind, maybe some practices too, and with some creative questions, maybe a small retrospective, we collectively find some more.

We keep the results focus and the fun people are having at work, and add just enough process to make the team(s) more productive (deliver less defects, more business value).

What that looks like? I’ll leave that for an upcoming post…. There are loose ends here, some intentionally…

I’m not saying you don’t need any _routines_, which is differently from having a routine culture. Appropriate routines create a stable basis on which you can build and experiment. On the other hand, as nynke says: if you are in control, you are not going fast enough…

Credits:

The beat of life photo by ♥ Cherie ♥

“Variable Expansion” photo by Andreas Kollegger.

Gerald Weinberg, for his work on organisational cultural patterns

Nynke Fokma and Marc Evers for blog entries and discussions.