Buscar

ARQUITETURA DE SOFTWARE - AULA01

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 51 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 51 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 51 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Arquitetura de Software
Aula 1
Prof. Daniel Silos – 1ª edição – 2020
E-mail: daniel.moraes@ibmr.br
Prof. Daniel Silos – daniel.moraes@ibmr.br 1
mailto:Daniel.Moraes@ibmr.br
Prof. Daniel Silos – daniel.moraes@ibmr.br 2
Sejam bem-vindos!
Análise e Desenvolvimento de Sistemas
Arquitetura de Software
2020.2
Prof. Daniel Silos – daniel.moraes@ibmr.br 3
Prof. Daniel Rodrigues de Silos Moraes
daniel.moraes@ibmr.br
Mestre em Ciências pela COPPE/UFRJ na área de Sistemas 
Computacionais
Prof. Daniel Silos – daniel.moraes@ibmr.br 4
N o s s o CRONOGRAMA
Semanas Segundas Seg Ter Qua Qui Sex Sáb
1 1 24/ago 25/ago 26/ago 27/ago 28/ago 29/ago
2 2,3 31/ago 01/set 02/set 03/set 04/set 05/set
3 07/set 08/set 09/set 10/set 11/set 12/set
4 3,4 14/set 15/set 16/set 17/set 18/set 19/set Legenda Significado
5 5,6 21/set 22/set 23/set 24/set 25/set 26/set Feriado
6 6,7 28/set 29/set 30/set 01/out 02/out 03/out A1
7 8,9 05/out 06/out 07/out 08/out 09/out 10/out A2
8 12/out 13/out 14/out 15/out 16/out 17/out Vista A2
9 19/out 20/out 21/out 22/out 23/out 24/out Substitutiva
10 10, 11 26/out 27/out 28/out 29/out 30/out 31/out
11 02/nov 03/nov 04/nov 05/nov 06/nov 07/nov
12 11, 12 09/nov 10/nov 11/nov 12/nov 13/nov 14/nov
13 12, 13 16/nov 17/nov 18/nov 19/nov 20/nov 21/nov
14 14 e 15 23/nov 24/nov 25/nov 26/nov 27/nov 28/nov
15 15, 16 30/nov 01/dez 02/dez 03/dez 04/dez 05/dez
16 07/dez 08/dez 09/dez 10/dez 11/dez 12/dez
17 14/dez 15/dez 16/dez 17/dez 18/dez 19/dez
18 21/dez 22/dez 23/dez
Sistema de Avaliações
D I S C I P L I N A S
TEÓRICAS e TEÓRICO-PRÁTICAS
N1
PESO 
4
N2
PESO 
6
A2 – AVALIAÇÃO(ÕES) A SER(EM) DEFINIDA(S) DE ACORDO COM OS 
OBJETIVOS DE APRENDIZAGEM (9,0 pontos) + APS (1,0 ponto)
Ou
SUB – AVALIAÇÃO SUBSTITUTIVA (APENAS se o aluno não realizar a 
A2 ou não alcançar a média 6,0 na disciplina. Substitui a nota da A2 quando a nota 
da SUB for superior)
0  10
CÁLCULO MÉDIA FINAL (MF) (N1*0,4) + (N2*0,6)
M O D A L I D A D E
PRESENCIAL
A1 – AVALIAÇÃO(ÕES) A SER(EM) 
DEFINIDA(S) DE ACORDO COM OS OBJETIVOS 
DE APRENDIZAGEM
0  10
APS
ANEXO APS
As atividades práticas supervisionadas (APS) compreendem atividades individuais
ou em grupo que prevêem a aplicação prática do que foi lecionado nas disciplinas.
Sa ̃o integralizadas a ̀ carga horária da disciplina conforme dispositivo legal definido
pelo Ministério da Educaça ̃o (MEC).
Atividade Prática Supervisionada tem como objetivos proporcionar a você
estudante:
• A aplicação dos conhecimentos adquiridos na disciplina;
• O desenvolvimento da sua autonomia no cumprimento das tarefas, mediante
supervisão;
• A corresponsabilidade pelo seu aprendizado;
• A contextualização das especificações da área de conhecimento e/ou mercado
de trabalho.
APS
AUTOAVALIAÇÃO
As estratégias metacognitivas integram o desenvolvimento de competências que
implicam não somente a assimilação de novos conteúdos, mas principalmente a
tomada de consciência, da autoanálise e do autojulgamento dos processos
cognitivos, por meio dos quais o estudante pode decidir como melhor realizar
atividades ou alicerçar novas aprendizagens.
Ao assumir o controle e acompanhamento de sua própria aprendizagem, você
desenvolverá sua autonomia pedagógica, autoavaliando o processo de
aprendizagem na construção da Atividade Prática Supervisionada dessa disciplina.
Datas
IMPORTANTES
A1 
19/10
A2 
07/12
Nossa Biblioteca... 
Nossas
BIBLIOTECAS
Acervo eletrônico:
ibmr.br/biblioteca 
Acesso com login 
e senha
http://bib.unifacs.br/
http://bib.unifacs.br/
Nossas Aulas Remotas...
Aulas
REMOTAS
 Fique atento ao Mural de Avisos. Lá você encontrará todas as principais informações da sua 
disciplina.
 Ingresse pontualmente na aula. Atrasos atrapalham a dinâmica da aula e pode comprometer o andamento 
da disciplina.
 As avaliações podem ser acessadas em Atividades.
 Os materiais da disciplina poderão ser acessados em Material de Aulas.
Aulas
REMOTAS
Principais informações 
da disciplina Material de estudo postado pelo 
seu professor
Aqui você acessa suas 
avaliações para realizá-las
Aqui você verifica suas notas e 
provas já realizadas 
Acesso às aulas remotamente
Acesso às aulas gravadas pelo seu 
professor e ao link de registro de 
presença (frequência mínima para 
aprovação: 75%)
Finalmente, vamos 
começar...
O que é Arquitetura?
Dicionário Aurélio Digital (Android ou IOS)
“Arte de criar espaços organizados e animados, por 
meio do agenciamento urbano e da edificação, para 
abrigar os diferentes tipos de atividades humanas.”
“Disposições das partes ou elementos de um edifício 
ou espaço urbano.”
Prof. Daniel Silos – daniel.moraes@ibmr.br 16
Dicionário Aurélio Digital (Android ou IOS)
“A estrutura e organização lógica de funcionamento 
de um sistema computacional”
Prof. Daniel Silos – daniel.moraes@ibmr.br 17
O que é Arquitetura?
O que é Arquitetura?
 Antes de continuar é importante ressaltar 
(relembrar):
 Temos dois significados para a palavra projeto na língua 
portuguesa
 Em inglês, temos duas: PROJECT e DESIGN
 PROJECT -> projeto como um todo
Projeto vs. Processo
 DESIGN -> projeto, desenho. System design, por 
exemplo, é um esquema que na faz parte da 
modelagem de sistema após a etapa de análise deste. 
Prof. Daniel Silos – daniel.moraes@ibmr.br 18
Ementa da disciplina
Define e documenta arquitetura de software,
seus componentes, frameworks e estilos
arquiteturais. Estuda as arquiteturas
específicas de domínio, as linguagens de
descrição de arquitetura, ferramentas e o
desenvolvimento baseado em componentes.
Prof. Daniel Silos – daniel.moraes@ibmr.br 19
OBJETIVOS DE APRENDIZAGEM
1. Analisar os tipos de arquitetura de software.
2. Criar os componentes de uma arquitetura.
3. Analisar e escolher o melhor tipo de arquitetura a
partir de uma necessidade
Prof. Daniel Silos – daniel.moraes@ibmr.br 20
4. Avaliar os principais frameworks e estilos
arquiteturais.
5. Analisar as arquiteturas específicas de domínio e
aplicar linguagens de descrição de arquitetura.
6. Aplicar ferramentas para o desenvolvimento
baseado em componentes.
Prof. Daniel Silos – daniel.moraes@ibmr.br 21
OBJETIVOS DE APRENDIZAGEM
Introdução à Arquitetura de 
Software
 1 – Conceituar Arquitetura.
 2 - Apontar a importância da arquitetura de software.
 3 - Analisar descrições de arquitetura.
 4 - Aplicar decisões de arquitetura.
Prof. Daniel Silos – daniel.moraes@ibmr.br 22
Voltando ao “o que é Arquitetura?”
Arquitetura é construção, porém construção 
concebida com o propósito primordial de 
ordenar e organizar o espaço para 
determinada finalidade e visando a 
determinada intenção. 
Prof. Daniel Silos – daniel.moraes@ibmr.br 23
Voltando ao “o que é Arquitetura?”
Arquitetura é construção, porém construção 
concebida com o propósito primordial de 
ordenar e organizar o espaço para 
determinada finalidade e visando a 
determinada intenção. 
Prof. Daniel Silos – daniel.moraes@ibmr.br 24
E quando a arquitetura falha?
Prof. Daniel Silos – daniel.moraes@ibmr.br 25
Falha no Projeto
E quando a arquitetura falha?
Prof. Daniel Silos – daniel.moraes@ibmr.br 26
Falha na Construção
E quando não há um arquiteto?
Prof. Daniel Silos – daniel.moraes@ibmr.br 27
Mas quando o arquiteto é bom...
Prof. Daniel Silos – daniel.moraes@ibmr.br 28
O que é Arquitetura de Software?
 Pode ser definida como a forma de divisão de um sistema de 
software em componentes, na organização e estrutura desses 
componentes e no modo como estes componentes se 
comunicam entre si e como o software se comunica com seu 
ambiente externo. 
 Ambiente externo pode ter:
 usuários que vão inserir dados e/ou receber informações do 
software 
 outros softwares que necessitam enviar dados ou receber 
informações deste software
Prof. Daniel Silos – daniel.moraes@ibmr.br 29
O que é Arquitetura de Software?
 É também algo mais. 
 Múltiplas e muitas (milhares) de decisões, grandes e 
pequenas.
 Algumas decisões são tomadasbem no início do projeto 
(project) e podem gerar impacto profundo sobre ações 
subsequentes. 
 Outras decisões são adiadas ao máximo, eliminando, 
portanto, restrições que levariam a uma implementação 
inadequada do estilo arquitetônico. 
Prof. Daniel Silos – daniel.moraes@ibmr.br 30
Objetivos Gerais da arquitetura de 
software
“A arquitetura não é o software operacional. É uma 
representação que nos permite (1) analisar a 
efetividade do projeto (project) no atendimento dos 
requisitos declarados, (2) considerar alternativas de 
arquitetura em um estágio em que fazer mudanças de 
projeto ainda é relativamente fácil e (3) reduzir os 
riscos associados à construção do software.” 
(PRESSMAN)
Prof. Daniel Silos – daniel.moraes@ibmr.br 31
Projeto de Arquitetura
“Projeto é uma atividade preocupada com a tomada de 
decisões importantes, frequentemente de natureza estrutural. 
Ele divide com a programação a responsabilidade de abstrair a 
representação de informações e de sequências de 
processamento, porém o nível de detalhe é bastante diverso 
nos extremos. Um projeto constrói representações de 
programas coerentes e bem planejadas, que se concentram nas 
inter-relações das partes em um alto nível e nas operações 
lógicas envolvidas em níveis mais baixos.” 
Freeman
Prof. Daniel Silos – daniel.moraes@ibmr.br 32
Projeto de Arquitetura
 Alguns especialistas fazem distinção entre as ações 
associadas à obtenção de uma arquitetura de software 
(“projeto de arquitetura”) e as ações aplicadas para obter o 
projeto de software.
 Para alguns deles, projeto (design) é uma instância de uma 
arquitetura, da mesma forma que um objeto é uma instância 
de uma classe.
 Ex: Podemos escolher uma arquitetura cliente/servidor e 
criar diversos possíveis projetos baseados nela. Em um 
podemos desenvolver na plataforma Java (Java EE), em 
outro Microsoft (.NET framework).
Prof. Daniel Silos – daniel.moraes@ibmr.br 33
Projeto de Arquitetura
 Pressman concorda que um projeto de software seja uma 
instância de uma arquitetura de software específica, todavia 
os elementos e estruturas definidos como parte de uma 
arquitetura são a raiz de todo o projeto (design). 
 Um projeto de arquitetura se inicia com uma consideração 
de arquitetura, na fase inicial de qualquer projeto (project) 
de software.
Prof. Daniel Silos – daniel.moraes@ibmr.br 34
Quem é responsável pelo trabalho?
 O “arquiteto de sistemas” escolhe um estilo de arquitetura 
apropriado com base nos requisitos obtidos durante a análise 
de requisitos. (PRESSMAN)
 Mas o arquiteto é um cargo ou um papel?
 Qual a diferença entre um programador, um desenvolvedor, 
um engenheiro de software e um arquiteto de software?
Prof. Daniel Silos – daniel.moraes@ibmr.br 35
Por que o trabalho é importante?
 Sem o projeto seria como construir uma casa sem uma 
planta. 
 Não há como desenhar uma planta iniciando-se da 
distribuição de encanamentos ou da fiação elétrica.
 A partir de um contexto geral (a casa) parte-se para os 
detalhes.
 O projeto de arquitetura é justamente isso, fornece uma 
visão geral para garantir a compreensão do que se deseja 
construir. 
Prof. Daniel Silos – daniel.moraes@ibmr.br 36
Por que o trabalho é importante?
Prof. Daniel Silos – daniel.moraes@ibmr.br 37
Por que o trabalho é importante?
Prof. Daniel Silos – daniel.moraes@ibmr.br 38
Quais as etapas?
1. Projeto de dados
2. Uma ou mais representações da estrutura de arquitetura do 
sistema
3. Análise de estilos ou padrões de arquitetura alternativos 
tomando-se a decisão de qual estrutura é mais adequada 
aos requisitos do cliente, focando-se na qualidade. 
4. Após a escolha da alternativa, a arquitetura é elaborada –
método de projeto de arquitetura.
Prof. Daniel Silos – daniel.moraes@ibmr.br 39
O que se constrói?
 Um modelo que engloba a arquitetura de dados e a estrutura 
dos programas.
 Descrição das propriedades e relações (interações) entre os 
componentes. 
Prof. Daniel Silos – daniel.moraes@ibmr.br 40
Como garantir o trabalho correto?
 A cada estágio são revisados os produtos resultantes do 
projeto de software
 Clareza
 Correção
 Completude
 Consistência com os requisitos
 Consistência entre si
Prof. Daniel Silos – daniel.moraes@ibmr.br 41
Desde quando existe preocupação com 
arquitetura de software?
 Desde que o primeiro programa foi dividido em 
módulos.
 Programadores passaram a ser responsáveis pelas 
interações entre os módulos e as propriedades 
globais do conjunto. 
 Arquiteturas implícitas. 
 Os bons desenvolvedores adotavam um ou mais 
padrões de arquitetura para a organização de 
sistemas, mas os usavam informalmente.
 O conhecimento era tácito e não explícito.
Prof. Daniel Silos – daniel.moraes@ibmr.br 42
Desde quando existe preocupação com 
arquitetura de software?
Devido a crescente complexidade dos 
softwares, arquitetura de software eficiente 
e sua representação explícita tornaram-se 
temas dominantes em engenharia de software
Prof. Daniel Silos – daniel.moraes@ibmr.br 43
Decisões aplicadas a arquitetura de 
software
Decisões levam em consideração diversos 
fatores envolvidos com qualidade, escolha de 
linguagem / framework, paradigma, 
reutilização, etc.
Segurança
Desempenho
Usabilidade
Manutenibilidade
Prof. Daniel Silos – daniel.moraes@ibmr.br 44
Exercícios
1. Na engenharia de software, qual a diferença 
entre um projeto (project)de software, um 
projeto de sistemas (design) e um projeto de 
arquitetura de um software (design).
2. Qual a etapa sucessora do projeto de 
sistema e do projeto de arquitetura?
Prof. Daniel Silos – daniel.moraes@ibmr.br 45
Exercícios
3. Defina Arquitetura de Software com suas 
palavras.
4. Descreva sobre a importância desta 
atividade, com suas próprias palavras.
Prof. Daniel Silos – daniel.moraes@ibmr.br 46
Exercícios
5. Quais fatores são levados em consideração 
na tomada de decisões em arquitetura de 
software?
6. Projeto de arquitetura de software é 
fortemente conectado a ideia de design, mas 
todo design tem a ver arquitetura de software?
Prof. Daniel Silos – daniel.moraes@ibmr.br 47
Introdução à Arquitetura de 
Software
 1 – Conceituar Arquitetura.
 2 - Apontar a importância da arquitetura de software.
 3 - Analisar descrições de arquitetura.
 4 - Aplicar decisões de arquitetura.
