Enterprise Thinking is a way of looking at the long-term health and development of the company as a whole rather than focusing on short-term gains and what is happening in the present. This is similar to systems thinking, as the architect looks at the overall construction of the enterprise, rather than individual pieces.
When applied to software architecture at the beginning of a project, enterprise thinking can help set up the basic design of a project for more organized growth and help lead to fewer issues with scaling later down the line. In contrast, when a project does not make use of enterprise thinking when designing systems and architecture from the beginning, there could be issues in the future with stability, and the codebase may be much harder to maintain. In this context, it is often referred to as “Enterprise Architecture.”
All good forms of Enterprise Architecture should have a big focus on simplicity and flexibility, as these two things will help ensure that the system is easier to maintain as it grows and is scaled upward.
Further, some companies use Service-Oriented Architecture (SOA), which is a method of designing software so that individual services are self-contained and are provided to the other components in the system through a communication protocol over a network. This keeps the project modular and helps with the simplifying of codebase.