Você está na página 1de 9

UPIS - União Pioneira de Integração Social

Pós-graduação em Engenharia de Software, com


Ênfase em Projetos

Trabalho de Conclusão de Disciplina

ENGENHARIA DE SOFTWARE – OVERVIEW

Desenvolvimento de Software – Métodos Ágeis,


Tradicionais ou DevOps?

<<Nome e Matrícula do aluno>>


_____________

¹CIO é a sigla para Chief Information Officer


² Disponível em: < http://cio.com.br/tecnologia/2015/10/15/devops-um-mergulho-nos-detalhes/>
Acesso em: 06/05/2017
<<incluir índice>>

_____________

¹CIO é a sigla para Chief Information Officer


² Disponível em: < http://cio.com.br/tecnologia/2015/10/15/devops-um-mergulho-nos-detalhes/>
Acesso em: 06/05/2017
1. Introdução

O cenário contemporâneo é marcado pelo avanço das


tecnologias de informação e comunicação. O mundo globalizado está cada vez
mais interligado, as pessoas têm facilidade de acessar informações e de se
comunicar a distância. Como a informação e a comunicação estão cada vez
mais céleres, é imprescindível para as organizações agilizarem seus processos
de produção, ao mesmo tempo que aprimoram a qualidade de seus
serviços/produtos. Mas tanto a informação quanto a comunicação de alta
performance necessitam de transmissores e receptores cada vez mais
eficientes e eficazes. Hoje, hardwares e softwares são esses meios que
permitem o tráfego ligeiro de dados e informações. Qualquer pessoa pode
dispor das informações que precisa, bem como se comunicar com quem
deseja, através de desktops, tablets e smartphones. Na indústria, possuir
sistemas de informações estáveis e funcionais garantem a qualidade de
comunicação e de abastecimento de informações entre os colaboradores,
proporcionando eficiência na produção. Então, tanto para os consumidores
quanto para as organizações, dispor de softwares de qualidade significa
possuir informações e meios de comunicações de qualidade. Porém, a
indústria de softwares ainda não domina uma receita eficiente de produção de
programas. No início, atuavam com metodologias bastante burocráticas, como
o modelo de produção em cascata, que nem sempre garantiam prazos,
resultados e/ou a qualidade do produto final. Atualmente, a indústria de
softwares está se adequando as metodologias ágeis, pois como supracitado, a
informação e a comunicação atuais devem ser transmitidas e recebidas com
velocidade, precisão e exatidão. Portanto, produzir um software de qualidade
em curto espaço de tempo é a atual meta da indústria de software. Citado a
premissa, este presente trabalho de conclusão de disciplina visa comparar os
prós e os contras que as atuais metodologias empregadas pelo mercado
possuem, além de apontar as tendências futuras para o Pós-Metodologias
Ágeis.

_____________

¹CIO é a sigla para Chief Information Officer


² Disponível em: < http://cio.com.br/tecnologia/2015/10/15/devops-um-mergulho-nos-detalhes/>
Acesso em: 06/05/2017
_____________

¹CIO é a sigla para Chief Information Officer


² Disponível em: < http://cio.com.br/tecnologia/2015/10/15/devops-um-mergulho-nos-detalhes/>
Acesso em: 06/05/2017
2.Pesquisa Bibliográfica

O Surgimento dos Métodos Ágeis

Na década de 1980 e início da de 1990, havia uma visão


generalizada de que a melhor maneira para conseguir o
melhor software era por meio de um planejamento
cuidadoso do projeto, qualidade da segurança
formalizada, do uso de métodos de análise e projeto
apoiado por ferramentas CASE (Computer-aided software
engineering) e do processo de desenvolvimento de
software rigoroso e controlado. Essa percepção veio da
comunidade de engenharia de software, responsável pelo
desenvolvimento de sistemas de software grandes e
duradouros, como sistemas aeroespaciais e de governo.
(SOMMERVILLE, Ivan. Engenharia de Software 9ª
Edição, 2011, p. 39)

