Table of Contents
What is the concept of software architecture
Home Common Problem What is the concept of software architecture

What is the concept of software architecture

Aug 01, 2022 pm 03:51 PM
Software Architecture

Software architecture is a structured element with a certain form, that is, a collection of components, including processing components, data components and connection components; processing components are responsible for processing data, data components are processed information, and connections Components connect different parts of the architecture together.

What is the concept of software architecture

The operating environment of this tutorial: Windows 10 system, DELL G3 computer.

What is the concept of software architecture

Software architecture is a set of structural elements with a certain form, that is, a collection of components, including processing components, data components and connection components.

The processing component is responsible for processing data. The data component is the processed information. The connection component combines and connects different parts of the architecture. This definition focuses on distinguishing processing components, data components, and connection components, an approach that is essentially maintained in other definitions and methods. Compared with "software architecture", the term "software architecture" is mostly used in the field of academic research, while "software architecture" is mostly used in the field of engineering practice. The foreign names of both are "software architecture", and their definitions in IEEE are both It is: "The basic organization of a system, including each component, the relationship between components and the environment, and the principles that guide its design and evolution."

What is the concept of software architecture

Definition Introduction

Although software architecture has been widely used in the field of software engineering, there is no generally accepted definition so far. Many experts and scholars have characterized software architecture from different angles and aspects. The more typical definitions are:

(1) Mary Shaw and David Garlan believe that software architecture is a level in the software design process. This level goes beyond algorithm design and data structure design in the computing process. Architectural issues include overall organization and global control, communication protocols, synchronization, data access, assigning specific functions to design elements, organization, size and performance of design elements, choosing between design alternatives, etc. Software architecture deals with some issues related to the design and description of the overall system structure based on algorithms and data structures, such as global organization and global control structure, protocols for communication, synchronization and data access, design component function definition, physical distribution and synthesis , selection, evaluation and implementation of design solutions, etc.

(2) Kruchten pointed out that software architecture has four perspectives, which describe the system from different aspects: the conceptual perspective describes the main components of the system and the relationships between them relationship; the module perspective includes functional decomposition and hierarchical structure; the operational perspective describes the dynamic structure of a system; the code perspective describes the organization of various codes and library functions in the development environment.

(3) Hayes Roth believes that software architecture is an abstract system specification, which mainly includes functional components and the interconnections, interfaces and relationships between components described by their behaviors.

(4) David Garlan and Dewne Perry adopted the following definition in IEEE Transactions on Software Engineering in 1995: Software architecture is the structure of the components of a program/system, their interrelationships, and their processes. Principles of design and guidelines that evolve over time.

(5) Barry Boehm and his students proposed that a software architecture includes a set of software and system components, interconnections and constraints; a set of system requirement descriptions; and a basic principle to describe this component , interconnections and constraints can meet system requirements.

(6) In 1997, Bass, Ctements and Kazman gave the following definition in the book "Using Software Architecture": The software architecture of a program or computer system includes one or a group of software components, The externally visible properties of a software component and their interrelationships. Among them, "visible characteristics external to the software" refer to the services, performance, features, error handling, shared resource usage, etc. provided by the software components.

For more related knowledge, please visit the FAQ column!

The above is the detailed content of What is the concept of software architecture. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

In-depth search deepseek official website entrance In-depth search deepseek official website entrance Mar 12, 2025 pm 01:33 PM

At the beginning of 2025, domestic AI "deepseek" made a stunning debut! This free and open source AI model has a performance comparable to the official version of OpenAI's o1, and has been fully launched on the web side, APP and API, supporting multi-terminal use of iOS, Android and web versions. In-depth search of deepseek official website and usage guide: official website address: https://www.deepseek.com/Using steps for web version: Click the link above to enter deepseek official website. Click the "Start Conversation" button on the homepage. For the first use, you need to log in with your mobile phone verification code. After logging in, you can enter the dialogue interface. deepseek is powerful, can write code, read file, and create code

deepseek web version official entrance deepseek web version official entrance Mar 12, 2025 pm 01:42 PM

The domestic AI dark horse DeepSeek has risen strongly, shocking the global AI industry! This Chinese artificial intelligence company, which has only been established for a year and a half, has won wide praise from global users for its free and open source mockups, DeepSeek-V3 and DeepSeek-R1. DeepSeek-R1 is now fully launched, with performance comparable to the official version of OpenAIo1! You can experience its powerful functions on the web page, APP and API interface. Download method: Supports iOS and Android systems, users can download it through the app store; the web version has also been officially opened! DeepSeek web version official entrance: ht

How to solve the problem of busy servers for deepseek How to solve the problem of busy servers for deepseek Mar 12, 2025 pm 01:39 PM

DeepSeek: How to deal with the popular AI that is congested with servers? As a hot AI in 2025, DeepSeek is free and open source and has a performance comparable to the official version of OpenAIo1, which shows its popularity. However, high concurrency also brings the problem of server busyness. This article will analyze the reasons and provide coping strategies. DeepSeek web version entrance: https://www.deepseek.com/DeepSeek server busy reason: High concurrent access: DeepSeek's free and powerful features attract a large number of users to use at the same time, resulting in excessive server load. Cyber ​​Attack: It is reported that DeepSeek has an impact on the US financial industry.