Escolar Documentos
Profissional Documentos
Cultura Documentos
de Sistemas
Material Teórico
Levantamento de Dados e Análise de Requisitos
Revisão Textual:
Profa. Ms. Rosemary Toffoli
Levantamento de Dados e Análise de Requisitos
• Introdução
• O que é um Sistema?
Para que os objetivos da unidade sejam alcançados, é fundamental que você leia
cuidadosamente todo o material e realize com atenção todas as atividades propostas.
Nesta unidade é importante que, durante as leituras e realização dos exercícios, você
consiga compreender a importância de levantamento de dados e análise de requisitos para
desenvolvimento de sistemas.
Sugerimos que você acesse e leia cuidadosamente o material teórico.
Após isso você poderá acompanhar a Apresentação Narrada, pois ela lhe ajudará a
compreender melhor os principais assuntos da Unidade.
Outro recurso fundamental é a atividade de sistematização, já que com ela você poderá
perceber o quanto aprendeu sobre o tema.
Realize a atividade de aprofundamento, que associa os assuntos que estudamos à atividade
profissional por meio de reflexão e produção de sua própria autoria.
Além disso tudo, você contará com textos e vídeos indicados no material complementar.
5
Unidade: Levantamento de Dados e Análise de Requisitos
Contextualização
6
Introdução
O que é um Sistema?
Você já deve ter ouvido a palavra sistema em diferentes contextos: sistema de transporte,
sistema digestivo, sistema solar, sistema de informação, etc. Na era digital este termo tem sido
utilizado frequentemente.
De maneira mais sucinta, podemos definir sistema como o conjunto de elementos interdependentes, ou um
todo organizado, ou partes que interagem formando um todo unitário e complexo (BATISTA, 2004, 13).
7
Unidade: Levantamento de Dados e Análise de Requisitos
Atenção
Quando tratamos do assunto “sistema” com uma abordagem computacional, podemos definir a
palavra como um conjunto de objetos ou elementos que estão organizados com o propósito de pro-
cessar dados de entrada para se obter informações de interesse.
Na figura 1, você poderá identificar os elementos, geralmente mais utilizados em um sistema de software:
Você Sabia ?
CPU é o nome dado à Unidade Central de Processamento (Central
Processing Unit) em um computador. É um componente conhecido
também como Processador, responsável por executar as instruções dos
programas e fornecer resultados para os usuários. Em comparação
com o corpo humano, a CPU seria o cérebro do computador.
8
• Software é o conjunto sequencial de instruções que definem um programa de computador;
• Banco de dados é um conjunto de dados relacionados entre si que podem ser acessados por
softwares específicos para gerência, manipulação e acesso às informações ali armazenadas;
Segundo Pfleeger (2004, p. 38), todo processo de desenvolvimento de software tem como
entrada os requisitos do sistema e como saída um produto fornecido. Muitos modelos foram
propostos ao longo dos anos.
9
Unidade: Levantamento de Dados e Análise de Requisitos
10
Figura 4: Modelo em espiral.
Explore
Além destes existem ainda outros modelos de ciclo de vida de software. Leia as páginas 92 a 97 do
livro Engenharia de Software: fundamentos, métodos e padrões, de Wilson de Pádua disponível na
Biblioteca Virtual da UNICSUL.
11
Unidade: Levantamento de Dados e Análise de Requisitos
A mãe de um garoto diz para ele: você deve comer toda a refeição para ganhar o doce. O pai
diz ao filho: quando você completar dezoito anos você poderá dirigir meu carro. Ainda o padrão
diz: você deverá concluir a pós-graduação para receber promoção.
Perceba que em todos os casos existe algum critério que se deve obter para conseguir algo.
Atenção
Requisito se refere à condição que se deve satisfazer para atingir um
determinado propósito.
12
Os requisitos de usuário por sua vez são descritos de, basicamente, duas maneiras:
• Requisitos funcionais de usuários: definem as funcionalidades do sistema sob a ótica dos
usuários, ou seja, o que eles precisam ou desejam que o sistema realize.
Atenção
Note que a forma como o texto está escrito permite que os usuários tenham ideia
clara dos requisitos do sistema sem mesmo ter conhecimento técnico de como o sistema
irá processar estas tarefas.
Aos requisitos funcionais pode-se acrescentar a ideia de armazenamento de dados (armazenar
dados dos alimentos); transformação de dados em informação (emitir relatório de prazos de
validade dos produtos); recuperação de dados (consultar os dados dos alimentos que são
classificados como vegetais).
• Requisitos não-funcionais de usuários: são requisitos que descrevem características
qualitativas do sistema, como por exemplo confiabilidade, performance, espaço de
armazenamento, segurança, portabilidade, custos, manutenção, etc.
Atenção
Exemplos de requisito não-funcional de usuário: O tempo resposta do sistema não deve ultrapassar
15 segundos. Somente usuários autorizados poderão realizar consultas na base de dados do sistema.
O sistema deverá ser implementado em sistema operacional da plataforma Linux.
No que diz respeito à confiabilidade, o sistema deve garantir que eventos inesperados possam
ser tratados e resolvidos. Mas o que podemos chamar de eventos inesperados?
Suponha que o usuário esteja cadastrando um cliente no sistema e através de um formulário
e após inserir todos os dados, porém antes de armazenar, há uma queda de energia elétrica
e as informações são perdidas. O sistema deve ser capaz de restaurar os registros digitados
anteriormente para que o usuário não tenha que digitar tudo novamente.
Performance, também chamada de tempo de resposta ou desempenho, é o tempo calculado
entre a solicitação do usuário (por exemplo o clique em um botão gravar) até a resposta desejada
por ele (por exemplo a mensagem indicando que a operação foi realizada com sucesso). Nenhum
sistema deverá ser lento, pois este fato causa desconforto para os usuários.
13
Unidade: Levantamento de Dados e Análise de Requisitos
Para atender com o requisito espaço de armazenamento o sistema deverá ser projetado de
forma a garantir que terá espaço suficiente para armazenamento de dados e de arquivos. Falhas
neste item pode comprometer bastante a performance e confiabilidade do sistema.
Em um ambiente corporativo muitas pessoas têm acesso ao sistema, porém nem todas elas
necessitam ter permissões para acessar o sistema como um todo. Segurança do sistema visa a
identificação dos privilégios que cada um dos usuários terão para manipular os dados do sistema.
Um funcionário que trabalha no setor de estoque precisa acessar o sistema para visualizar se um
produto encontra-se disponível ou se está em falta. Ele não precisa (e não pode) ter acesso às
informações do setor de RH, como folha de pagamento dos funcionários. Restrições de acesso
fazem parte do item segurança, assim como formas de acesso aos dados como, por exemplo, a
utilização de criptografia em senhas.
A portabilidade se refere à capacidade do sistema em operar em diversas plataformas ou
arquiteturas, como por exemplo em sistemas operacionais Linux ou Windows.
A figura a seguir apresenta uma visão mais detalhada dos tipos de requisitos não-funcionais de usuários:
A análise de requisitos não-funcionais deverá receber especial atenção, já que falhas neste
processo poderá comprometer o sistema por inteiro.
Requisitos de sistema: são uma extensão dos requisitos de usuários, já que neste modelo
são adicionados detalhes técnicos que serão projetados pela equipe de engenharia de sistemas.
Você Sabia ?
Engenheiro de sistemas é o profissional responsável por projetar
soluções de software e/ou de sistemas. Ele precisa ter conhecimento
amplo das fases que envolvem a análise de requisitos, pois contará
com uma equipe que desenvolverá o sistema com base nos dados
coletados e analisados.
14
Uma forma padronizada de se escrever os requisitos de sistema é a chamada linguagem
estruturada natural, que faz uso de modelos gráficos ou formulários estruturados dos requisitos
para este fim. A linguagem natural é simples para a compreensão dos modelos por parte do
público interessado, porém é necessário que ela se apresente de maneira padronizada, ou
estruturada, para garantir certa uniformidade nas especificações.
Abaixo são apresentadas e descritas algumas das principais técnicas para levantamento de
requisitos. Não existe a obrigatoriedade de utilização de todas elas e nem mesmo de utilização
de apenas uma. Cada projeto deverá se valer daquela ou daquelas que forem úteis e necessárias.
15
Unidade: Levantamento de Dados e Análise de Requisitos
Você Sabia ?
Engenheiro de sistemas é o profissional responsável por projetar
soluções de software e/ou de sistemas. Ele precisa ter conhecimento
amplo das fases que envolvem a análise de requisitos, pois contará
com uma equipe que desenvolverá o sistema com base nos dados
coletados e analisados.
É importante que o entrevistado fique a vontade para expressar sua ideias em um tempo
adequado para o processo todo. A entrevista não deve ter um caráter persuasivo, ou seja, as
perguntas não podem ser direcionadas para uma resposta a que se pretende chegar, mas a parte
interessada deverá ser levada a refletir naquilo que tem e no que se deseja em relação ao sistema.
• Questionário: normalmente apresentado em
forma de formulário entregue ao público
interessado que poderá ou não responder ser
recolhido em horário estipulado ou, simplesmente,
poderá ser recolhido posteriormente para análise
das informações desejadas. É importante que os
formulários contenham as mesmas questões e
que estejam em uma mesma disposição, caso
sejam distribuídos para mais de uma pessoa. Este
meio apresenta, de modo geral, algumas Fonte: Thinkstock.com
vantagens por ser mais simples sua aplicação;
pela agilidade no processo; pela possibilidade de uma reflexão mais apurada na resposta;
pela oportunidade de ser aplicado à grande quantidade de pessoas, etc. Entretanto
algumas desvantagens também precisam ser apontadas, como por exemplo, a possibilidade
de manipulação das respostas antes de serem recolhidos os questionários; o baixo
envolvimento com aqueles que respondem; a impossibilidade de tirar dúvidas imediatas
sobre repostas fornecidas. Os questionários poderão também formar a base para uma
entrevista. As questões poderão iniciar com: O que você acha...? Como você tem
percebido...? Qual a motivação para...?
• Prototipagem: no momento em que diversas
informações já foram colhidas e analisadas é
possível a criação de um protótipo do sistema que
se pretende desenvolver, demonstrando apenas
certas funcionalidades ainda pouco definidas.
Deste modo, ao ser apresentado este modelo
inicial de sistema, o público de interesse poderá
ter uma breve visão de como o projeto deverá
ser estruturado e, a partir disso, será possível sua
interação apontando melhorias ou identificando
possíveis falhas. Embora seja uma técnica que
traz excelentes resultados, projetar um protótipo
envolve custos que poderão se elevar dependendo
da complexidade do sistema. Este fato muitas vezes
impede a aceitação por parte dos usuários.
16
• Verificação de documentos: trata-se de
uma importante investigação de situações
que estão registradas em documentos como
formulários, relatórios, manuais, fichas, dentre
outros. Deste modo o analista poderá ter uma
visão ampla de quais são as informações que
recebem tratamento especial, além de poder
detectar como a organização está politicamente
estruturada e quais são as metas que se
procuram estrategicamente alcançar. Fonte: Thinkstock.com
Você Sabia ?
Etnografia é uma palavra derivada de outras duas:
etno significa nação ou povo e grafia significa escrita
Fonte: Thinkstock.com
O analista se dirige até o ambiente de trabalho onde o sistema será implementado e acompanha
o dia-a-dia das pessoas envolvidas no processo. Esta técnica é bastante útil para levantamento
de requisitos, pois diversas informações poderão ser captadas somente desta maneira, uma vez
que grandes detalhes são, normalmente, esquecidos ou ocultados pelos usuários em momentos
como entrevistas e/ou aplicação de questionários.
Etnografia é uma técnica de observação que pode ser usada para compreender os requisitos sociais e orga-
nizacionais (SOMMERVILLE, 2007, 104).
Outro ponto importante é o fato de que a análise etnográfica permite que o analista tenha
conhecimento da realidade do ambiente de trabalho tal como ela é e não como se espera que
fosse. Por exemplo, dispositivos periféricos como teclado, mouse e monitor são sensíveis, ao
ponto de precisarem ficar longe de produtos líquidos. Entretanto o analista percebe que muitos
dos funcionários trabalham com uma garrafa com água próxima a estes componentes, para
evitar a sua locomoção até o refeitório.
A escolha da melhor técnica ou das melhores técnicas deve ser pautada na situação de cada sistema
a ser desenvolvido. Aquela que serve melhor para uma talvez seja pouco proveitosa para outra. Estar
atento em cada detalhe da produção do software é responsabilidade fundamental do analista.
17
Unidade: Levantamento de Dados e Análise de Requisitos
Material Complementar
18
Referências
PFLEEGER, S. L.. Engenharia de Software: teoria e prática. São Paulo. Prentice Hall, 2004.
19
Unidade: Levantamento de Dados e Análise de Requisitos
Anotações
20
www.cruzeirodosulvirtual.com.br
Campus Liberdade
Rua Galvão Bueno, 868
CEP 01506-000
São Paulo SP Brasil
Tel: (55 11) 3385-3000