At this stage in the project, we've discovered the requirements for the project. We are now going to develop the hardware and software architecture. The best way to picture an architecture is through a map that is general enough to provide directions to where we need to head but does not provide enough details to restrict how we get there. The architecture should be flexible so that we can deal with any changing requirements on the fly.
For our purposes, we will use this section to first explore the high-level architecture and then develop the detailed design that we can use to construct the project in the next section.