Questões de Concurso Sobre engenharia de software
Foram encontradas 14.775 questões
Existe uma discussão na equipe de sistemas sobre os conceitos dos principais diagramas UML (Unifed Modeling Language). Portanto, relacione os números dos diagramas UML do quadro A com as respectivas letras das funcionalidades desses diagramas presentes no quadro B:
QUADRO A
(1) Diagrama de Estados.
(2) Diagrama de Sequência.
(3) Diagrama de Atividade.
(4) Diagrama de Comunicação.
(5) Diagrama de Caso de Uso.
QUADRO B
(A) Enfatiza a ordem temporal das mensagens.
(B) Organiza os comportamentos do sistema.
(C) Enfatiza o estado de mudança de um sistema orientado por eventos.
(D) Enfatiza o fluxo de controle de uma atividade para outra.
(E) Enfatiza a organização estrutural de objetos que enviam e recebem mensagens.
Assinale a alternativa correta.
O diagrama UML a seguir representa o seguinte tipo de diagrama:

Considere uma aplicação bancária na qual exista uma classe denominada ContaCorrente que tem os seguintes métodos:
abrir(),depositar(),retirar(),saldo(),limiteCredito(),cartoesAssociados(),fechar(),excluir()
Cada um destes métodos ou operações pode ser aplicado à ContaCorrente, mas há certas restrições implícitas como: a conta precisa ter sido aberta para que se possam realizar outras operações e precisa ser fechada após todas as operações terem sido realizadas. Se a conta for excluída nenhuma operação pode mais ser realizada. Mas as operações podem ser realizadas em diversas ordens e diversas vezes. Desta forma, o teste da classe deve assumir diversos cenários. Considere as sequências de casos de testes:
I. abrir→depositar→retirar→fechar
II. abrir→depositar→retirar→saldo→retirar→retirar→limiteCredito→fechar
III. abrir→saldo→retirar→depositar→retirar→depositar→cartoesAssociados→retirar→retirar→fechar
Os casos de testes
Considere, por hipótese, que uma equipe de Especialistas em Tecnologia da Informação está trabalhando em um projeto da ARTESP com base no RUP. Os objetivos a serem alcançados são:
− Verificar a interação entre os objetos do sistema.
− Verificar se os componentes do software estão adequadamente integrados.
− Verificar se todos os requisitos foram corretamente implementados.
− Certificar que os defeitos foram identificados antes da implantação do software.
É correto afirmar que estes objetivos se referem ao
Considere que um Analista esteja participando de um projeto que utiliza as melhores práticas da Extreme Programming − XP. No início de uma iteração a equipe de desenvolvimento, da qual o Analista fazia parte, convidou o cliente a escrever as funcionalidades que desejava no sistema em pequenos cartões chamados user stories. Depois disso, a equipe de desenvolvimento estimou o tempo e o custo de cada funcionalidade para o cliente. O cliente foi informado do tempo e custo, e foi solicitado a decidir a prioridade em que cada user story deveria ser desenvolvida.
Esta prática XP é conhecida como
Considere a classe abaixo, que compõe um diagrama UML 2.5, criada por um Analista para uma aplicação orientada a objetos da Defensoria Pública.

A classe ServicoBusca
Comparando-se os métodos ágeis com os tradicionais, considere:
I. Os ágeis priorizam mais a implementação e os tradicionais geralmente preocupam-se mais com a documentação.
II. As metodologias ágeis são mais preditivas e os tradicionais mais adaptativas, ou seja, buscam se adaptar às mudanças ao invés de realizar longas análises sobre o futuro.
III. Os ágeis podem ser indicados quando o cliente não sabe muito bem o que deseja. Realizam entregas constantes, que nem sempre acontece com os tradicionais, e os testes podem melhorar a qualidade do produto.
IV. Os ágeis não rejeitam processos e ferramentas dos tradicionais, mas as colocam em posição secundária, privilegiando os indivíduos e a comunicação entre eles.
Está correto o que se afirma APENAS em
Considere que um sistema está sendo desenvolvimento na Defensoria Pública e algumas das práticas adotadas são listadas a seguir:
− O Time de Desenvolvimento funciona de forma auto-organizada, sendo composto por profissionais que realizam o trabalho de entregar uma versão do sistema que seja funcional e que incrementa o produto “Pronto” ao final de cada sprint. Somente quem integra o Time de Desenvolvimento cria incrementos.
− Para desenvolver o sistema podem ser criadas várias sprints. Cada sprint é uma iteração que segue o ciclo PDCA. Ao final de cada sprint bem sucedida o time terá produzido um incremento potencialmente integrável, ou seja, com qualidade, testado, completo e pronto, por isso são realizadas reuniões de planejamento para definir a meta de cada sprint.
− O desenvolvedor escreve um teste que falha, faz este teste passar da maneira mais simples possível e, por fim, refatora o código. Esta prática visa a criação de código limpo, atuando como uma ferramenta de apoio na qualidade do desenvolvimento de sistema.
Um Técnico em Informática afirma, corretamente, que
The Rational Unified Process-RUP describes how to effectively deploy commercially proven approaches to software development. These are called best practices not so much because it´s possible to quantify precisely their value, but rather, because they are observed to be commonly used in industry by successful organizations. RUP provides each team member with the guidelines, templates and tool mentors necessary for the entire team to take full advantage, following best practices. One of these practices shows how to visibly model software to capture the structure and behavior of architectures and components. This allows the developer to hide the details and write code using graphical building blocks. Visual abstractions help to communicate different aspects of the software; see how the elements of the system fit together; make sure that the building blocks are consistent with the code; maintain consistency between a design and its implementation; and promote unambiguous communication. The industry standard UML, created by Rational Software, is the foundation for successful modeling.
The described practice refers to
Consider the UML use case diagram below.

The diagram shows that
No âmbito de um projeto conduzido de acordo com as práticas do Scrum, a quantidade de dias estimada para concluir uma tarefa pode ser medida a partir da quantidade de atividades que um profissional consegue finalizar em um dia de trabalho. Para isso, considere que o cálculo seja feito utilizando a seguinte fórmula:
QD = (TIF / |1 − PIF_DIA|) × 100
− QD = Quantidade de Dias estimada para concluir a tarefa;
− TIF = Tempo necessário para Implementar a Funcionalidade (prazo definido pela própria equipe);
− PIF_DIA = Percentual que Indica a estimativa de quanto tempo do dia o desenvolvedor ficará dedicado à implementação da funcionalidade.
Considerando a definição de valores:
− O tempo total para implementação e entrega da tarefa, com teste concluído, em um sistema já existente e em produção no cliente, é o tempo de uma Sprint, com prazo de 1 mês. Mas, para a implementação da funcionalidade serão utilizados apenas 20 dias. O restante dos dias será utilizado para documentação, testes e eventuais correções de erros encontrados pela equipe.
− A produtividade a ser considerada para o desenvolvedor é de 81% em uma jornada de 8 horas por dia.
Com esses valores definidos, a QD corresponde a