Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

left-side-bubbles-backgroundright-side-bubbles-background

Crie sua conta grátis para liberar esse material. 🤩

Já tem uma conta?

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

7 
Arquitetura de software, geração automática de documentação e comunicação com o 
usuário 
 
Olá, estudante! 
Nesta semana, finalizaremos os estudos da disciplina Gerência e Qualidade de Software, avançando em seu 
objetivo de “conhecer e aplicar os conceitos práticos relacionados à qualidade de software e as diferentes 
métricas para a sua avaliação”. 
Para isso, nesta semana, finalizaremos os estudos cobrindo três assuntos – arquitetura de software, geração 
automática de documentação e comunicação com o usuário. Usaremos para isso algumas ferramentas e 
exemplos práticos. 
Boa semana de estudo! 
Objetivos de aprendizagem 
Ao final dessa semana, você deverá ser capaz de: 
• Conhecer os principais conceitos relacionados à arquitetura de software e padrões arquiteturais; 
• Conhecer a geração automática de documentação via o uso de ferramenta; 
• Conhecer os principais conceitos relacionados à comunicação com o usuário. 
 
 
Revisitando Conhecimentos 
 
Engenharia de Software - Projeto de arquitetura e visões de arquitetura 
Esta videoaula apresenta uma visão geral sobre as decisões que precisam ser tomadas a respeito da 
arquitetura de sistemas de software durante o projeto. 
Engenharia de Software - Estilos arquiteturais 
Esta videoaula apresenta uma visão geral sobre estilos arquiteturais, ou padrões de arquitetura, que são 
maneiras experimentadas de organizar as arquiteturas de sistemas de software que podem ser usadas em 
diferentes projetos de sistemas. 
 
Orientação de estudos 
 
Nesta semana, há três videoaulas acompanhadas de materiais-base para leitura. A sugestão é que você 
assista a cada uma das videoaulas e, na sequência, o material-base para leitura que está associado. Há 
também materiais de apoio para ajudar a compreender melhor o conteúdo apresentado e entender os 
exemplos apresentados já que o objetivo é que você adquira uma visão prática do conteúdo. 
 
Arquitetura de software e padrões arquiteturais 
ARQUITETURA DE SOFTWARE 
• Projeto de software em mais alto nível. 
• Decisões de projeto mais importantes em um sistema, decisões tomadas no início do desenvolvimento que 
dificilmente poderão ser revertidas no futuro. 
• Decisões incluem linguagem de programação e SGBD. 
• Conjuntos de classes relacionadas: pacotes, componentes, módulos, subsistemas, camadas ou serviços. 
• Unidades de tamanho grande em vez de classes individuais. 
 
PADRÕES ARQUITETURAIS 
Propostas de organização de mais alto nível para sistemas de software: 
Incluir os principais módulos e as relações entre eles. 
Pode definir se um determinado módulo pode ou não usar os serviços de um outro módulo. 
 
ARQUITETURA EM CAMADAS 
• Um dos padrões mais usados. 
• Classes organizadas em camadas hierárquicas. 
• Cada camada só pode usar os serviços da camada imediatamente inferior. 
• Aplicação: protocolos de rede (HTTP/TCP/IP/Ethernet). 
 
ARQUITETURA EM 3 CAMADAS 
Comum em SIs corporativos. 
 
 
MVC (MODEL-VIEW-CONTROLLER) 
Comum em SIs corporativos. 
Favorece abordagem de desenvolvimento front-end x back-end. 
 
 
3 CAMADAS VS. MVC ?! 
 
Frameworks para implementação de sistemas Web que se denominaram frameworks MVC: Spring (para Java), Ruby 
on Rails, Django (para Python) e CakePHP. 
 
MICROSSERVIÇOS 
• Módulos são separados em serviços (processos) distintos, autônomos e independentes (baixo acoplamento). 
• Comunicações ocorrem via interfaces públicas dos módulos. 
• Serviços são executados em diferentes máquinas (servidores). 
 
 
 
