Edição, formatação.
Etiqueta: visualeditor
Etiqueta: visualeditor
Linha 45: Linha 45:
* ·     Ou seja, mesmo havendo valor nos itens à direita, valorizamos mais os itens à esquerda."  
* ·     Ou seja, mesmo havendo valor nos itens à direita, valorizamos mais os itens à esquerda."  


==== Princípios ====
==== '''Princípios''' ====


O desenvolvimento ágil funciona baseado em 12 princípios, citados a seguir:
O desenvolvimento ágil funciona baseado em 12 princípios, citados a seguir:
Linha 74: Linha 74:
12.  Em intervalos regulares, a equipe reflete sobre como se tornar mais eficaz e então refina e ajusta seu comportamento de acordo.
12.  Em intervalos regulares, a equipe reflete sobre como se tornar mais eficaz e então refina e ajusta seu comportamento de acordo.


==== Metodologias ====
==== '''Metodologias''' ====


    O termo “Desenvolvimento ágil" é usado por diversas metodologias e frameworks que desenvolvem software de forma iterativa e incremental. Mas o mais adequado é dizer que existem várias metodologias ágeis, ou seja, existem vários métodos de desenvolvimento que aplicam a filosofia, os princípios e as técnicas do desenvolvimento ágil.
    O termo “Desenvolvimento ágil" é usado por diversas metodologias e frameworks que desenvolvem software de forma iterativa e incremental. Mas o mais adequado é dizer que existem várias metodologias ágeis, ou seja, existem vários métodos de desenvolvimento que aplicam a filosofia, os princípios e as técnicas do desenvolvimento ágil.
Linha 82: Linha 82:
Embora cada uma tenha sua particularidade e suas vantagens para cada projeto, o Scrum é considerado o mais simples, fácil e utilizado mundialmente.
Embora cada uma tenha sua particularidade e suas vantagens para cada projeto, o Scrum é considerado o mais simples, fácil e utilizado mundialmente.


==== Falhas e críticas ====
==== '''Falhas e críticas''' ====
 
O desenvolvimento ágil também possui falhas e críticas. Dentre as principais, podemos destacar:
O desenvolvimento ágil também possui falhas e críticas. Dentre as principais, podemos destacar:
* ·        Filosofia ou a cultura da empresa pode conflitar com os valores e princípios do ágil;
* ·        Pode faltar suporte gerencial para apoiar as mudanças. É preciso desejar as mudanças;
* ·        Pode faltar experiência ou o treinamento ser insuficiente no novo processo. É preciso tornar-se capaz de trabalhar de maneira ágil;
* ·        Pode ocorrer boicote ou falta de comprometimento da própria equipe. É preciso reconhecer que há espaço para melhorias e desejá-las;
* ·        Pode faltar estrutura e documentação necessárias;
* ·        Na maioria das vezes trabalha apenas com desenvolvedores de nível sênior;
* ·        Poder levar a maiores dificuldades nas negociações contratuais.


* ·                   Filosofia ou a cultura da empresa pode conflitar com os valores e princípios do ágil;
==== '''Referências''' ====
* ·                   Pode faltar suporte gerencial para apoiar as mudanças. É preciso desejar as mudanças;
* ·                   Pode faltar experiência ou o treinamento ser insuficiente no novo processo. É preciso tornar-se capaz de trabalhar de maneira ágil;
* ·                   Pode ocorrer boicote ou falta de comprometimento da própria equipe. É preciso reconhecer que há espaço para melhorias e desejá-las;
* ·                   Pode faltar estrutura e documentação necessárias;
* ·                   Na maioria das vezes trabalha apenas com desenvolvedores de nível sênior;
* ·                   Poder levar a maiores dificuldades nas negociações contratuais
 
==== Referências ====


<Ref.: <nowiki>http://www.cprime.com/about/scrum_faq.html</nowiki>>
<Ref.: <nowiki>http://www.cprime.com/about/scrum_faq.html</nowiki>>

Edição das 03h01min de 9 de setembro de 2016

Desenvolvimento ágil

Introdução

