Exeeeercicio cocomo

Page 1

Lista de exercícios sobre estimativas de software 1. Considerando a especificação do sistema abaixo, determine o número de pontos de função não ajustados, usando a metodologia de análise de pontos de função e, utilizando o método COCOMO, faça a estimativa de esforço, prazo e tamanho ideal de equipe, considerando que o sistema será implementado em Java. Sistema de Clínica Médica: Funções do sistema: - Inclusão de médicos (obtém CPF do médico, CRM do médico, nome do médico, especialidade e telefone do médico e, se não estiver cadastrado, é incluído no arquivo de médicos. Se já estiver cadastrado exibe uma mensagem). - Alteração de médicos (obtém o CPF do médico, lê o arquivo de médicos e, se estiver cadastrado, obtém os mesmos dados da inclusão de médicos e salva no arquivo de médicos. Se não estiver cadastrado exibe uma mensagem). - Exclusão de médicos (obtém o CPF de médico e, se estiver cadastrado, pergunta se deseja mesmo excluir e, se confirmado, exclui o médico do arquivo de médicos. Se não estiver cadastrado exibe uma mensagem). - Consulta de médicos (obtém o CPF do médico e, se estiver cadastrado, exibe os mesmos dados da inclusão de médicos. Se não estiver cadastrado exibe uma mensagem). - Inclusão de pacientes (obtém CPF do paciente, nome do paciente, telefone do paciente e convênio médico e, se não estiver cadastrado e se o convênio médico estiver cadastrado no arquivo de convênios, é incluído no arquivo de pacientes. Se o paciente já estiver cadastrado ou se o convênio médico não estiver cadastrado, exibe uma mensagem). - Alteração de pacientes (obtém o CPF do paciente, lê o arquivo de pacientes e, se estiver cadastrado, obtém os mesmos dados da inclusão de pacientes e salva no arquivo de pacientes, desde que o convênio médico esteja cadastrado no arquivo de convênios. Se o paciente não estiver cadastrado ou se o convênio médico não estiver cadastrado, exibe uma mensagem). - Exclusão de pacientes (obtém o CPF de paciente e, se estiver cadastrado, pergunta se deseja mesmo excluir e, se confirmado, exclui o paciente do arquivo de pacientes. Se não estiver cadastrado exibe uma mensagem). - Consulta de pacientes (obtém o CPF do paciente e, se estiver cadastrado, exibe os mesmos dados da inclusão de pacientes. Se não estiver cadastrado exibe uma mensagem).


- Inclusão de convênios (obtém código do convênio, nome do convênio e telefone de contato e, se não estiver cadastrado, é incluído no arquivo de convênios. Se já estiver cadastrado exibe uma mensagem). - Alteração de convênios (obtém o código do convênio, lê o arquivo de convênios e, se estiver cadastrado, obtém os mesmos dados da inclusão de convênios e salva no arquivo de convênios. Se não estiver cadastrado exibe uma mensagem). - Exclusão de convênios (obtém o código do convênio e, se estiver cadastrado, pergunta se deseja mesmo excluir e, se confirmado, exclui o convênio do arquivo de convênios. Se não estiver cadastrado exibe uma mensagem). - Consulta de convênios (obtém o código do convênio e, se estiver cadastrado, exibe os mesmos dados da inclusão de convênios. Se não estiver cadastrado exibe uma mensagem). - Agenda de consulta (obtém o CPF do paciente, lê o arquivo de pacientes e, se estiver cadastrado, obtém o CPF do médico e lê o arquivo de médicos. Se o médico estiver cadastrado, obtém a data e a hora da consulta e verifica no arquivo de agendas, se a agenda do médico na data e hora escolhida está disponível. Se estiver disponível, salva os dados no arquivo de agendas. Se o paciente ou o médico não estiverem cadastrados, ou se o horário não estiver disponível na agenda, exibe uma mensagem). - Lista de consultas por médico (obtém o CPF do médico, lê o arquivo de médicos e, se estiver cadastrado, obtém a data e lê o arquivo de agendas, listando todas as consultas do médico marcadas para aquela data, incluindo, no cabeçalho, o CPF e o nome do médico, a data, e, nas linhas, o horário e, lendo o arquivo de pacientes, o CPF, o nome e o telefone dos pacientes e, no final, o número de consultas do dia. Se o médico não estiver cadastrado exibe uma mensagem). Arquivos: - Médicos (CPF, CRM, nome, especialidade e telefone) - Pacientes (CPF, nome, telefone, convênio médico) - Convênios (código, nome, telefone para contato) - Agenda (CPF do médico, data, horário, CPF do paciente) 2. Considerando a especificação do sistema abaixo, determine o número de pontos de função não ajustados, usando a metodologia de análise de pontos de função e, utilizando o método COCOMO, faça a estimativa de esforço, prazo e tamanho ideal de equipe, considerando que o sistema será implementado em Visual Basic. Sistema de Reservas de Hotel