ARQUITETURAS ORIENTADAS A MENSAGENS 
• A comunicação entre clientes e servidores é mediada por um terceiro serviço que tem a única função de prover 
uma fila de mensagens. 
• Clientes são produtores de informações, enquanto servidores são consumidores/processadores de informações. 
• Mensagens (FIFO): registro ou objeto. 
• Comunicação assíncrona. 
• Filas (chamadas de brokers de mensagens) precisa ter persistência. 
 
 
ARQUITETURAS PUBLISH/SUBSCRIBE 
• Mensagens são “eventos”. 
• Normalmente publishers e subscribers rodam em máquinas separadas. 
• Comunicação em grupo, assíncrona. 
• Exemplo 
 
 
PERGUNTA 1 
Assinale a alternativa que apresenta o nome de um padrão arquitetural apresentado na videoaula 19 “Arquitetura de 
software e padrões arquiteturais”. 
o o o Arquitetura MCV. 
o o o Arquitetura orientadas a respostas. 
o o o Arquitetura em quatro camadas. 
o o o Arquitetura em anéis. 
o o o Arquitetura baseada em microsserviços. 
Você acertou! Essa é a alternativa correta. Microsserviços são uma forma de garantir que os times de 
desenvolvimento usem somente interfaces públicas de outros sistemas. 
 
GERAÇÃO AUTOMÁTICA DE DOCUMENTAÇÃO 
 
 
 
 
 
 
 
 
 
 
PERGUNTA 1 
A videoaula 20 apresenta uma demonstração de qual ferramenta de geração automática de documentação? 
o o o Swagger. 
o o o Gradle. 
o o o RAML. 
o o o JavaDoc. 
o o o Maven. 
Você acertou! Essa é a alternativa correta. JavaDoc é uma ferramenta geradora de documentação para Java em 
formato HTML. 
 
 
Comunicação com o usuário 
O DESIGN CENTRADO NO USUÁRIO 
• Colocar as necessidades do usuário como um todo no centro das decisões. 
• Não importa se são necessidades de requisitos ou necessidades cognitivas, é preciso pensar no usuário final em 
todo o processo de desenvolvimento. 
• Vários modelos de desenvolvimento incluem a participação do usuário em todo o processo. 
 
PREOCUPAÇÕES 
Não confundir “participação do usuário” com “obrigação do usuário saber todos os problemas e soluções”. 
“Os usuários não são projetistas, e projetistas não são usuários.” (Nielsen, 2019) 
 
• Quando o usuário está envolvido com suas atividades há muito tempo, possuindo uma prática imensa, realiza as 
tarefas de maneira “automática”, sem a necessidade de pensar muito. 
• Estes usuários costumam não levar muito em consideração todas as atividades que realizam, e na hora de passar as 
informações, acabam usando frases muito genéricas como “gostaria de automatizar o controle de estoque” ou “estou 
com um problema no controle”. 
• Informações genéricas são importantes, mas tem pouco significado. 
• Não pergunte diretamente aos usuários “o que eles querem”, pois embora eles saibam que a tecnologia pode 
ajudar a amenizar ou resolver seus problemas, eles não são projetistas. 
• “Se eu perguntasse aos consumidores o que queriam, eles teriam dito: um cavalo mais rápido!” (Henry Ford) 
• “As pessoas não sabem o que elas querem até que você mostre para elas.” (Steve Jobs) 
 
 
O DESIGN CENTRADO NO USUÁRIO (UCD) 
• UCD envolve IHC e Usabilidade 
• Etapas de UCD: 
1. Pesquisa de design 
2. Desenho 
3. Avaliação do desenho 
 
UCD – PESQUISA DE DESIGN 
a) Planejamento: definir stakeholders. 
b) Condução: entrevistas face a face, perguntas abertas e fechadas, entrevistas remotas, entrevista pessoal. 
c) Análise: quantitativa/qualitativa. 
d) Relatório 
 
UCD – DESENHO 
Consolidação das informações obtidas. 
Primeiros desenhos da interface. 
Prototipagem. 
 
