Quiz
AA1 - DSM
Dieses Quiz hat ein Zeitlimit und öffnet sich deshalb im gewohnten Player.
Fragen in diesem Quiz (20)
1Os modelos prescritivos de processo foram originalmente propostos para colocar ordem no caos de desenvolvimento de software. A história tem mostrado que esses modelos tem fornecido um roteiro razoavelmente efetivo para as equipes de software (PRESSMAN, 2006). Considere que uma equipe esta desenvolvimento uma aplicação Web seguindo o modelo Waterfall. Sobre a metodologia de desenvolvimento de software denominada Cascata (Waterfall), é correto afirmar:
- APossui sequência não linear de fases, ou seja, é possível alterar a qualquer momento a fase de desenvolvimento e voltar para fases anteriores.
- BA validação das atividades ocorre somente na etapa final de desenvolvimento com os testes de aceitação realizados pelo cliente.
- CAo final de cada fase, é feita uma revisão das atividades e artefatos gerados e somente após suas validações a próxima fase é iniciada.
- DTem como prática a programação em pares, na qual cada atividade de programação deve ser realizada por duas pessoas simultaneamente trabalhando em conjunto.
2Atualmente o trabalho de software é executado em ritmo rápido as necessidades de mudanças são frequentes devido as exigências dos negócios. O modelo cascata é frequentemente inadequado para este tipo de trabalho. O aumento da demanda e a pressão por prazos exigiu novos modelos de processo para ajudar a reduzir o tempo de desenvolvimento. O modelo de ciclo de vida incremental e iterativo foi proposto como uma resposta aos problemas encontrados no modelo em cascata. Em relação ao modelo de ciclo de vida incremental e iterativo é INCORRETO afirmar que:
- Aum processo de desenvolvimento, segundo essa abordagem, divide o desenvolvimento de um produto de software em ciclos. Em cada ciclo de desenvolvimento podem ser identificadas as fases de análise, projeto, implementação e testes.
- Bcada um dos ciclos de desenvolvimento considera um subconjunto de requisitos. Os requisitos são desenvolvidos uma vez que sejam alocados a um ciclo de desenvolvimento. No próximo ciclo, um outro subconjunto dos requisitos é considerado para ser desenvolvido, o que produz um novo incremento do sistema que contém extensões e refinamentos sobre o incremento anterior.
- Co desenvolvimento evolui em versões, através da construção incremental e iterativa de novas funcionalidades até que o sistema completo esteja construído. Apenas uma parte dos requisitos é considerada em cada ciclo de desenvolvimento.
- Do desenvolvimento incremental e iterativo de software sempre é possível, desde que a equipe de desenvolvimento divida os requisitos do sistema em partes, para que cada parte seja alocada a um ciclo de desenvolvimento.
- ENestes modelos uma visão de alto nível é desenvolvida para o empreendimento em geral, mas o escopo deve ser detalhado antes de iniciar as interações
3Na implementação do projeto utilizado como estudo de caso analisado em aula foi utilizada uma arquitetura orientada a serviços. Assinale a alternativa que apresenta a descrição correta de um web service.
- AÉ uma tecnologia utilizada exclusivamente para a criação de websites estáticos.
- BÉ uma arquitetura de software que permite a comunicação e a interoperabilidade entre diferentes sistemas distribuídos por meio da Internet.
- CÉ uma linguagem de programação utilizada para desenvolver aplicações web.
- DÉ um protocolo de comunicação utilizado para transferir arquivos entre servidores web.
- EÉ um serviço de hospedagem de websites fornecido por provedores de Internet.
4Quando se utiliza uma técnica de análise e projeto orientado a objetos a análise enfatiza uma investigação do problema e dos requisitos, em detrimento em se determinar uma solução. No estudo de caso analisado em aula é correto afirmar que o Modelo de Domínio é ...
- Aum diagrama de classes em nível de projeto.
- Bum diagrama de classes em nível de desenho.
- Cum diagrama de classes, produto da modelagem de negócios e, como tal, captura o vocabulário do sistema ou negócio sob modelagem.
- Dum modelo que carrega todo o detalhamento do comportamento e estrutura, que devem estar presentes em um modelo de análise.
- Eum modelo que carrega informações de armazenamento na camada de persistência ou normalizações, que devem estar presentes em um DER.
5Considerando que os requisitos, do projeto analisado em aula, foram expressos na forma de histórias de usuário, assinale a opção que apresenta, corretamente, recomendações técnicas para a elaboração de um cartão de histórias de usuário.
- AComo um professor, quero calcular as médias semestrais dos alunos de modo que eu possa identificar quais serão aprovados.
- BO professor deseja o cálculo de notas semestrais com precisão de até duas casas decimais.
- CO sistema deve calcular as médias semestrais dos alunos com base nas notas atribuídas a eles pelos professores.
- DComo analista de requisitos, eu preciso oferecer o cálculo das notas semestrais aos professores em menos de um minuto.
- EComo um professor, eu preciso de releases semanais de funcionalidades, mesmo que elas possam ser refatoradas posteriormente.
6A análise de requisitos de aplicações Web tem como objetivo estabelecer um entendimento básico das metas, dos objetivos do sistema que deve ser construído, quem vai usá-lo e quais problemas serão resolvidos para seus usuários. Durante o processo de análise de requisitos é importante distinguir entre requisitos funcionais e requisitos não funcionais. A diferença entre eles é representada no fato de que:
- Arequisitos funcionais descrevem as características técnicas do sistema, enquanto requisitos não funcionais descrevem as funcionalidades específicas que o sistema deve oferecer.
- Brequisitos funcionais descrevem as ações específicas que o sistema deve executar, enquanto requisitos não funcionais descrevem características ou qualidades do sistema
- Crequisitos funcionais referem-se aos requisitos de desempenho do sistema, enquanto requisitos não funcionais referem-se aos requisitos de segurança do sistema.
- Drequisitos funcionais são específicos para um domínio de negócio, seja aplicação ou serviço, enquanto requisitos não funcionais são comuns aos sistemas generalistas.
7Na arquitetura do software analisado na aula foram implementadas três camadas (three-tier): camada de apresentação (view), camada de aplicação (controller - lógica de aplicação) e uma camada de serviços que compreende lógica de negócio e a camada de dados (model). Cada camada é implementada por um módulo independente do outro, podendo esses módulos serem executados em computadores diferentes, comunicando-se por TCP/IP. No contexto dessa arquitetura e considerando os princípios desse padrão arquitetural, é correto afirmar que a camada de... :
- Aaplicação funciona como um servidor para a camada de apresentação, e como um cliente para a camada de serviços e dados.
- Bapresentação acessa diretamente a camada de dados, e a camada de aplicação faz o monitoramento dessa comunicação.
- Cdados tem por finalidade apresentar dados da aplicação na interface do usuário, tal como exibir produtos em uma aplicação de comércio eletrônico.
- Daplicação utiliza diretamente um sistema gerenciador de banco de dados relacional (SGBDR) para manter os dados persistentes da aplicação
- Eapresentação é implementada por um navegador de Internet, razão pela qual essa arquitetura é restrita a aplicações web.
8No projeto interdisciplinar analisado na aula foi implementada uma aplicação web constituída basicamente de programação, no back-end ou front-end, e apresentação desses dados como resultado da execução da aplicação. A interação com o usuário final, sempre será um HTML padrão, interpretado por todos os browsers do mercado. A arquitetura de referencia para este projeto seguiu o padrão arquitetural MVC que separa o código do negócio da representação visual em 3 camadas. Um aluno está desenvolvendo uma aplicação que realizará uma inserção no banco de dados local através de uma função React JavaScript. Considerando a organização do código em qual dos seguintes pacotes do MVC esta função deve ser incluída?
- AConsumer
- BController
- CView
- DModel
- EViewModel.
9O SOLID são cinco princípios usados na POO que orientam a programação no desenvolvimento de software mais fáceis de manter e estender. Esses princípios podem ser aplicados a qualquer linguagem de POO. No contexto dos princípios SOLID, analise as afirmativas a seguir.
I. O princípio de inversão de dependência estabelece que uma classe deve depender de implementações abstratas e não concretas, sempre que possível.
II. O princípio aberto / fechado estabelece que uma classe deve estar fechada para extensões, mas aberta para modificações.
III. O princípio da responsabilidade única é uma aplicação da propriedade de coesão, por propor que toda classe deve ter uma única finalidade.
Está(ão) correta(s) a(s) afirmativa(s)- AI, apenas.
- BII, apenas.
- CIII, apenas.
- DI e III, apenas.
- EII e III, apenas.
10Ao executar o projeto do estudo de caso analisado em aula o programador recebeu um erro no processamento do aplicativo no servidor. O código de status do protocolo HTTP, que denotam que um erro ocorreu no servidor têm a seguinte forma (considere que x e y representam dígitos decimais quaisquer):
- A1xy
- B2xy
- C3xy
- D4xy
- E5xy
11No Spring Boot é possivel alterar a porta de acesso do Tomcat configurando o arquivo:
- Apom.xml
- Bsystem.properties
- Capplication.properties
- Dconfig.properties
12O Spring inclui um portfólio completo de bibliotecas que oferecem uma estrutura para configuração de aplicações web, o Maven é uma ferramenta desenvolvida pela Apache incluída no portifólio de bibliotecas do Spring Boot. O Apache Maven é utilizado para:
- Aencontrar projetos que fazem o uso de outras bibliotecas ou frameworks
- Bautomatizar a manutenção do arquivo pom.xml
- Cautomação de compilação utilizada primariamente em projetos Java
- Dconfigurar o servidor de aplicação web no Spring Boot
13A aplicação analisada em aula utiliza a biblioteca Spring Data JPA que tem como objetivo fornecer os repositórios baseados em JPA para simplificar a implementação da camada de acesso a dados. Para salvar, atualizar, consultar ou excluir entidades, cria-se uma interface de repositório, que estende a interface:
- ADataRepository, anotada com @JpaRepository.
- BJPAFactory, anotada com @SpringData.
- CFactoryRepository, anotada com @CrudRepository.
- DJpaRepository, anotada com @Repository
14Um programador está utilizando a Java Persistence API, nesta biblioteca, a chave primaria é indicada por meio da anotação?
- A@PrimaryKey
- B@PrimaryId
- C@Id
- D@PK
15Considere o diagrama da UML a seguir, de acordo com o que esta representado na figura o que significa a letra “Z”?

