Skip to main content

3. Simple, Complicated, Complex... Chaos !

A few words about the different kind of systems, just so you know in which kind of trouble you are when you start gathering requirements :-)

SIMPLE
What it is: you can see clearly all the connections between cause and effect .

How to handle it: it is usually easy.

COMPLICATED
What it is: there are cause - effect connections, but it's not easy to see them. There is never a unique solution.

How to handle it: ask questions to the experts (if there is any).

COMPLEX
What it is: it is made of many pieces, and they are highly interconnected. The output is usually part of the system itself and influences it, so it's difficult even to ask yourself the right questions.

How to handle it: test some small parts and see what it happens (someone calls it "dance with the system.")

CHAOS
What it is:  high uncertainty, no apparent cause and effect and ... when some rule seem to apply, it will probably change very rapidly.

How to handle it: run away !


Comments

Popular posts from this blog

Why is business people so "unorganized" ?

The more I work, the more I see "strange" behaviour both on the side of our customers, both on our side and on my personal side. I will try to understand way better why we are so changing, hectic, often unpredictable in our business hours.  I guess all this could be linked to the Complex, Complicated thing...

Practical advices by Karl Wiegers

I am reading the beautiful book "More About Software Requirements: Thorny Issues and Practical Advice" by Karl E. Wiegers. I'd like to share with you two of the most important points of his "10 cosmic truth",  that to me are #6 and #9. #6 The requirements might be vague, but the product will be specific. I would say this is the usual point of "Natura abhorret a vacuo", that is here... each gap n requirements will be filled by some bad feature. #9 The customer is not always right, but the customer always has a point. Never underrate your key users

0. What's the matter with requirements ?

In my experience, many problems arising from the little care in requirements gathering are mainly due to these five factors: Pre-judgments: we believe we know how to do the right thing before we even realize what we have to do, We do like to "settle" things "later", End users often do not know exactly what they want, or express themselves in their own way and often different users have conflicting requirements, The requirements now are constantly changing: as soon as we catch some, some other requirement has already changed, Often there are organizational or "political" factors involved (ie. we listen more to the requirements of a manager who will never use the system rather than the requirement of the user who will use it 10 times a day).