UCD – AVALIAÇÃO DO DESENHO 
Avaliar o que foi investigado, desenvolvido e representado por meio do desenho. 
Auxílio do usuário (direta ou indiretamente), certificando que tudo o que foi planejado e realizado está de acordo 
com as suas necessidades e características. 
 
 
PERGUNTA 1 
Que área da computação é citada na videoaula 21 como relacionada ao tema “design centrado no usuário”? 
o o o IHC. 
o o o Requisitos. 
o o o IA. 
o o o Modelagem. 
o o o Teste. 
Você acertou! Essa é a alternativa correta. IHC tem como principal característica preocupar-se com os usuários, 
observando suas características físicas e cognitivas para utilizá-las na criação do sistema. 
 
PERGUNTA 1 
O que o autor Marco Tulio Valente fala sobre a relação entre “padrões arquiteturais” e “estilos arquiteturais”? 
 
o Ele prefereusar apenas o termo “estilos arquiteturais”. 
 
o Estilos arquiteturais focam em soluções para problemas específicos de arquitetura. 
o Padrões arquiteturais propõem que os módulos de um sistema devem ser organizados de um 
determinado modo. 
 
o Sendo purista, MVC seria um estilo arquitetural, e não um padrão arquitetural. 
o Embora alguns autores considerem conceitos distintos, eles podem ser considerados sinônimos. 
Você acertou! Essa é a alternativa correta. O autor usa apenas o termo “padrões arquiteturais”, como uma forma de 
simplificação. 
 
PERGUNTA 1 
Para qual IDE é explicado como gerar JavaDoc no texto “O que é a ferramenta JavaDoc e como usá-la?”? 
 
 o Eclipse. 
 o DrJava. 
 o BlueJ. 
 o IntelliJ. 
 o NetBeans. 
Você acertou! Essa é a alternativa correta. O texto explica como gerar JavaDoc para o Eclipse. 
PERGUNTA 1 
Qual frase de Steve Jobs é mostrada pelo autor Ricardo Dias para motivar o “design centrado no usuário”? 
o “Você deve ser capaz de conseguir fazer qualquer coisa em um software com somente 3 cliques!”. 
o “Se eu perguntasse aos consumidores o que queriam, elas teriam dito: um cavalo mais rápido!”. 
o “Os usuários tendem a valorizar mais os sistemas que possuem uma interface boa e utilizável!”. 
o “Menos é mais!”. 
o “As pessoas não sabem o que elas querem até que você mostre para elas!”. 
 
Você acertou! Essa é a alternativa correta. Isso é um erro pois, embora eles saibam que a tecnologia pode ajudar a 
amenizar ou resolver seus problemas, eles não são projetistas. 
 
Aprofundando o tema 
Para aprofundar o tema, recomendo que você acesse o material a seguir: 
Material de apoio 1: Arquitetura de Software: Estilos e Padrões de Design | Marcelo 
M. Gonçalves 
Material de apoio 2: Padrões arquiteturais, quais e como usar? | Patrick Francis 
Gomes Rocha 
Material de apoio 3: Arquitetura de Software: Desenvolvimento orientado para 
arquitetura | Antonio (DevMedia) 
Material de apoio 4: [Maven] Gerando os Javadocs de um Projeto | Anderson Gomes 
Material de apoio 5: Documentação Automática usando MkDocs e Python | 
Alexandre Fernandes dos Santos 
Material de apoio 6: PHPDOX para gerar documentação automática em PHP 
Material de apoio 7: Artigo Invista em você! Saiba como a DevMedia pode ajudar sua 
carreira. JavaDoc – Implementando documentação através do NetBeans | Manoel 
(DevMedia) 
Material de apoio 8: Análise da dificuldade de comunicação entre o analista de 
requisitos e usuários | Larissa Tomiyasu e Márcia Ito 
 
