Fundo

Os pontos de função COSMIC são uma unidade de medida do tamanho funcional do software. Existem outras maneiras de avaliar o tamanho do software, mas o COSMIC Sizing é a abordagem mais universal, significativa e útil. O tamanho funcional é consistente independentemente da tecnologia utilizada para construí-lo. O tamanho pode ser estimado ou, se todos os requisitos estiverem disponíveis, medido. A estimativa antecipada é muito útil para planejar e gerenciar empreendimentos de software (projetos ou gerenciamento de produtos). O processo de medição do tamanho do software é chamado de medição do tamanho funcional (FSM). A medição do tamanho funcional COSMIC é aplicável a software empresarial, software em tempo real e software de infraestrutura em qualquer nível de decomposição (desde um sistema de software completo até um único componente reutilizável ou uma história de usuário). O tamanho funcional (incluindo Pontos de Função COSMIC – CFP) é independente da tecnologia ou processos utilizados para desenvolver o sistema. COSMIC é um padrão ISO. É uma melhoria refinada em relação aos seus antecessores (IFPUG e Mark II FP). A unidade de tamanho é o Ponto de Função COSMIC ou CFP.

Usos

Depois de medir (ou estimar) o tamanho dos pontos de função COSMIC, você poderá usar isso como métrica base para:

  • Estimar o esforço de desenvolvimento
  • Estimar a duração do projeto
  • Estimar a qualidade do projeto conquista
  • Estimar o esforço de teste
  • Controlar o aumento do escopo
  • Como base para contratos de preço fixo
  • Avalie o custo de reposição de um ativo de software
  • Estimar custos de manutenção e substituição
  • Avalie o alcance da qualidade (taxas de remoção de defeitos)
  • e mais..
Padrão de Engenharia

COSMIC é um padrão internacional para medição de tamanho de software: ISO/IEC 19761:2011.

Por que estimar o tamanho?

Estimamos o tamanho do software antecipadamente por vários motivos, incluindo:
  1. Para avaliar a viabilidade de fazer o trabalho.
  2. Para redimensionar a equipe e alocar tempo suficiente para fazer um trabalho de qualidade.
  3. Para saiba o custo, ao avaliar propostas de terceirização.
  4. Para saber quando isso será feito?
  5. Para defeitos de previsão (potencial, descoberta e remoção)
  6. Para reduzir o risco. Se estimarmos bem podemos evitar que o projeto $1m se torne um problema $3m.

Baseado em Princípios

O método de dimensionamento de pontos de função COSMIC para medir requisitos de software é baseado em dois princípios principais:

1. O 'Modelo de Contexto de Software'

Define o software a ser medido

  • O software é limitado pelo hardware e normalmente estruturado em camadas.
  • O escopo de qualquer software a ser medido dependerá do propósito da medição e deve ser confinado inteiramente dentro de uma única camada.
  • O usuários funcionais de um software a ser medido devem ser identificados a partir de seus Requisitos Funcionais do Usuário (FUR) como os remetentes e/ou destinatários pretendidos dos dados de/para o software, respectivamente.
  • Uma medição precisa do tamanho COSMIC de um software requer que seus FUR sejam conhecidos em um nível nível de granularidade em que é processos funcionais e subprocessos podem ser identificados.
  • Uma medição aproximada do tamanho CÓSMICO é possível se seu FUR for medido em um alto nível de granularidade por uma abordagem de aproximação e dimensionado ao nível de granularidade dos processos funcionais.

2. O ‘Modelo Genérico de Software’

Conceitos genéricos aplicáveis a todos os softwares

  • Um software interage com seus usuários funcionais através de um limite, e com armazenamento persistente dentro do limite.
  • O FUR de um software pode ser mapeado em processos funcionais.
  • Cada processo funcional é iniciado por seu acionando entrada movimentação de dados. O grupo de dados movido pela entrada acionadora é gerado por um usuário funcional em resposta a um evento desencadeador.
  • Um processo funcional deve incluir pelo menos uma movimentação de dados de entrada e uma movimentação de dados de gravação ou de saída. Não há limite máximo para o número de movimentações de dados em um processo funcionalOs Pontos de Função Cósmica são medidos usando o modelo de software genérico
  • Cada processo funcional consiste em subprocessos, movimentos de dados (DMs) e manipulações de dados.
  • Como aproximação para fins de medição, o método COSMIC assume que a funcionalidade de qualquer manipulação de dados é contabilizada pelo movimento de dados ao qual está associado.
  • Existem quatro tipos de movimentação de dados, Entrar, Sair, Escrever e Ler.
  • Uma movimentação de dados move um único grupo de dados, que consiste em um conjunto único de atributos de dados que descrevem um único objeto de interesse.

