métricas e estimativas em processo de produção de software métricas e estimativas em processos...

26
Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Aula 2

Upload: internet

Post on 17-Apr-2015

109 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Métricas e estimativas

em processos de

Produção de software

Métricas e estimativas

em processos de

Produção de softwareAula 2

Page 2: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Aula 2 - Funções de DadosConceitos IniciaisConceitos IniciaisALIsALIs

ConceitoRegras de identificaçãoDERRegras de contagem de DERsRLRRegras de contagem de RLRsTabelas(complexidades e contribuições)

AIEsAIEsConceitoRegras de identificaçãoDERRegras de contagem de DERsRLRRegras de contagem de RLRsTabelas(complexidades e contribuições)

Page 3: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Conceitos IniciaisVisão do usuárioVisão do usuário

A visão do usuário representa a descrição formal das necessidades do seu negócio, descrito

na sua própria linguagem. Desta forma é uma descrição das funções do negócio do usuário conforme

são vistas ou reconhecidas por ele. Somente as visões do usuário ser usadas em contagens de pontos

por função.

Identificável (ou reconhecido) pelo usuárioIdentificável (ou reconhecido) pelo usuárioRefere-se aos requisitos definidos pelos processos ou grupos de dados que são consentidos (vistos,

enxergados, compreendidos), tanto por usuários quanto pelos desenvolvedores.

Exemplo.Exemplo.

Usuários e desenvolvedores concordam que uma aplicação de Recursos Humanos

armazene e mantenha dados relativos a empregados.

Usuários e desenvolvedores concordam que uma aplicação se torna mais amigável se

contiver uma Combo Box sendo carregada com uma lista de opções (ex.: profissões).

Também concordam que serão úteis as funcionalidades de manutenção de dados que

atualizarão a lista de opções. Então a tabela do tipo Código / descrição que armazenará

estas informações será um ALI da aplicação.

Page 4: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Conceitos IniciaisMantido (ou manutenido)Mantido (ou manutenido)

É a habilidade em modificar dados através de um

processo elementar.

Adicionar, excluir, alterar, popular, revisar, associar ou

criar dados.

Exemplo:

Page 5: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Conceitos IniciaisProcesso elementarProcesso elementar

É a menor unidade de atividade significante para o usuário na aplicação.

Um usuário requer a habilidade de incluir um funcionário na

aplicação. Na visão do usuário, para a inclusão de um funcionário,

além das informações básicas (Nome, endereço etc), também são

necessários os dados sobre formas de pagamento que serão

praticadas (horário / mensal).

Então, adicionar somente os dados básicos de funcionários não é

uma atividade que caracteriza uma inclusão, sob o ponto de vista

do usuário.

Exemplo:Exemplo:

Um processo elementar deve ser auto contido (ou auto

suficiente) e deixar a aplicação em um estado consistente

após ser concluído.

Page 6: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Conceitos Iniciais

Se todas as informações obrigatórias (Sob o ponto de

vista do usuário) não são incluídas, o registro do novo

funcionário não pode ser criado, isto é, adicionando

somente uma parte da informação deixa a regra de

negócio de “incluir um funcionário” em um estado

inconsistente e, portanto, não é caracterizado como um

processo elementar.

Page 7: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Conceitos IniciaisInformações de controleInformações de controle

É um dado que influencia um processo elementar da aplicação sendo

contada. Ele especifica o que, quando ou como um dado deve ser

processado.

Exemplo:Exemplo:Suponha uma aplicação de folha de pagamento; alguém neste

departamento pode ser responsável por estabelecer uma programação de

eventos necessários para a confecção da folha.

O Ciclo ou agendamento do pagamento aos funcionários contem

periodicidades e datas que regulam os processos automatizados da

aplicação e podem, por sua vez, serem mantidos ( I / A / E ).

Os parâmetros que controlam os agendamentos destes eventos podem são

armazenados na aplicação e podem ser mantidos por processos

elementares

Assim, informações de controle podem ser vistas como dados utilizados

pelo aplicativo para garantir que todas as funções sejam realizadas de

acordo com requisitos dos usuários.

Page 8: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Arquivo Lógico Interno - ALIArquivo Lógico Interno - ALI

