Please enable JavaScript.
Coggle requires JavaScript to display documents.
Arquitetura de Software - Coggle Diagram
Arquitetura de Software
DEFINIÇÕES MODERNAS
Documenting Software Architectures:Views and Beyond (2nd Edition)
Definição
É o conjunto de estruturas necessárias para compreender os elementos do software e suas relações
Destaca a pluralidade das estruturas
Entende que elas são o ponto principal para entender o software
Software Architecture in Practice (2nd Edition)
Definição
Consiste nas estruturas existentes, as relações entre elas e as propriedades externas visíveis
Nenhuma arquitetura consiste em apenas uma estrutura
Todos os sistemas possuem uma arquitetura
O comportamento de elementos de um software é parte da arquitetura
Recommended Practice for Architectural Description of Software Intensive Systems
A organização da arquitetura de software
Componentes
Relações Entre componentes
Ambiente Inserido
Principios de Design e Evolição
Como os elementos físicos, lógicos, e padrões de projeto de um sistema afetam:
Utilidade
Custo
Risco
DEFINIÇÕES CLÁSSICAS
Processo Unificado Racional
É um conjunto de decisões significativas sobre a organização de um sistema de software.
Definições de alguns estudiosos sobre a arquitetura de software:
Perry e Wolf, 1992
Elementos de Processamento
Elementos de Dados
Elementos de conexão
Garlan e Shaw, 1993
Projetar e especificar a estrutura geral do sistema.
Organização estrutural
Organização bruta.
Estrutura de controle global.
Protocolos para comunicação.
Sincronização e acesso a dados.
Atribuição de funcionalidade aos elementos de design.
Distribuição física.
Composição de elementos de design.
Dimensionamento e desempenho.
Seleção entre alternativas de design.
BASS, ET AL., 1994
Perspectiva do sistema
Particionamento funcional de seu domínio de interesse.
Estrutura.
Alocação de função de domínio para essa estrutura.
Hayes-Roth, 1994
Componentes funcionais
Comportamento componente-componente
Interfaces componente-componente
Interconexões componente-componente
Garlan e Perry, 1995
A estrutura dos componentes de um programa/sistema, suas interrelações e princípios e diretrizes que governam seu design e evolução ao longo do tempo.
Boehm, ET AL., 1995
Sistema de Arquitetura
Uma coleção de componentes de software e sistema,conexões e restrições.
Uma coleção de declarações de necessidades das partes interessadas do sistema.
Um raciocínio que demonstre que os componentes, conexões e restrições definem um sistema que, se implementado, satisfaria a coleção de declarações de necessidades dos stakeholders do sistema.
SONI, NORD E HOFMEISTER, 1995
Existem 4 encarnações distintas:
Arquitetura Conceitual
é o sistema com seus principais elementos de design e os relacionamentos entre eles.
Arquitetura de interconexão
possui duas estruturas ortogonais, decomposição funcional e camadas.
Arquitetura de execução
é a estrutura dinâmica de um sistema.
Arquitetura de código
código, binários e bibliotecas que são organizados no ambiente de desenvolvimento.
Shaw, 1995
Classificação dos pontos de vista da arquitetura, em relação ao modelo estrutural:
Configuração
Estilo
Restrições
Semântica
Análises
Propriedades
Justificativa
Requisitos
Necessidades das partes interessadas
Modelos de estrutura
Visam domínios específicos ou classes de problemas. CORBA[55]
Modelos dinâmicos
Enfatizam a qualidade comportamental dos sistemas.
Modelos de processo
Focam na construção da arquitetura e as etapas ou processos envolvidos nessa construção.
DEFINIÇÕES BIBLIOGRÁFICAS
[Crispen,94]
Estratégia de particionamento (Divisão do sistema em partes)
Estratégia de coordenação (Interfaces entre as partes)
[Perry,92]
Elementos Arquitetonicos
Elementos de Conexão
Elementos de Processamento
Elementos de Dados
[Clements 94-2]
Estrutura Organizacional
Componentes
Conexões
Restrições/Lógica
[Moriconi 94]
Representação da Arquitetura
Componente
Interface
Conector
Configuração
[Kruchten 94]
Projeto e implementação da estrutura de alto nível do software
Elementos arquitetônicos
Requisitos Funcionais
Requisitos Não-Funcionais
[FHayes-Roth 94]
Especificação Abstrata de Sistema
Componentes Funcionais
Comportamentos
Interfaces
Interconexões
[Boasson 95][Garlan 95]
Estrutura de sistema
Módulos Ativos (Componentes)
Interações (Inter-Relações)
Conjunto de regras (Princípios e Diretrizes)
Governam a interação
Evolução ao longo do tempo
[Lawson 95]
Sequência de “requisitos, projeto, implementação”
As decisões importantes a serem tomadas
Os problemas a serem resolvidos
As propriedades a serem garantido.
[KJackson 95]
Definição de um conjunto de tipos de componentes genéricos
Descrição das propriedades de cada tipo
Regras de iteração
Estilo de interações
[Pista 90]
Divisão de funções entre os módulos do sistema
Os meios de comunicação entre os módulos
A representação de informações compartilhadas.
[Rechtin 92]
Estrutura Subjacente
Rede de comunicação
Uma rede neural
Uma espaçonave
Um computador
Software principal
Uma organização
[Bhansali 92]
Arquitetura Genérica
É uma organização topológica de um conjunto de módulos parametrizados, juntamente com os relacionamentos intermodulares.
[Garlan 92]
Questões para problemas que surgem
Organização bruta e estrutura de controle global
Protocolos para comunicação
Sincronização e acesso a dados
Atribuição de funcionalidade aos elementos de design
Composição de elementos de design
Dimensionamento e desempenho
Seleção entre alternativas de projeto.