Segundo a Standish Group, até o ano de 2009 apenas 32% dos projetos tinham sucesso, sendo 44% com atraso ou defeito e 24% são falhos. Surgiu então os métodos ágeis, para suprir a necessidade de melhorias na forma como se desenvolver um software, afim de satisfazer o cliente, elevar o índice de sucesso e já inicializar um novo projeto.

Durante o desenvolvimento de um projeto, novas tecnologias e técnicas são descobertas, novos requisitos são exigidos pelo mercado, desta forma, os métodos "rígidos" de desenvolvimento acabam impedindo alterações no projeto durante a sua construção, o que pode resultar em projetos obsoletos ou que não atendem as novas necessidades do mercado.

Conceito

Desenvolvimento Ágil é uma forma de gestão e desenvolvimento de Software que usa uma forma de planejar e executar iterativa e incremental, voltado para processos empíricos, ou seja, complexos, caóticos ou com incerteza e até mesmo confusos, com mudanças ao longo do processo de desenvolvimento, não são repetitivos e são imprevisíveis.

Essa forma de gestão e desenvolvimento divide o problema (software) em produtos menores, para ao final entregá-lo funcionando regularmente. Esta técnica aproxima a equipe, proporcionando maior colaboração entre os desenvolvedores e os experts de negócios, comunicação face a face, reduz os riscos dos projetos, reage as mudanças de forma mais rápida e natural e a satisfação final dos clientes através da adoção de práticas de gestão e de engenharia de software baseadas nos valores e princípios do Lean e do agile. Desta forma, o principal objetivo é a entrega do um produto que realmente atenda o cliente e que será útil e de qualidade.

Segundo Hishsmith, 2004, agilidade em TI é “a habilidade de criar e responder a mudanças, buscando a obtenção de lucro em um ambiente de negócio turbulento” ou seja, o equilíbrio entre flexibilidade e estabilidade.

O desenvolvimento ágil defende que a melhor maneira de atender às necessidades dos clientes é através do trabalho em equipe, de um grupo comprometido, que foca nos resultados com rapidez e o menor desgaste possível.

A confiança nas pessoas e na sua capacidade de colaboração é fundamental ao desenvolvimento ágil. Não há desenvolvimento ou sucesso sem as pessoas. Deve-se criar um processo ágil baseado nas habilidades dos membros da equipe, e não depender tanto de uma estrutura de processo para atingir o seu sucesso.

Essa metodologia possibilita que a equipe trabalhe mais sua criatividade. Não há tanta pressão de uma gerência pesada e rígida, que impõe os afazeres. Todos são incentivados a estudar e aprender ao longo do projeto e tem liberdade para tomar decisões que melhor representem o consenso da equipe.

Dessa forma, o processo ágil não tem mais aquela antiga hierarquia, ou uma estrutura tradicional de comando e controle e sim uma relação de confiança e colaboração acima de tudo.

Vantagens ao cliente

Dentre os benefícios do desenvolvimento ágil para os clientes, podemos destacar o foco no valor do negócio e no retorno do investimento, na entrega mais rápida e regular do projeto, foco no que é prioritário e que traz mais retorno/lucro, transparência e visibilidade do desenvolvimento, flexibilidade para mudanças de requisitos e mais agilidade nas tomadas de decisões, melhoria na qualidade final do produto, maior produtividade e redução dos riscos. 

Vantagens para os desenvolvedores

O desenvolvimento ágil também é vantajoso para os desenvolvedores. Dentre as vantagens, é possível enfatizar a criação de escopos claros, maximizar o comprometimento, estabelecer equipes com maior autonomia, disciplina e regularidade com mais comunicação entre si e com o cliente, busca de melhorias, redução de desperdícios, antecipação de problemas e agilidade na tomada de decisões.

  História e filosofia

Desenvolvimento ágil não é algo novo, existe desde 2001, ganhando destaque através do movimento denominado Manifesto ágil, o qual reuniu 17 pessoas para formar uma aliança durante um workshop realizado em Snowbird, Utah, EUA., que assinaram e estipularam as seguintes filosofias/diretrizes a serem seguidas no desenvolvimento de projetos:

  • ·     Indivíduos e interações mais que processos e ferramentas;
  • ·     Software em funcionamento mais que documentação abrangente;
  • ·     Colaboração com o cliente mais que negociação de contratos;
  • ·     Responder a mudanças mais que seguir um plano;
  • ·     Ou seja, mesmo havendo valor nos itens à direita, valorizamos mais os itens à esquerda."