Conceito

Um arquivo lógico interno é um grupo de dados logicamente

relacionados ou

de informações de controle, identificáveis pelo usuário e

mantido dentro das

fronteiras da aplicação .

A intenção primária de um ALI é guardar dados mantidos

através de um ou

mais processos elementares da aplicação sendo contada.

(CPM 4.1.1)

O termo “arquivo” não deve ser entendido no seu sentido tradicional (arquivos

fisicamente implementados em um Banco de dados, por exemplo), mas sim referido

como um “grupo lógico de dados”.

Page 9: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Exemplo: Informações sobre funcionários de uma empresa, em uma aplicação de RH

Conforme o tipo de aplicação estes dois grupos de informações podem pertencer ao

mesmo ALI ou serem ALIs em separado. Tudo dependerá da visão do usuário.

Na APF informações de naturezas semelhantes podem se agrupar de formas

diferentes, dependendo de como o usuário vê ou enxerga a questão. Os processos

elementares são particularmente importantes para identificar estas visões.

Funcionários

Matrícula (Pk)

Nome

Endereço

......

Dependentes

CodigoDep (Pk)

Matrícula (Fk)

Nome

Endereço

......

1

n

Page 10: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Contagem de ALIsContar ALIs significa:

Identifica-los

Classifica-los quanto a sua complexidade

Pontua-los segundo suas complexidades

Page 11: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

ALIS - Regras de identificaçãoTodas as regras abaixo devem ser satisfeitas - (CPM 4.1.1)

O grupo de dados ou de informações de controle é lógico e identificável pelo usuário.

O grupo de dados é mantido através de um processo elementar dentro da fronteira da

aplicação sendo contada.

Não são ALIs

Grupo de dados temporários

Dados inseridos no sistema devido a tecnologia utilizada

Dados relativos a índices alternativos para recuperação da informação

Dados de arquivos suspensos que não possam ser acessados ou atualizados

Backups que não foram exigidos pelos usuários

Page 12: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Contagem de ALIs - Classificação de complexidade

Dados Elementares Referenciados (DERs)

Registros Lógicos Referenciados (RLRs)

A classificação de ALIs é feita com base em dois fatores:

Page 13: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Regras de Contagem

Contar um DER para cada campo único, não repetitivo, reconhecido pelo

usuário e mantido em um ALI, através da execução de um processo

elementar.

Quando duas ou mais aplicações mantêm o mesmo ALI, mas cada uma

delas mantém DERs separados, contar somente os DERs usados em cada

aplicação, para o dimensionamento do ALI.

Contar um DER para cada pedaço de dado requerido pelo usuário para

estabelecer um relacionamento com um outro ALI, isto é, uma chave

estrangeira ou uma associação entre classes de objetos.

DER - Dado Elementar Referenciado

É um campo único, não repetitivo,reconhecido pelo usuário

Page 14: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Regras de Contagem - (uma delas deve acontecer)

Contar um RLR para cada subgrupo opcional ou mandatório de um ALI

ouou

Se não existirem subgrupos contar um RLR para cada ALI

RLR - Registro Lógico Referenciado

É um subgrupo de dados reconhecido pelo usuário dentro de um ALI

OpcionalAqueles que o usuário tem a opção de usar um ou mais dos subgrupos durante um processo elementar que adiciona ou cria dados - CPM 4.1.1

Mandatório

São subgrupos onde o usuário deve usar no mínimo um deles - CPM 4.1.1

Page 15: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Exemplo: CPM 4.1.1

Em uma aplicação de recursos humanos, as informações sobre um

empregado são adicionadas cadastrando-se dados genéricos. Também foi

determinado pelo usuário que existe a obrigatoriedade de cadastramento

do tipo de pagamento (por hora ou mensal) para o empregado.

No cadastramento de um funcionário podem ser incluídas informações a

respeito de seus dependentes.

No ALI funcionários existem 3 RLR que são:

As informações genéricas sobre o funcionário - Obrigatório;

Os dados sobre formas de pagamento - Obrigatório;

Os dados relativos aos seus dependentes - Opcional.

Certamente RLRs mandatórios farão parte do mesmo ALI, mas os opcionais

devem ser verificados quanto a “como são vistos pelos usuários”, pois

dependendo desta visão eles podem fazer parte de outro ALI ou até mesmo

ser um ALI em separado.

Page 16: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

ALIs - Tabelas de Complexidade e Contribuição de PFs

RLR DER DER DER1 – 19 20 – 50 +50

1 Simples Simples Médio2-5 Simples Médio Complexo+5 Médio Complexo Complexo

Com os ALIs identificados, os dados apurados de RLRs e DERs devem ser verificados

na tabela de classificação de complexidades abaixo - CPM 4.1.1

A classificação de complexidade leva imediatamente ao número de pontos de função

do elemento apurado (ALI, neste caso)

Grau de complexidade Contribuição em Pontos por funçãoSimples 7Médio 10

Complexo 15

Page 17: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Arquivo de Interface Externa - AIE

Um arquivo de interface externa é um grupo de dados logicamente

relacionados ou de informações de controle, identificáveis pelo usuário e

referenciados pela aplicação, mas mantidos dentro da fronteira de uma outra

aplicação.(CPM 4.1.1)

Conceito

A intenção primária de um AIE é guardar dados referenciados através de

um ou mais processos elementares dentro da fronteira da aplicação sendo

contada

(CPM 4.1.1)

Isto significa que um AIE contado para uma aplicação deve obrigatoriamente

ser um ALI em outra aplicação.

A principal diferença entre um ALI e um AIE é que um AIE não é pode ser

mantido pela aplicação sendo contada.

Page 18: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Contagem de AIEs - Classificação de complexidade

Dados Elementares Referenciados (DERs)

Registros Lógicos Referenciados (RLRs)

A classificação de AIEs é feita com base em dois fatores:

Page 19: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

AIEs - Regras de identificação

Todas as regras abaixo devem ser satisfeitas - (CPM 4.1.1)

O grupo de dados é lógico e identificável pelo usuário.

O grupo de dados é externo, referenciado, mas não mantido pela aplicação sendo

contada.

Não são AIEs

O grupo de dados é mantido como um ALI na aplicação referenciada.

Dados que sejam recebidos de outra aplicação e utilizadas para adicionar/alterar ou

remover dados em arquivo lógico interno (São Entradas externas - EEs)

Dados cuja manutenção é feita pela aplicação, mas que sejam acessados ou referen-

ciados por outra aplicação (São ALIs)

Dados processados e enviados (transmitidos) para uso em outras aplicações

(São SEs ou CEs).

Page 20: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Regras de Contagem

Contar um DER para cada campo único, não repetitivo, reconhecido pelo usuário e

referenciado em um AIE, através da execução de um processo elementar.

Quando duas ou mais aplicações referenciam o mesmo AIE, mas cada uma delas

referenciam DERs separados, contar somente os DERs usados em cada aplicação para

o dimensionamento do AIE.

Contar um DER para cada pedaço de dado requerido pelo usuário para estabelecer um

relacionamento com um outro AIE, isto é, uma chave estrangeira ou uma associação

entre classes de objetos.

DER - Dado Elementar Referenciado

É um campo único, não repetitivo, reconhecido pelo usuário

Page 21: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Regras de Contagem - (uma delas deve acontecer)

Contar um RLR para cada subgrupo opcional ou mandatório de um AIE.

ou

Se não existirem subgrupos contar um RLR para cada AIE.

RLR - Registro Lógico Referenciado

É um subgrupo de dados reconhecido pelo usuário dentro de um AIE

OpcionalAqueles que o usuário tem a opção de usar um ou mais dos subgrupos, durante um

processo elementar que adiciona ou cria dados - CPM 4.1.1

Mandatório

São subgrupos onde o usuário deve usar no mínimo um deles - CPM 4.1.1

Page 22: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

AIEs - Tabelas de Complexidade e Contribuição de PFs

Com os AIEs identificados, os dados apurados de RLRs e DERs devem ser verificados na tabela de classificação de complexidades abaixo - CPM 4.1.1

A classificação de complexidade leva imediatamente ao número de pontos

de função do elemento apurado (AIE, neste caso)