Diagrama de Contexto:

DFD Nível 0:

DFDs Nível 1: Processo 1:


Processo 2:

Processo 3:

Processo 4:


Diagrama Entidade-Relacionamento:

Descrição das Entidades: Cliente cp Código do cliente Tipo classe Nome cliente Tipo pessoa CGC/CPF Endereço Pessoa contato Telefone Apartamento cp Número apartamento Tipo

Lay-out das telas e relatórios: Menus:

Reserva cp Número da reserva Data da reserva Período início Período fim Tipo apartamento Pessoa sobrenome Pessoa nome

Funcionário cp Matrícula funcionário Nome funcionário Função Salário CPF Endereço Telefone


Tela de inclusão de clientes, alteração de clientes e de consulta de clientes:


Tela de exclusão de clientes:

Tela de inclusão de reservas, de alteração de reservas e de consulta de reservas:

Tela de exclusão de reservas:


Tela de inclusão, alteração, exclusão e consulta de apartamentos:

Relatório de Apartamentos: RELATÓRIO DE APARTAMENTOS DATA: ..../..../.... NÚMERO ------------....... ....... .......

TIPO -----.. .. ..

Total de apartamentos ocupados: .... Relatório de Clientes: RELATÓRIO DE CLIENTES DATA: ..../..../.... CÓDIGO ----------......... ......... .........

NOME TIPO CONTATO ----------------------------- ------- ------------------................................... ... ..................... ................................... ... ..................... ................................... ... .....................

Total de clientes: ......... 3. Considerando a especificação do sistema abaixo, determine o número de pontos de função não ajustados, usando a metodologia de análise de pontos de função e, utilizando o método COCOMO, faça a estimativa de esforço, prazo e tamanho ideal de equipe, considerando que o sistema será implementado em C++. Sistema de Vendas


Diagrama de Contexto: cliente + pedido Cliente

produto nota fiscal

Sistema de Vendas

Gerente Comercial relatório de vendas e comissões

vendedor + desconto Vendedor

Diagrama de Fluxo de Dados (DFD) nível 0: cliente Cliente

1 Cadastrar cliente

2 Cadastrar produto

cliente

produto

Gerente Comercial

Clientes cliente

pedido nota fiscal

4 Efetuar venda

produto Produtos produto produto

vendedor + desconto Vendedor

venda

nota fiscal Notas Fiscais

relatório de vendas e comissões

Vendas venda

vendedor

vendedor 3 Cadastrar vendedor

vendedor

Vendedores

Especificação de Processos Processo 1. Cadastrar cliente INÍCIO OBTER Cliente SE cliente novo CRIAR Clientes FIM-SE FIM

Processo 2. Cadastrar produto INÍCIO OBTER produto SE produto novo CRIAR Produtos FIM-SE FIM

vendedor

5 Emitir relatório de vendas e comissões


Processo 3. Cadastrar vendedor INÍCIO OBTER vendedor SE vendedor novo CRIAR Vendedores FIM-SE FIM

Processo 4. Efetuar venda INÍCIO OBTER pedido LER Clientes SE cliente cadastrado OBTER vendedor LER Vendedores SE vendedor cadastrado valor da venda = 0 FAZER ENQUANTO houver produto em pedido OBTER produto, quantidade do pedido LER Produtos SE produto cadastrado valor do item = preço do produto * quantidade do pedido valor da venda = valor da venda + valor do item SE primeiro produto do pedido CRIAR Vendas CRIAR Notas Fiscais SENÃO ATUALIZAR Vendas ATUALIZAR Notas Fiscais FIM-SE FIM-SE FIM-FAZER SE pelo menos um item foi gerado OBTER valor do desconto valor da venda = valor da venda – desconto valor total da nota fiscal = valor da venda valor da comissão = valor da venda * 0,03 ATUALIZAR Vendas ATUALIZAR Notas Fiscais IMPRIMIR nota fiscal FIM-SE FIM-SE FIM-SE FIM

