Escolar Documentos
Profissional Documentos
Cultura Documentos
Alguns comentrios
Propriedades do domnio aspectos referente ao domnio da aplicao que so verdades se ou no desenvolvemos o sistema proposto Requisitos aspectos referente ao domnio da aplicao que desejamos fazer verdade aps a entrega do sistema proposto Especificao descrio do comportamento do programa de forma a manter os requisitos da aplicao
(2) Interfaces
A entrada tem origem em outro ou outros sistemas? A sada vai para outro ou outros sistemas? Existe uma maneira preestabelecida pela qual os dados devem ser formatados? Existe alguma mdia definida, que os dados devem utilizar?
(4) Funcionalidade
(6) Dados
Qual dever ser o formato dos dados de entrada e sada? Com que frequncia eles sero enviados ou recebidos? Quem preciso devem ter? Com que grau de preciso os clculos devem ser feitos? Qual ser o fluxo de dados do sistema? Existem dados que devem ser mantidos por algum tempo?
2012.2
Estudo de Viabilidade
Qual o problema? H uma soluo vivel para o problema? Vale a pena resolver o problema? A administrao est vitalmente vinculada aos resultados; Definio do problema mais ntida; So fixados objetivos especficos; Os problemas que sero excludos so claramente identificados; Calcula-se o custo/benefcio com mais exatido.
2012.2
2012.2
10
No Funcional
Ex.: A consulta deve retornar uma resposta em no mximo 5s
Inversos
Ex.: O sistema no far controle de estoque.
11
2012.2
Resoluo de Conflitos
normal que ocorram requisitos conflitantes Por exemplo
R-23: O sistema deve ... R-45: O sistema no deve ...
2012.2
12
Atribuio de Prioridade
Alguns requisitos so mais urgentes que outros essencial determinar a prioridade dos requisitos junto ao cliente Requisitos de maior prioridade so considerados em primeiro lugar
13
2012.2
Prioridade
Requisitos podem ser agrupados em classes, por exemplo:
Essenciais Importantes Desejveis
2012.2
14
essencial
software no aceitvel a no ser que estes requisitos sejam implementados
Kovitz 1999
condicional
melhoraria produto, mas no o tornaria inaceitvel se ausente
opcional
classe de funcionalidade que pode ou no valer a pena
15
3 - dever ser implementado de modo perfeito 2 - precisa funcionar, mas no de modo espetacular 1 - pode conter bugs
2012.2
Exemplo de Prioridade
[RF001] Consulta X ao B.D. deve retornar dados A, B, C
UFPB - Especificao de Requisitos
16
2012.2
Prioridade: Essencial
Demonstrar que os requisitos definem o sistema que o cliente realmente deseja Custos com erros de requisitos so altos
Consertar um erro de requisitos aps entrega do sistema pode custar mais de 100 vezes o custo de um erro de implementao
17
18
Prototipao
Uso de modelo executvel do sistema para avaliar requisitos
19
Verificao X Validao
Verificao Validao
entre modelos
20
2012.2
Revises de requisitos
Revises regulares devem ser feitas enquanto a definio de requisitos est sendo formulada. Ambos, cliente e fornecedor, devem ser envolvidos nas revises. Revises podem ser formais (com documentos completos) ou informais. Uma boa comunicao entre desenvolvedores, clientes e usurios pode resolver problemas nos estgios iniciais.
2012.2
21
Inspees
criadas em 1972 por Fagan, na IBM, para melhoria da qualidade de cdigo hoje so utilizadas em qualquer tipo de artefato gerado pelo processo de desenvolvimento inspeo pode detectar de 30% a 90% dos erros existentes tcnica de leitura aplicvel a um artefato, buscando a localizao de erros ou defeitos no mesmo, segundo um critrio pr-estabelecido
22
2012.2
Inspees em Requisitos
Planejamento
Viso geral
Detec o
Coleo
Correo
Acompanhamento
Autor
Secretrio Relator
Tcnicas de leitura
Ad hoc Check lists Abstrao de erros baseada em Pontos de Funo Baseada em Perspectivas
23
Laitenberger01
2012.2
Inspees em Requisitos
Inspees baseadas em check lists:
UFPB - Especificao de Requisitos
Inspetores utilizam uma lista com os itens a serem verificados cada artefato tem uma lista especfica (Documento de Requisitos, Casos de Uso, Glossrios, Lxico Ampliado da Linguagem...) os defeitos so anotados no artefato sendo analisado aps a reviso, realizada uma reunio onde os problemas encontrados so relatados aos desenvolvedores
24
2012.2
Checklist
Pontos a serem avaliados/observados durante o processo de inspeo Depende do material a ser inspecionado (casos de uso, cenrios, DFDs, JSD...) Depende do enfoque da inspeo Taxonomia dos defeitos - o que procurar
25
2012.2
Exemplo OO
Checklist OO:
Todas as classes so representadas por retngulos com 1,2 ou 3 compartimentos? As classes possuem nomes diferentes? Existem classes sem relacionamentos definidos? Os atributos e os mtodos de cada classe so adequados aquela classe? Todo comportamento especificado possvel de ser contemplado atravs das associaes do modelo?
2012.2
26
Gerenciamento de Requisitos
Gerenciamento de requisitos o processo de controlar as mudanas dos requisitos durante
O processo da engenharia de requisitos E desenvolvimento do sistema
27
2012.2
Gerenciamento de Requisitos
Requisitos so inevitavelmente incompletos e inconsistentes
UFPB - Especificao de Requisitos
Requisitos novos surgem durante o processo de acordo com mudanas nas necessidades do negcio e um entendimento melhor do sistema desenvolvido Diferentes pontos de vista tm diferentes requisitos e esses geralmente so contraditrios
28
2012.2
Rastreamento
Responsvel por dependncias entre requisitos, suas origens e projeto do sistema Rastreamento de Origem
Associao entre requisitos e stakeholders que propuseram tais requisitos
29
2012.2
Rastreamento
Rastreamento de Requisitos Rastreamento de Projeto
Associao dos requisitos com o projeto
2012.2
30
Rastreamento
1.Rastrear requisitos do usurio
Requisitos Produto (Caracter.)
Req A 1
Req B
2
Projeto
Modelos
3
Teste
Sutes Teste
4
Doc. Usurio
Plano
31
2012.2
Req A depois
ifreturnvalue>$2
2012.2
Req B
Req C
Req B Req C
32
D= requisito da linha depende do requisito da coluna R= existe algum relacionamento entre os requisitos
2012.2
34
Documento de Requisitos
Fonte: IEEE/ANSI (830-1998)
1. Introduo
UFPB - Especificao de Requisitos
1.1 Propsito do documento 1.2 Escopo do sistema 1.3 Glossrio, acrnimos e abreviaturas 1.4 Referncias 1.5 Descrio do resto do documento
35
2012.2
Documento de Requisitos
Fonte: IEEE/ANSI (830-1998)
2. Descrio geral
UFPB - Especificao de Requisitos
2.1 Perspectiva do produto 2.2 Funes do produto 2.3 Caractersticas dos usurios 2.4 Restries gerais 2.5 Assertivas e dependncias
36
2012.2
Documento de Requisitos
Fonte: IEEE/ANSI (830-1998)
3. Requisitos especficos
requisitos funcionais, no-funcionais, GUI com o usurio:
UFPB - Especificao de Requisitos
funcionalidade, interfaces externas, desempenho, restries, atributos do sistema, caract. qualidade, ...
37
2012.2
Documento de Requisitos
4. Arquitetura do Sistema 5. Modelos do Sistema
UFPB - Especificao de Requisitos
Diagrama de Atores Modelo de Caso de Uso Modelo de Anlise Modelo de Projeto Diagrama de Pacotes
38
2012.2
39
Sistema de informao
Contrata
40
Pensando os sistemas
Observa o problema/contexto/domnio
41
2012.2
Faz comparaes
Modelagem
Pode guiar a elicitao de REQ
Pode auxiliar a representar as questes a responder Pode auxiliar a identificar requisitos ocultos
2012.2
42
ER envolve modelagem...
Um modelo mais do que uma descrio
Esse modelo s til se o fenmeno modelado corresponde de forma sistemtica ao fenmeno do domnio sendo modelado
Livro Termos do modelo L: entidade P: entidade Autor: relao (1,n) autor (0,n) Pessoa
2012.2
Domnio da modelagem
Domnio da aplicao
43
Notao formal
Semntica precisa, extensvel e possibilita raciocnio automtico Modelos matemticos (ex.: teoria de conjuntos, mquina de estado etc) Modelos muito detalhados
44
Notao semi-formal
Modelo de anlise
Fornece uma descrio dos domnios informacional, funcional e comportamental necessrios a um sistema baseado em computador (Pressman, 2010) medida que o modelo de anlise evolui, certos elementos tornam-se relativamente estveis, fornecendo uma base slida para as tarefas posteriores de projeto.
45
2012.2
46
Elementos comportamentais
O comportamento de um sistema baseado em computador pode ter um profundo efeito sobre o projeto O modelo de anlise deve fornecer elementos que descrevem o comportamento
Modelo de contexto
Normalmente, realizado no estgio inicial da especificao e anlise de requisitos Principal objetivo definir os limites do sistema
O que o sistema e o que o ambiente do sistema?
Sistema de contabilidade da agncia
Banco de dados de contas
Sistema de operao
Sistema de manuteno
48
2012.2
49
Modelos de comportamento
So usados para descrever o comportamento geral do sistema
Modelos de fluxos de dados modelam o processamento de dados no sistema
Modelos de mquina de estados modelam como o sistema reage aos eventos
2012.2
50
51
2012.2
52
53
54
2012.2
Forma de Representao
simbolizado por meio de uma seta, com a ponta indicando a direo do fluxo. [ CHRIS GANE / SARSON]. J DeMarco, diz que os fluxos de dados um tubo, atravs do qual fluem pacotes de informaes. A maior parte dos fluxos de dados movimentaram-se entre processos, mas eles podem tambm fluir para dentro ou para fora de arquivos, indo para caixas-destino e vindo de caixas-fonte. simbolizado por meio de vetores.
55
2012.2
Notao
Notao bsica utilizada no DFD:
2012.2
Entidade Externa
Processo
56
Algumas convenes
Nomes em maiscula e ligadas por hfen; Dois fluxos de dados diferentes no podem ter o mesmo nome; Os nomes so escolhidos para representarem no apenas o dado que flui sobre o tubo, mas tambm o que sabemos sobre o dado Evite nomes vagos como dados e informao
57
2012.2
Exemplo 1
Eventos:
2012.2
dados_matrcula
Aluno comprovante Matricular Aluno
Cursos
Matrculas
58
Exemplo 2
Eventos:
2012.2
Recursos Humanos
folha_pagto
59
Abordagem top-down
Abordagem top-down:
2012.2
Exploso de Processo
60
marcaoconsulta
Paciente
nota_ consultas
dados_mdico
Mdico
ficha_paciente
61
2012.2
Paciente
dados_pessoais marcaoconsulta
Paciente
nota_ consultas
horrios
dados_mdico Mdico
info_pagto
Controlar Pagamentos 2
pagto
Gerenciar Mdicos 3
valor
total_ Consultas paciente
horrio_semana
62
2012.2
Controlar Consultas 1
disponibilidade
Consultas Mdicos
nome
Pacientes
Um fluxo que parte de um depsito normalmente interpretado como uma leitura ou um acesso feito s informaes desse depsito.
Pode significar que:
Um pacote isolado de dados foi recuperado do depsito: por exemplo, um depsito chamado CLIENTES, de onde cada pacote contm informaes de nome, endereo e telefone de clientes. Um fluxo tpico que sasse desse depsito envolveria a recuperao de um pacote completo de informaes sobre um cliente. Mais de um pacote foi recuperado do depsito: Por exemplo o fluxo poderia recuperar pacotes de informaes sobre todos os clientes da cidade de So Paulo a partir do depsito CLIENTES. Apenas uma parte do pacote foi recuperada do depsito: apenas a parte do n do telefone de um cliente foi recuperada do depsito CLIENTES. Parte de mais de um pacote foram recuperados do depsito: um fluxo pode recuperar do depsito CLIENTES o cdigo postal de todos os clientes do estado de So Paulo.
2012.2
63
Importante
Na maioria dos casos os fluxos so rotulados, entretanto no necessitamos rotular um fluxo se todo um grupo de um pacote entra ou sai do depsito. Um fluxo que parte de um depsito normalmente interpretado como uma leitura ou um acesso feito s informaes desse depsito.
64
2012.2
Exerccio
Indicar o fluxos existentes no DFD o processo de compras de em um supermercado. Considerar apenas as etapas de passagem do produto pelo caixa, pagamento e empacotamento das mercadorias.
Processos: passar produtos no balco, registrar produtos, pagamento, empacotamento, colocar produtos no carrinho Entidades: cliente, caixa, empacotador Depsitos: carrinho, pacote, caixa registradora.
65
2012.2
Referncia
DEMARCO, Tom Anlise Estruturada e Especificao De Sistema Editora Campus; GANE, Chris, SARSON, Trish: Anlise Estruturada de Sistemas Livros Tcnicos e Cientficos Editora Ltda. SOMMERVILLE, Ian. Engenharia de Software, 8 ed. So Paulo: Pearson Addison-Wesley, 2007.
Captulo 6 - Requisitos de Software. Captulo 7 Processos de Engenharia de Requisitos
66
2012.2