Práticas Ágeis, Requisitos e Modelagem de Software

Classificado em Computação

Escrito em em português com um tamanho de 5,36 KB

Práticas Ágeis e Desenvolvimento de Software

Test-Driven Development (TDD)

  • TDD é a técnica que permite fazer testes contínuos e não apenas na conclusão do sistema, melhorando a qualidade técnica do produto.
  • Incrementos desenvolvidos em tempo reduzido: releases pequenos, entregando funcionalidades em meses ou semanas, ao invés de anos.
  • Utilização de refatoração: melhorando o código e tornando-o mais fácil de manter constantemente.
  • Integração Contínua: quando o incremento está pronto, ele é integrado ao sistema como um todo, ou seja, isto é feito diariamente.

Programação em Par (Pair Programming)

Vantagens da Programação em Par

  • Compartilhamento do conhecimento
  • Correção de falhas
  • Manutenibilidade

Desvantagens da Programação em Par

  • Custo em dobro
  • Diferencial de conhecimento
  • Distração

Quando Usar Métodos Ágeis

Métodos ágeis são recomendados quando não se trata de grandes sistemas ou sistemas críticos.

Engenharia de Requisitos

Muitas empresas estão dispostas a trocar a qualidade e o compromisso com requisitos do software por uma implantação mais rápida, porque os requisitos iniciais serão alterados, sofrendo mudanças rápidas e imprevisíveis e, quando forem entregues, poderão estar desatualizados.

Validação de Requisitos

Este processo trata, tal como o seu nome indica, da validação quanto à consistência, precisão e contextualização de requisitos levantados no processo de identificação e descoberta, e de análise e negociação de requisitos. Este processo envolve uma revisão de todos os requisitos levantados e negociados, assim como uma prototipagem, validação de modelos e teste de requisitos. Este processo, que permite a identificação destas mesmas incoerências na fase anterior à versão final do relatório de requisitos, minimiza grandemente o risco de encontrar estas incoerências numa fase tardia, ou até mesmo na terminação do desenvolvimento do sistema.

Gerenciamento de Requisitos

O gerenciamento de requisitos é um modelo sistemático para encontrar, documentar, organizar e rastrear os requisitos variáveis de um sistema.

Métodos de Análise de Requisitos

Prototipagem

Trata-se de uma versão inicial do sistema, baseada em requisitos ainda pouco definidos, mas que pode ajudar a encontrar desde cedo falhas que, através da comunicação verbal, não são tão facilmente identificáveis.

Workshop de Requisitos

Consiste numa técnica usada através de uma reunião estruturada, da qual devem fazer parte um grupo de analistas e um grupo representando o cliente, para então obter um conjunto de requisitos bem definidos. Outras técnicas incluem entrevistas e questionários.

Modelagem de Software

Modelo de Contexto

Modelos de contexto são usados para ilustrar o contexto operacional de um sistema; eles mostram o que existe fora dos limites do sistema.

Modelagem da Interação

  • A modelagem da interação do usuário é importante por auxiliar a identificar os requisitos do usuário.
  • Modelar a interação sistema a sistema destaca os problemas de comunicação que possam vir a surgir.
  • Modelar a interação de componentes auxilia a entender se uma estrutura proposta de sistema pode fornecer o desempenho e a confiança requeridas do sistema.
  • Os diagramas de caso de uso e os diagramas de sequência podem ser usados para modelagem de interação.

Modelos Estruturais

  • Modelos estruturais de software mostram a organização de um sistema em termos de seus componentes que compõem este sistema e seus relacionamentos.
  • Os modelos estruturais podem ser modelos estáticos, que mostram a estrutura do projeto do sistema, ou modelos dinâmicos, que mostram a organização do sistema quando ele está em execução.
  • Você cria modelos estruturais de um sistema quando se está discutindo e projetando a arquitetura do sistema.

Modelos Comportamentais

  • Os modelos comportamentais são modelos do comportamento dinâmico do sistema enquanto esse está em execução. Eles mostram o que acontece ou o que deveria acontecer quando um sistema responde a um estímulo de seu ambiente.
  • Podem-se considerar esses estímulos como sendo de dois tipos:
    • Dados: Alguns dados que chegam e precisam ser processados pelo sistema.
    • Eventos: Alguns eventos que acontecem disparam o processamento do sistema. Os eventos podem ter dados associados, embora isso não ocorra sempre.

Engenharia Dirigida a Modelos (MDE)

  • A Engenharia Dirigida a Modelos (MDE – Model-Driven Engineering) é uma abordagem do desenvolvimento de software, na qual os modelos, e não os programas, são os principais produtos do processo de desenvolvimento.
  • Os programas executados em uma plataforma de hardware/software são gerados automaticamente, a partir dos modelos.
  • Os proponentes da MDE argumentam que isso aumenta o nível de abstração na engenharia de software, o que faz com que os engenheiros não precisem mais se preocupar com detalhes de linguagem de programação ou com as especificidades das plataformas de execução.

Entradas relacionadas: