Você está na página 1de 7

ENGENHARIA DE SOFTWARE:

1 Conceitos básicos sobre engenharia de software. Engenharia de Software - Bacen


2 Disciplinas de engenharia de software. Engenharia de Software - Bacen
3 Análise de requisitos funcionais e não funcionais. Engenharia de Software - Bacen
4 Análise, projeto e modelagem orientada a objetos. Engenharia de Software - Bacen
4.1 UML. Engenharia de Software - Bacen
5 Modelagem de dados. TCDF - TRIBUNAL DE
5.1 Modelo relacional. CONTAS DO DISTRITO
FEDERAL
Banco de Dados – Fiz Download
6 Qualidade de software. Engenharia de Software - Bacen
6.1 ISO/IEC 9126. Engenharia de Software - Bacen
6.2 Métricas de qualidade de software. Engenharia de Software - Bacen
7 Análise de Pontos de Função. Engenharia de Software - Bacen

8 Tunning. Falta achar o conteúdo


9 Noções sobre Enterprise Content Managment (ECM). Falta achar o conteúdo
10 Noções sobre automação de processos de negócio (BPM). Falta achar o conteúdo
11 REST. Falta achar o conteúdo
ESTIMATIVAS E MÉTRICAS DE SOFTWARE

 MEDIÇÃO – ato de capturar informações, coletar resultado sobre as medidas.


um valor real, quantidade, dimensão, capacidade ou tamanho de algum atributo. Ex. número de erros
encontrados
 MEDIDA - indicação quantitativa
 MÉTRICA – relação entre duas medidas
um conjunto de medidas tentando obter algum sentido. Ex. erros encontrados por pessoa-hora
empregada. Traz alguma informação que pode ser útil.
o Direta – quantitativa
o Indireta – qualitativa
 INDICADOR – e a soma de uma Métrica e meta (e uma referência ou linha de base)
é uma métrica, ou conjunto de métricas, que fornece compreensão de um processo de software, de um
projeto de software ou do produto propriamente dito. Ex. comparando duas métricas, chega-se a uma
conclusão que permite embasar uma tomada de decisão.

MÉTRICA DE PRODUTO – Atributos Internos do software


Classificação
Dinâmica- programa em execução
Estática - representação do sistema (ex. APF)
Fan-in/ número de métodos de outras funções que a chamam.
Fan-out/ Minha função está chamado outras funções
Comprimento de código: tamanho do programa, linha de códigos, mas complexo
Comprimento de identificadores: comprimento médio dos identificadores, quanto mais longo, mas
compreensível o programa.
Índice de Fog: comprimento médio de palavras e sentenças
Profundidade de aninhamento condicional: profundidade de declarações. Declaração de desvio em
Programa. Hífen aninhado. Ficando assim sujeito a erro e difícil de entender.
Complexidade ciclomática: complexidade de controle de um programa. Olha toda a complexidade de
mudança.
M (complexidade ciclomática) =E (setas) - N (nós) + 2 X P (componentes conectados)
Modular – incide sobre módulos Individuais
Inter-modular – mede a estrutura

MÉTRICA ESTÁTICA PRODUTO – OO


WMC. Métodos ponderados por classe; Métodos em cada classe, quanto maior o valor, mais
complexa
DIT. Árvore de profundidade de herança; números de níveis discreto na árvore de herança.
Quanto mais profunda, mais complexa.
RFC. Resposta para uma classe; e a medida do número de métodos que poderiam ser
executados em resposta a uma mensagem recebida.
CBO. Acoplamento entre classe de objeto. Métodos ou variáveis de instância definidas em uma
classe diferente. Um valor alto significa que as classes são altamente dependentes.
NOC. Número de filhos. Número de subclasses (herança) imediatas. Um valor alto para NOC
pode indicar um maior reuso e que mais esforço deve ser dispendido na validade de classes de base.

MÉTRICA PROCESSO
Finalidade Estratégica
Indicadores de processo, permite organização.
Avaliam o que funciona e o que não funciona
São coletadas ao longo de todos os projetos e durante longo período
Aperfeiçoamento do processo de software

MÉTRICA PROJETO
Finalidade Tática
Avalia o status de um projeto
Acompanha os riscos potenciais
Descobre as áreas-problemas
Ajusta o fluxo de trabalho
Avaliar a capacidade da equipe, e controlar a qualidade dos produtos
OBS: podem ser usadas para determinar indicadores de projeto e de processo.

