Logo Passei Direto
Buscar

Av Aplicacao Engenharia de Software

User badge image
Pedro Ramos

em

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

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

<p>1)</p><p>O design pattern intitulado Modelo Visão e Controle (MVC), do inglês model, view, controller, é um padrão que auxilia na divisão do código dos componentes em unidades menores, chamadas entidades. Esta estrutura propicia a criação de código estruturado e sua simplificação, já que, por meio de conceitos da orientação a objetos, utilizam-se as classes, métodos e atributos para centralizar e manter a responsabilidade sobre cada elemento. O modelo corresponde à estrutura de dados; a visão, por sua vez, apresenta as interfaces e o controle, a lógica de negócio. Sobre o uso de padrões no contexto da engenharia de software aplicada no desenvolvimento de aplicações web, assinale a alternativa correta:</p><p>Alternativas:</p><p>· Os padrões de projeto, ou design pattern, permitem padronizar o processo de desenvolvimento, contudo, acabam ampliando a complexidade de desenvolvimento.</p><p>· É responsabilidade do analista somente a identificação e definição dos padrões arquiteturais e de desenvolvimento que serão adotados.</p><p>· Os padrões de projeto, ou design pattern, apesar de favorecerem a criação de produtos de software com maior qualidade, acabam por dificultar o desenvolvimento, já que cada membro da equipe de desenvolvimento pode adotar um padrão diferente.</p><p>· Os padrões de projeto, ou design pattern ,permitem a criação de código mais limpo e organizado, favorecendo a comunicação entre os membros da equipe e, ao final, facilitam a manutenção.</p><p>checkCORRETO</p><p>· Os padrões de projeto, ou design pattern, só podem ser aplicados se os stakeholders possuírem domínio sobre o padrão a ser adotado.</p><p>Resolução comentada:</p><p>os padrões de projeto, ou design pattern, são adotados para facilitar a comunicação dos membros das equipes, garantindo a padronização do código e sua organização. Apesar de mais de um poder ser adotado, já que existem padrões arquiteturais, de desenvolvimento, entre outros, a escolha ocorre de acordo com todos os membros da equipe, visto que, ao selecionar muitos padrões, esta adoção resultaria em aumento da complexidade e dificuldades de comunicação. Ao final, a aplicação dos padrões também facilita a manutenção, já que um código organizado permitirá a identificação e modificação de modo mais fácil.</p><p>Código da questão: 58348</p><p>2)</p><p>Sobre o apoio da engenharia de software no desenvolvimento de jogos digitais (games):</p><p>I. Os diagramas da UML são adotados como artefatos a complementar o documento de desenho do jogo.</p><p>II. Scrum é indicado para o gerenciamento de equipes das etapas de projeto e análise.</p><p>III. Há diversas etapas de desenvolvimento e testes sendo executadas em paralelo, devido à caracterização dos jogos digitais e seus elementos.</p><p>IV. Padrões são adotados no contexto do desenvolvimento dos diferentes artefatos, podendo ser diferentes para cada natureza de artefato a ser desenvolvido.</p><p>V. A interação com softwares de terceiros refere-se à integração de diferentes jogos desenvolvidos por estúdios diversos.</p><p>São verdadeiras:</p><p>Alternativas:</p><p>· II – V – IV.</p><p>· I – II – IV.</p><p>· I – II – III.</p><p>· II – III – V.</p><p>· I – III – IV.</p><p>checkCORRETO</p><p>Resolução comentada:</p><p>a afirmação I é verdadeira, pois os diagramas da UML enriquecem o projeto do jogo digital, facilitando a sua concepção, assim como a afirmação III, visto que o desenvolvimento de jogos envolve o desenvolvimento e teste de diferentes artefatos em equipes variadas. E também é verdadeira a afirmação IV, visto que vários padrões podem ser adotados nas equipes de desenvolvimento. A II está errada, pois o método ágil Scrum é indicado no gerenciamento de equipes de desenvolvimento, mas não se restringe apenas a estas. Está errada também a afirmação V, já que a integração com software de terceiros se refere à integração com soluções que realizam o gerenciamento de conexões em rede, software de controles de jogos, de sensores, entre outros.</p><p>Código da questão: 58353</p><p>3)</p><p>O DevOps é uma mudança cultural para integração de áreas de desenvolvimento e operações. Nesta perspectiva, assinale a alternativa correta que apresenta os pilares desta prática.</p><p>Alternativas:</p><p>· Compartilhamento, medição, cultura, automação e robustez.</p><p>· Feedback, colaboração, ferramentas, processos enxutos e métricas.</p><p>· Compartilhamento, medição, cultura, pipelines e feedback.</p><p>· Compartilhamento, medição, cultura, automação e fluxo.</p><p>checkCORRETO</p><p>· Compartilhamento, medição, cultura, autoconhecimento e fluxo.</p><p>Resolução comentada:</p><p>o DevOps se baseia em cinco pilares, sendo estes: cultura, que preza pela colaboração dos times; automação, que se baseia em ferramentas e pipelines; medição, que integra métricas e monitoramento das entregas, qualidade e cronograma; fluxo, que refere-se à identificação do interesse que gera valor dos clientes; e compartilhamento, que refere-se a difusão das experiências, dificuldades, abordagens e responsabilidades entre os integrantes do projeto.</p><p>Código da questão: 58361</p><p>4)</p><p>Sobre os principais processos da concepção de um software – análise, projeto, desenvolvimento, testes e manutenção –, assinale a alternativa correta.</p><p>Alternativas:</p><p>· No processo de manutenção, o software sofre manutenção no sentido de ser validado, verificado e testado, logo após a etapa de projeto.</p><p>· No processo de testes, o software é testado para verificar se possui falhas que possam comprometer a sua disponibilização em posterior ambiente de produção.</p><p>· No processo de projeto, os requisitos funcionais e não funcionais são transformados em diagramas de mais baixo nível, servindo como modelos para que possam ser desenvolvidos na próxima etapa.</p><p>checkCORRETO</p><p>· No processo de desenvolvimento, o software é programado, ou seja, codificado com base no documento de requisitos e resultados dos testes.</p><p>· No processo de análise, o software é verificado para que não sejam encontrados erros, podendo, assim, ser disponibilizado em ambiente de produção.</p><p>Resolução comentada:</p><p>o primeiro processo é o de análise, que fornece o documento de requisitos funcionais e não funcionais ao processo de projeto, que, após criar diagramas de mais baixo nível, os repassa para a equipe de desenvolvedores no processo de desenvolvimento. O software, após ser desenvolvido, passa para o processo de testes, em que é verificado, validado e testado, podendo, então, ser disponibilizado em ambiente de produção, e ainda, seguir ou não para manutenções que possam corrigir falhas não identificadas no processo de testes ou levar a modificações para atender a novas demandas dos clientes.</p><p>Código da questão: 58341</p><p>5)</p><p>Boas ferramentas e recursos digitais (sites) para a criação de jogos digitais auxiliam na redução de custos e esforços na concepção de tais softwares. Sobre ferramentas e sites adotados no desenvolvimento de jogos digitais, leia e associe as duas colunas:</p><p>Assinale a alternativa que traz a associação correta entre as duas colunas:</p><p>Alternativas:</p><p>· I – A; II – B; III – C.</p><p>· I – B; II – A; III – C.</p><p>checkCORRETO</p><p>· I – B; II – C; III – A.</p><p>· I – C; II – A; III – B.</p><p>· I – C; II – B; III – A.</p><p>Resolução comentada:</p><p>Blender é uma ferramenta de modelagem de elementos gráficos 3-D. Os modelos nele criados são importados no Unity, que é a ferramenta em que o jogo será programado. As texturas aplicadas tanto nos modelos 3-D quanto nos cenários são criadas no Gimp, um editor de imagens de código aberto e gratuito.</p><p>Código da questão: 58352</p><p>6)</p><p>Aplicações Android podem ser escritas na linguagem de programação Java. A ferramenta Android SDK compila, então, o código, além de todos os dados e recursos, em um Android package (APK), um arquivo com extensão .apk. Um APK contém todo o conteúdo da aplicação e é utilizado pelo sistema Android para instalá-la. Considerando o desenvolvimento e as tecnologias de um aplicativo móvel nativo e híbrido, assinale a alternativa correta:</p><p>Alternativas:</p><p>· Diz-se um aplicativo nativo aquele que é desenvolvido considerando tecnologias fornecidas pelo mantenedor ou criador da plataforma em que a aplicação será executada.</p><p>checkCORRETO</p><p>· Um aplicativo híbrido é desenvolvido com a tecnologia fornecida pelo mantenedor ou criador da plataforma</p><p>em que a aplicação será executada.</p><p>· Um aplicativo híbrido é desenvolvido considerando requisitos funcionais apenas, o que torna o aplicativo final lento devido ao não atendimento dos requisitos não funcionais.</p><p>· Um aplicativo será desenvolvido de modo nativo ou híbrido de acordo com as necessidades do cliente. Sendo a escolha da tecnologia decorrente dos resultados da etapa de testes.</p><p>· Um aplicativo nativo é desenvolvido considerando tecnologias compatíveis com a plataforma na qual será executado, o que acaba por resultar em aplicativos mais lentos.</p><p>Resolução comentada:</p><p>um aplicativo será desenvolvido de modo nativo ou híbrido de acordo com as necessidades do cliente. A escolha pela tecnologia será baseada na arquitetura adotada, bem como nas especificidades e indicações do próprio cliente durante a fase de análise. Um aplicativo nativo é desenvolvido considerando tecnologias fornecidas pelo mantenedor ou criador da plataforma em que a aplicação será executada, sendo, em alguns casos, mais rápidos que os híbridos, que são desenvolvidos com tecnologias de terceiros. Contudo, nota-se que a questão de velocidade tem sido reduzida na medida em que o hardware dos dispositivos móveis evolui.</p><p>Código da questão: 58347</p><p>7)</p><p>Sobre os diagramas da Linguagem de Modelagem Unificada, desenvolvidos e adotados nas diferentes etapas de implementação de software com apoio do engenheiro de software, considere as seguintes afirmações e classifique-as em verdadeiras (V) ou falsas (F):</p><p>( ) O diagrama de casos de uso é utilizado na etapa de análise, identificando os atores (usuários) e as funcionalidades que o sistema possuirá.</p><p>( ) O diagrama de classes apresenta as classes, os atributos e métodos que serão desenvolvidos na etapa de desenvolvimento, sendo modelado na fase de projeto.</p><p>( ) O diagrama de sequência apresenta a sequência lógica das interações entre as classes por meio da troca de serviços.</p><p>( ) O diagrama de componentes apresenta os diferentes elementos que interagem entre si, compondo o produto de software. Em especial, apresenta o relacionamento e a disponibilização de suas interfaces.</p><p>( ) Os diagramas da UML não são complementares uns aos outros. Assim, o diagrama de caso de uso, por exemplo, pode ser adotado na fase de desenvolvimento sem qualquer dificuldade.</p><p>Assinale a alternativa que contenha a sequência correta:</p><p>Alternativas:</p><p>· F – V – F – V – F.</p><p>· V – V – F – F – V.</p><p>· V – V – F – V – F.</p><p>checkCORRETO</p><p>· V – F – F – V – F.</p><p>· V – F – V – V – F.</p><p>Resolução comentada:</p><p>os diagramas da UML são complementares uns aos outros e, de acordo com seus níveis de detalhe, não podem ser utilizados em fases mais avançadas na implementação, como é o caso do diagrama de casos de uso que é utilizado na etapa de análise. Já os diagramas de classes, de sequência e componentes são modelados na etapa de projeto e utilizados também no desenvolvimento, já que cada um deles apresenta detalhes que apoiam a implementação. O diagrama de casos de uso apresenta detalhes das classes, seus atributos e métodos; o de sequência apresenta a sequência das interações dos objetos instanciados das classes e a troca de mensagens entre tais objetos; e o diagrama de componentes apresenta os elementos e o relacionamento destes por meio de suas interfaces.</p><p>Código da questão: 58344</p><p>8)</p><p>A engenharia de software estrutura em ______________ ou etapas a implementação de um produto de software. Esses processos comumente são divididos em _____________, projeto, ___________________, testes e manutenção. Em algumas literaturas, são concentrados em especificação, desenvolvimento, validação e________________ de software.</p><p>Assinale a alternativa que completa adequadamente as lacunas:</p><p>Alternativas:</p><p>· Fases, análise, concepção; desenvolvimento.</p><p>· Processos; evolução; concepção; manutenção.</p><p>· Processos; gerenciamento; desenvolvimento; continuidade.</p><p>· Processos; análise, evolução; desenvolvimento.</p><p>· Processos; análise; desenvolvimento; evolução.</p><p>checkCORRETO</p><p>Resolução comentada:</p><p>a implementação de um software é dividida em processos ou etapas, sendo estes análise, projeto, desenvolvimento, testes e manutenção ou somente em especificação, desenvolvimento, validação e evolução. Para este último grupo, a especificação une a análise e o projeto em um único processo, mas há atividades específicas de cada uma internamente no mesmo. Já a manutenção pode ser referenciada por evolução, levando ao entendimento da possibilidade de evolução do produto de software, mediante solicitações dos clientes.</p><p>Código da questão: 58343</p><p>9)</p><p>Sobre a engenharia de software, podemos afirmar que:</p><p>I. Provê apoio ao desenvolvimento de software ou sistemas de computação, por meio de métodos de especificação, desenvolvimento e manutenção de software.</p><p>II. Os métodos, no contexto dos pilares da engenharia de software permitem a informatização das atividades e tarefas, por meio do apoio de ferramentas de software.</p><p>III. O engenheiro de software é o profissional que busca elencar as necessidades dos stakeholders.</p><p>IV. Um diagrama de nível de abstração baixo possui mais detalhes que um diagrama com nível de abstração alto.</p><p>V. Na etapa de análise, costuma-se utilizar o diagrama de casos de uso. Este diagrama tem o propósito de auxiliar o analista e sua equipe na descoberta de requisitos e no alinhamento mais preciso das necessidades dos stakeholders.</p><p>São verdadeiras:</p><p>Alternativas:</p><p>· II – III – V.</p><p>· II – IV – V.</p><p>· I – IV – V.</p><p>checkCORRETO</p><p>· I – II – IV.</p><p>· I – III – V.</p><p>Resolução comentada:</p><p>a afirmação I é verdadeira pois a engenharia de software apoia o desenvolvimento de software ou sistemas de computação, considerando diferentes métodos de especificação, desenvolvimento e manutenção de software; a IV é correta, pois um diagrama com maior nível de detalhamento, ou seja, com nível de abstração mais baixo, representa um maior número de detalhes, enquanto que um diagrama com nível de abstração alto apresenta uma quantidade menor de detalhes; e a questão V está correta, pois é na etapa de análise que utiliza-se o diagrama de casos de uso para facilitar a comunicação e o alinhamento dos requisitos com os stakeholders. A afirmação II é incorreta, pois os métodos, no contexto dos pilares da engenharia de software, referem-se à formalização das atividades e tarefas que englobam cada processo. Finalmente, a afirmação III é incorreta, pois é o analista que busca elencar as necessidades dos stakeholders.</p><p>Código da questão: 58339</p><p>10)</p><p>No contexto de DevOps existem diversas ferramentas que apoiam a automatização de atividades. Sobre elas e os processos no DevOps, podemos afirmar que:</p><p>I. Na implantação, o produto será disponibilizado para o cliente. Este processo é apoiado por serviços como o da Amazon Web Service e o Heroku.</p><p>II. Na operação, prima-se pela estabilidade e pelo funcionamento do software em ambiente de produção. Dentre as ferramentas que apoiam este processo, temos a Zabbix.</p><p>III. No feedback contínuo, temos a retroalimentação ou resposta às diferentes interações e responsabilidades das equipes e dos envolvidos. Dentre as ferramentas que apoiam tal processo, temos o Git e Docker.</p><p>IV. No planejamento, ferramentas como o Google Drive e Astah auxiliam a criar os artefatos que servirão para a construção.</p><p>V. Na integração contínua, busca-se integrar a equipe de compras com a equipe de marketing e são apoiadas por ferramentas como Jenkins e Travis CI.</p><p>São verdadeiras:</p><p>Alternativas:</p><p>· I – II – V.</p><p>· III – IV – V.</p><p>· II – IV – V.</p><p>· I – II – IV.</p><p>checkCORRETO</p><p>I – II – III. 1)</p><p>O design pattern intitulado Modelo Visão e Controle (MVC), do inglês model, view, controller, é um padrão que auxilia na divisão do código dos componentes em unidades menores, chamadas entidades. Esta estrutura propicia a criação de código estruturado e sua simplificação, já que, por meio de conceitos da orientação a objetos, utilizam-se as classes, métodos e atributos para centralizar e manter a responsabilidade sobre cada elemento. O modelo corresponde à estrutura de dados; a visão, por sua vez, apresenta as interfaces e o controle, a lógica</p><p>de negócio. Sobre o uso de padrões no contexto da engenharia de software aplicada no desenvolvimento de aplicações web, assinale a alternativa correta:</p><p>Alternativas:</p><p>· Os padrões de projeto, ou design pattern, permitem padronizar o processo de desenvolvimento, contudo, acabam ampliando a complexidade de desenvolvimento.</p><p>· É responsabilidade do analista somente a identificação e definição dos padrões arquiteturais e de desenvolvimento que serão adotados.</p><p>· Os padrões de projeto, ou design pattern, apesar de favorecerem a criação de produtos de software com maior qualidade, acabam por dificultar o desenvolvimento, já que cada membro da equipe de desenvolvimento pode adotar um padrão diferente.</p><p>· Os padrões de projeto, ou design pattern ,permitem a criação de código mais limpo e organizado, favorecendo a comunicação entre os membros da equipe e, ao final, facilitam a manutenção.</p><p>checkCORRETO</p><p>· Os padrões de projeto, ou design pattern, só podem ser aplicados se os stakeholders possuírem domínio sobre o padrão a ser adotado.</p><p>Resolução comentada:</p><p>os padrões de projeto, ou design pattern, são adotados para facilitar a comunicação dos membros das equipes, garantindo a padronização do código e sua organização. Apesar de mais de um poder ser adotado, já que existem padrões arquiteturais, de desenvolvimento, entre outros, a escolha ocorre de acordo com todos os membros da equipe, visto que, ao selecionar muitos padrões, esta adoção resultaria em aumento da complexidade e dificuldades de comunicação. Ao final, a aplicação dos padrões também facilita a manutenção, já que um código organizado permitirá a identificação e modificação de modo mais fácil.</p><p>Código da questão: 58348</p><p>2)</p><p>Sobre o apoio da engenharia de software no desenvolvimento de jogos digitais (games):</p><p>I. Os diagramas da UML são adotados como artefatos a complementar o documento de desenho do jogo.</p><p>II. Scrum é indicado para o gerenciamento de equipes das etapas de projeto e análise.</p><p>III. Há diversas etapas de desenvolvimento e testes sendo executadas em paralelo, devido à caracterização dos jogos digitais e seus elementos.</p><p>IV. Padrões são adotados no contexto do desenvolvimento dos diferentes artefatos, podendo ser diferentes para cada natureza de artefato a ser desenvolvido.</p><p>V. A interação com softwares de terceiros refere-se à integração de diferentes jogos desenvolvidos por estúdios diversos.</p><p>São verdadeiras:</p><p>Alternativas:</p><p>· II – V – IV.</p><p>· I – II – IV.</p><p>· I – II – III.</p><p>· II – III – V.</p><p>· I – III – IV.</p><p>checkCORRETO</p><p>Resolução comentada:</p><p>a afirmação I é verdadeira, pois os diagramas da UML enriquecem o projeto do jogo digital, facilitando a sua concepção, assim como a afirmação III, visto que o desenvolvimento de jogos envolve o desenvolvimento e teste de diferentes artefatos em equipes variadas. E também é verdadeira a afirmação IV, visto que vários padrões podem ser adotados nas equipes de desenvolvimento. A II está errada, pois o método ágil Scrum é indicado no gerenciamento de equipes de desenvolvimento, mas não se restringe apenas a estas. Está errada também a afirmação V, já que a integração com software de terceiros se refere à integração com soluções que realizam o gerenciamento de conexões em rede, software de controles de jogos, de sensores, entre outros.</p><p>Código da questão: 58353</p><p>3)</p><p>O DevOps é uma mudança cultural para integração de áreas de desenvolvimento e operações. Nesta perspectiva, assinale a alternativa correta que apresenta os pilares desta prática.</p><p>Alternativas:</p><p>· Compartilhamento, medição, cultura, automação e robustez.</p><p>· Feedback, colaboração, ferramentas, processos enxutos e métricas.</p><p>· Compartilhamento, medição, cultura, pipelines e feedback.</p><p>· Compartilhamento, medição, cultura, automação e fluxo.</p><p>checkCORRETO</p><p>· Compartilhamento, medição, cultura, autoconhecimento e fluxo.</p><p>Resolução comentada:</p><p>o DevOps se baseia em cinco pilares, sendo estes: cultura, que preza pela colaboração dos times; automação, que se baseia em ferramentas e pipelines; medição, que integra métricas e monitoramento das entregas, qualidade e cronograma; fluxo, que refere-se à identificação do interesse que gera valor dos clientes; e compartilhamento, que refere-se a difusão das experiências, dificuldades, abordagens e responsabilidades entre os integrantes do projeto.</p><p>Código da questão: 58361</p><p>4)</p><p>Sobre os principais processos da concepção de um software – análise, projeto, desenvolvimento, testes e manutenção –, assinale a alternativa correta.</p><p>Alternativas:</p><p>· No processo de manutenção, o software sofre manutenção no sentido de ser validado, verificado e testado, logo após a etapa de projeto.</p><p>· No processo de testes, o software é testado para verificar se possui falhas que possam comprometer a sua disponibilização em posterior ambiente de produção.</p><p>· No processo de projeto, os requisitos funcionais e não funcionais são transformados em diagramas de mais baixo nível, servindo como modelos para que possam ser desenvolvidos na próxima etapa.</p><p>checkCORRETO</p><p>· No processo de desenvolvimento, o software é programado, ou seja, codificado com base no documento de requisitos e resultados dos testes.</p><p>· No processo de análise, o software é verificado para que não sejam encontrados erros, podendo, assim, ser disponibilizado em ambiente de produção.</p><p>Resolução comentada:</p><p>o primeiro processo é o de análise, que fornece o documento de requisitos funcionais e não funcionais ao processo de projeto, que, após criar diagramas de mais baixo nível, os repassa para a equipe de desenvolvedores no processo de desenvolvimento. O software, após ser desenvolvido, passa para o processo de testes, em que é verificado, validado e testado, podendo, então, ser disponibilizado em ambiente de produção, e ainda, seguir ou não para manutenções que possam corrigir falhas não identificadas no processo de testes ou levar a modificações para atender a novas demandas dos clientes.</p><p>Código da questão: 58341</p><p>5)</p><p>Boas ferramentas e recursos digitais (sites) para a criação de jogos digitais auxiliam na redução de custos e esforços na concepção de tais softwares. Sobre ferramentas e sites adotados no desenvolvimento de jogos digitais, leia e associe as duas colunas:</p><p>Assinale a alternativa que traz a associação correta entre as duas colunas:</p><p>Alternativas:</p><p>· I – A; II – B; III – C.</p><p>· I – B; II – A; III – C.</p><p>checkCORRETO</p><p>· I – B; II – C; III – A.</p><p>· I – C; II – A; III – B.</p><p>· I – C; II – B; III – A.</p><p>Resolução comentada:</p><p>Blender é uma ferramenta de modelagem de elementos gráficos 3-D. Os modelos nele criados são importados no Unity, que é a ferramenta em que o jogo será programado. As texturas aplicadas tanto nos modelos 3-D quanto nos cenários são criadas no Gimp, um editor de imagens de código aberto e gratuito.</p><p>Código da questão: 58352</p><p>6)</p><p>Aplicações Android podem ser escritas na linguagem de programação Java. A ferramenta Android SDK compila, então, o código, além de todos os dados e recursos, em um Android package (APK), um arquivo com extensão .apk. Um APK contém todo o conteúdo da aplicação e é utilizado pelo sistema Android para instalá-la. Considerando o desenvolvimento e as tecnologias de um aplicativo móvel nativo e híbrido, assinale a alternativa correta:</p><p>Alternativas:</p><p>· Diz-se um aplicativo nativo aquele que é desenvolvido considerando tecnologias fornecidas pelo mantenedor ou criador da plataforma em que a aplicação será executada.</p><p>checkCORRETO</p><p>· Um aplicativo híbrido é desenvolvido com a tecnologia fornecida pelo mantenedor ou criador da plataforma em que a aplicação será executada.</p><p>· Um aplicativo híbrido é desenvolvido considerando requisitos funcionais apenas, o que torna o aplicativo final lento devido ao não atendimento dos requisitos não funcionais.</p><p>· Um aplicativo será desenvolvido de modo nativo ou híbrido de acordo com as necessidades do cliente. Sendo a escolha da tecnologia decorrente dos resultados da etapa de testes.</p><p>· Um aplicativo nativo é desenvolvido considerando tecnologias compatíveis com a plataforma na qual será executado, o que acaba por resultar em aplicativos mais lentos.</p><p>Resolução comentada:</p><p>um aplicativo será desenvolvido de modo nativo ou híbrido de acordo com as necessidades do cliente. A escolha pela tecnologia será baseada na arquitetura adotada, bem como nas especificidades e indicações do próprio cliente durante a fase de análise. Um aplicativo nativo é desenvolvido considerando tecnologias fornecidas pelo mantenedor ou criador da plataforma em que a aplicação será executada, sendo, em alguns casos, mais rápidos que os híbridos, que são desenvolvidos com tecnologias de terceiros. Contudo, nota-se que a questão de velocidade tem sido reduzida na medida em que o hardware dos dispositivos móveis evolui.</p><p>Código da questão: 58347</p><p>7)</p><p>Sobre os diagramas da Linguagem de Modelagem Unificada, desenvolvidos e adotados nas diferentes etapas de implementação de software com apoio do engenheiro de software, considere as seguintes afirmações e classifique-as em verdadeiras (V) ou falsas (F):</p><p>( ) O diagrama de casos de uso é utilizado na etapa de análise, identificando os atores (usuários) e as funcionalidades que o sistema possuirá.</p><p>( ) O diagrama de classes apresenta as classes, os atributos e métodos que serão desenvolvidos na etapa de desenvolvimento, sendo modelado na fase de projeto.</p><p>( ) O diagrama de sequência apresenta a sequência lógica das interações entre as classes por meio da troca de serviços.</p><p>( ) O diagrama de componentes apresenta os diferentes elementos que interagem entre si, compondo o produto de software. Em especial, apresenta o relacionamento e a disponibilização de suas interfaces.</p><p>( ) Os diagramas da UML não são complementares uns aos outros. Assim, o diagrama de caso de uso, por exemplo, pode ser adotado na fase de desenvolvimento sem qualquer dificuldade.</p><p>Assinale a alternativa que contenha a sequência correta:</p><p>Alternativas:</p><p>· F – V – F – V – F.</p><p>· V – V – F – F – V.</p><p>· V – V – F – V – F.</p><p>checkCORRETO</p><p>· V – F – F – V – F.</p><p>· V – F – V – V – F.</p><p>Resolução comentada:</p><p>os diagramas da UML são complementares uns aos outros e, de acordo com seus níveis de detalhe, não podem ser utilizados em fases mais avançadas na implementação, como é o caso do diagrama de casos de uso que é utilizado na etapa de análise. Já os diagramas de classes, de sequência e componentes são modelados na etapa de projeto e utilizados também no desenvolvimento, já que cada um deles apresenta detalhes que apoiam a implementação. O diagrama de casos de uso apresenta detalhes das classes, seus atributos e métodos; o de sequência apresenta a sequência das interações dos objetos instanciados das classes e a troca de mensagens entre tais objetos; e o diagrama de componentes apresenta os elementos e o relacionamento destes por meio de suas interfaces.</p><p>Código da questão: 58344</p><p>8)</p><p>A engenharia de software estrutura em ______________ ou etapas a implementação de um produto de software. Esses processos comumente são divididos em _____________, projeto, ___________________, testes e manutenção. Em algumas literaturas, são concentrados em especificação, desenvolvimento, validação e________________ de software.</p><p>Assinale a alternativa que completa adequadamente as lacunas:</p><p>Alternativas:</p><p>· Fases, análise, concepção; desenvolvimento.</p><p>· Processos; evolução; concepção; manutenção.</p><p>· Processos; gerenciamento; desenvolvimento; continuidade.</p><p>· Processos; análise, evolução; desenvolvimento.</p><p>· Processos; análise; desenvolvimento; evolução.</p><p>checkCORRETO</p><p>Resolução comentada:</p><p>a implementação de um software é dividida em processos ou etapas, sendo estes análise, projeto, desenvolvimento, testes e manutenção ou somente em especificação, desenvolvimento, validação e evolução. Para este último grupo, a especificação une a análise e o projeto em um único processo, mas há atividades específicas de cada uma internamente no mesmo. Já a manutenção pode ser referenciada por evolução, levando ao entendimento da possibilidade de evolução do produto de software, mediante solicitações dos clientes.</p><p>Código da questão: 58343</p><p>9)</p><p>Sobre a engenharia de software, podemos afirmar que:</p><p>I. Provê apoio ao desenvolvimento de software ou sistemas de computação, por meio de métodos de especificação, desenvolvimento e manutenção de software.</p><p>II. Os métodos, no contexto dos pilares da engenharia de software permitem a informatização das atividades e tarefas, por meio do apoio de ferramentas de software.</p><p>III. O engenheiro de software é o profissional que busca elencar as necessidades dos stakeholders.</p><p>IV. Um diagrama de nível de abstração baixo possui mais detalhes que um diagrama com nível de abstração alto.</p><p>V. Na etapa de análise, costuma-se utilizar o diagrama de casos de uso. Este diagrama tem o propósito de auxiliar o analista e sua equipe na descoberta de requisitos e no alinhamento mais preciso das necessidades dos stakeholders.</p><p>São verdadeiras:</p><p>Alternativas:</p><p>· II – III – V.</p><p>· II – IV – V.</p><p>· I – IV – V.</p><p>checkCORRETO</p><p>· I – II – IV.</p><p>· I – III – V.</p><p>Resolução comentada:</p><p>a afirmação I é verdadeira pois a engenharia de software apoia o desenvolvimento de software ou sistemas de computação, considerando diferentes métodos de especificação, desenvolvimento e manutenção de software; a IV é correta, pois um diagrama com maior nível de detalhamento, ou seja, com nível de abstração mais baixo, representa um maior número de detalhes, enquanto que um diagrama com nível de abstração alto apresenta uma quantidade menor de detalhes; e a questão V está correta, pois é na etapa de análise que utiliza-se o diagrama de casos de uso para facilitar a comunicação e o alinhamento dos requisitos com os stakeholders. A afirmação II é incorreta, pois os métodos, no contexto dos pilares da engenharia de software, referem-se à formalização das atividades e tarefas que englobam cada processo. Finalmente, a afirmação III é incorreta, pois é o analista que busca elencar as necessidades dos stakeholders.</p><p>Código da questão: 58339</p><p>10)</p><p>No contexto de DevOps existem diversas ferramentas que apoiam a automatização de atividades. Sobre elas e os processos no DevOps, podemos afirmar que:</p><p>I. Na implantação, o produto será disponibilizado para o cliente. Este processo é apoiado por serviços como o da Amazon Web Service e o Heroku.</p><p>II. Na operação, prima-se pela estabilidade e pelo funcionamento do software em ambiente de produção. Dentre as ferramentas que apoiam este processo, temos a Zabbix.</p><p>III. No feedback contínuo, temos a retroalimentação ou resposta às diferentes interações e responsabilidades das equipes e dos envolvidos. Dentre as ferramentas que apoiam tal processo, temos o Git e Docker.</p><p>IV. No planejamento, ferramentas como o Google Drive e Astah auxiliam a criar os artefatos que servirão para a construção.</p><p>V. Na integração contínua, busca-se integrar a equipe de compras com a equipe de marketing e são apoiadas por ferramentas como Jenkins e Travis CI.</p><p>São verdadeiras:</p><p>Alternativas:</p><p>· I – II – V.</p><p>· III – IV – V.</p><p>· II – IV – V.</p><p>· I – II – IV.</p><p>checkCORRETO</p><p>· I – II – III.</p><p>Resolução comentada:</p><p>a afirmação I é verdadeira, pois é na implantação que o produto é colocado em ambiente de produção, podendo ser utilizado pelo cliente e sendo apoiado por serviços como o da Amazon Web Service e o Heroku; a II é verdadeira, pois é na operação que prima-se pela estabilidade e pelo funcionamento do software em ambiente de produção, sendo apoiado pela ferramenta Zabbix. A IV também é verdadeira, pois é no planejamento que documentam-se os artefatos que serão utilizados nas demais etapas, principalmente na construção. Neste processo, podem ser utilizados o Google Drive e Astah. É falso o que se afirma em III, pois as ferramentas que apoiam o feedback contínuo são Cucumber, Qmetry e Salesforce. Também é falso o que se afirma na afirmação V, sendo a integração realizada entre as equipes de desenvolvimento e operações.</p><p>Código da questão: 58360</p><p>·</p><p>Resolução comentada:</p><p>a afirmação I é verdadeira, pois é na implantação que o produto é colocado em ambiente de produção, podendo ser utilizado pelo cliente e sendo apoiado por serviços como o da Amazon Web Service e o Heroku; a II é verdadeira,</p><p>pois é na operação que prima-se pela estabilidade e pelo funcionamento do software em ambiente de produção, sendo apoiado pela ferramenta Zabbix. A IV também é verdadeira, pois é no planejamento que documentam-se os artefatos que serão utilizados nas demais etapas, principalmente na construção. Neste processo, podem ser utilizados o Google Drive e Astah. É falso o que se afirma em III, pois as ferramentas que apoiam o feedback contínuo são Cucumber, Qmetry e Salesforce. Também é falso o que se afirma na afirmação V, sendo a integração realizada entre as equipes de desenvolvimento e operações.</p><p>Código da questão: 58360</p><p>image1.png</p>

Mais conteúdos dessa disciplina