discussion
Plan your system, its data flow, data structures, algorithms, and modules