MÉTRICAS ORIENTADAS A TAMANHO


Leva em consideração o tamanho do software produzido com o valor de normalização
SLOC (LOC) linhas de códigos físicas
KLOC mil lindas de código físicas
LLOC linha de código lógica

MÉTRICAS ORIENTADAS A FUNÇÃO


Medica de funcionalidade fornecida pela aplicação
APF – análise de ponto de função

MÉTRICAS ORIENTADAS A CASO DE USO


Usam caso de uso como medida de normalização
UCP – Ponto de Caso de Uso; números de atores e das transações deduzidas pelo modelo.

7 - APF – MEDE PONTO DE FUNÇÃO


Mede apenas escopo funcional.
APF - OBJETIVOS
Medir pela quantificação dos funcionários providos ao usuário.
Mede funcionalidade que o usuário solicita e recebe
Mede o desenvolvimento e manutenção
APF - BENEFÍCIOS
Determinar os benefícios a um pacote de aplicação
Medir a unidade, manter a qualidade e produtividade
Estimar custo e recursos
Normalização na comparação

CONTAGEM NAS FASES DO CLICO DE VIDA

NESMA - ESTIMATIVA/INDICATIVA
 Nesma - Contagem

 indicativa quando ainda não se conhece as funções. Inicio do ciclo de vida, só a


função de dados ALI e AIE
 estimativa quando a SE conhece as funções. Utilizada na fase inicial.
 detalhada; estimar a complexidade dos dados de função e transação, somo tudo e
verifico a complexidade
 Caso de uso

DETALHADA detalhada se conhece as funções e consegue determinar sua complexidade.


APF - é tanto instrumento de comunicação entre desenvolvedores e usuários quanto
ferramenta que permite monitorar qualidade e produtivida.
visão do usuário - representa uma visão formal das necessidades. Os desenvolvedores
traduzem essas informações em linguagem técnica
informações de controle - dados que incluíam um processo elementar de aplicação
manter - capacidade de modificar os dados ( incluir, excluir, popular, converter etc)
usuário - qualquer pessoa que especifica REQUISITO FUNCIONAIS.
estimativa - significa fornecer uma avaliação aproximada do tamanho de um software,
utilizando métodos diferentes da contagem de função

CONCEITO CHAVE
Processo elementar
Fronteira - indica o limite entre o SISTEMA e o USUÁRIO
Ponto de vista
Usuário
Manter Crud ( Funcionalidades )

TIPO DE CONTAGEM
 Der’s - dado elementar referenciado - cada parte requisitada pelo usuário para
estabelecer um relacionamento com outra ALI ou AIE
- Campo único não repetido e reconhecido pelo usuário

 RLL – Registro Lógico Referenciado


Subgrupo reconhecidos pelo usuário dentro da ALI/AIE

 Contagem de projeto de desenvolvimento


MEDE as funcionalidades fornecida aos usuários finais quando da primeira instalação.
Essa contagem abrange as funções de conversão de dados
MEDE as modificações para uma aplicação já existente ou seje as funções adicionais,
modificadas ou já existente.
MEDE as funcionalidades fornecida ao usuário pela aplicação já instalada.
 Contagem de projeto de Melhoria
Identificação do escopo definir a abrangência, definir se a contagem vai se referir
a uma ou mais parte do sistema.
Fronteira da aplicação - separa a aplicação que está sendo contada das aplicações
externas indicando o limite entre a aplicação e os demais usuários.

 Contagem de projeto de Aplicação


ALI
AIE

FUNÇÕES DE TRANSAÇÕES

DER
Campo único não repetido e reconhecido por usuário.
Capacidade de envio de mensagem
Habilidade de espenicar uma ação a ser executada
ALR – arquivo logico referenciados
São AIE e ALI

CE consulta externa
Envia dados para fora
processamento de consulta sendo uma combinação de entrada e saída de dados,
 permitindo a recuperação ou edição de dados ALI e AIE
 não deve conter fórmulas matemáticas
 não deve criar dados derivados
 não atualizar a ALI

EE entrada externa
provoca uma inclusão, exclusão e ou alteração dos dados das ALI
fluxo de informação de fora para dentro, esses dados, através de um processo lógico
único atualiza a ALI