ATIVIDADE AVALIATIVA 
PERGUNTA 1 
O que é correto afirmar sobre arquitetura em três camadas? 
o As três camadas são: interface com o usuário, controladores, e banco de dados. 
o A interface com o usuário também é chamada de camada de aplicação. 
https://medium.com/@marcelomg21/arquitetura-de-software-estilos-e-padr%C3%B5es-de-design-50d62d684ef2
https://medium.com/@marcelomg21/arquitetura-de-software-estilos-e-padr%C3%B5es-de-design-50d62d684ef2
https://www.linkedin.com/pulse/padr%C3%B5es-arquiteturais-quais-e-como-usar-patrick-francis-gomes-rocha/?trk=pulse-article_more-articles_related-content-card&originalSubdomain=pt%C2%A0%C2%A0%C2%A0
https://www.linkedin.com/pulse/padr%C3%B5es-arquiteturais-quais-e-como-usar-patrick-francis-gomes-rocha/?trk=pulse-article_more-articles_related-content-card&originalSubdomain=pt%C2%A0%C2%A0%C2%A0
https://www.devmedia.com.br/arquitetura-de-software-desenvolvimento-orientado-para-arquitetura/8033
https://www.devmedia.com.br/arquitetura-de-software-desenvolvimento-orientado-para-arquitetura/8033
https://medium.com/@andgomes/gerando-os-javadocs-de-um-projeto-b7f03c30dc6e
https://dev.to/xandecodes/documentacao-automatica-usando-mkdocs-e-python-n99
https://dev.to/xandecodes/documentacao-automatica-usando-mkdocs-e-python-n99
https://php.com.br/50?phpdox-para-gerar-documentacao-automatica-em-php
https://www.devmedia.com.br/javadoc-implementando-documentacao-atraves-do-netbeans/2495
https://www.devmedia.com.br/javadoc-implementando-documentacao-atraves-do-netbeans/2495
https://www.devmedia.com.br/javadoc-implementando-documentacao-atraves-do-netbeans/2495
http://www.pos.cps.sp.gov.br/files/artigo/file/686/7d2bc3e00da567abf48066b763acaf31.pdf
http://www.pos.cps.sp.gov.br/files/artigo/file/686/7d2bc3e00da567abf48066b763acaf31.pdf
 
o Normalmente, é centralizada, ou seja, é executada em apenas uma máquina. 
o Alternativamente, pode haver apenas duas camadas, em que lógica de negócio e bancos de dados 
são unificadas. 
o Comumente usada na construção de sistemas de informação corporativos. 
 
PERGUNTA 2 
Quais são os passos do design centrado no usuário de acordo com Ricardo Dias? 
o Desenho, prototipação e avaliação do desenho. 
o Desenho, avaliação do desenho e implementação. 
o Pesquisa de design, desenho, prototipação e implementação. 
o Pesquisa de design, desenho e avaliação do desenho. 
o Pesquisa de design, desenho, prototipação e avaliação do desenho. 
 
PERGUNTA 3 
O que é correto afirmar sobre MVC? 
o É uma especialização do modelo de três camadas. 
o Organiza as classes em três grupos: visão, controladores, modelo. 
o Foi proposto no final da década de 1990. 
o A interface gráfica é representada pelos grupos visão + modelo. 
o Foi usado na implementação de Java. 
 
PERGUNTA 4 
Marque a alternativa abaixo que apresenta uma informação correta a respeito do “design centrado no usuário” de 
acordo com o autor Ricardo Dias. 
o A pergunta mais importante a ser feita ao usuário é “o que você quer”. 
o Usuários que já possuem muita prática tendem a passar as informações de forma muito genérica. 
o O usuário deve ser representado pelo próprio cliente. 
o O projetista precisa evitar entrar em detalhes de regras de negócio. 
o O design centrado no usuário busca promover a colaboração entre implementador e usuário. 
 
PERGUNTA 5 
Quais são as tags (@) JavaDoc? 
o o o author, date, param, see, version. 
o o o author, date, return, see, version. 
o o o author, date, param, return, see. 
o o o author, date, param, return, version. 
o o o author, param, return, see, version.

Mais conteúdos dessa disciplina