Você está na página 1de 11

Universidade Tecnológica Federal do Paraná

Análise sobre metodologias ágeis

Aluno: Elise Oliveira

Turma: CSR44 -S71

Professor: Paulo Stadzisz

Curitiba

2022

1
SUMÁRIO
RESUMO ...................................................................................................................................... 3
Introdução ................................................................................................................................... 4
metodologias AGÉIS...................................................................................................................... 4
metodologiaS TRADICIONAIS ......................................................................................................... 6
COMPARAÇÃO ENTRE AS metodolOGIAS ....................................................................................... 9
Conclusão .................................................................................................................................. 10
Referências Bibliográficas ........................................................................................................ 11

2
RESUMO
As diferentes metodologias entraram no mercado a fim de auxiliar e facilitar o dia a dia, fazendo com
que a principal característica do método é direcionar a gestão de projetos por meio de ciclos pré-
estabelecidos. Este modelo foi criado, inicialmente, para entregar com maior rapidez e frequência os
softwares, de acordo com a necessidade de cada cliente. Se demorasse muito, os produtos poderiam
tornar-se obsoletos antes do tempo.

As informações descritas abaixo visam com dados disponíveis online (sites informativos e vídeos
gravados do Youtube) que de alguma forma agregam conhecimento sobre de forma clara e explicativa
e que tenha alguma relevância agregada condizente a uma fonte confiável.

Palavras chaves: Tecnologia, metodologia, ágil, ciclos.

3
INTRODUÇÃO
A metodologia ágil é uma forma de acelerar as conquistas de um projeto específico. Consiste em
dividir o produto entregue ao cliente final em tiragens menores. Como resultado, quaisquer
problemas podem ser corrigidos e os planos podem ser revisados mais rapidamente. Embora sua
implementação já tenha começado e seja muito popular entre as equipes de desenvolvimento, essa
estratégia pode ser utilizada em qualquer tipo de projeto.

Com a grande busca por lucros e eficiência, as empresas desenvolvedoras de software estão à procura
por metodologias em que possam administrar melhor o seu tempo e seus recursos, para entregar
produtos com qualidade

METODOLOGIAS AGÉIS
Ganhando notoriedade por volta de 2001 em uma reunião de 17 executivos que fizeram a engenharia
reversa do padrão da indústria de software, discutiu-se que o objetivo é criar uma nova forma de
produzir software que possa ser utilizado por empresas e outras empresas, substituindo o
desenvolvimento do tradicional modelo. O grupo concordou que certos princípios eram cruciais para
alcançar bons resultados.

Em um processo de software (ou metodologia de desenvolvimento de software) é o conjunto de


atividades e resultados associados que contribuem para a produção do programa. Em todos os tipos
de atividades relacionadas, existem itens, como análise e codificação de demanda. As saídas do
processo são defeitos que refletem como o processo foi executado. Embora existam muitos processos
de desenvolvimento de software, existem algumas atividades básicas que são comuns a Sommerville
(2003) sendo eles:

• Especificação de Software: Nesta etapa, entra-se na parte de especificação de requisitos,


como mencionado em sala de aula e pelo professor Stadz, ele determina “o que” o software
deverá fazer (req. funcionais) e ter como características (req. não funcionais) e procura
também representar as exigências (obrigações) dos clientes sobre o software.
• Projeto da Solução(Design): Neste ponto, trata-se em como será feito a modelagem. Ela
determina “o como” partindo de príncipios de criar, modelar ou até mesmo inventar uma
solução para o cliente a partir dos requisitos especificados.
• Construção da Solução(Desenvolvimento): Esta etapa deve-ser a mais comumente
conhecida, que é a parte de codificação da solução do cliente, aqui entra a parte de
padronização, arquitetura e até codificação(com a linguagem de programação definida) para
resolução do problema do cliente.
• Verificação da Solução (teste): E por fim, após todo o desenvolvimento da solução, é feita a
validação do ambiente programado, para ver se atende as expectativas e exigencias basicas
impostas na etapa 1 que é a especificação de requisitos, e vendo também se está dentro da
solução do problema do cliente.

Muitas empresas desenvolvem software sem usar o processo (isso é um tanto comum em meu dia a
dia, pois depende do porte do cliente, da demanda, urgencia e afins). Isso geralmente ocorre porque
os processos tradicionais não são adequados para as realidades organizacionais. Especialmente as

4
organizações de pequeno e médio porte não têm recursos suficientes para adotar o uso de processos
complicados. Por esse motivo, muitas organizações não usam processos. Essa falta de sistematização
na produção de software não só resulta em má qualidade do produto final, como também dificulta a
entrega do software dentro de prazos e custos pré-definidos, inviabilizando futuros avanços no
software. Alguns processos de software são definidos na literatura de engenharia de software. É
comum que algumas organizações criem seus próprios processos ou mesmo adaptem alguns
processos à realidade. Dentre os diversos processos existentes estão os métodos tradicionais que são
orientados a documentos e os métodos ágeis que visam desenvolver software com o mínimo de
documentação.

