SlideShare uma empresa Scribd logo
Arquitetura de Software
Aricélio de Souza Fernandes
Disciplina: Engenharia de Software

Prof.: Danilo Nunes
4º Período - TADS
Sumário
O que é Arquitetura.
O que é Software.
O que é Arquitetura de Software.

Arquiteturas existentes.
Exemplos.
Conclusão.
O que é Arquitetura?
A arquitetura significa construção, e refere-se à
arte ou a técnica de projetar uma edificação
ou um ambiente de uma construção. A
arquitetura é a arte de projetar espaços
organizados e criativos para abrigar os
diferentes tipos de atividades humanas.
O que é Software?
Software é um agrupamento de comandos
escritos em uma linguagem de programação.
Estes comandos, ou instruções, criam as ações
dentro do programa, e permitem seu
funcionamento.
Cada ação é determinada por uma
sequencia, e cada sequencia se agrupa para
formar o programa em si. Estes comandos se
unem, criando um programa complexo.
O que é Arquitetura de Software?
A arquitetura de software de um sistema
consiste na definição dos componentes de
software, suas propriedades externas, e seus
relacionamentos com outros softwares.
O termo também se refere à documentação
da arquitetura de software do sistema. A
documentação da arquitetura do software
facilita: a comunicação entre os stakeholders,
registra as decisões iniciais acerca do projeto
de alto-nível, e permite o reuso do projeto dos
componentes e padrões entre projetos.
O que é Stakeholders?
Os stakeholders são elementos essenciais
ao planejamento estratégico de negócios.
De maneira mais ampla, compreende todos os
envolvidos em um processo, que pode ser de
caráter temporário (como um projeto) ou
duradouro (como o negócio de uma empresa
ou a missão de uma organização).
As primeiras tentativas de capturar e explicar
a arquitetura de software do sistema foram
imprecisas e desorganizadas.
Durante o decorrer da década de 90 houve um
esforço concentrado para definir e codificar os
aspectos
fundamentais
desta
disciplina.
Inicialmente um conjunto de padrões de
projeto, estilo, melhores práticas, descrição de
linguagens, e lógica formal foram desenvolvidas
durante este período.
A arquitetura de software é centrada na ideia da
redução da complexidade através da abstração
e separação de interesses. O glossário do site
oficial SOFTWARE ENGINEERING INSTITUTE (Instituto
de Engenharia de Software) descreve que
arquitetura de software é a estrutura ou estruturas
de um sistema, com todos os elementos de
software vendo e tendo suas propriedades vistas
por todos os outros elementos e relacionamentos.
Linguagem de descrição de
arquitetura
 As Linguagens de descrição de arquitetura (LDAs) são
usadas para descrever a arquitetura de software. Várias LDAs
distintas foram desenvolvidas por diferentes organizações,
incluindo:
 Wright (desenvolvido por Carnegie Mellon).
 Acme (desenvolvido por Carnegie Mellon).
 xADL (desenvolvido por UCI).
 Darwin (desenvolvido por Imperial College London).
 DAOP-ADL (desenvolvido pela University of Málaga).
Elementos comuns de uma LDA são componente, conexão e
configuração.
Visões
A arquitetura de software é normalmente
organizada em visões, as quais são análogas
aos diferentes tipos de plantas utilizadas no
estabelecimento da arquitetura. Na Ontologia
estabelecida pela ANSI/IEEE 1471-2000, visões
são instâncias de pontos de vista, onde cada
ponto de vista existe para descrever a
arquitetura na perspectiva de um conjunto de
stakeholders e seus consortes.
Algumas possíveis visões são:
Visão funcional/lógica
Visão de código.
Visão de desenvolvimento/estrutural
Visão de concorrência/processo/thread
Visão física/evolutiva
Visão de ação do usuário/retorno
Várias
linguagens
para
descrição
da
arquitetura de software foram inventadas, mas
nenhum consenso foi ainda alcançado em
relação a qual conjunto de símbolos ou sistema
de representação deve ser adotado.
Alguns acreditam que a UML irá estabelecer um
padrão para representação de arquitetura de
software.
Outros
acreditam
que
os
desenvolvimentos efetivos de software devem
contar com a compreensão única das
restrições de cada problema, e notações tão
universais são condenadas a um final infeliz
porque cada uma provê uma notação
diferenciada que necessariamente torna a
notação inútil ou perigosa para alguns
conjuntos de tarefas.
Padrões de Arquitetura
DODAF
MODAF
TOGAF
Zachman framework
Federal Enterprise Architecture
Exemplos de arquitetura
 Cliente-Servidor
 Computação distribuída
 P2P
 Quadro Negro
 Criação implícita

 Pipes e filtros
 Plugin
 Aplicação monolítica

 Modelo em três camadas

 Analise de sistema
estruturada (baseada em
módulos, mas usualmente
monolíticas em dentro dos
módulos)
 Arquitetura orientada a
serviço
 Arquitetura orientada a
busca
Conclusão
A arquitetura vem pra auxiliar no processo de
desenvolvimento do software. Não há como
dizer que uma arquitetura é melhor que outra,
mas sim qual mais se adequa ao problema.
Dúvidas?

Obrigado!

Mais conteúdo relacionado

Mais procurados

Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de Requisitos
Estêvão Bissoli Saleme
 
Arquitetura de Software EXPLICADA
Arquitetura de Software EXPLICADAArquitetura de Software EXPLICADA
Arquitetura de Software EXPLICADA
Fábio Nogueira de Lucena
 
Introdução a Automação de Teste de Software
Introdução a Automação de Teste de SoftwareIntrodução a Automação de Teste de Software
Introdução a Automação de Teste de Software
Camilo Ribeiro
 
SOA - Uma Breve Introdução
SOA - Uma Breve IntroduçãoSOA - Uma Breve Introdução
SOA - Uma Breve Introdução
André Borgonovo
 
A Linguagem UML
A Linguagem UMLA Linguagem UML
A Linguagem UML
Nécio de Lima Veras
 
Introdução a Arquitetura de Sistemas
Introdução a Arquitetura de SistemasIntrodução a Arquitetura de Sistemas
Introdução a Arquitetura de Sistemas
Igor Takenami
 
O Processo de Desenvolvimento de Software
O Processo de Desenvolvimento de SoftwareO Processo de Desenvolvimento de Software
O Processo de Desenvolvimento de Software
Camilo de Melo
 
Modelagem Arquitetural e Visão 4+1
Modelagem Arquitetural e Visão 4+1Modelagem Arquitetural e Visão 4+1
Modelagem Arquitetural e Visão 4+1
Adriano Tavares
 
Engenharia de requisitos
Engenharia de requisitosEngenharia de requisitos
Engenharia de requisitos
Mailson Queiroz
 
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
Helio Henrique L. C. Monte-Alto
 
Aula javascript
Aula  javascriptAula  javascript
Aula javascript
Gabriel Moura
 
Introdução à Qualidade de Software
Introdução à Qualidade de SoftwareIntrodução à Qualidade de Software
Introdução à Qualidade de Software
Cloves da Rocha
 
Aula 6 - Qualidade de Software
Aula 6 - Qualidade de SoftwareAula 6 - Qualidade de Software
Aula 6 - Qualidade de Software
Leinylson Fontinele
 
Aula - Metodologias Ágeis
Aula - Metodologias ÁgeisAula - Metodologias Ágeis
Aula - Metodologias Ágeis
Mauricio Cesar Santos da Purificação
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas Eficientes
Rodrigo Cascarrolho
 
Análise e Projeto de Sistemas
Análise e Projeto de SistemasAnálise e Projeto de Sistemas
Análise e Projeto de Sistemas
Guilherme
 
Analise de Requisitos Software
Analise de Requisitos SoftwareAnalise de Requisitos Software
Analise de Requisitos Software
Rildo (@rildosan) Santos
 
Modelo de Prototipação
Modelo de PrototipaçãoModelo de Prototipação
Modelo de Prototipação
Juliano Pires
 
Engenharia de software
Engenharia de softwareEngenharia de software
Engenharia de software
Claudete Florencio
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de Software
Cloves da Rocha
 

Mais procurados (20)

Engenharia de Requisitos
Engenharia de RequisitosEngenharia de Requisitos
Engenharia de Requisitos
 
Arquitetura de Software EXPLICADA
Arquitetura de Software EXPLICADAArquitetura de Software EXPLICADA
Arquitetura de Software EXPLICADA
 
Introdução a Automação de Teste de Software
Introdução a Automação de Teste de SoftwareIntrodução a Automação de Teste de Software
Introdução a Automação de Teste de Software
 
SOA - Uma Breve Introdução
SOA - Uma Breve IntroduçãoSOA - Uma Breve Introdução
SOA - Uma Breve Introdução
 
A Linguagem UML
A Linguagem UMLA Linguagem UML
A Linguagem UML
 
Introdução a Arquitetura de Sistemas
Introdução a Arquitetura de SistemasIntrodução a Arquitetura de Sistemas
Introdução a Arquitetura de Sistemas
 
O Processo de Desenvolvimento de Software
O Processo de Desenvolvimento de SoftwareO Processo de Desenvolvimento de Software
O Processo de Desenvolvimento de Software
 
Modelagem Arquitetural e Visão 4+1
Modelagem Arquitetural e Visão 4+1Modelagem Arquitetural e Visão 4+1
Modelagem Arquitetural e Visão 4+1
 
Engenharia de requisitos
Engenharia de requisitosEngenharia de requisitos
Engenharia de requisitos
 
Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)Arquitetura orientada a serviços (SOA)
Arquitetura orientada a serviços (SOA)
 
Aula javascript
Aula  javascriptAula  javascript
Aula javascript
 
Introdução à Qualidade de Software
Introdução à Qualidade de SoftwareIntrodução à Qualidade de Software
Introdução à Qualidade de Software
 
Aula 6 - Qualidade de Software
Aula 6 - Qualidade de SoftwareAula 6 - Qualidade de Software
Aula 6 - Qualidade de Software
 
Aula - Metodologias Ágeis
Aula - Metodologias ÁgeisAula - Metodologias Ágeis
Aula - Metodologias Ágeis
 
UML - Criando Diagramas Eficientes
UML - Criando Diagramas EficientesUML - Criando Diagramas Eficientes
UML - Criando Diagramas Eficientes
 
Análise e Projeto de Sistemas
Análise e Projeto de SistemasAnálise e Projeto de Sistemas
Análise e Projeto de Sistemas
 
Analise de Requisitos Software
Analise de Requisitos SoftwareAnalise de Requisitos Software
Analise de Requisitos Software
 
Modelo de Prototipação
Modelo de PrototipaçãoModelo de Prototipação
Modelo de Prototipação
 
Engenharia de software
Engenharia de softwareEngenharia de software
Engenharia de software
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de Software
 

Destaque

Arquiteturas usando Pipes and Filters
Arquiteturas usando Pipes and FiltersArquiteturas usando Pipes and Filters
Arquiteturas usando Pipes and Filters
Sergio Crespo
 
Comparativo tecnico entre tecnologias de banco de dados: Relacional, NoSQL, N...
Comparativo tecnico entre tecnologias de banco de dados: Relacional, NoSQL, N...Comparativo tecnico entre tecnologias de banco de dados: Relacional, NoSQL, N...
Comparativo tecnico entre tecnologias de banco de dados: Relacional, NoSQL, N...
Aricelio Souza
 
JAVA REFLETCION
JAVA REFLETCIONJAVA REFLETCION
Do Quadro Negro à Lousa Digital - possibilidades interativas sobre as telas
Do Quadro Negro à Lousa Digital - possibilidades interativas sobre as telasDo Quadro Negro à Lousa Digital - possibilidades interativas sobre as telas
Do Quadro Negro à Lousa Digital - possibilidades interativas sobre as telas
George Gomes
 
Introdução a Arquitetura Orientada a Serviços
Introdução a Arquitetura Orientada a ServiçosIntrodução a Arquitetura Orientada a Serviços
Introdução a Arquitetura Orientada a Serviços
Igor Takenami
 
MVC, MVP e MVVM: Uma Comparação de Padrões Arquiteturais
MVC, MVP e MVVM: Uma Comparação de Padrões ArquiteturaisMVC, MVP e MVVM: Uma Comparação de Padrões Arquiteturais
MVC, MVP e MVVM: Uma Comparação de Padrões Arquiteturais
Jorge Tressino Rua
 
Uma Breve Introdução ao MongoDB
Uma Breve Introdução ao MongoDBUma Breve Introdução ao MongoDB
Uma Breve Introdução ao MongoDB
Eduardo Nicola F. Zagari
 
Classificação de Documentos
Classificação de DocumentosClassificação de Documentos
Classificação de Documentos
Eduardo Nicola F. Zagari
 
Padrões-03 - Padrões Arquiteturais - Pipes e Filtros
Padrões-03 - Padrões Arquiteturais - Pipes e FiltrosPadrões-03 - Padrões Arquiteturais - Pipes e Filtros
Padrões-03 - Padrões Arquiteturais - Pipes e Filtros
Eduardo Nicola F. Zagari
 
20 diagrama de contexto
20   diagrama de contexto20   diagrama de contexto
20 diagrama de contexto
jhonatawlima
 
Padrões-04 - Padrões Arquiteturais - Broker
Padrões-04 - Padrões Arquiteturais - BrokerPadrões-04 - Padrões Arquiteturais - Broker
Padrões-04 - Padrões Arquiteturais - Broker
Eduardo Nicola F. Zagari
 
Padrões-05 - Padrões Arquiteturais - MVC
Padrões-05 - Padrões Arquiteturais - MVCPadrões-05 - Padrões Arquiteturais - MVC
Padrões-05 - Padrões Arquiteturais - MVC
Eduardo Nicola F. Zagari
 
Padrões-02 - Padrões Arquiteturais - Camadas
Padrões-02 - Padrões Arquiteturais - CamadasPadrões-02 - Padrões Arquiteturais - Camadas
Padrões-02 - Padrões Arquiteturais - Camadas
Eduardo Nicola F. Zagari
 
Padrões Arquiteturais - MVC, MVP e MVVM
Padrões Arquiteturais - MVC, MVP e MVVMPadrões Arquiteturais - MVC, MVP e MVVM
Padrões Arquiteturais - MVC, MVP e MVVM
Aricelio Souza
 
Padrões-06 - Padrões Arquiteturais - Microkernel
Padrões-06 - Padrões Arquiteturais - MicrokernelPadrões-06 - Padrões Arquiteturais - Microkernel
Padrões-06 - Padrões Arquiteturais - Microkernel
Eduardo Nicola F. Zagari
 
Sistemas Distribuídos - Computação Distribuída e Paralela
Sistemas Distribuídos - Computação Distribuída e ParalelaSistemas Distribuídos - Computação Distribuída e Paralela
Sistemas Distribuídos - Computação Distribuída e Paralela
Adriano Teixeira de Souza
 
Padrões de Projeto WEB e o MVC
Padrões de Projeto WEB e o MVCPadrões de Projeto WEB e o MVC
Padrões de Projeto WEB e o MVC
Almir Neto
 
Analisis y diseño diagrama de contexto
Analisis y diseño diagrama de contextoAnalisis y diseño diagrama de contexto
Analisis y diseño diagrama de contexto
Yovana Connie Roca Avila
 
Padrão Arquitetural MVC e suas aplicações para WEB
Padrão Arquitetural MVC e suas aplicações para WEBPadrão Arquitetural MVC e suas aplicações para WEB
Padrão Arquitetural MVC e suas aplicações para WEB
Rafael França
 
Diagrama de contexto
Diagrama de contextoDiagrama de contexto
Diagrama de contexto
COMPUTO1ISTENE
 

Destaque (20)

Arquiteturas usando Pipes and Filters
Arquiteturas usando Pipes and FiltersArquiteturas usando Pipes and Filters
Arquiteturas usando Pipes and Filters
 
Comparativo tecnico entre tecnologias de banco de dados: Relacional, NoSQL, N...
Comparativo tecnico entre tecnologias de banco de dados: Relacional, NoSQL, N...Comparativo tecnico entre tecnologias de banco de dados: Relacional, NoSQL, N...
Comparativo tecnico entre tecnologias de banco de dados: Relacional, NoSQL, N...
 
JAVA REFLETCION
JAVA REFLETCIONJAVA REFLETCION
JAVA REFLETCION
 
Do Quadro Negro à Lousa Digital - possibilidades interativas sobre as telas
Do Quadro Negro à Lousa Digital - possibilidades interativas sobre as telasDo Quadro Negro à Lousa Digital - possibilidades interativas sobre as telas
Do Quadro Negro à Lousa Digital - possibilidades interativas sobre as telas
 
Introdução a Arquitetura Orientada a Serviços
Introdução a Arquitetura Orientada a ServiçosIntrodução a Arquitetura Orientada a Serviços
Introdução a Arquitetura Orientada a Serviços
 
MVC, MVP e MVVM: Uma Comparação de Padrões Arquiteturais
MVC, MVP e MVVM: Uma Comparação de Padrões ArquiteturaisMVC, MVP e MVVM: Uma Comparação de Padrões Arquiteturais
MVC, MVP e MVVM: Uma Comparação de Padrões Arquiteturais
 
Uma Breve Introdução ao MongoDB
Uma Breve Introdução ao MongoDBUma Breve Introdução ao MongoDB
Uma Breve Introdução ao MongoDB
 
Classificação de Documentos
Classificação de DocumentosClassificação de Documentos
Classificação de Documentos
 
Padrões-03 - Padrões Arquiteturais - Pipes e Filtros
Padrões-03 - Padrões Arquiteturais - Pipes e FiltrosPadrões-03 - Padrões Arquiteturais - Pipes e Filtros
Padrões-03 - Padrões Arquiteturais - Pipes e Filtros
 
20 diagrama de contexto
20   diagrama de contexto20   diagrama de contexto
20 diagrama de contexto
 
Padrões-04 - Padrões Arquiteturais - Broker
Padrões-04 - Padrões Arquiteturais - BrokerPadrões-04 - Padrões Arquiteturais - Broker
Padrões-04 - Padrões Arquiteturais - Broker
 
Padrões-05 - Padrões Arquiteturais - MVC
Padrões-05 - Padrões Arquiteturais - MVCPadrões-05 - Padrões Arquiteturais - MVC
Padrões-05 - Padrões Arquiteturais - MVC
 
Padrões-02 - Padrões Arquiteturais - Camadas
Padrões-02 - Padrões Arquiteturais - CamadasPadrões-02 - Padrões Arquiteturais - Camadas
Padrões-02 - Padrões Arquiteturais - Camadas
 
Padrões Arquiteturais - MVC, MVP e MVVM
Padrões Arquiteturais - MVC, MVP e MVVMPadrões Arquiteturais - MVC, MVP e MVVM
Padrões Arquiteturais - MVC, MVP e MVVM
 
Padrões-06 - Padrões Arquiteturais - Microkernel
Padrões-06 - Padrões Arquiteturais - MicrokernelPadrões-06 - Padrões Arquiteturais - Microkernel
Padrões-06 - Padrões Arquiteturais - Microkernel
 
Sistemas Distribuídos - Computação Distribuída e Paralela
Sistemas Distribuídos - Computação Distribuída e ParalelaSistemas Distribuídos - Computação Distribuída e Paralela
Sistemas Distribuídos - Computação Distribuída e Paralela
 
Padrões de Projeto WEB e o MVC
Padrões de Projeto WEB e o MVCPadrões de Projeto WEB e o MVC
Padrões de Projeto WEB e o MVC
 
Analisis y diseño diagrama de contexto
Analisis y diseño diagrama de contextoAnalisis y diseño diagrama de contexto
Analisis y diseño diagrama de contexto
 
Padrão Arquitetural MVC e suas aplicações para WEB
Padrão Arquitetural MVC e suas aplicações para WEBPadrão Arquitetural MVC e suas aplicações para WEB
Padrão Arquitetural MVC e suas aplicações para WEB
 
Diagrama de contexto
Diagrama de contextoDiagrama de contexto
Diagrama de contexto
 

Semelhante a Arquitetura de Software

Visão Geral Arquiteturade Software
Visão Geral Arquiteturade SoftwareVisão Geral Arquiteturade Software
Visão Geral Arquiteturade Software
elliando dias
 
Arquitetura de software - Introdução
Arquitetura de software - IntroduçãoArquitetura de software - Introdução
Arquitetura de software - Introdução
Sergio Crespo
 
Aula15 arquitetura software_01_introducao-convertido
Aula15 arquitetura software_01_introducao-convertidoAula15 arquitetura software_01_introducao-convertido
Aula15 arquitetura software_01_introducao-convertido
Ana Claudia Annunciação
 
Resumo capítulo 1 livro Engenharia de Software Moderna
Resumo capítulo 1 livro Engenharia de Software ModernaResumo capítulo 1 livro Engenharia de Software Moderna
Resumo capítulo 1 livro Engenharia de Software Moderna
LucasBastos305659
 
1.pdf
1.pdf1.pdf
(CONSTRUÇÃO2) Engenharia de Software_ADRIANA.pptx
(CONSTRUÇÃO2) Engenharia de Software_ADRIANA.pptx(CONSTRUÇÃO2) Engenharia de Software_ADRIANA.pptx
(CONSTRUÇÃO2) Engenharia de Software_ADRIANA.pptx
DVDGlash
 
Aula4-modelagem e uml
Aula4-modelagem e umlAula4-modelagem e uml
Aula4-modelagem e uml
neilaxavier
 
APSI 2 aulas - padroes arquiteturais - camadas PROF.TARCIANE
APSI 2   aulas  - padroes arquiteturais - camadas PROF.TARCIANEAPSI 2   aulas  - padroes arquiteturais - camadas PROF.TARCIANE
APSI 2 aulas - padroes arquiteturais - camadas PROF.TARCIANE
Fco Edilson Nascimento
 
Programação Oritentada a Aspecto
Programação Oritentada a AspectoProgramação Oritentada a Aspecto
Programação Oritentada a Aspecto
Benicio Ávila
 
Arquitetura de Software em Equipes Ágeis
Arquitetura de Software em Equipes ÁgeisArquitetura de Software em Equipes Ágeis
Arquitetura de Software em Equipes Ágeis
Joao Paulo Oliveira dos Santos
 
Engenharia de Software - Wikipedia
Engenharia de Software - WikipediaEngenharia de Software - Wikipedia
Engenharia de Software - Wikipedia
Robson Silva Espig
 
Apresentação da UML
Apresentação da UMLApresentação da UML
Apresentação da UML
Eliseu Castelo
 
Padrões de Projeto de Software
Padrões de Projeto de SoftwarePadrões de Projeto de Software
Padrões de Projeto de Software
Fabio Moura Pereira
 
Padroes De Projeto
Padroes De ProjetoPadroes De Projeto
Padroes De Projeto
ejdn1
 
Aula Teste Fatec Engenharia de Software III
Aula Teste  Fatec Engenharia de Software IIIAula Teste  Fatec Engenharia de Software III
Aula Teste Fatec Engenharia de Software III
Dalton Martins
 
Arquitetura software
Arquitetura softwareArquitetura software
Arquitetura software
Fábio Nogueira de Lucena
 
Logica de Programação Vitor Jose de Souza.pptx
Logica de Programação Vitor Jose de Souza.pptxLogica de Programação Vitor Jose de Souza.pptx
Logica de Programação Vitor Jose de Souza.pptx
JoseVitorSantanadeMe
 
UMLIntro.pptx
UMLIntro.pptxUMLIntro.pptx
UMLIntro.pptx
RicardoMarciano5
 
Apresentação - POA
Apresentação - POAApresentação - POA
Apresentação - POA
Rafael Mathias
 
Documentação de Arquitetura de Software Aplicando o C4 Model
Documentação de Arquitetura  de Software Aplicando o C4 ModelDocumentação de Arquitetura  de Software Aplicando o C4 Model
Documentação de Arquitetura de Software Aplicando o C4 Model
Douglas Alonso
 

Semelhante a Arquitetura de Software (20)

Visão Geral Arquiteturade Software
Visão Geral Arquiteturade SoftwareVisão Geral Arquiteturade Software
Visão Geral Arquiteturade Software
 
Arquitetura de software - Introdução
Arquitetura de software - IntroduçãoArquitetura de software - Introdução
Arquitetura de software - Introdução
 
Aula15 arquitetura software_01_introducao-convertido
Aula15 arquitetura software_01_introducao-convertidoAula15 arquitetura software_01_introducao-convertido
Aula15 arquitetura software_01_introducao-convertido
 
Resumo capítulo 1 livro Engenharia de Software Moderna
Resumo capítulo 1 livro Engenharia de Software ModernaResumo capítulo 1 livro Engenharia de Software Moderna
Resumo capítulo 1 livro Engenharia de Software Moderna
 
1.pdf
1.pdf1.pdf
1.pdf
 
(CONSTRUÇÃO2) Engenharia de Software_ADRIANA.pptx
(CONSTRUÇÃO2) Engenharia de Software_ADRIANA.pptx(CONSTRUÇÃO2) Engenharia de Software_ADRIANA.pptx
(CONSTRUÇÃO2) Engenharia de Software_ADRIANA.pptx
 
Aula4-modelagem e uml
Aula4-modelagem e umlAula4-modelagem e uml
Aula4-modelagem e uml
 
APSI 2 aulas - padroes arquiteturais - camadas PROF.TARCIANE
APSI 2   aulas  - padroes arquiteturais - camadas PROF.TARCIANEAPSI 2   aulas  - padroes arquiteturais - camadas PROF.TARCIANE
APSI 2 aulas - padroes arquiteturais - camadas PROF.TARCIANE
 
Programação Oritentada a Aspecto
Programação Oritentada a AspectoProgramação Oritentada a Aspecto
Programação Oritentada a Aspecto
 
Arquitetura de Software em Equipes Ágeis
Arquitetura de Software em Equipes ÁgeisArquitetura de Software em Equipes Ágeis
Arquitetura de Software em Equipes Ágeis
 
Engenharia de Software - Wikipedia
Engenharia de Software - WikipediaEngenharia de Software - Wikipedia
Engenharia de Software - Wikipedia
 
Apresentação da UML
Apresentação da UMLApresentação da UML
Apresentação da UML
 
Padrões de Projeto de Software
Padrões de Projeto de SoftwarePadrões de Projeto de Software
Padrões de Projeto de Software
 
Padroes De Projeto
Padroes De ProjetoPadroes De Projeto
Padroes De Projeto
 
Aula Teste Fatec Engenharia de Software III
Aula Teste  Fatec Engenharia de Software IIIAula Teste  Fatec Engenharia de Software III
Aula Teste Fatec Engenharia de Software III
 
Arquitetura software
Arquitetura softwareArquitetura software
Arquitetura software
 
Logica de Programação Vitor Jose de Souza.pptx
Logica de Programação Vitor Jose de Souza.pptxLogica de Programação Vitor Jose de Souza.pptx
Logica de Programação Vitor Jose de Souza.pptx
 
UMLIntro.pptx
UMLIntro.pptxUMLIntro.pptx
UMLIntro.pptx
 
Apresentação - POA
Apresentação - POAApresentação - POA
Apresentação - POA
 
Documentação de Arquitetura de Software Aplicando o C4 Model
Documentação de Arquitetura  de Software Aplicando o C4 ModelDocumentação de Arquitetura  de Software Aplicando o C4 Model
Documentação de Arquitetura de Software Aplicando o C4 Model
 

Mais de Aricelio Souza

Testes de Caixa Branca e Métricas de Código
Testes de Caixa Branca e Métricas de CódigoTestes de Caixa Branca e Métricas de Código
Testes de Caixa Branca e Métricas de Código
Aricelio Souza
 
Metodologia Ágil Scrum
Metodologia Ágil ScrumMetodologia Ágil Scrum
Metodologia Ágil Scrum
Aricelio Souza
 
Tipos de Servidores
Tipos de ServidoresTipos de Servidores
Tipos de Servidores
Aricelio Souza
 
Padrões de projeto - Martin Fowler - P of EAA
Padrões de projeto - Martin Fowler - P of EAAPadrões de projeto - Martin Fowler - P of EAA
Padrões de projeto - Martin Fowler - P of EAA
Aricelio Souza
 
Sistemas NoSQL, surgimento, características e exemplos
Sistemas NoSQL, surgimento, características e exemplosSistemas NoSQL, surgimento, características e exemplos
Sistemas NoSQL, surgimento, características e exemplos
Aricelio Souza
 
Ataques DOS, DDOS e Scamming
Ataques DOS, DDOS e ScammingAtaques DOS, DDOS e Scamming
Ataques DOS, DDOS e Scamming
Aricelio Souza
 
Documentação Ataques DOS, DDOS e Scamming
Documentação Ataques DOS, DDOS e ScammingDocumentação Ataques DOS, DDOS e Scamming
Documentação Ataques DOS, DDOS e Scamming
Aricelio Souza
 
NoSQL, Base VS ACID e Teorema CAP
NoSQL, Base VS ACID e Teorema CAPNoSQL, Base VS ACID e Teorema CAP
NoSQL, Base VS ACID e Teorema CAP
Aricelio Souza
 

Mais de Aricelio Souza (8)

Testes de Caixa Branca e Métricas de Código
Testes de Caixa Branca e Métricas de CódigoTestes de Caixa Branca e Métricas de Código
Testes de Caixa Branca e Métricas de Código
 
Metodologia Ágil Scrum
Metodologia Ágil ScrumMetodologia Ágil Scrum
Metodologia Ágil Scrum
 
Tipos de Servidores
Tipos de ServidoresTipos de Servidores
Tipos de Servidores
 
Padrões de projeto - Martin Fowler - P of EAA
Padrões de projeto - Martin Fowler - P of EAAPadrões de projeto - Martin Fowler - P of EAA
Padrões de projeto - Martin Fowler - P of EAA
 
Sistemas NoSQL, surgimento, características e exemplos
Sistemas NoSQL, surgimento, características e exemplosSistemas NoSQL, surgimento, características e exemplos
Sistemas NoSQL, surgimento, características e exemplos
 
Ataques DOS, DDOS e Scamming
Ataques DOS, DDOS e ScammingAtaques DOS, DDOS e Scamming
Ataques DOS, DDOS e Scamming
 
Documentação Ataques DOS, DDOS e Scamming
Documentação Ataques DOS, DDOS e ScammingDocumentação Ataques DOS, DDOS e Scamming
Documentação Ataques DOS, DDOS e Scamming
 
NoSQL, Base VS ACID e Teorema CAP
NoSQL, Base VS ACID e Teorema CAPNoSQL, Base VS ACID e Teorema CAP
NoSQL, Base VS ACID e Teorema CAP
 

Último

Gestão de dados: sua importância e benefícios
Gestão de dados: sua importância e benefíciosGestão de dados: sua importância e benefícios
Gestão de dados: sua importância e benefícios
Rafael Santos
 
Orientações para utilizar Drone no espaço Brasil
Orientações para utilizar Drone no espaço BrasilOrientações para utilizar Drone no espaço Brasil
Orientações para utilizar Drone no espaço Brasil
EliakimArajo2
 
Como fui de 0 a lead na gringa em 3 anos.pptx
Como fui de 0 a lead na gringa em 3 anos.pptxComo fui de 0 a lead na gringa em 3 anos.pptx
Como fui de 0 a lead na gringa em 3 anos.pptx
tnrlucas
 
Teoria de redes de computadores redes .doc
Teoria de redes de computadores redes .docTeoria de redes de computadores redes .doc
Teoria de redes de computadores redes .doc
anpproferick
 
Por que escolhi o Flutter - Campus Party Piauí.pdf
Por que escolhi o Flutter - Campus Party Piauí.pdfPor que escolhi o Flutter - Campus Party Piauí.pdf
Por que escolhi o Flutter - Campus Party Piauí.pdf
Ian Oliveira
 
PRATICANDO O SCRUM Scrum team, product owner
PRATICANDO O SCRUM Scrum team, product ownerPRATICANDO O SCRUM Scrum team, product owner
PRATICANDO O SCRUM Scrum team, product owner
anpproferick
 
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Annelise Gripp
 

Último (7)

Gestão de dados: sua importância e benefícios
Gestão de dados: sua importância e benefíciosGestão de dados: sua importância e benefícios
Gestão de dados: sua importância e benefícios
 
Orientações para utilizar Drone no espaço Brasil
Orientações para utilizar Drone no espaço BrasilOrientações para utilizar Drone no espaço Brasil
Orientações para utilizar Drone no espaço Brasil
 
Como fui de 0 a lead na gringa em 3 anos.pptx
Como fui de 0 a lead na gringa em 3 anos.pptxComo fui de 0 a lead na gringa em 3 anos.pptx
Como fui de 0 a lead na gringa em 3 anos.pptx
 
Teoria de redes de computadores redes .doc
Teoria de redes de computadores redes .docTeoria de redes de computadores redes .doc
Teoria de redes de computadores redes .doc
 
Por que escolhi o Flutter - Campus Party Piauí.pdf
Por que escolhi o Flutter - Campus Party Piauí.pdfPor que escolhi o Flutter - Campus Party Piauí.pdf
Por que escolhi o Flutter - Campus Party Piauí.pdf
 
PRATICANDO O SCRUM Scrum team, product owner
PRATICANDO O SCRUM Scrum team, product ownerPRATICANDO O SCRUM Scrum team, product owner
PRATICANDO O SCRUM Scrum team, product owner
 
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
Ferramentas e Técnicas para aplicar no seu dia a dia numa Transformação Digital!
 

