Escolar Documentos
Profissional Documentos
Cultura Documentos
Analise de Requisitos
Analise de Requisitos
Elementos de um sistema
Procedimentos
Documentos
Hardware
SISTEMA
Banco de Dados Software
Pessoas
Funes de Software
Reviso
Reviso
Prottipo
Plano de Projeto
Reviso
Projeto Procedimental
Reviso
Codificao
Reviso
Depurao
Liberao e Distribuio
Reviso
Manuteno
Reviso
Programa Operacional Plano de Teste, Procedimentos de teste e resultados de teste Documentao para o Usurio Cdigo-Fonte modificado Documentao modificada
Atividades de Anlise:
n n n n n
reconhecimento do problema avaliao do problema sntese da soluo (modelagem) especificao dos requisitos do software reviso
reviso
reviso administrativa
aceitvel
no
construir prottipo para estabelecer os requisitos
os requisitos so conhecidos?
sim
determinar domnio das informaes e das funes, interfaces, restries de projeto e critrios de validao
reviso
reviso tcnica
aceitvel
revisar e justificar recursos, custos e cronogramas reviso do plano de projeto do software
prottipo
Sintetizar uma ou mais solues (dentro do alcance delineado no Plano de Projeto do Software)
O processo de avaliao e sntese continua at que o analista e o cliente concordem que o software pode ser adequadamente especificado. a maior rea de esforo
Modelagem
Durante a atividade de avaliao e sntese devem ser criados modelos do sistema para se compreender melhor o fluxo de dados e de controle, o processamento funcional e a operao comportamental, alm do contedo da informao. O modelo serve como fundamento para o projeto de software e como base para a criao de sua especificao
11
descrio do fluxo e estrutura da informao refinamento detalhado de todas as funes do software estabelecimento das caractersticas de interface identificao das restries de projeto especificao dos critrios de validao
12
n n
Atividade 4: Revises
n
O Plano de Projeto do Software deve ser revisto devido ao conhecimento adquirido durante a anlise.
13
reas Problemas
1. Aquisio da informao
que informao deve ser coletada e como ela deve ser representada? quem fornece as informaes? que tcnicas e ferramentas esto disponveis para facilitar a coleta de informaes?
15
reas Problemas
2. Tamanho do sistema
como eliminar inconsistncias na especificao de grandes sistemas? possvel detectar omisses? pode um grande sistema ser efetivamente particionado para que se torne intelectualmente administrvel?
16
reas Problemas
3. Alteraes
como as alteraes efetuadas em outros elementos do software so coordenadas com os requisitos do software? como se determina o impacto de uma alterao em outras partes do software aparentemente no relacionadas? como se corrige erros na especificao para que no se gere efeitos colaterias?
17
comunicao ineficiente tcnicas e ferramentas inadequadas tendncias de eliminar a tarefa de Especificao dos Requisitos falha de considerar alternativas antes que o software seja especificado
18
domnio de informao do problema representado e compreendido (para que a funo possa ser entendida + completamente) modelos que descrevam a informao, a funo e o comportamento do sistema desenvolvidos (para que a informao possa ser comunicada compactamente)
19
modelos (e o problema) particionados, de maneira que revele os detalhes em forma de camadas (ou hierarquicamente) (para reduzir a complexidade) processo de anlise mover-se da informao essencial para os detalhes de implementao (para acomodar as restries lgicas impostas por requisitos de processamento e as restries fsicas impostas por outros elementos do sistema)
20
Todo software construdo para processar dados e eventos. Os dados e itens de controle residem no domnio de informao de um problema. 3 diferentes pontos de vista:
Fluxo da Informao: maneira pela qual os dados e o controle se modificam medida que cada um se movimenta pelo sistema Contedo da Informao: os dados e os itens de controle individuais que compreendem certo item de informao mais amplo. Estrutura da Informao: a organizao interna de vrios itens de controle e de dados
21
2. Princpio - Modelagem
n
O modelo deve ser capaz de modelar a informao que o software transforma, as funes (ou subfunes) que possibilitam que as transformaes ocorram e o comportamento do sistema quando a transformao est se desenvolvendo. Os modelos concentram-se naquilo que o sistema deve fazer, no em como ele faz. Papis importantes do Modelo:
ajuda o analista a entender a informao, a funo e o comportamento de um sistema, tornando a tarefa + fcil e sistemtica. torna-se o ponto focal para a reviso e, portanto, a chave para a determinao da completitude, consistncia e preciso da especificao. torna-se a base para o projeto, fornecendo ao projetista uma representao essencial do software, a qual pode ser "mapeada" num contexto de implementao.
3. Princpio - Particionamento
n
Os problemas freqentemente so grandes demais e muito complexos para serem compreendidos como um todo. O particionamento divide o problema em partes mais facilmente entendidas Atravs das interfaces estabelecidas entre as partes, a funo global do software pode ser executada.
23
3. Princpio - Particionamento
n
Particionamento Horizontal: decomposio funcional do problema Particionamento Vertical: expe detalhes crescentes
Particionamento horizontal Particionamento vertical
24
A concepo essencial dos requisitos do software apresenta as funes a serem realizadas sem tratar dos detalhes de implementao. Ao se concentrar ateno na essncia do problema nas primeiras etapas da anlise de requisitos, deixa-se as opes abertas para especificar detalhes de implementao durante as ltimas etapas de especificao dos requisitos e projeto de software. A concepo de implementao dos requisitos de software apresenta a manifestao das funes de processamento e estruturas de informao no mundo real. No deve ser interpretada como uma representao do como. Um modelo de implementao representa o modo de operao corrente, ou seja a atribuio existente ou proposta para todos os elementos do sistema.
Os revisores tentam garantir que a especificao seja completa, consistente e precisa. Questes:
Metas e objetivos do software permanecem consistentes com metas e objetivos do sistema? Foram descritas as interfaces importantes para todos os elementos do sistema? O fluxo e a estrutura de informao so adequadamente definidas para o domnio da informao? Os diagramas so claros?
28
A preocupao com o enunciado da especificao. Tenta-se descobrir problemas que possam estar ocultos no contedo da especificao Diretrizes:
Esteja alerta para perceber conectivos persuasivos e perguntar por que eles esto presentes. Procure termos vagos e pea esclarecimento Quando forem fornecidas listas que no sejam completas, certifique-se de que todos os itens sejam entendidos Esteja certo de que os limites declarados no contenham pressuposies no declaradas
30
10
Diretrizes:
Cuidado com verbos vagos. H muitas maneiras de interpret-los. Cuidado com pronomes "pendentes". Procure declaraes que impliquem certeza e depois pea prova Quando um termo for explicitamente definido num lugar, evite utilizar outras definies para o mesmo termo Quando uma estrutura for descrita em palavras, verifique se h um grfico ou uma figura para auxiliar a compreenso Quando um clculo for especificado, desenvolva pelo menos dois exemplos.
31
1a categoria: tcnicas automatizadas que nada mais so do que um mtodo manual que foi complementado com uma ferramenta CASE
Possibilitam que o analista atualize informaes e rastreie as conexes entre representaes novas e existentes do sistema Ex: DEC Design (Digital Equipment Corp.), Design Aid (Transform Logic Corp.), Excelerator (Intersolv), IEF (Texas Instruments), ADW (Knowledgeware), STP (Interative Development Environments), Teamwork (Cadre Technologies).
32
2a categoria: tcnicas automatizadas que fazem uso de uma notao especial (na maioria dos casos, essa uma linguagem de especificao de requisitos) que foi explicitamente projetada para processamento usando-se uma ferramenta automatizada.
Ex: SREM (linguagem de especificao: RSL), PSL/PSA (linguagem de especificao: PSL), TAGS (linguagem de especificao: IORL)
33
11
Concluso
n
Logo que a Reviso for concluda, a Espec. de Requisitos de Software "assinada" pelo cliente e pelo desenvolvedor A especificao torna-se um "contrato" de desenvolvimento de software. Mudanas solicitadas depois que a Espec. for concluda sero consideradas, porm cada mudana posterior pode aumentar o custo e/ou alongar o prazo de entrega Mesmo com os melhores procedimentos de reviso em andamento, uma srie de problemas de especificao ainda persiste
34
12