Princípios

O desenvolvimento ágil funciona baseado em 12 princípios, citados a seguir:

1.     Nossa maior prioridade é satisfazer o cliente através da entrega contínua e adiantada de software com valor agregado.

2.     Mudanças nos requisitos são bem-vindas, mesmo tardiamente no desenvolvimento. Processos ágeis tiram vantagem das mudanças visando vantagem competitiva para o cliente.

3.     Entregar frequentemente software funcionando, de poucas semanas a poucos meses, com preferência à menor escala de tempo.

4.     Pessoas de negócio e desenvolvedores devem trabalhar diariamente em conjunto por todo o projeto.

5.     Construa projetos em torno de indivíduos motivados. Dê a eles o ambiente e o suporte necessário e confie neles para fazer o trabalho.

6.     O método mais eficiente e eficaz de transmitir informações para e entre uma equipe de desenvolvimento é através de conversa face a face.

7.     Software funcionando é a medida primária de progresso.

8.     Os processos ágeis promovem desenvolvimento sustentável. Os patrocinadores, desenvolvedores e usuários devem ser capazes de manter um ritmo constante indefinidamente.

9.     Contínua atenção à excelência técnica e bom design aumenta a agilidade.

10.  Simplicidade--a arte de maximizar a quantidade de trabalho não realizado--é essencial.

11.  As melhores arquiteturas, requisitos e designs emergem de equipes auto-organizáveis.

12.  Em intervalos regulares, a equipe reflete sobre como se tornar mais eficaz e então refina e ajusta seu comportamento de acordo.

Metodologias

    O termo “Desenvolvimento ágil" é usado por diversas metodologias e frameworks que desenvolvem software de forma iterativa e incremental. Mas o mais adequado é dizer que existem várias metodologias ágeis, ou seja, existem vários métodos de desenvolvimento que aplicam a filosofia, os princípios e as técnicas do desenvolvimento ágil.

Metodologias ágeis de desenvolvimento de software são iterativas, ou seja, o trabalho é dividido em iterações e as mais conhecidas são: Extreme Programming (XP), Scrum, Lean Development, Feature-Driven Development (FDD), Kanban, RUP e OpenUP.

Embora cada uma tenha sua particularidade e suas vantagens para cada projeto, o Scrum é considerado o mais simples, fácil e utilizado mundialmente.

Falhas e críticas

O desenvolvimento ágil também possui falhas e críticas. Dentre as principais, podemos destacar:

  • ·        Filosofia ou a cultura da empresa pode conflitar com os valores e princípios do ágil;
  • ·        Pode faltar suporte gerencial para apoiar as mudanças. É preciso desejar as mudanças;
  • ·        Pode faltar experiência ou o treinamento ser insuficiente no novo processo. É preciso tornar-se capaz de trabalhar de maneira ágil;
  • ·        Pode ocorrer boicote ou falta de comprometimento da própria equipe. É preciso reconhecer que há espaço para melhorias e desejá-las;
  • ·        Pode faltar estrutura e documentação necessárias;
  • ·        Na maioria das vezes trabalha apenas com desenvolvedores de nível sênior;
  • ·        Poder levar a maiores dificuldades nas negociações contratuais.

Referências 

<Ref.: http://www.cprime.com/about/scrum_faq.html>

<http://blog.myscrumhalf.com/2011/05/faq-scrum-o-que-e-desenvolvimento-agil/>

<http://agilemanifesto.org/iso/ptbr/principles.html>

<https://www.ibm.com/developerworks/community/blogs/rationalbrasil/entry/mas_o_que_s_c3_a3o_essas_tais_de_metodologias__c3_a1geis?lang=em>

<http://www.ambysoft.com/artwork/graphs/agileCriteria2010Value.jpg>

<http://www.devmedia.com.br/login/login.asp?ret=articles/viewcomp.asp?comp=5916>

<www.agilemanifesto.org>