TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Uso de Análise de Pontos de Função em Ambientes Ágeis

Por:   •  6/2/2023  •  Monografia  •  5.210 Palavras (21 Páginas)  •  89 Visualizações

Página 1 de 21

Trabalho apresentado para obtenção do título de especialista em Ciências de dados – 2022[pic 1]

        [pic 2]

Uso de análise de pontos de função em ambientes ágeis

Resumo (ou Sumário Executivo)

A estimativa é uma parte necessária e essencial do ciclo de vida do software. É importante fazer uma estimativa precisa, não importa o quanto se espera. Hoje, na indústria de TI, estimar em processos ágeis é essencialmente baseado em metodologias heurísticas como a opinião de especialistas. Sem coordenação com especialistas, estimar em um processo ágil é excepcionalmente difícil. Nesta área, é necessária uma estratégia algorítmica que possa realizar estimativas precisas. Observou-se que essas técnicas não levam em conta as variáveis ​​fundamentais que afetam custo, tamanho e esforço de estimativa. Sem informações registradas e especialistas, as estratégias de estimativa existentes, por exemplo analógicas, planejam e acabam visivelmente erráticas. Desta forma, há uma sólida necessidade de desenvolver estratégias algorítmicas básicas que combinem as variáveis ​​que afetam o custo, tamanho e esforço dos projetos. Uma abordagem ágil para o desenvolvimento de software é significativamente diferente das abordagens de desenvolvimento tradicionais. Como tal, um processo ágil requer seu próprio método de estimativa. Neste artigo, fornecemos uma breve introdução à estimativa do desenvolvimento ágil de software e como as histórias podem ser dimensionadas usando a análise de ponto de função (APF) e usadas para determinar a velocidade provável de uma equipe de projeto.

Palavras-chave: APF; ágil; agile; scrum.

Estimation is a necessary and essential part of the software lifecycle. It is important to make an accurate estimate, no matter how much is expected. Today, in the IT industry, estimating in agile processes is essentially based on heuristic methodologies such as expert opinion. Without coordination with experts, estimating in an agile process is exceptionally difficult. In this area, an algorithmic strategy that can perform accurate estimations is needed. It was observed that these techniques do not take into account the fundamental variables that affect cost, size and estimation effort. Without recorded information and experts, existing estimation strategies, for example analogues, plan and end up visibly erratic. Thus, there is a solid need to develop basic algorithmic strategies that combine the variables that affect the cost, size and effort of projects. An agile approach to software development is significantly different from traditional development approaches. As such, an agile process requires its own estimation method. In this article, we provide a brief introduction to estimating agile software development and how stories can be scaled using function point analysis (APF) and used to determine the likely velocity of a project team.

Keywords: FPA; agile; scrum.


Introdução

O desenvolvimento e a manutenção de software podem ser um empreendimento desafiador. Se a produtividade e a qualidade são medidas, a estimativa do projeto está entre os principais pontos de atenção. A Análise de Pontos de Função (APF) (ALBRECHT, 1979), combinado com outras métricas, fornece medidas confiáveis e precisas que podem ser inestimáveis para a organização.  Juntas, essas abordagens reduzem o risco e garantem o sucesso do projeto, declarando exatamente quanto trabalho é necessário para concluir o projeto. Os pontos de função medem a quantidade de funcionalidade de negócios que um sistema de informações fornece a um usuário. Essas medições podem ser feitas antes (como uma estimativa), durante ou após o desenvolvimento do projeto, conforme necessário.

Embora a APF seja reconhecida pela Organização Internacional de Padronização pela ISO/IEC 20.926 (ISO 20926, 2002) como um método multifuncional ISO/IEC. 14.143 (DEKKERS, 2003) de medição padrão da indústria, o uso de novas ferramentas, métodos e tecnologias de software levanta a questão da adequação da APF como método de medição. Muitas organizações usam pontos de função como parte de seu ciclo de vida de software ou sistemas em cascata, e o APF pode trabalhar junto com o Agile.