Prof. Daniel Silos – daniel.moraes@ibmr.br 48
Próxima aula
Estudaremos na próxima aula:
2 - GÊNEROS E ESTILOS DE ARQUITETURA
 Gêneros e estilos de arquitetura
 Padrões de arquitetura 
PRESSMAN, R. Engenharia de Software. [Recurso eletrônico, 
Minha Biblioteca]. 8ª ed. BOOKMAN, 2016. Capítulo 13, item 
13.2 a 13.4.
SOMMERVILLE, I. Engenharia de Software. [Recurso 
eletrônico, Biblioteca Virtual Universitária 3.0]. 9ª ed. 
SARAIVA, 2011. Capítulo 6, item 6.2 a 6.4.
Prof. Daniel Silos – daniel.moraes@ibmr.br 49
Próxima aula
Estudaremos na próxima aula:
3 - DECISÕES SOBRE ARQUITETURA
 Como as decisões sobre a arquitetura afetam o desenvolvimento de 
um sistema
 Questões a serem consideradas para escolha da arquitetura
PRESSMAN, R. Engenharia de Software. [Recurso eletrônico, Minha 
Biblioteca]. 8ª ed. BOOKMAN, 2016. Capítulo 13, item 13.5 e 13.11.
SOMMERVILLE, I. Engenharia de Software. [Recurso eletrônico, 
Biblioteca Virtual Universitária 3.0]. 9ª ed. SARAIVA, 2011. Capítulo 
6, item 6.1.
Prof. Daniel Silos – daniel.moraes@ibmr.br 50
Referências
 Casa com escada multifuncional
 https://ciclovivo.com.br/arq-urb/arquitetura/arquiteto-
sulcoreano-projeta-casa-com-escada-multifuncional/
 Pressman,Roger. Engenharia de Software Cap. 13 – Sessão 
13.1. Edição do Kindle. 
Prof. Daniel Silos – daniel.moraes@ibmr.br 51
https://ciclovivo.com.br/arq-urb/arquitetura/arquiteto-sulcoreano-projeta-casa-com-escada-multifuncional/
	Arquitetura de Software�Aula 1
	Número do slide 2
	Número do slide 3
	Número do slide 4
	Número do slide 5
	Número do slide 6
	Número do slide 7
	Número do slide 8Número do slide 9
	Número do slide 10
	Número do slide 11
	Número do slide 12
	Número do slide 13
	Número do slide 14
	Número do slide 15
	O que é Arquitetura?
	O que é Arquitetura?
	O que é Arquitetura?
	Ementa da disciplina
	OBJETIVOS DE APRENDIZAGEM
	OBJETIVOS DE APRENDIZAGEM
	Introdução à Arquitetura de Software
	Voltando ao “o que é Arquitetura?”
	Voltando ao “o que é Arquitetura?”
	E quando a arquitetura falha?
	E quando a arquitetura falha?
	E quando não há um arquiteto?
	Mas quando o arquiteto é bom...
	O que é Arquitetura de Software?
	O que é Arquitetura de Software?
	Objetivos Gerais da arquitetura de software
	Projeto de Arquitetura
	Projeto de Arquitetura
	Projeto de Arquitetura
	Quem é responsável pelo trabalho?
	Por que o trabalho é importante?
	Por que o trabalho é importante?
	Por que o trabalho é importante?
	Quais as etapas?
	O que se constrói?
	Como garantir o trabalho correto?
	Desde quando existe preocupação com arquitetura de software?
	Desde quando existe preocupação com arquitetura de software?
	Decisões aplicadas a arquitetura de software
	Exercícios
	Exercícios
	Exercícios
	Introdução à Arquitetura de Software
	Próxima aula
	Próxima aula
	Referências

Outros materiais