A design pattern documents some best thinking around solving different types of problems, giving the designer freedom in how to implement the pattern. For instance, software designers might refer to a design pattern that describes an approach for logging into a system or creating an address entry field. The design pattern shouldn’t be confused with templates or set screen types. It is not a template or a finished design that can be transformed directly into code, but rather a general description for how to solve a problem.