Pular para o conteúdo principal

Questão de Engenharia de Software — Kanban (Engenharia de Software) — VUNESP 2023

Engenharia de SoftwareKanban (Engenharia de Software)
Código
vu197106
Banca
VUNESP
Órgão
Pref SBO
Ano
2023
Cargo
Ana ( )
Assinale a alternativa que apresenta uma metodologia ágil de desenvolvimento de software.
  1. AKanban.
  2. BRAD.
  3. CIncremental.
  4. DEspiral.
  5. EPrototipação.
Revelar gabarito e comentário

GabaritoA — Kanban.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Metodologias ágeis de desenvolvimento de software

Gabarito: letra A. O Kanban é uma metodologia ágil de desenvolvimento de software, pois se enquadra no conjunto de métodos ágeis que priorizam entregas contínuas, visualização do trabalho e melhoria incremental do processo. As demais alternativas (RAD, Incremental, Espiral e Prototipação) são modelos de processo de software que não pertencem ao grupo das metodologias ágeis, sendo classificados como modelos tradicionais, iterativos ou evolucionários.

O desenvolvimento ágil de software é uma abordagem que surgiu como reação aos métodos tradicionais, considerados burocráticos e lentos. O Manifesto Ágil, publicado em 2001, estabeleceu valores como indivíduos e interações mais que processos e ferramentas, software funcionando mais que documentação abrangente, colaboração com o cliente mais que negociação de contratos e responder a mudanças mais que seguir um plano. As metodologias ágeis, como Scrum, XP, Kanban, FDD, TDD, entre outras, compartilham princípios como entregas frequentes, comunicação constante, adaptação a mudanças e foco no software funcional.

O Kanban, especificamente, é um método de gestão de fluxo de trabalho que teve origem no Sistema Toyota de Produção, na década de 1950, e foi adaptado para o desenvolvimento de software por David J. Anderson. Ele se baseia em práticas como visualização do trabalho em um quadro (com colunas como "A fazer", "Fazendo" e "Feito"), limitação do trabalho em progresso (WIP), gerenciamento do fluxo, políticas explícitas, ciclos de feedback e melhoria colaborativa. O Kanban não prescreve papéis fixos nem iterações com time-box, mas é amplamente reconhecido como uma metodologia ágil, pois permite entregas contínuas e incrementais, alinhadas às necessidades do cliente.

É importante distinguir as metodologias ágeis dos modelos tradicionais de processo de software. Os modelos tradicionais, como o cascata, o espiral e o incremental, seguem uma sequência mais rígida de fases (análise, projeto, implementação, testes) e são menos flexíveis a mudanças. O modelo espiral, por exemplo, é um modelo evolucionário que combina prototipação e análise de riscos em ciclos repetitivos, mas não é considerado ágil. O RAD (Rapid Application Development) é um modelo de desenvolvimento rápido, mas também não é classificado como metodologia ágil no sentido estrito. A prototipação é uma técnica que pode ser usada em diversos modelos, mas não é uma metodologia ágil em si.

A pegadinha desta questão está em reconhecer que o Kanban, embora seja um método de gestão de fluxo, é sim uma metodologia ágil de desenvolvimento de software. Muitos candidatos podem confundir Kanban com uma técnica de gestão de estoques (devido à sua origem na Toyota), mas no contexto de engenharia de software, ele é uma das metodologias ágeis mais utilizadas. As demais alternativas são modelos de processo que não se enquadram no conceito de metodologia ágil, sendo classificados como modelos tradicionais ou evolucionários.

Desenvolvimento de software
  • 1Metodologias ágeis
    • Kanban
    • Scrum
    • XP
    • FDD
    • TDD
  • 2Modelos tradicionais
    • Cascata
    • Espiral
    • Incremental
    • RAD
    • Prototipação
LEVEL · soulevel.com.br

Alternativa A — ✅ Correta ⟵ GABARITO

O Kanban é uma metodologia ágil de desenvolvimento de software. Ele se baseia em princípios como visualização do trabalho, limitação do WIP, gerenciamento do fluxo e melhoria contínua, permitindo entregas contínuas e adaptação a mudanças. O Kanban é amplamente reconhecido como uma das metodologias ágeis, ao lado de Scrum, XP, FDD, entre outras.

Alternativa B — ❌ Incorreta

O RAD (Rapid Application Development) é um modelo de desenvolvimento de software que enfatiza a prototipação rápida e o desenvolvimento iterativo, mas não é classificado como uma metodologia ágil. Ele é um modelo de processo que se concentra na velocidade de desenvolvimento, mas não segue os princípios do Manifesto Ágil, como a colaboração contínua com o cliente e a adaptação a mudanças de forma incremental.

Alternativa C — ❌ Incorreta

O modelo incremental é um modelo de processo de software que divide o desenvolvimento em incrementos, cada um adicionando funcionalidades ao sistema. Embora seja iterativo, não é considerado uma metodologia ágil, pois não segue os princípios do Manifesto Ágil, como a entrega contínua e a colaboração estreita com o cliente. O modelo incremental é um modelo tradicional de processo.

Alternativa D — ❌ Incorreta

O modelo espiral é um modelo evolucionário de processo de software que combina prototipação e análise de riscos em ciclos repetitivos. Ele é um modelo tradicional, não uma metodologia ágil, pois não prioriza a entrega contínua de software funcional nem a adaptação rápida a mudanças. O modelo espiral é mais adequado para projetos de grande porte e alto risco.

Alternativa E — ❌ Incorreta

A prototipação é uma técnica de desenvolvimento de software que envolve a criação de protótipos para validar requisitos e obter feedback do usuário. Ela pode ser usada em diversos modelos de processo, mas não é uma metodologia ágil em si. A prototipação é uma ferramenta que pode ser utilizada dentro de metodologias ágeis, mas não é uma metodologia completa.

Gabarito: letra A

Link permanente: /questoes/vu197106