Processo 5. Emitir relatório de vendas e comissões INÍCIO CLASSIFICAR Vendas POR vendedor FAZER ENQUANTO houver vendas


LER Vendas LER Vendedores IMPRIMIR vendedor, venda, nota fiscal, cliente FAZER ENQUANTO houver itens de nota fiscal LER Produtos IMPRIMIR item de nota fiscal, produto FIM-FAZER FIM-FAZER FIM

Diagrama Entidade-Relacionamento Cliente

1,1

0,N Nota Fiscal

1,1

1,1

1,1

0,N

1,N 1,1

Item da Nota Fiscal

Venda 0,N

0,N

1,1

1,1

Vendedor

Produto

Diagramas de Descrição de Entidades Cliente cp

cpf nome endereço cidade estado

Nota Fiscal cp

Produto cp

código descrição unidade de medida preço

número série data valor do desconto valor total

Item de Nota Fiscal cp

Venda cp

número data valor da venda valor da comissão

número do item quantidade preço unitário valor do item

Vendedor cp

código nome endereço cidade estado data de admissão


Projeto de Interface com o Usuário Tela T00 – Menu Principal

Tela T01 – Tela de Clientes

Tela T02 – Tela de Produtos

Tela T03 – Tela de Vendedores


Tela T04 – Tela Vendas

Tela T05 – Tela de Detalhamento de Venda

R01 – Relatório: Nota Fiscal


R02 – Relatório de Vendas e Comissões

4. Considerando a especificação do sistema abaixo, determine o número de pontos de função não ajustados, usando a metodologia de análise de pontos de função e, utilizando o método COCOMO, faça a estimativa de esforço, prazo e tamanho ideal de equipe, considerando que o sistema será implementado em linguagem C. Sistema de Vendas de Supermercado: Funções do sistema: - Cadastramento de produto (obtém código do produto, descrição do produto, quantidade em estoque e preço e, se não estiver cadastrado, é incluído no arquivo de produtos. Se já estiver cadastrado exibe uma mensagem). - Alteração de preço (obtém o código do produto, lê o arquivo de produtos e, se estiver cadastrado, obtém o novo preço do produto e salva no arquivo de produtos. Se não estiver cadastrado exibe uma mensagem). - Entrada de produtos (obtém o código do produto, lê o arquivo de produtos e, se estiver cadastrado, obtém a quantidade de entrada e atualiza o arquivo de produtos, somando a quantidade de entrada à quantidade em estoque. Se não estiver cadastrado exibe uma mensagem). - Registro de venda (obtém o CPF do cliente e gera um número de cupom fiscal, salvando no arquivo de vendas juntamente com a data da venda e, para cada produto vendido, o código do produto, lê o arquivo de produtos e, se estiver cadastrado, obtém a quantidade vendida, e, se a quantidade em estoque for maior ou igual à quantidade vendida, calcula o valor do item e salva o item da venda no arquivo de itens de venda e atualiza a quantidade em estoque do arquivo de produtos, subtraindo a quantidade vendida da quantidade em estoque. Se o produto não estiver cadastrado ou se a quantidade em estoque for menor que a quantidade vendida exibe uma mensagem). - Emissão do cupom fiscal (obtém o número do cupom fiscal, lê o arquivo de vendas e, se estiver cadastrado, imprime a data da venda e o CPF do cliente. Em seguida, para cada item da venda, lê o arquivo de item de vendas, imprime o código do produto, lê o arquivo de produtos e imprime a descrição do produto, o preço do produto, a quantidade vendida e o valor do item, acumulando-se o valor do item para, no final, imprimir o valor total da venda).


Arquivos: - Produtos (código, descrição, quantidade em estoque e preço) - Vendas (número do cupom fiscal, CPF do cliente e data da venda) - Itens de venda (número do cupom fiscal, código do produto, preço, quantidade vendida e valor do item)


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.