Desenvolvimento Adaptive S / W - Introdução

O que é Agile?

Em termos literários, a palavra “ágil” significa alguém que pode se mover com rapidez e facilidade ou alguém que pode pensar e agir com rapidez e clareza. Nos negócios, “ágil” é usado para descrever maneiras de planejar e fazer o trabalho, onde se entende que fazer mudanças conforme necessário é uma parte importante do trabalho. “Agilidade” nos negócios significa que uma empresa está sempre em condições de levar em conta as mudanças do mercado.

No desenvolvimento de software, o termo “ágil” é adaptado para significar “a capacidade de responder às mudanças - mudanças de Requisitos, Tecnologia e Pessoas”.

Manifesto Ágil

O Manifesto Ágil foi publicado por uma equipe de desenvolvedores de software em 2001, destacando a importância da equipe de desenvolvimento, acomodando as mudanças de requisitos e o envolvimento do cliente.

O Manifesto Ágil é -

Estamos descobrindo melhores maneiras de desenvolver software, fazendo isso e ajudando outros a fazê-lo. Por meio desse trabalho, chegamos a valorizar -

  • Indivíduos e interações sobre processos e ferramentas.
  • software que trabalha sobre uma documentação completa.
  • Colaboração do cliente na negociação do contrato.
  • Respondendo à mudança seguindo um plano.

Ou seja, embora haja valor nos itens à direita, valorizamos mais os itens à esquerda.

Características de Agilidade

A seguir estão as características da Agilidade -

  • Agilidade no Desenvolvimento Ágil de Software concentra-se na cultura de toda a equipe, com equipes multidisciplinares e multifuncionais, com autonomia e auto-organização.

  • Promove responsabilidade compartilhada e prestação de contas.

  • Facilita a comunicação eficaz e a colaboração contínua.

  • A abordagem de equipe inteira evita atrasos e tempos de espera.

  • Entregas frequentes e contínuas garantem um feedback rápido que, por sua vez, permite que a equipe se alinhe aos requisitos.

  • A colaboração facilita a combinação de diferentes perspectivas em tempo hábil na implementação, correções de defeitos e mudanças adequadas.

  • O progresso é constante, sustentável e previsível, enfatizando a transparência.

Metodologias ágeis

As primeiras implementações de métodos Agile incluem Rational Unified Process, Scrum, Crystal Clear, Extreme Programming, Adaptive Software Development, Feature Driven Development e Dynamic Systems Development Method (DSDM). Essas são agora chamadas coletivamente de metodologias Agile, depois que o manifesto Agile foi publicado em 2001.

Neste tutorial, aprenderemos a Metodologia Ágil - Adaptive Software Development.

O que é Adaptive Software Development?

O Desenvolvimento Adaptativo de Software é um movimento em direção às práticas adaptativas, deixando as práticas determinísticas no contexto de sistemas e ambientes complexos. O Adaptive Software Development se concentra na colaboração e no aprendizado como uma técnica para construir sistemas complexos. É uma evolução das melhores práticas de Desenvolvimento Rápido de Aplicativos (RAD) e Ciclos de Vida Evolucionários. O Desenvolvimento de Software Adaptativo foi então estendido para incluir abordagens adaptativas para o gerenciamento, com a especulação substituindo o Planejamento.

Jim Highsmith publicou um livro sobre Adaptive Software Development em 2000. Nas palavras de Highsmith -

“Adaptive Software Development é cíclico como o modelo evolucionário, com os nomes de fase especular, colaborar, aprender refletindo o reino imprevisível de sistemas cada vez mais complexos. O desenvolvimento adaptativo vai além de sua herança evolutiva de duas maneiras principais. Primeiro, ele substitui explicitamente o determinismo pela emergência. Em segundo lugar, vai além de uma mudança no Ciclo de Vida para uma mudança mais profunda no estilo de gestão. ”