De que se trata o artigo

Este artigo tem por objetivo apresentar uma análise comparativa entre nove métodos ágeis, no sentido de instrumentalizar as equipes e organizações a obterem melhores resultados na aplicação de métodos ágeis em seus projetos.

Para que serve

Os métodos ágeis estão se tornando uma alternativa concreta para ajudar as equipes de desenvolvimento de software a tornarem-se aptas a responder de forma rápida, flexível e eficaz às constantes mudanças que fazem parte da dinâmica natureza dos negócios das organizações. Possuir uma visão crítica sobre o assunto facilita a aplicação destes princípios e práticas no cotidiano das equipes nas empresas.

Em que situação o tema útil

A velocidade de resposta às necessidades do negócio está intimamente ligada à competitividade dos times e organizações. A aplicação de métodos ágeis, dentre outros benefícios, geram transparência com usuários, clientes e acionistas. Fatores como integração das pessoas técnicas e de negócio na obtenção de resultados de melhor qualidade de forma rápida, facilita o alcance da estratégia organizacional, o retorno dos investimentos, dentre outros aspectos essenciais à garantia da sobrevivência institucional. Este tema é essencial para desenvolvedores, líderes de equipes e profissionais de TIC que desejam colaborar para a sustentabilidade de suas organizações.

Autores: Alexandre José Henrique de Oliveira Luna, Cleyverson Pereira Costa e Hermano Perrelli de Moura

Muitos autores como Roosmalen e Hoppenbrouwers, Cummins e Sloane et al. têm dito que para sobreviver à voracidade do mercado é necessário agilidade nos negócios, porém qual é o significado de tal termo? Segundo o Gartner Group, “agilidade de negócio” é estar apto a responder rapidamente e eficientemente às mudanças no mundo dos negócios e, transformar essas mudanças em vantagem competitiva é o principal motivo para sua adoção.

Neste contexto, observa-se que cada vez mais organizações estão adotando a abordagem ágil como uma tática de sobrevivência nestes tempos economicamente turbulentos. Isto por sua vez levou a uma série de opiniões interessantes examinando quais atitudes e atributos seus times precisam para serem bem sucedidos. Sob esta ótica a agilidade de negócio, reconhecida como a habilidade para “mudar o sentido do ambiente e responder eficientemente e efetivamente a essa mudança”, é importante.

Acrescentar agilidade aos processos de gestão, em sua essência já infere um maior nível de convergência entre as iniciativas em TIC (Tecnologias da Informação e Comunicação) e os objetivos do negócio. Contudo, outros benefícios de uma abordagem ágil no contexto de negócios podem ser identificados, como, por exemplo: melhor time-to-market e aumento da velocidade de tomada de decisão, o que acaba refletindo numa maior competitividade organizacional.

Neste contexto, a chave para realizar a verdadeira agilidade de negócio é encorajar os executivos a pensarem nas mudanças de negócio sem se preocupar com as implicações que as mesmas trarão ao legado de TIC existente na organização. Em outras palavras, a empresa precisa se tornar centrada no negócio e não centrada na TIC.

Quando o negócio se torna centrado em si, a organização se torna hábil a definir, criar e construir novos processos ou funções de negócio. Entretanto, para viabilizar esta visão, é essencial que a TIC cumpra o seu papel de se “elevar” de uma abordagem puramente operacional ou tática, para uma participação mais estratégica, colaborando de modo concreto, inclusive, nas definições dos objetivos de negócio.

Desta forma acredita-se que os métodos ágeis têm muito a contribuir nesta direção através da simplificação das iniciativas da TIC, sensibilização e valorização das pessoas, adoção de uma abordagem iterativa e adaptativa, aplicação prática de seus princípios, valores, práticas e orientações sobre sistematização das iniciativas da gestão em TIC.

Engenharia de Software

Engenharia de Software é uma área do conhecimento voltada para a especificação, desenvolvimento e manutenção de sistemas de software, aplicando tecnologias e práticas da ciência da computação, gerência de projetos e outras disciplinas, objetivando organização, produtividade e qualidade.

Pressman destaca que a Engenharia de software abrange três componentes básicos:

Métodos: proporcionam os detalhes de como construir o software. Englobam tarefas como planejamento e estimativa de projeto, análise de requisitos de software e de sistemas, projeto da estrutura de dados, arquitetura de programa e algoritmo de processamento, codificação, teste e manutenção;

Ferramentas: existem para sustentar cada um dos métodos. Algumas ferramentas existentes para apoio são as Computer-Aided Software Engineering, conhecidas como ferramentas CASE;

Procedimentos: constituem o elo entre métodos e ferramentas. Definem a sequência em que os métodos são aplicados.

Desde então vem prosperando o aparecimento de diversos métodos, técnicas e ferramentas para aperfeiçoar os processos de desenvolvimento de software em todo o mundo. Mesmo com toda esta evolução, a Engenharia de Software há muito vinha enfrentando problemas relativos a atraso na entrega de projetos, orçamento extrapolado, insatisfação de clientes e usuários, além de conflitos e desgastes entre analistas e clientes. Isso se dava, dentre outros fatores, principalmente em função dos métodos disponíveis para o desenvolvimento de software mostrarem-se pesados e burocráticos, ineficientes e improdutivos.

O Manifesto Ágil

Sob este contexto e percepção, em 11 de fevereiro de 2001, um grupo de profissionais e pesquisadores de TI se reuniram com a finalidade de criar uma mobilização em torno de uma série de valores e práticas de desenvolvimento de software que eles intitularam de Manifesto for Agile Software Development.

Assim, os dezessete presentes assinaram o seguinte manifesto:

Estamos descobrindo maneiras melhores de desenvolver software fazendo-o nós mesmos e ajudando outros a fazê-lo. Através desse trabalho, passamos a valorizar:

Indivíduos e interação entre eles 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.

Este Manifesto também enuncia os doze princípios de um processo ágil, como podem ser vistos na Tabela 1.

ID

Princípio

P1

A prioridade é a satisfação do cliente, mediante o rápido e contínuo fornecimento de software que agregue um valor ao negócio.

P2

As mudanças são bem-vindas, mesmo no final do desenvolvimento, principalmente se as alterações darão vantagem competitiva para os nossos clientes.

P3

Fazer entregas frequentes de software que funcionem a partir de um par de semanas a um par de meses, sempre procurando o menor intervalo de tempo entre as entregas.

P4

As pessoas de negócio (executivos) e os desenvolvedores devem trabalhar juntos diariamente e ao longo de todo o projeto.

P5

Construir o projeto em torno de indivíduos motivados. Fornecer todo apoio necessário ao ambiente do projeto e confiar plenamente na equipe.

P6

O diálogo face a face é a mais eficiente e eficaz forma de comunicar as informações dentro da equipe de desenvolvimento.

P7

Software que funciona é a principal medida de progresso.

P8

Os processos ágeis promovem um desenvolvimento sustentável. Os promotores, usuários e desenvolvedores devem ser capazes de manter um ritmo de trabalho constante por tempo indeterminado.

P9

A atenção contí ...

Quer ler esse conteúdo completo? Tenha acesso completo