Antes, acreditava-se que o planejamento burocrático era a forma


ideal para se desenvolver um software. Contudo, “apesar dos esforços para
definir processos e métodos cada vez mais burocráticos e rigorosos, a 'crise do
software' não foi totalmente resolvida.” (SATO, 2007, p.2). Isto é, mesmo
seguindo planejamentos severos, os softwares desenvolvidos ainda
apresentavam variáveis, que afetavam o projeto desde a sua produção até a
sua validação. Ainda, de acordo SATO, “a indústria de software cresceu e, com
o surgimento da Internet, transformou-se em uma das indústrias mais
importantes do mundo. […] mudaram também as abordagens para
desenvolvimento de software.” (2007, p. 2). Para resolver as variáveis que
afetavam o desenvolvimento de softwares, cujas metodologias tradicionais não
pareciam sanar totalmente e, acompanhar as transformações e demandas
advindas da evolução da Internet e do mercado, foram concebidos os métodos
ágeis de desenvolvimento de software.

A filosofia por trás dos métodos ágeis é refletida no


manifesto ágil, que foi acordado por muitos dos principais
desenvolvedores desses métodos. Esse manifesto
afirma:
Estamos descobrindo melhores maneiras de desenvolver
softwares, fazendo-o e ajudando outros a fazê-lo. Através
desse trabalho, valorizamos mais:
_____________

¹CIO é a sigla para Chief Information Officer


² Disponível em: < http://cio.com.br/tecnologia/2015/10/15/devops-um-mergulho-nos-detalhes/>
Acesso em: 06/05/2017
Indivíduos e interações do que processos e ferramentas
Software em funcionamento do que documentação
abrangente
Colaboração do cliente do que negociação de contrato
Respostas a mudanças do que seguir um plano
Ou seja, embora itens à direita sejam importantes,
valorizamos mais os que estão à esquerda.
(SOMMERVILLE, Ivan. Engenharia de Software 9ª
Edição, 2011, p. 39)

Os Métodos Ágeis Substituem os Métodos Tradicionais?

Os métodos ágeis se propõem a resolverem as variáveis que


ocorrem nos processos das abordagens tradicionais. São focados mais no
dinamismo e na comunicação que compõem os processos que em seus
planejamentos iniciais e documentações.

Processos orientados a documentação para o


desenvolvimento de software são, de certa forma, fatores
limitadores aos desenvolvedores e muitas organizações
não possuem recursos ou inclinação para processos
pesados de produção de software. Por esta razão, as
organizações pequenas acabam por não usar nenhum
processo. Isto pode levar a efeitos desastrosos na
qualidade do produto final, além de dificultar a entrega do
software nos prazos e custos predefinidos. (SOARES,
Michel dos Santos. Comparação entre Metodologias
Ágeis e Tradicionais para o Desenvolvimento de
Software, 2004, p. 1)

Segundo SOMMERVILLE, “o sucesso dos métodos ágeis indica que


há um grande interesse em usar esses métodos para outros tipos de
desenvolvimento de software.” (2011, p. 41). Contudo, o mesmo autor ressalta
que “[…] devido a seu foco em pequenas equipes bem integradas, existem
problemas em escalá-los para grandes sistemas.” (2011, p.41). Então, seriam
os métodos ágeis funcionais apenas para os pequenos e médios projetos?

Por mais que seja interessante trabalhar com


metodologias ágeis, é necessário entender que existem
projetos que funcionam melhor com esse método,
enquanto outros precisam do planejamento completo e
das previsões da metodologia tradicional. (MARÇAL,
Angélika. Metodologias Tradicionais X Metodologias
Ágeis, 2016)

_____________

¹CIO é a sigla para Chief Information Officer


