Will try to include everything i know about system design and what can be necessary and sufficient for any kind of scenario