Os conceitos chave do “Manifesto Ágil” são:

• Indivíduos e interações ao invés de processos e ferramentas.


• Software executável ao invés de documentação.
• Colaboração do cliente ao invés de negociação de contratos.
• Respostas rápidas a mudanças ao invés de seguir planos.

O “Manifesto Ágil” não rejeita os processos e ferramentas, a documentação, a negociação de


contratos ou o planejamento, mas simplesmente mostra que eles têm importância secundária quando
comparado com os indivíduos e interações, com o software estar executável, com a colaboração do
cliente e as respostas rápidas a mudanças e alterações. Esses conceitos aproximam-se melhor com a
forma que pequenas e médias organizações trabalham e respondem a mudanças. Entre as
metodologias ágeis a mais conhecida é a Extreme Programming.

Para exemplificar o texto mencionado acima, segue uma breve explicação por imagem, que achei bem
interessante e clara.

Figura 01: descrição sobre metodologia ágil

Abaixo, listo algum dos principais métodos ágeis que podem ser implantados em uma organização:

• Scrum;

5
• Kanban;
• Lean;
• Feature Driven Development (FDD);
• eXtreme Programming (XP);
• Microsoft Solutions Framework (MSF).

Como pode se ver, existem diversas metodologias (como Scrum e Lean) que podem fazer parte da
cultura organizacional. É importante frisar que não há a “melhor metodologia”, mas a solução mais
adequada dentro do contexto do seu negócio ou projeto. Apesar de existirem diversas opções de
métodos em uma cultura ágil, os impactos na empresa tendem a serem os mesmos.

METODOLOGIAS TRADICIONAIS
Essas metodologias surgiram em um contexto de desenvolvimento de software muito diferente do
atual, baseado apenas em um mainframe e terminais burros [Royce (1970)]. Na época, o custo de
fazer alterações e correções era muito alto, uma vez que o acesso aos computadores eram limitados
e não existiam modernas ferramentas de apoio ao desenvolvimento do software, como depuradores
e analisadores de código. Por isso o software era todo planejado e documentado antes de ser
implementado. A principal metodologia tradicional e muito utilizada até hoje é o modelo Clássico.

Abaixo, mostro a imagem de algumas metodologias comuns e mais usadas no dia a dia.

Figura 02: Informações sobre metodologias disponíveis (fonte: Slide professor Paulo Stadzisz – pg 44)

Adentrando um pouco mais profundamente, e de forma bem rápida, vou comentar um pouco sobre
algumas delas.

MODELO CLÁSSICO

6
Como o nome mesmo já diz, ele é o tradicional e o mais antigo, tornando – se clássico. O modelo
Clássico ou Sequencial [Pressman (2001)] foi o primeiro processo publicado de desenvolvimento de
software. Desde sua introdução tem sido muito utilizado. É um modelo em que existe uma sequência
a ser seguida de uma etapa a outra. Cada etapa tem associada ao seu término uma documentação
padrão que deve ser aprovada para que se inicie a etapa imediatamente posterior. De uma forma
geral fazem parte do modelo Clássico as etapas de definição de requisitos, projeto do sof tware,
implementação e teste unitário, integração e teste do sistema, operação e manutenção.

Como nem tudo é flores, ele tem alguns probleminhas como sua grande inflexibilidade em divisão de
projeto, dificultando alterações, que é uma etapa SUPER comum no processo de desenvolvimento do
software.

Figura 03: Exemplo de metodologia tradicional (fonte: internet google imagens)

Para exemplificar o texto mencionado acima, segue uma breve explicação por imagem, que achei bem
interessante e clara:

7
8
Figura 04: : descrição sobre metodologia ágil e tradicional

Como podemos observar a imagem acima, ela menciona o desenvolvimento ágil e o desenvolvimento
tradicional, isso ocorre porque dentro de metodologias, elas se dividem nessas duas opções.

COMPARAÇÃO ENTRE AS METODOLOGIAS


Agora continuando, a nossa comparação de metodologias, a maioria das abordagens ágeis não é nova
[Cockburn et al. (2001)]. O que os diferencia dos métodos tradicionais é seu foco e valor. A ideia dos
métodos ágeis é focar nas pessoas ao invés de processos ou algoritmos. Além disso, ele se preocupa
em gastar menos tempo na documentação e mais tempo na implementação.

