These are your use-cases. For example, for a e-commerce site, you may need to offer functionality like: search inventory, place order and review past orders.
How should the system behave.
These are requirements like:
Restrictions limit your options.
Restrictions include:
We need to prioritize functional and non-functional requirements based on restrictions.
For example: may not prioritize portability if we control where the solution is to be deployed.
Key Concepts
See O'Reillys - Software Architecture Patterns
Reference | URL |
---|---|
Software Architecture Patterns | https://github.com/gg-daddy/ebooks/blob/master/software-architecture-patterns.pdf |