System Architect-Basic to enterprise application architecture series-Introduction

Source: Internet
Author: User
What is the origin of System Architecture Software Architecture?

The system architecture in the software is actually referenced from the architecture design in the construction industry, but the system architecture in the software has great particularity. The particularity is manifested in that the architecture of the software can be changed or re-initiated during the project after the design is completed, but this cannot be done in the construction industry. The software industry has great variability.

What is architecture

In general, the architecture is the design of complex components that implement the required functions, and the design of complex components that cannot be simplified. ISO and IEEE define the system architecture: the architecture of software-intensive systems is divided into three parts: the main module, the organization module and the support module.

Objectives of the system architecture

 

Function: The function must meet the requirements.

Reliability: The system is extremely important for users' business operation and management. Therefore, the software system must be very reliable.

Availability: The system must be available.

Maintainability: System Maintenance includes two aspects: first, to eliminate existing errors, and second, to reflect new requirements to existing systems. An easy-to-maintain system can effectively reduce the cost of technical support

Security: The business value of the transaction undertaken by the system is extremely high, and the security of the system is very important.

Scalability: You must be able to maintain reasonable performance when your usage and number of users increase rapidly. Only in this way can we adapt to the possibility of expanding the user's market.

Responsibilities of System Architects

System analysts organize functional requirements through communication with project stakeholders or with customers to form requirement documents, and then deliver the documents to system architects, the System Architect is responsible for converting analyst requirements into detailed design documents. This detailed design book serves as the main tool for communicating with developers.

System Architects can use UML modeling tools to write the design diagram or flowchart of each component in the detailed design manual, or use the IBM relations Rose tool to implement the corresponding modeling.

The System Architect follows the following principles during design:

1. Low coupling: requires the least coupling between different components. Each set-up function should be separated as much as possible. They directly call the relationship to convert object references to interface references.

2. High Cohesion: Functions with similar functions are put in one component, and interfaces are called externally.

System Architects serve as the core key between demand analysts and software development engineers. A good system architecture not only meets the functional requirements of the software, but also provides better scalability, maintainability, security, and reliability.

The system architect must be involved in the entire development process.

System Requirements

In general. System requirements are divided into functional requirements and non-functional requirements.

Reasons for the impact of System Architecture Design

When designing a system, the System Architect generally places modules with similar functions on separate layers through logical layers, then, the system's function separation and low coupling and high cohesion are implemented through layering.

The design of the system architecture is related to the development methods used by the system. The software development methods can be divided into traditional methods and agile development.

Traditional method: the waterfall model is well-known, and the software process is strictly followed by the upper-level steps to start the next step.

Agile development: iterative development with increasing demands. Each stage adds a new requirement. After the requirement is met, the software is changed to be released. Although the functions of the software are incomplete, the software can be used at least.

The design scheme of the System Architect should be determined by the stakeholders of the project to determine which design scheme to adopt. Of course, this may not be used at the end, resulting in such a result, the possible reasons are non-functional requirements. Non-functional requirements: such as inheritance from the previous system, hardware devices, and network environments.

 

System Architecture Design Scheme

The system architecture can be simply divided into implicit architecture and display architecture. For example, if you build a puppy shed, experienced architects already have an architecture in their own minds. This is the implicit architecture. In some cases: the system features are complex and refined, so we cannot figure out the architecture in our mind. We need to design it through demo or modular Division. This is the display architecture.

The system architecture design must consider the feasibility, scalability, robustness, availability, efficiency, and security of the design, as well as the environment where the software is located, otherwise, it is very expensive to modify the system architecture when the system architecture design is insufficient during software development.

 

Source: http://www.cnblogs.com/hegezhou_hot/archive/2010/09/07/1820327.html

 

 

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.