As we received bunch of valid feedback for justifying the existing way of making software specification we figured to take a step backwards and rethink the issue.
While the demonstrations take few days more to finish, we came up with 1:1 model with the existing way of making specifications (of course this is just an example case against one model, but the practice applies to any other model as well).
Of course everything demonstrated in the previous post still applies; we can generate documentation, estimate work amount and track status with the very same modules as with logical operations.
Abstracting out the Use Cases, Business Rules and high-level Domain Model:
This model can be used to take control over the specification side in addition of already covered software design side. It provides the means for example to calculate the relative complexity from the user’s perspective compared to the system and software logic complexity.
So while one might argue simple software logic complexity is justified, the argue does not hold if it causes the user side complexity to raise due to difficult to use software.
The generators are similar to the logical operation (that were briefly introduced in earlier post) and domain model:
The examples to follow once we finish transfering the existing content to properly modularized ones.