:::The Guide to the Software Engineering Body of Knowledge (SWEBOK) defines the design phase as both the process of defining the architecture, components, interfaces, and other characteristics of a system or component and the result of [that] process.