Arquitetura de Software

  • 1. Arquitetura de Software Aricélio de Souza Fernandes Disciplina: Engenharia de Software Prof.: Danilo Nunes 4º Período - TADS
  • 2. Sumário O que é Arquitetura. O que é Software. O que é Arquitetura de Software. Arquiteturas existentes. Exemplos. Conclusão.
  • 3. O que é Arquitetura? A arquitetura significa construção, e refere-se à arte ou a técnica de projetar uma edificação ou um ambiente de uma construção. A arquitetura é a arte de projetar espaços organizados e criativos para abrigar os diferentes tipos de atividades humanas.
  • 4. O que é Software? Software é um agrupamento de comandos escritos em uma linguagem de programação. Estes comandos, ou instruções, criam as ações dentro do programa, e permitem seu funcionamento. Cada ação é determinada por uma sequencia, e cada sequencia se agrupa para formar o programa em si. Estes comandos se unem, criando um programa complexo.
  • 5. O que é Arquitetura de Software? A arquitetura de software de um sistema consiste na definição dos componentes de software, suas propriedades externas, e seus relacionamentos com outros softwares. O termo também se refere à documentação da arquitetura de software do sistema. A documentação da arquitetura do software facilita: a comunicação entre os stakeholders, registra as decisões iniciais acerca do projeto de alto-nível, e permite o reuso do projeto dos componentes e padrões entre projetos.
  • 6. O que é Stakeholders? Os stakeholders são elementos essenciais ao planejamento estratégico de negócios. De maneira mais ampla, compreende todos os envolvidos em um processo, que pode ser de caráter temporário (como um projeto) ou duradouro (como o negócio de uma empresa ou a missão de uma organização).
  • 7.
  • 8. As primeiras tentativas de capturar e explicar a arquitetura de software do sistema foram imprecisas e desorganizadas. Durante o decorrer da década de 90 houve um esforço concentrado para definir e codificar os aspectos fundamentais desta disciplina. Inicialmente um conjunto de padrões de projeto, estilo, melhores práticas, descrição de linguagens, e lógica formal foram desenvolvidas durante este período.
  • 9. A arquitetura de software é centrada na ideia da redução da complexidade através da abstração e separação de interesses. O glossário do site oficial SOFTWARE ENGINEERING INSTITUTE (Instituto de Engenharia de Software) descreve que arquitetura de software é a estrutura ou estruturas de um sistema, com todos os elementos de software vendo e tendo suas propriedades vistas por todos os outros elementos e relacionamentos.
  • 10. Linguagem de descrição de arquitetura  As Linguagens de descrição de arquitetura (LDAs) são usadas para descrever a arquitetura de software. Várias LDAs distintas foram desenvolvidas por diferentes organizações, incluindo:  Wright (desenvolvido por Carnegie Mellon).  Acme (desenvolvido por Carnegie Mellon).  xADL (desenvolvido por UCI).  Darwin (desenvolvido por Imperial College London).  DAOP-ADL (desenvolvido pela University of Málaga). Elementos comuns de uma LDA são componente, conexão e configuração.
  • 11. Visões A arquitetura de software é normalmente organizada em visões, as quais são análogas aos diferentes tipos de plantas utilizadas no estabelecimento da arquitetura. Na Ontologia estabelecida pela ANSI/IEEE 1471-2000, visões são instâncias de pontos de vista, onde cada ponto de vista existe para descrever a arquitetura na perspectiva de um conjunto de stakeholders e seus consortes.
  • 12. Algumas possíveis visões são: Visão funcional/lógica Visão de código. Visão de desenvolvimento/estrutural Visão de concorrência/processo/thread Visão física/evolutiva Visão de ação do usuário/retorno
  • 13. Várias linguagens para descrição da arquitetura de software foram inventadas, mas nenhum consenso foi ainda alcançado em relação a qual conjunto de símbolos ou sistema de representação deve ser adotado.
  • 14. Alguns acreditam que a UML irá estabelecer um padrão para representação de arquitetura de software. Outros acreditam que os desenvolvimentos efetivos de software devem contar com a compreensão única das restrições de cada problema, e notações tão universais são condenadas a um final infeliz porque cada uma provê uma notação diferenciada que necessariamente torna a notação inútil ou perigosa para alguns conjuntos de tarefas.
  • 15. Padrões de Arquitetura DODAF MODAF TOGAF Zachman framework Federal Enterprise Architecture
  • 16. Exemplos de arquitetura  Cliente-Servidor  Computação distribuída  P2P  Quadro Negro  Criação implícita  Pipes e filtros  Plugin  Aplicação monolítica  Modelo em três camadas  Analise de sistema estruturada (baseada em módulos, mas usualmente monolíticas em dentro dos módulos)  Arquitetura orientada a serviço  Arquitetura orientada a busca
  • 17. Conclusão A arquitetura vem pra auxiliar no processo de desenvolvimento do software. Não há como dizer que uma arquitetura é melhor que outra, mas sim qual mais se adequa ao problema.