SE saída externa
envia dados ou informações de controle para fora da fronteira da aplicação.
Seu objetivo é exibir informações recuperadas, isto é, processamento que envolva cálculos ou
criação de dados.
 SE mantém a ALI ou altera o comportamento do sistema
 dados não repetido reconhecido pelo usuário e que sua entrada seja feita pela fronteira.
 cálculos, acessa o arquivo solicitado pelo usuário
 se muda o comportamento do sistema.

FUNÇÕES DE DADOS - satisfazer os requisitos de dados INTERNO e EXTERNO

AIE - Dados Externos (INTERFACE) grupo de dados ou informação de controle logicamente


relacionado, reconhecido pelo usuário, referenciado pela aplicação mas mantido dentro da
fronteira de aplicação. Uma AIE sempre será contado como ALI na aplicação de origem.
Ex. arquivo de mensagem auxiliar
arquivo de mensagem de erro.

ALI - Dados interno ( LÓGICA) sua intenção e armazenar dados mantidos por um ou mais
processo ( dentro da fronteira através dos processos)
Ex. dados da aplicação ( arquivos como: cadastro de clientes)
mensagem de auxílio

AIE 5 7 10

ALI 7 10 15

CE 3 4 6

EE 3 4 6

SE 4 5 7

FATOR DE AJUSTE
14 – CARACTERISTICAS S que tem peso ENTRE 0 e 5.
1- comunicação de dados
2- processo distribuído
3- performance
4- configuração altemente utilizada
5- taxa de transações
6- entrada de dados on-line
7- eficiência do usuário final
8- atualização online
9– complexidade do processamento
10 - reutilização
11- facilidade de instalação
12 - facilidade de operação
13 - múltiplas localidades
14 - facilidade de mudança
PROJETO DE MAUTENÇÃO

IFPUG
ALTERADA, INCLUIDA, EXCLUIDO - NÃO HÁ FATOR DE IMPACTO
 Processo e Regras
 Tipo e complexidade de funções: Incluídas, alteradas, excluídas e de conversão.
 NÃO EXISTE fator de impacto

MÉTODO DA NEMSA

 Processo e Regras
 Tipo e complexidade de funções: Incluídas, alteradas, excluídas e de conversão.
 Fator de IMPACTO - Reflete o grau de mudança de cada função identificada
o Tipo de manutenção que a função sobre, se ela é incluída, alterada ou excluída; e, no
caso de a função ter sido alterada, 0% de mudança que ela sofreu.
o O Projeto de melhoria pode afetar o tamanho da aplicação
o O método EFP da Nesma também permite calcular o tamanho da aplicação
o Para esse cálculo, o fator de impacto NÃO interfere na atualização do tamanho da
aplicação.

3 REQUISITO FUNCIONAL E NÃO FUNIONAL


FUNCIONAIS: deve fornecer
Descrição das funções que cliente ou usuários querem ou precisam que o software ofereça

NÃO FUNCIONAIS:
funções oferecidas
São as qualidades globais de um software como
Manutenibilidade,
Usabilidade,
Desempenho,
Custos.

Requisito usuário: Gerentes de clientes


Requisito sistema: Usuários finais do sistema
Requisito de domínio: descrevem a características do sistema e qualidades que refletem o domínio

Problemas com especificação


Ambiguidade
Flexibilidade excessiva
Falta de modularização

Engenharia de Requisitos
1. Estudo de viabilidade: se vale a pena gastar tempo ou esforço

2. Elicitação e análise de requisitos: reunir informações do sistema proposto e às existentes


Interação: interagem com o sistema
Indiretas: não tem acesso direto
Domínio: características e restrições
Técnicas: entrevista, questões, reunião, cenário, caso de uso

3. Validação dos requisitos:


Representa o sistema que o usuário deseja, descobrir problemas, revisar os requisitos (cliente e
desenvolvedor)
Validade
Consistência
Completeza
Realismo
Verificação

4. Gerenciamento dos requisitos (rastreabilidade)


Compreender e controlar mudanças; avaliar os impactos.
Identificação
Gerenciar as mudanças
Política de rastreabilidade - relacionamento entre os requisitos suas fontes e o projeto
Apoio de ferramentas