Your architectural strategy can make or break your project. Some important points to consider include, code reuse, performance, scalability, stability, security, and maintainability. Every project has unique requirements. A solid, well designed and implemented, architecture can make all the difference.
Architecture is the fundamental organization of a system embodied in its components, their relationships to each other, and to the environment, and the principles guiding its design and evolution.
A system is a collection of components organized to accomplish a specific function or set of functions. The term system encompasses individual applications, systems in the traditional sense, subsystems, systems of systems, product lines, product families, whole enterprises, and other aggregations of interest. A system exists to fulfill one or more missions in its environment.
The environment, or context, determines the setting and circumstances of developmental, operational, political, and other influences upon that system.
A mission is a use or operation for which a system is intended by one or more stakeholders to meet some set of objectives.
A stakeholder is an individual, team, or organization (or classes thereof) with interests in, or concerns relative to, a system.