- AUma interface.
- BUma classe.
- CUm evento.
- DUma porta (gateway)
16O conceito de microsserviços surgiu na comunidade de desenvolvimento de software como uma resposta direta a muitos dos desafios de tentar escalar técnica e organizacionalmente sistemas grandes e complexos implementados como um único módulo (monolítico). Existe pouca literatura sobre padronização de microservicos e poucos guias sobre como manter e construir ecossistemas de microservicos (FOWLER, 2017). Considerando o desenvolvimento orientado a serviços avalie as afirmações a seguir:
I. Os microsserviços permitem decompor um aplicativo em componentes com responsabilidades bem definidas em contrapartida se aumenta a complexidade da implantação e da sustentação
II. Microsservicos são pequenos serviços autônomos que trabalham juntos. Pequeno significa o quão bem o serviço se alinha à estrutura da equipe
III. A implementação de um sistema seguindo uma arquitetura orientada a serviços, facilita escalar o sistema selecionando os serviços que necessitam de mais desempenho ou da troca de tecnologias antigas por outras mais recentes
É correto o que se afirma em:- AI, somente.
- BII, somente.
- CIII, somente.
- DII e III, somente.
- EI, II e III.
17Thomas Erl (2009) define três tipos fundamentais de serviços que podem ser identificados. Sobre a identificação de serviços é correto afirmar que:
- AO escopo funcional de um serviço de tarefa pode ser comparada, a automação de um processo de negócio da empresa.
- BO serviço de entidade identificam elementos associados a um processo específico de uma empresa, tende a ter menos potencial de reuso e, em geral, é considerado como serviço controlador.
- CO serviço utilitário identifica entidades relevantes de negócio, geralmente são altamente reutilizáveis e permite automatizar um série de processos de negócio.
- DServiços de lógica encapsulam funcionalidades não especificas a nenhum aplicativo.
18REST (Representational State Transfer), refere-se a um conjunto de restrições de design de arquitetura de software que geram sistemas eficientes, confiáveis e escaláveis. Selecione entre as opções abaixo a característica que viola uma das restrições impostas pelo estilo arquitetural REST:
- Ao uso de XML na troca de requisições e respostas, no lugar de JSON.
- Ba possibilidade de um cliente solicitar a exclusão de um recurso no servidor.
- Co armazenamento no servidor, entre requisições, de informações de contexto do cliente ou estado de sessão.
- Da possibilidade de clientes ou intermediários na comunicação realizarem cache de respostas, quando estas se definirem como cacheable.
19Alguns princípios da programação orientada a objetos ajudam a minimizar erros de programação e a facilitar a manutenibilidade do software. O SOLID são cinco princípios usados na POO que orientam a programação no desenvolvimento de software mais fáceis de manter e estender. Esses princípios podem ser aplicados a qualquer linguagem de POO. O princípio S, que se refere ao Single Responsability Principle-SRP ou Princípio de Responsabilidade Única, indica que uma classe deve ter uma e, apenas uma, razão para mudar. Considere a classe Java abaixo.
public class Calculadora {
public int soma(int a, int b) {
}
public int subtrai(int a, int b) {
}
public int multiplica(int a, int b) {
}
public int divide(int a, int b) {
}
public int resultado(int r ){
}
}
Com base no princípio SRP e nas boas práticas para projetos OO, é correto afirmar:- AO SRP visa aumentar o acoplamento entre classes e separar responsabilidades como forma de melhorar o código da aplicação OO sendo desenvolvida.
- BA classe Calculadora tem acoplamento baixo, ou seja, tem um número pequeno de dependências e, portanto, fica mais sujeita a mudanças em decorrência de alterações em outras classes.
- CUma classe com mais de um motivo para mudar possui mais de uma responsabilidade e apresentando dificuldade de manutenção, mas, por outro lado, tem maior facilidade de reúso e de coesão.
- DA classe Calculadora apresenta uma quebra do SRP, uma vez que possui responsabilidades que deveriam ser de componentes distintos do software.
- EEm um projeto com várias classes seguindo o padrão da classe Calculadora fica mais fácil manter a coesão em um nível mais alto ou em nível de componentes, pois o software fica com uma divisão clara de camadas.
20Um dos principais pontos que podem afetar o desempenho de um servidor web é a quantidade de requisições que ele recebe em um espaço de tempo. O balanceamento de cargas é bastante intuitivo no gerenciamento das demandas em um sistema de software. Para atender as necessidades de aumento da demanda uma cópia da aplicação é instalada em cada servidor e balanceadores de carga são ativados para adequar a demanda por servidor.
/---> Servidor 1
Cliente -----> Balanceador ---> Servidor 2
\---> Servidor 3
Sobre o aumento da escalabilidade do sistema, assinale a afirmativa correta.- AA escalabilidade é um benefício do balanceamento de carga obtido pela redução da capacidade de tolerância a falhas.
- BNo escalonamento horizontal deve-se aumentar a quantidade de CPU e RAM dos servidores
- CA técnica de balanceamento de carga aumenta a disponibilidade em discos rígidos e CPUs.
- DO acréscimo de servidores é uma das estratégias para se melhorar o desempenho em sistemas que tem um aumento de demanda.
Informationen
- Beschreibung
- Quiz am AA1 - DSM, erstellt von Nicoly Avelino am 23/11/2022.
- Autor
- Nicoly Avelino
- Sprache
- Português
- Aufrufe
- 9
- Bewertung
- Noch keine Bewertungen Bewerte dieses Quiz