Causal loop diagrams seem like a really powerful tool for modelling a system - but I have no experience with applying them to my testing.
Do you use causal loop diagrams? How do you use them, and what helps you create effective ones?
Software Quality Assurance & Testing Stack Exchange is a question and answer site for software quality control experts, automation engineers, and software testers. It only takes a minute to sign up.
Sign up to join this communityCausal loop diagrams seem like a really powerful tool for modelling a system - but I have no experience with applying them to my testing.
Do you use causal loop diagrams? How do you use them, and what helps you create effective ones?
Short answer: - I use them to evaluate my understanding of a product, and to communicate my understanding of the product. Secondary (test) use is to walk through the CLD and ask typical tester "what if?" questions.
Longer answer: You can use CLDs pretty much as designed - as a method for understanding the system you are testing, including assumptions as well as relationships. The CLD becomes a pretty good tool for communicating understanding across the team, and are great for removing ambiguity. You can also often find bugs in the system by walking through the CLD and asking questions (e.g. if input X depends on input Y, what happens if Y is negative? or If feature a is dependent on 3rd party library b, what's the risk (or backup plan)?). In the latter example,
I've also found bayesian analysis, sometimes in conjunction with CLD's to be a wonderful way to document and communicate risk in a system with complex dependencies.
Many testers use mind-maps for test design, and I've seen mindmaps that look more like CLD's than test design, so in a way, there is some* usage - although I believe, like you, that there's room for more usage among testers - especially those who want to increase their systems-view thinking of the products they're working with.