Pontos de Função Cósmica e o Modelo de Contexto de Software

Consistente

COSMIC é baseado em princípios, por isso funciona em qualquer tipo de software.

Por que recomendamos COSMIC

Os princípios de dimensionamento funcional no COSMIC são inspirados no trabalho original de Allan Albrecht, que criou a ideia do ponto de função do IFPUG. COSMIc é uma reformulação que tem várias vantagens sobre seu antecessor:

  1. Ele mantém uma forte correlação entre o tamanho e o esforço CÓSMICO.
  2. É mais simples de aprender e usar do que seus antecessores.
  3. Não requer conhecimento de todos os requisitos para realizar uma medição de tamanho.
  4. Ele é projetado para software multicamadas
  5. Ele é projetado para sistemas embarcados, bem como software de aplicação
  6. A estimativa COSMIC pode ser automatizada com mais precisão do que o IFPUG.
  7. É 100% gratuito para aprender e usar.

Três etapas para contar pontos de função cósmica

1 Estratégia de Medição – Determine o propósito da medição

de acordo com o contexto de software definido acima, por exemplo, estamos medindo um aplicativo inteiro ou apenas um único componente/camada. Quem são os usuários funcionais que interagem com o software.

2 Determine os parâmetros do 'Modelo Genérico de Software'

Dos Requisitos Funcionais do Usuário (FUR)

  1. Eventos desencadeadores
  2. Os Processos Funcionais
  3. Objetos de interesse (e grupos de dados)
  4. Movimentos de dados

3. Conte as movimentações de dados

Para uma nova aplicação: conte os novos movimentos de dados (DMs)

Para modificações no sistema: Adicione os novos DMs, altere os DMs e remova os DMs.

E pronto, a soma dos DMs é o total do CFP!

Medindo um aplicativo

Mais comumente mediremos um aplicativo inteiro tratando cada camada de forma independente, então basta contar todas as novas funcionalidades e você terá o tamanho total.

Definições

Palavra-chave Definição
Processo Funcional Um conjunto de movimentos de dados… para o software que está sendo medido, que é único dentro desses RFU e que pode ser definido independentemente de qualquer outro processo funcional nesses RFU.

Cada processo funcional inicia o processamento no recebimento de um grupo de dados movido por seu acionamento da movimentação de dados de entrada.

O conjunto de todas as movimentações de dados de um processo funcional é o conjunto necessário para atender seu RFU para todas as respostas possíveis ao seu acionamento da Entrada.

Usuário Funcional os 'remetentes ou destinatários pretendidos de dados' (podem ser humanos ou sistemas ou dispositivos conectados, como sensores)
Requisito Funcional do Usuário (FUR) Declarações de requisitos funcionais, por exemplo. especificação de software ou histórias de usuários.
Objeto de interesse qualquer 'coisa' (física ou conceitual) no mundo do usuário funcional, sobre o qual o software que está sendo medido deve processar ou armazenar/recuperar dados
Grupo de dados consiste em um ou mais atributos de dados que todos descrevem um único objeto de interesse
Evento desencadeador Cada processo funcional é iniciado por seu acionando entrada movimentação de dados. O grupo de dados movido pela entrada acionadora é gerado por um usuário funcional em resposta a um evento desencadeador.

Pontos de Função COSMIC Automatizados

Acelere seu dimensionamento com ScopeMaster

Agora que apresentamos os princípios e fundamentos por trás da metodologia de dimensionamento COSMIC, você vai querer experimentá-la. Se você está procurando um atalho, uma maneira rápida de fazer uma estimativa rápida, basta importar suas histórias para o ScopeMaster e deixá-lo fazer o trabalho para você. O ScopeMaster analisa histórias de usuários escritas e automatiza a estimativa de tamanho em Pontos de Função COSMIC (CFP).