The more I have to deal with corporate project management patterns, the more I think the whole approach behind specifications is wrong. Trying to focus on what the &quot;domain objects&quot; are and what is their flow is pointless, especially if you&#x27;re dealing with real-world objects (like the fridge from TFA). You can model <i>something</i> this way, but it will be usually the imaginary perfect path, a narrow vision of how things <i>should</i> be done, that will break on first contact with the real world - a world that is messy and requires humans to improvise on the spot.<p>I&#x27;m starting to believe that one should focus on the workflow instead. After all, the reason for writing software as a tool is to simplify or automate some existing process. So focus on what people are already doing and what they&#x27;re trying to achieve and find a way to remove repetitions, unnecessary delays, etc. Just look on what people are doing and find a way to do some parts of the process faster and better.