Design Design is when you take an aim at the target. Keeping with this analogy, it is important that you do not shoot until you finish taking aim. In other words, design is about planning how to accomplish the goals defined in the analysis work products. The planning process identifies the desired solution, not the completed solution. Design addresses functionality, as well as performance, flexibility, and maintainability. Design adds functionality on top of the analysis models. This layer is the software that facilitates the use of the problem domain resources using interfaces, databases, transaction control, and communication that conforms to the use case model. This layer of technology will likely change often, but the underlying problem domain will remain relatively stable.