Grau de complexidade Contribuição em Pontos por funçãoSimples 5Médio 7

Complexo 10

RLR DER DER DER1 – 19 20 – 50 +50

1 Simples Simples Médio

2-5 Simples Médio Complexo+5 Médio Complexo Complexo

Page 23: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Exemplo:Em uma aplicação de recursos humanos foi requisitado pelo usuário a capacidade de manter dadossobre os cargos possíveis de serem ocupados na organização, bem como poder associar um cargo acada funcionário. Cada cargo conterá as seguintes informações: Código do Cargo, Nome do cargo e um conjunto de linhas descritivas (cada uma com até 80 caracteres alfa-numéricos) sobre suas atribuições básicas. Podem existir tantas linhas quanto forem necessárias para descrever as atribuições de cada cargo.

Existe uma tabela corporativa que armazena informações das áreas da empresa, que serão usados na definição da área de lotação de cada empregado. Esta tabela é mantida fora das fronteiras desta contagem.

Segundo o usuário, é obrigatório que todos os cargos tenham suas respectivas descrições de atribuições para serem cadastrados.

Em termos de arquivos físicos a questão pode ser representada da seguinte forma:

Funcionários

Matrícula (PK)NomeEndereçoBairroCidadeEstadoCEPFoneData_nascimentoCICPFTitulo_eleitorLotaçãoCódigo_cargo (FK)Lotação (FK)

Cargos

Código_cargo (PK)Nome_cargo

Cargos_descricao

Código_descricao_cargo (PK)Código_cargo (FK)Descricao_cargo

UnidadeCod_Unidade (PK)

Nome_unidade

Endereço

.......

(10 DER)

Áreas_UnidadeCod_Área (PK)

COD_unidade (FK)

Nome_Área

Endereço

.......

(15 DER)

Page 24: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Funcionários é um ALI ?

Funcionários

Matrícula (PK)NomeEndereçoBairroCidadeEstadoCEPFoneData_nascimentoCICPFTitulo_eleitorLotaçãoCódigo_cargo (FK)

Cargos

Código_cargo (PK)Nome_cargo

Cargos_descricao

Código_descricao_cargo (PK)Código_cargo (FK)Descricao_cargo

É um grupo lógico de dados e identificável pelo usuário ?

É mantido por um processo elementar, dentro da fronteira da aplicação ?

Complexidade / Pontuação

1 RLR / 14 DER Simples 7PF

Page 25: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Como é o ALI de cargos ?

Funcionários

Matrícula (PK)NomeEndereçoBairroCidadeEstadoCEPFoneData_nascimentoCICPFTitulo_eleitorLotaçãoCódigo_cargo (FK)

Cargos

Código_cargo (PK)Nome_cargo

Cargos_descricao

Código_descricao_cargo (PK)Código_cargo (FK)Descricao_cargo

É um grupo lógico de dados e identificável pelo usuário ?

É mantido por um processo elementar, dentro da fronteira da aplicação ?

Complexidade / Pontuação

2 RLR / 3 DER SIMPLES 7PF

Page 26: Métricas e Estimativas em processo de produção de Software Métricas e estimativas em processos de Produção de software Métricas e estimativas em processos

Métricas e Estimativas em processo de produção de Software

Unidades e áreas da unidade são um AIE ?

Funcionários

Matrícula (PK)NomeEndereçoBairroCidadeEstadoCEPFoneData_nascimentoCICPFTitulo_eleitorLotaçãoCódigo_cargo (FK)Lotação (FK)

Cargos

Código_cargo (PK)Nome_cargo

Cargos_descricao

Código_descricao_cargo (PK)Código_cargo (FK)Descricao_cargo

UnidadeCod_Unidade (PK)

Nome_unidade

Endereço

Áreas_UnidadeCod_Área (PK)

COD_unidade (FK)

Nome_Área

Endereço

O grupo de dados é lógico e identificável pelo usuário ?

O grupo de dados é externo, referenciado, mas não mantido pela aplicação sendo contada?

O grupo de dados é mantido como um ALI na aplicação referenciada ?

Complexidade / Pontuação

2 RLR / 6 DER Simples 5 PF