About what is architecture, the industry has never been a uniform definition. Martin Fowler in “Enterprise Application design”also did not supply its definition, can handiest unified contentW mentioned two things:
- The highest level of system decomposition;
- System is not easy to change the decision.
“Software Archi. Design,” a book summary will be defined as an integral structure and decision-making to send to send:
- Composition School: = architecture + interaction components: a software system design of the system is described as between computing components and component interactions.
- Decision to send: architecture = important decisions set: a collection of software archi is in some important aspects of the decision made.
The conceptual design of the building was originally derived, therefore, I would like to think in terms of building this problem. Wikipedia, the schema, is defined as follows:
Architecture is both the process and the product of planning, designing, and constructing buildings and other physical structures.
Simple translation is: planning, design and construction of buildings or other physical structures, processes and results.
From the above definition, first of all, the ultimate goals is to output a building or other physical structures, structures can be just a house, it can be an estate, or a district, the business district and even a city . The larger the structure, the architecture must also more complex.
Secondly, before the output of the building needs through three stages: planning (planning), design (designing) and Construction (constructing). These three stages is actually the core of the architecture.For example, the developers want to build a residential area, it will certainly be the first community to have an overall plan it: residential building siting, construction content size, construction, investment estimates, construction period and so on. Next, it is necessary for all aspects of cell design, the highest level should be the overall layout of the cell, is split open, then the real estate design, green design, a variety of facilities design, etc., and then refine down is a variety of design units, real estate within the district various walkways and design, and so on. Finally, the construction phase is the construction phase, the idea is to turn all the stage before the actual building.
Finally, It consists of the above process and results. That is, the cell structure is the overall planning process, the planning scheme is the result of architecture, design, overall layout of the cell, real estate design, layout design, and so on for each procedure are also architecture, each process output design is to build construction drawing stage. it can be said that each process and the results are output during the building design.
So, if the building into the software, it would become the definition of software architecture: the software architecture planning, design and construction of software process and results.
Accordingly, the ultimate goal is to software architecture software output, can be an App, it can be a platform, such as SaaS, PaaS, BaaS etc., and even the wisdom of such a large urban ecosystem, the Earth people know the more large and complex system, the more difficult. The planning stage is to consider the needs of more software, including functional requirements and technical operations on the non-functional requirements such as reliability, scalability, maintainability; this phase typically system architecture. Design phase of the work is split more refined to meet the various needs; this stage architecture is generally logical design. Construction is on the main stage of implementation and deployment of software; this phase architecture typically physical infrastructure.
Read About Infinity