Uma característica das metodologias ágeis é que elas são adaptativas ao invés de serem preditivas.
Com isso, elas se adaptam a novos fatores decorrentes do desenvolvimento do projeto, ao invés de
procurar analisar previamente tudo o que pode acontecer no decorrer do desenvolvimento. Essa
análise prévia é difícil e apresenta alto custo, além de tornar-se um problema caso não se queira fazer
alterações nos planejamentos. Por exemplo, para seguir estritamente o planejamento, pode ser
necessário que a equipe trabalhe sobre pressão e faça muitas horas extras, o que prejudica a
qualidade do software. Para ser realmente considerada ágil a metodologia deve aceitar a mudança ao
invés de tentar prever o futuro. O problema não é a mudança em si, mesmo porque ela ocorrerá de
qualquer forma. O problema é como receber, avaliar e responder às mudanças.

As metodologias pesadas devem ser aplicadas apenas em situações em que os requisitos do software
são estáveis e requisitos futuros são previsíveis. Estas situações são difíceis de serem atingidas, uma
vez que os requisitos para o desenvolvimento de um software são mutáveis. Dentre os fatores
responsáveis por alterações nos requisitos estão a dinâmica das organizações, as alterações nas leis e
as mudanças pedidas pelos stakeholders, que geralmente têm dificuldades em definir o escopo do
futuro software. Estima-se que caso alguma alteração tenha como custo “1x” quando feita na fase de
requisitos, ela terá um custo de “60x a 100x” quando feita na fase de implantação [Pressman (2001)],
ao se usar o modelo Clássico. Portanto, alterações nos requisitos no modelo Clássico não são
desejáveis.

Vale ressaltar que apesar dessas diferenças, é importante lembrar que não existe um pior ou melhor,
e sim, situações que dependendo vai adaptar entre a metodologia clássica e ágil.

No dia a dia, o fato é que usamos uma grande mesclagem entre as metodologias, pois, nada tem como
seguir 100% o roteiro e muitas das vezes adaptamos, desde usar um Go Horse até algo mais
estruturado. Mantendo a qualidade e os padrões de entrega significativos altos. Em caso de não
conseguirmos corresponder a esse cronograma, é conversado e ajustado trabalhando as novas datas,
e tentando resolver os conflitos que impedem no andamento das atividades.

9
Figura 05: Metodologia ágil x tradicional (fonte: google imagens)

CONCLUSÃO
A metodologia é cada vez mais indispensável para a empresa moderna, onde as demandas acabam
subindo a cada dia mais, e as pessoas passam a ser mais exigentes nas entregas. O desafio futuro das
metodologias ágeis é encontrar maneiras de eliminar alguns de seus pontos fracos, como a falta de
análise de riscos, sem torná-las metodologias pesadas.

Apesar do interesse crescente no uso das metodologias ágeis, ainda faltam casos de sucesso de seu
uso em projetos grandes e críticos. Quanto mais organizações usem as metodologias ágeis, melhores
serão os resultados empíricos em termos de vantagens, desvantagens, riscos e procedimentos para
sua adoção nas organizações. Mesmo assim, os resultados iniciais em termos de qualidade, confiança,
datas de entrega e custo são promissores.

10
Referências Bibliográficas

• [Beck (1999)] Beck, K. Programação Extrema Explicada. Bookman, 1999.


• [Pressman (2001)] Pressman, R. Engenharia de Software. McGraw-Hill, 2001.
• [Sommerville (2003)] Sommerville, I. Engenharia de Software. Editora Addison-Wesley. 592p,
2003.
• https://d1wqtxts1xzle7.cloudfront.net/3307430/Lean_Agil_v8-
libre.pdf?1390831337=&response-content-
disposition=inline%3B+filename%3DMetodologias_ageis_no_contexto_de_desenv.pdf&Expires=
1670508590&Signature=G0zkpdNOOzqequALafjCM5SrnjNOsfTLJiCJAhKg3JaUqho~SUg lNDxTEd8
2B9hOFSjioc9f~j89sjt0KHxgXNnmaw9rMWKLLXzO4~v5bnQlKeeoofOnujov8dKSjMXmTfBldkWlLf
6jH8CxTIB3pmP--btL-CXlP9jdJCiCD76-WZE-xqjYc4mWSD7E1lXII-SsoluwYdAD72w91f--
rfRVYJ71Dn3taO-a1wnPejLDRftRWDDLO3BWcLs0XDAphy80JUDo-
3Es4UY3FWRjiPKAvAWonqn71njFG8uW7Ti8E5JWhHtaDu0DOiVbiWfMJzZX-
UwS02yizQlt7ivIMQ__&Key-Pair-Id=APKAJLOHF5GGSLRBV4ZA
• https://www.lumis.com.br/a-lumis/blog/metodos-ageis.htm
• Engenharia de Software - Suporte Aulas (Paulo Stadzisz-UTFPR)

11

Você também pode gostar