The SYSMOD Zigzag Pattern
Are your requirements really free of any solution? Requirements describe the What, the system architecture describes the How. Sounds easy, but…. Requirements are solution-free and they contain solution aspects at the same time. It depends on the level of abstraction.
Let’s assume that you have absolutely solution-free requirements (I argue that those requirements are not viable in practice). Now you derive a system architecture that satisfies the requirements and you get the typical what/how-pair. For example you have requirements about a transportation system for people and you derive a system architecture of a car. The solution car leads to new requirements that contain aspects of the solution. They are on another abstraction level and solution-free from the viewpoint of that level, but they contain solution aspects of the previous level. Again you derive a solution from the requirements, e.g. a hybrid engine. Again that solution leads to new requirements and so on. All in all the logical steps represent a zigzag pattern.
Requirements in practice always contain some solution aspects. Unfortunately they are often implicit and are one of the causes why requirements are a sore spot of many projects.
I’ll write further posts to discuss consequences from the SYSMOD-Zigzag-Pattern.