- Use the divide and conquer approach to break up the software into logical subsystems or groups.
- Draw a system diagram that shows all of the subsystems and groups within each subsystem.
- Draw functional diagrams for each subsystem and for each group.
Diagrams are often very helpful for communicating with the customer. They are also helpful to new developers as well as upper level managers. Diagrams show at a glance the scope of a project, high level functionality or how things work in general, and a software developer’s place in the scheme of things.