Few designers control the entire environment for their products. Hardware and software do not exist in isolation. Your product may call upon services offered by the underlying layers of software and the platform, and may also need to interact with a myriad of other products. Before starting development, you must consider several guidelines about the structure and architecture of your products. These guidelines are at a high level of design and form the core of effective globalization design practice.