Requirements Modelling and Why

From telling what it Does to showing what it Is is a huge step. E.g., how long does it take from an idea that something we can ride and run quickly to a bicycle with two wheels on the road? It involves long time of efforts and uncountable experiments.

Looking on software development stage, what we've often seen, with many teams, is that SMEs gather pieces of business needs and then throw them to developers, up to them to put together a solution. The result with this manner is problematic - as we've often seen, project slippage and reworks. The reason is that it missed an intermediate step for consolidating requirement pieces and resolving conflicts before moving to development.

Generally, requirement elicitation and gathering only make superfluous stuff around the product, not the product itself. It is the #RequirementsModeling effort that analyses the fluff and builds the conceptual model and the logical model, identifying tasks, making a substantial step closer to the solution.

Modeling not only captures the business events – user stories or use cases, and reorganizes them into features or management areas, identifies business processes and the correlation among the processes, but also looks into the realization side – the data model and how business logics are realized with the data whereby applying a high level object-oriented analysis and design.

Requirements modeling digs into the ground of details, exploring hidden rules, clarifying the scope, context, and actors as well as their specific requirement for usability, and defining the done for the development and tests. Requirement modeling is an ongoing process, providing opportunity for the analysts together with the SMEs and solution analysts to create a transform requirements to solution, evaluating prioritization and trade-offs. All these are necessary because it reshapes the vision of the future state of the product.

In summary, modeling is an intermediate step between requirements gathering and solution, providing a middle ground for reviewing collected requirement artifacts and reshaping the solution. Unfortunately, this important step is commonly missed, as a result it missed an opportunity for team collaboration on identifying and consolidating the details and defining the product. This is the root cause of low efficiency in development iterations.