² Disponível em: < http://cio.com.br/tecnologia/2015/10/15/devops-um-mergulho-nos-detalhes/>
Acesso em: 06/05/2017
Ainda, seriam os métodos ágeis adequados para a manutenção de
softwares? Afinal, parte dos esforços também é dirigido para a manutenção de
softwares, não apenas para o desenvolvimento de novos projetos. De acordo
SOMMERVILLE, sobre as práticas ágeis, “[…] usadas no processo de
manutenção em si, provavelmente são mais eficazes, [...]. Entrega incremental,
projeto para mudanças e manutenção da simplicidade — tudo isso faz sentido
quando o software está sendo alterado.” (2011, p. 42). Ainda, podemos
salientar o seguinte:

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. (SOARES, Michel dos
Santos. Comparação entre Metodologias Ágeis e
Tradicionais para o Desenvolvimento de Software, 2004,
p. 6)

A Opção DevOps

O movimento DevOps vem ganhando visibilidade no


mundo corporativo promovendo a integração e
colaboração entre as áreas de desenvolvimento,
operação e negócio, dando origem às organizações de
alto desempenho, que estão colocando software em
produção com frequência 30 vezes maior e com índice de
falhas 50% menor do que a média do mercado. (SETE,
Márcio. DevOps e a Teoria da Verticalidade, 2015)

Métodos como o Scrum e XP já podem estar com os seus dias


contados. Uma das mais novas opções do mercado, o DevOps, está se
tornado a tendência para o futuro do desenvolvimento de softwares. De acordo
Taurions “[...] nenhum CIO¹ discorda que velocidade, agilidade e inovação são
pilares básicos da sobrevivência dos negócios na sociedade digital. (2015).
Mas DevOps é apenas isso: velocidade, agilidade e inovação? Segundo o
artigo do sítio CIO From IDG, DevOps é “[...] colocar os times de
desenvolvimento e operações trabalhando juntos, sob uma mesma cultura,
práticas, ferramentas e linguagens.”²

_____________

¹CIO é a sigla para Chief Information Officer


² Disponível em: < http://cio.com.br/tecnologia/2015/10/15/devops-um-mergulho-nos-detalhes/>
Acesso em: 06/05/2017
3. Conclusão

_____________

¹CIO é a sigla para Chief Information Officer


² Disponível em: < http://cio.com.br/tecnologia/2015/10/15/devops-um-mergulho-nos-detalhes/>
Acesso em: 06/05/2017
4. Referências Bibliográficas

SOMMERVILLE, Ivan. Engenharia de Software 9ª Edição, São Paulo, 2011.

SOARES, Michel dos Santos. Comparação entre Metodologias Ágeis e


Tradicionais para o Desenvolvimento de Software, 2004. Artigo disponível em:
<http://www.dcc.ufla.br/infocomp/index.php/INFOCOMP/article/view/68>.
Acesso em 09/04/2017.

SATO, Danilo Toshiaki. Uso Eficaz de Métricas em Métodos Ágeis de


Desenvolvimento de Software, São Paulo, 2007. Artigo disponível em:
<http://grenoble.ime.usp.br/~gold/orientados/dissertacao-DaniloSato.pdf>.
Acesso em 09/04/2017.

MARÇAL, Angélika. Metodologias Tradicionais X Metodologias Ágeis, 2016.


Artigo disponível em: <https://hinc.com.br/metodologia-tradicionais-x-
metodologias-ageis/>. Acesso em 09/04/2017.

SETE, Márcio. DevOps e a Teoria da Verticalidade, 2015. Artigo disponível em:


< http://cio.com.br/tecnologia/2015/03/12/devops-e-a-teoria-da-verticalidade/>.
Acesso em 06/05/2017.

_____________

¹CIO é a sigla para Chief Information Officer


² Disponível em: < http://cio.com.br/tecnologia/2015/10/15/devops-um-mergulho-nos-detalhes/>
Acesso em: 06/05/2017

Você também pode gostar