Quality of successful software architecture

Source: Internet
Author: User

Successful software architecture design is of high quality, and the time and technical decision-making can meet specific requirements.
The sending method must have the following qualities:

  • Good modularization: Each module has clear responsibilities, loose coupling between modules, high cohesion in the module, and reasonable information hiding.
  • Adapt to functional requirements and technical changes: in typical cases, the separation of related modules of specific applications and general modules of the domain should be maintained, and the related modules of the technical platform should be separated from the application modules of specific technologies, this achieves the effect of "isolated changes.
  • Have a good plan for the dynamic operation of the system: Identify the active modules and passive modules, and clarify the call and lock mechanisms between modules, describes key processes, threads, queues, messages, and other mechanisms.
  • Good data planning: not only supports persistent data storage, but also includes data transmission, data replication, and data synchronization policies.
  • Clear and flexible deployment planning: This often involves quality attribute architecture policies that are of special interest to large-scale enterprise-level software such as portability, scalability, continuous availability, and interoperability.

A good architecture is not "good is successful", but "the right thing is successful ". The time is not used properly.
And finally destroy the entire project. Let's look at why we spent a lot of time discussing the software development process and
Impact? In addition to clarifying that we need to define the software architecture in the initial stage when the vast majority of technical details are unclear
At the early stage, we need to build a foundation for collaborative development, so that different groups can focus on different subsystems and modules.
This kind of team's nature also means that the project's cycle may be shortened.

 

Architects do not have the absolute freedom to choose technology. They also need to consider economic, technical complexity, development trends, and groups.
Team level and other factors. Ultimately, the architect's work achievement is to provide adequate guidance for the work of the entire development team.
Export and limit so that they can proceed in the right direction.

 

Next, let's take a look at what are the key elements of a successful architecture design that will govern the content of this course.
Is the core knowledge of the entire course.

Related Article

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.