The user interface is arguably the most important element of a computer-based system or product. If the interface is poorly designed, the user's ability to tap the computational power of an application may be severely hindered. In fact, a weak interface may cause an otherwise well-designed and solidly implemented application to fail. Three important principles guide the design of effective user interfaces: place the user in control, reduce the user's memory load and make the interface consistent. To achieve an interface that abides by these principles, an organized design process must be conducted. User interface design begins with the identification of user, task and environmental requirements.