A história das definições das métricas de software e, particularmente, o APF estão intimamente ligados ao gerenciamento de projetos; a medição ocorre antes, durante e depois de várias fases do projeto. O gerenciamento de projetos, por sua vez, está intimamente preocupado com a metodologia de desenvolvimento de software que está sendo usada. Em 1993, o APF tornou-se a métrica mais utilizada e pesquisada em engenharia de software (JONES, 1994). Consequentemente, a fim de produzir resultados precisos ao considerar técnicas de estimativa e medição de produtividade, as métricas de software são muitas vezes ligadas à metodologia de desenvolvimento de software.

Um projeto é um empreendimento temporário que tem um início e um fim definidos e é realizado para atender a metas e objetivos únicos e específicos, geralmente com o objetivo de causar as mudanças necessárias ou agregar valor. A saída do produto de software é um produto de algum tipo. As metodologias tradicionais de desenvolvimento de software em cascata se encaixam bem com essa definição de projeto. O conceito de começo e fim são essenciais tanto para as metodologias quanto para o gerenciamento do projeto. Uma vez que um projeto é definido, as métricas de software podem ser coletadas e aplicadas às informações gerais de medição. As métricas do projeto não têm sentido sem projetos bem definidos.

As metodologias de desenvolvimento Agil(Agile) de software foram originalmente derivadas de alguma forma de processo em cascata, onde uma fase seguia outra. Eles começaram a evoluir ainda mais na década de 1990, quando o Rapid Application Development (RAD) foi desenvolvido por Dan Gielan e James Martin e ganhou popularidade. A metodologia RAD usa planejamento mínimo em favor da prototipagem rápida. O "planejamento" do software desenvolvido usando RAD é intercalado com a escrita do próprio software. Isso geralmente permite que os projetos RAD sejam implementados em um período de tempo mais curto.

O desenvolvimento de aplicativos usando RAD geralmente favorece projetos menores que podem ser desenvolvidos em partes consideráveis. Isso tem uma influência considerável no conceito de um projeto, mas ágil, por causa de ciclos de lançamento mais curtos e definição mais rigorosa, tem um impacto ainda maior.

Algumas das peculiaridades da metodologia RAD incluem:

  • Desenvolvimento de Software Ágil: O desenvolvimento ágil de software apresenta ciclos de lançamento extremamente pequenos, dividindo projetos de software em mini-incrementos.
  • Extreme Programming (XP): XP é um conjunto de práticas de desenvolvimento, definido pela primeira vez por Kent Beck no final da década de 1990, que apresenta iterações curtas, trabalho em equipe próximo e satisfação do cliente.
  • Joint Application Design/Development (JAD): O JAD está intimamente relacionado ao RAD, a principal diferença é que o JAD enfatiza o papel crucial do cliente e os clientes estão ativamente envolvidos nas atividades de design.
  • Scrum: a terminologia e as definições do Scrum são anteriores às do ágil. As práticas de desenvolvimento do Scrum são reduzidas a uma série de iterações curtas ou sprints, nas quais as equipes são auto-organizadas.

Este artigo se concentra na aplicação do APF ao desenvolvimento ágil de software, mas os mesmos princípios podem ser aplicados a todas as metodologias acima. Embora o desenvolvimento ágil tenha suas raízes até os primeiros métodos de desenvolvimento incremental na década de 1950, na maioria dos círculos, é considerado o próximo passo evolutivo do RAD. A maioria dos princípios ágeis foi desenvolvida, definida e documentada no Manifesto Ágil, publicado em 2001. O manifesto descreve um tipo de metodologia RAD que favorece pequenos projetos com grupos de desenvolvimento orientados para a equipe e contato e envolvimento próximo do cliente. O gerenciamento de projetos ágeis consiste principalmente em monitorar e medir o progresso em direção às metas.

...

Baixar como (para membros premium)  txt (35 Kb)   pdf (310.1 Kb)   docx (368.7 Kb)  
Continuar por mais 20 páginas »
Disponível apenas no TrabalhosGratuitos.com