Pensando sobre a natureza da arquitetura de software

Qual é a arquitetura?

A arquitetura originou-se no campo da construção, como construção de pontes, construção de casas e lançamento de fundações.
Os antigos trabalhadores cheios de sabedoria decompunham edifícios complexos em componentes estruturais comuns de acordo com suas características. O
mesmo se aplica ao software.
Enquanto as pessoas os decompõem e montam subjetivamente, o conceito de arquitetura é usado.
Insira a descrição da imagem aqui

Vamos falar sobre arquitetura de software

Arquitetura de software é um método científico para engenheiros de software definirem a arquitetura do sistema ao projetar um sistema de software.
Refere-se à maneira como um sistema de software é organizado com engenheiros de software focados em funcionalidade, desempenho e atributos de qualidade de segurança.
Em outras palavras, a arquitetura de software é um meio técnico de dividir um sistema de software em módulos para atingir funções específicas.
Insira a descrição da imagem aqui

1: A arquitetura de software é composta principalmente por três elementos:
Estrutura do módulo : A estrutura do módulo é uma estrutura que divide o sistema de software em diferentes módulos para atingir funções específicas.

Estrutura do framework : A estrutura do framework é uma estrutura que organiza os diversos módulos do sistema de software de acordo com uma determinada forma organizacional para atingir funções específicas.

Estrutura de componentes : A estrutura de componentes é uma estrutura na qual um sistema de software é composto de diferentes componentes
para atingir funções específicas.

2: Camadas de arquitetura
2.1: A arquitetura de negócios
inclui planejamento de negócios, módulos de negócios, processos de negócios, divisão de negócios de todo o sistema, envolvendo modelos de domínio e transformando negócios reais em objetos abstratos

Não existe uma arquitetura ideal, apenas a arquitetura mais apropriada. Os princípios de design de todos os sistemas devem ser a resolução de problemas de negócios como objetivo final. A arquitetura técnica e emocional divorciada dos negócios reais muitas vezes trará grandes armadilhas ao sistema.

É preciso entender o tamanho do volume de negócios e qual a tendência de crescimento, e o processo de solução da alta simultaneidade deve ser passo a passo.
Insira a descrição da imagem aqui

2.3: Arquitetura da aplicação
Abstração do hardware para a aplicação, incluindo camada de abstração e interface de programação. A arquitetura de aplicativos e a arquitetura de negócios são complementares entre si. Cada parte da arquitetura de negócios tem uma arquitetura de aplicação.
Insira a descrição da imagem aqui
Como uma unidade implantada de forma independente, a arquitetura de aplicação define um limite claro para o sistema, o que afeta profundamente a organização funcional do sistema, o desenvolvimento de código, a implantação, a operação e a manutenção. A arquitetura de aplicação define o que aplicações que o sistema possui e como as aplicações dividem o trabalho e cooperam

2.3: Arquitetura de dados A
arquitetura de dados orienta o design do banco de dados. Não apenas o banco de dados e o modelo de entidade envolvidos no desenvolvimento devem ser considerados, mas também o design do armazenamento de dados na arquitetura física.

Insira a descrição da imagem aqui

2.4: Arquitetura de código

①. Unidade de código

Projeto de configuração

Frameworks e bibliotecas de classes.

②. Organização da unidade de código

Padrões de codificação, convenções de codificação.

Divisão do módulo do projeto

Design de estrutura de arquivos de nível superior, como design mvc.

Dependências

Insira a descrição da imagem aqui
2.5. Arquitetura técnica

Arquitetura técnica: determine os componentes reais em execução que compõem o sistema de aplicação (lvs, nginx, tomcat, php-fpm, etc.), o relacionamento entre esses componentes em execução e a estratégia de implantação no hardware.

A arquitetura técnica considera principalmente as características não funcionais do sistema e compreende em nível de sistema a alta disponibilidade, alto desempenho, expansão, segurança, escalabilidade, simplicidade do sistema, etc.

O projeto da arquitetura do sistema exige que os arquitetos tenham um excelente conhecimento das funções e do desempenho do software e do hardware, sendo esta também a tarefa mais difícil no projeto de arquitetura.

2.6. Diagrama de arquitetura de topologia de implantação (diagrama de arquitetura física real)

A arquitetura topológica, incluindo quantos nós são implantados na arquitetura, o relacionamento entre os nós, a alta disponibilidade de servidores, interfaces e protocolos de rede, etc., determina como o aplicativo é executado, o desempenho, a capacidade de manutenção e a escalabilidade de todas as arquiteturas. Fundação. Este diagrama é principalmente o foco principal dos engenheiros de operação e manutenção.
Insira a descrição da imagem aqui
A arquitetura física considera principalmente a seleção e topologia de hardware, o mapeamento de software para hardware e a influência mútua de software e hardware.

3: Níveis de arquitetura
Nível do sistema: isto é, o relacionamento entre as várias partes de todo o sistema e como governá-lo: em camadas

Nível de aplicação: isto é, a arquitetura geral de uma única aplicação e seu relacionamento com aplicações individuais no sistema.

Nível do módulo: ou seja, a arquitetura do módulo dentro do aplicativo, como modularização de código, gerenciamento de dados e status, etc.

Nível de código: isto é, garantir a implementação da arquitetura a partir do nível de código.

4: Design estratégico e design tático

Com base na pirâmide arquitetônica, temos a combinação perfeita entre design estratégico e design tático de arquitetura de sistema:

Design estratégico: a arquitetura de negócios é usada para orientar os arquitetos sobre como projetar a arquitetura do sistema.

Design tático: A arquitetura do aplicativo deve ser projetada de acordo com a arquitetura do negócio.

Implementação tática: Depois que a arquitetura da aplicação for determinada, é hora de selecionar a tecnologia.

Arquitetura é pensamento sistemático , pesando os prós e os contras para tomar a decisão mais razoável sob as restrições de recursos existentes e, finalmente, esclarecer o esqueleto do sistema: incluindo subsistemas, módulos, componentes e a relação colaborativa entre eles, especificações de restrições, até princípios, envolvendo
4 aspectos:
01: Decisões razoáveis ​​baseadas no pensamento sistemático: como seleção de tecnologia, soluções, etc.

02: Esqueleto claro do sistema: esclareça em que partes o sistema consiste.

03: Relacionamento de colaboração do sistema: como cada componente colabora para atender às solicitações de negócios

04: Especificações de restrição e princípios orientadores: garantem a operação ordenada, eficiente e estável do sistema.

Acho que você gosta

Origin blog.csdn.net/weixin_49543015/article/details/131244258
Recomendado
Clasificación