Questões de Concurso
Comentadas sobre processos de software em engenharia de software
Foram encontradas 986 questões
I.O Canary Deployment consiste em liberar uma nova versão do sistema para um subconjunto de usuários ou servidores antes da liberação completa.
II.Essa estratégia permite monitorar métricas como taxa de erro e desempenho em produção, possibilitando rollback com impacto reduzido em caso de falhas.
III.O Canary Deployment requer mecanismos de controle de tráfego (como balanceadores de carga ou feature flags ) para direcionar apenas parte das requisições para a nova versão.
É correto o que se afirma em:
Em uma empresa que adota práticas de integração e entrega contínua (CI/CD), a equipe de DevOps enfrenta inconsistências entre ambientes (desenvolvimento, homologação e produção), além de falhas decorrentes de configurações manuais em servidores e recursos de nuvem. Para resolver esses problemas, a equipe decide adotar a abordagem de Infrastructure as Code (IaC) integradas ao pipeline de deploy . Com base nesse cenário, assinale a alternativa correta:
Uma equipe de desenvolvimento adotou práticas de DevOps em um sistema corporativo. O fluxo definido estabelece que todo o código é versionado em Git, e que a cada push para o repositório remoto é executado automaticamente um pipeline de CI/CD.
Nesse pipeline são realizadas etapas de build, testes automatizados e análise estática de código. Caso todas as etapas sejam concluídas com sucesso, o artefato gerado é automaticamente implantado em ambiente de homologação.
Com base nos conceitos de integração contínua, entrega contínua e automação de pipelines, analise as afirmativas a seguir.
I. A integração contínua (continuous delivery) consiste na prática de integrar alterações de código com frequência em um repositório compartilhado, em que builds e testes automatizados são executados para detectar falhas precocemente no processo de desenvolvimento.
II. A entrega contínua (continuous delivery) pressupõe que o sistema esteja sempre em um estado potencialmente implantável em produção, embora a liberação final para produção dependa de uma aprovação manual.
III. Em pipelines de CI/CD, ferramentas como GitHub Actions e GitLab CI/CD permitem definir workflows ou pipelines automatizados por meio de arquivos de configuração versionados no próprio repositório do projeto.
IV. A cultura DevOps enfatiza a automação de processos de build, teste e deploy, reduzindo a necessidade de interação entre equipes de desenvolvimento e operações ao longo do ciclo de entrega de software.
Assinale a alternativa CORRETA:
Assinale a alternativa correta considerando os conceitos de processo de software.
Assinale a alternativa correta com base nessa abordagem.
Um modelo de processo de software é uma representação abstrata que descreve uma abordagem para o desenvolvimento. Na prática, compreender as diferenças estruturais desses modelos é essencial para a escolha da metodologia adequada a cada projeto. Considerando os modelos genéricos de processo de software, analise as assertivas abaixo:
I. No modelo em cascata, o fluxo de trabalho é estruturado de forma linear e sequencial, exigindo que cada etapa fundamental seja concluída e validada individualmente antes que a fase subsequente possa ser iniciada.
II. O modelo espiral caracteriza-se pela execução de iterações de desenvolvimento focadas na rápida entrega de código e na prototipação informal, dispensando a realização de análises de riscos formais para formar uma espiral de entregas e validações rápidas.
III. O modelo de desenvolvimento incremental baseia-se na divisão do sistema em incrementos funcionais (partes autônomas), permitindo que os requisitos mais críticos ou de maior prioridade para o negócio sejam desenvolvidos e entregues nas primeiras iterações do ciclo de vida.
Quais estão corretas?
O modelo MPS.BR (Melhoria de Processo do Software Brasileiro), versão 1.1, define níveis de maturidade que representam estágios evolutivos da capacidade dos processos organizacionais. Com base nessa classificação, assinale a alternativa que apresenta uma denominação que NÃO corresponde a um nível de maturidade do MPS.BR.
De acordo com o modelo CMMI-DEV (Capability Maturity Model Integration for Development), versão 1.3, os níveis de maturidade representam estágios evolutivos da melhoria de processos organizacionais, sendo definidos de forma sequencial. Nesse contexto, assinale a alternativa que apresenta um nível de maturidade que NÃO pertence ao modelo CMMI-DEV.
De acordo com o modelo MPS.BR (Melhoria de Processo do Software Brasileiro), versão 1.1, os processos do ciclo de vida de software podem ser classificados em processos fundamentais, de apoio e organizacionais, conforme sua função no contexto do desenvolvimento e manutenção de software. Considerando essa classificação, assinale a alternativa que apresenta um processo classificado como processo de apoio.
O modelo CMM (Capability Maturity Model), em sua versão 1.1, estabelece níveis de maturidade que indicam o grau de evolução dos processos de software em uma organização, permitindo avaliar sua capacidade de desenvolvimento de forma estruturada. Nesse contexto, assinale a alternativa que apresenta um nível de maturidade do CMM.
No modelo CMMI-DEV (Capability Maturity Model Integration for Development), versão 1.3, as áreas de processo são organizadas em categorias que agrupam práticas relacionadas a diferentes aspectos da melhoria de processos e desenvolvimento de software. Considerando essa organização, assinale a alternativa que apresenta uma categoria que NÃO pertence ao CMMI-DEV.
O Rational Unified Process (RUP) é um processo de desenvolvimento de software iterativo e incremental, estruturado de forma a organizar as atividades ao longo do tempo e também em diferentes áreas de conhecimento. Nesse contexto, o RUP é descrito a partir de duas dimensões principais, que permitem visualizar tanto a evolução do processo quanto a organização das atividades. Diante disso, assinale a alternativa que apresenta CORRETAMENTE essas duas dimensões.
Um analista de sistemas está avaliando diferentes modelos de processo de desenvolvimento de software para um projeto de grande porte, com requisitos parcialmente definidos e alto risco tecnológico.
Diante disso, considere as afirmações a seguir sobre os modelos Cascata, Espiral e Incremental:
II. O modelo cascata permite mudanças frequentes nos requisitos ao longo do desenvolvimento, devido à sua natureza iterativa.
III. O modelo incremental permite a entrega de partes funcionais do sistema ao longo do tempo.
IV. O modelo espiral é mais indicado para projetos simples, devido à sua baixa complexidade de gerenciamento.
Pode-se afirmar que:
Nos processos de desenvolvimento de software, o modelo cascata (Waterfall) organiza o ciclo de vida do software em etapas sequenciais e bem definidas, nas quais cada fase deve ser concluída antes do início da próxima. Essas etapas são explicitamente previstas no modelo e estruturam o fluxo tradicional de desenvolvimento. Considerando essas características, assinale a alternativa que NÃO corresponde a uma etapa explicitamente prevista no modelo de desenvolvimento em cascata.