Engenharia de Software: Do Conceito à Manutenção

Classificado em Computação

Escrito em em português com um tamanho de 3,45 KB.

Custo da Mudança

Planos estratégicos e racionais de desenvolvimento baseiam-se no custo total do sistema, não apenas nos custos de desenvolvimento.

ENGENHARIA DE SISTEMAS

Software faz parte de um sistema amplo.

Envolve a coleta de requisitos em nível do sistema, com uma pequena quantidade de projeto e análise de alto nível.

ANÁLISE DE REQUISITOS DE SOFTWARE

É o primeiro passo técnico do processo de engenharia de software.

O processo de coleta dos requisitos é intensificado e concentrado especificamente no software.

Análise de Requisitos

O analista deve compreender o domínio da informação, a função, desempenho e interfaces exigidos.

Os requisitos são documentados e revistos com o cliente.

MANUTENÇÃO

Provavelmente o software deverá sofrer mudanças depois que for entregue ao cliente.

Ocorre devido a erros encontrados, adaptações devido a mudanças (SO ou periférico) ou por acréscimos funcionais solicitados pelo cliente.

Engenharia Progressiva x Engenharia Reversa

Engenharia Progressiva: Processo tradicional de engenharia de software, caracterizado pelas atividades progressivas do ciclo de vida, que partem de um alto nível de abstração, para um baixo nível de abstração.

Engenharia Reversa: O processo inverso à Engenharia Progressiva, caracterizado pelas atividades retroativas do ciclo de vida, que partem de um baixo nível de abstração para um alto nível de abstração.

Qualidade de Software

É definida como a conformidade a requisitos funcionais e de desempenho explicitamente declarados, a padrões de desenvolvimento claramente documentados e a características implícitas que são esperadas de todo software.

Recursos Humanos

Projetos Pequenos: uma única pessoa

Projetos Grandes: participação varia através do ciclo de vida

A comunicação é absolutamente essencial para o desenvolvimento do software. Todo novo caminho de comunicação exige esforço adicional e, portanto, tempo adicional.

MÉTRICAS ORIENTADAS AO TAMANHO

São derivadas de medidas diretas do software e do processo através do qual ele é desenvolvido.

Exemplos: LOC - Lines of Code, KLOC - Thousand Lines of Code

VANTAGENS:

  • Fáceis de serem obtidas
  • Vários modelos de estimativa baseados em LOC ou KLOC

DESVANTAGENS:

  • LOC depende da linguagem de programação
  • Penalizam programas bem projetados, mas pequenos
  • Não se adaptam às linguagens não procedimentais
  • Difícil de obter em fase de planejamento

MÉTRICAS ORIENTADAS À FUNÇÃO

São derivadas de medidas indiretas do software e do processo através do qual ele é desenvolvido.

Exemplo: PF - Pontos por Função

Concentra-se na funcionalidade ou utilidade do software.

Os PFs são derivados usando uma relação empírica baseada em medidas do domínio de informação e da complexidade do software.

VANTAGENS:

  • Independentes da linguagem
  • Ideal para aplicações que usam linguagem não procedimental
  • Baseados em dados mais fáceis de serem conhecidos durante a evolução do projeto

DESVANTAGENS:

  • Cálculo baseado em dados subjetivos
  • Não é uma medida direta; é apenas um número

Entradas relacionadas: