Você está na página 1de 34

Laboratrio de Desenvolvimento de Software

Levantamento de Requisitos

Haroldo Correia Mximo haroldo@engenhariadigital.com.br http://www.haroldo.com.br

Motivao

Trs das principais causas de atraso, estouro de custos ou reduo de funes do projeto so:

Falta de informao sobre os usurios; Requisitos incompletos; Mudanas de requisitos.

Introduo a Requisitos

Modelagem do mundo real O que so requisitos?

Uma capacidade que deve ser atingida ou possuda por um sistema ou componente de sistema para satisfazer um contrato, padro, especificao, ou outra documentao formalmente imposta.

Introduo a Requisitos

O que so requisitos?

Qualquer funo ou caracterstica que um sistema deve ter, e as restries que deve atender ou outras propriedades que devem ser fornecidas, de forma a satisfazer os objetivos das organizaes e resolver um conjunto de problemas. Definem o que o sistema deve fazer e as circunstncias sobre as quais deve operar. Definem os servios que o sistema deve fornecer e dispem sobre as restries operao do mesmo.
4

Conceitos de Requisitos

Classificaes:

Requisitos funcionais ou comportamentais Requisitos no-funcionais ou no comportamentais

Conceitos de Requisitos

Funcionais ou comportamentais

Correspondem listagem de todas as coisas que o sistema deve fazer, ou seja, as funcionalidades que o sistema deve possuir.

Requisitos funcionais evidentes so efetuados com conhecimento do usurio Requisitos funcionais ocultos so efetuados pelo sistema sem o conhecimento explcito do usurio.

Conceitos de Requisitos

No-funcionais ou no-comportamentais

So atributos de qualidade ou restries que se coloca sobre como o sistema deve realizar seus requisitos funcionais. Definem os atributos do sistema enquanto ele executa seu trabalho.

Conceitos de Requisitos

No-funcionais ou no-comportamentais

Diferentes taxonomias para requisitos no-funcionais tm sido propostas Classifica-os em requisitos de processo relativos : Entrega Implementao e Conformidade a Padres Requisitos de Produto (relativos usabilidade, confiabilidade, segurana, desempenho e capacidade) Requisitos organizacionais (padres de processo usados) Requisitos Externos (relativos interoperabilidade, restries legais e econmicas).
8

Conceitos de Requisitos

No-funcionais ou no-comportamentais

Requisitos de produto

So requisitos que especificam que o produto deve se comportar de uma determinada forma (Ex.: rapidez, confiabilidade) So requisitos que so conseqncia das polticas e dos procedimentos organizacionais (Ex.: padres de processo usados)

Requisitos organizacionais

Conceitos de Requisitos

No-funcionais ou no-comportamentais

Requisitos externos

So requisitos que surgem a partir de fatores externos ao sistema (Ex.: requisitos legislativos e econmicos).

10

Conceitos de Requisitos

Caractersticas de requisitos de alta qualidade


Claros Completos Sem ambigidades Implementveis Consistentes Testveis

11

Atividades de Requisitos

Atividades:

Descobrir/Modelar a viso da empresa para o sistema Levantar requisitos Organizar requisitos Planejar o desenvolvimento

Mtricas Cronograma Recursos

12

Modelagem de Negcios

Questes

Qual a necessidade da empresa com o projeto? Porque ele est sendo proposto? Porque a empresa vai investir no projeto? O projeto realizvel? A equipe de desenvolvimento tem habilidade/condies de realizar este projeto? O custo do desenvolvimento acessvel ao cliente? H tempo disponvel? Comprar alguns componentes ou construir todos?

13

Atividades de Requisitos

Atividades:

Descobrir/Modelar a viso da empresa para o sistema Levantar requisitos Organizar requisitos Planejar o desenvolvimento

Mtricas Cronograma Recursos

14

Levantamento de Requisitos

Entrevistas Workshop de requisitos Brainstorm Storyboards Casos de uso Role playing Prototipagem

15

Levantamento de Requisitos (Entrevista)


Tcnica simples e direta Questes livres de contexto podem ajudar no alcance de entrevistas no-tendenciosas

Quem so os usurios? Quem so os clientes? As necessidades deles so diferentes? Onde a soluo desse problema pode ser encontrada?

Resultado: repositrio de requisitos Questionrio no substitui uma entrevista.


16

Levantamento de Requisitos (Entrevista)

Gerente:

Qual sua viso do problema? Quais so as mudanas desejadas com a soluo do problema? Em que ambiente essa soluo dever funcionar? Qual a abrangncia geogrfica e nmero de usurios que estaro utilizando a soluo? Como o parque tecnolgico existente (Servidores, Desktops, Topologia da Rede, Internet)?
17

Levantamento de Requisitos (Entrevista)

Gerente:

Quais so os ambientes existentes na empresa (Desenvolvimento, Testes, Produo, etc...); Como sero as integraes entre os sistemas? Haver migrao de dados ? Em que estrutura esto esses dados? Existe alguma padronizao a ser seguida e/ou algum artefato de sua metodologia que dever ser gerado e entregue? Como est estruturada a equipe de TI?
18

Levantamento de Requisitos (Entrevista)

Usurio:

Qual sua viso do problema? Quais so as mudanas desejadas com a soluo do problema? Que facilidades voc espera do sistema? Qual informao do negcio a mais difcil de processar (trabalho braal, formato do dado, baixa navegabilidade em sistemas existentes)? Quais so as macro funcionalidades necessrias para os sistema?
19

Levantamento de Requisitos (Entrevista)

Usurio:

Quais so as pessoas que se relacionam com o sistema? Como so as telas imaginadas para o sistema (esboos de telas)? Quais so as importaes e exportaes de dados necessrias para o funcionamento do sistema (detalhar layout dos arquivos / fontes de dados)?

20

Levantamento de Requisitos (Entrevista)

Outros

Manutenes: Quais so as dificuldades de manuteno do sistema? Qual a qualidade das estruturas do banco de dados? Qual a qualidade do cdigo fonte do aplicativo? A documentao do sistema suficiente e compreensvel? Como a demanda (freqncia) de manuteno (corretiva, melhorias, legal)? Quais so os pontos de gargalo do sistema atual

21

Levantamento de Requisitos (Brainstorm)

uma tcnica em que as pessoas colocam tudo que vier na cabea com relao ao projeto. Muito til quando existem diversos interessados no projeto. dividido em duas etapas. Na primeira, anota-se todas as idias que surgirem, sem que sejam questionadas. Neste momento o que importa mais a quantidade, no deixe de anotar nada.
22

Levantamento de Requisitos (Brainstorm)

Na segunda etapa, debate-se com o grupo para ir refinando as idias apresentadas anteriormente. Deixe as regras bem claras, e defina uma pessoa (facilitador) para comandar a reunio, para garantir que as regras sejam respeitadas. Pode ser efetiva no desenvolvimento de um novo projeto, na fase inicial, para identificar requisitos de alto nvel, aqueles mais macros.
23

Levantamento de Requisitos (Storyboarding)

Corresponde a qualquer tcnica que expressa o comportamento do sistema, projeto ou inteno de implementao pela perspectiva do usurio. Esta tcnica foi utilizada inicialmente no cinema e desenhos animados, representando um esboo dos personagens e da histria.

24

Levantamento de Requisitos (Casos de Uso)


Descreve a funcionalidade proposta para o novo sistema. Representa uma unidade discreta da interao entre um usurio (humano ou mquina) e o sistema. uma unidade de um trabalho significante.

Ex: o "login para o sistema", "registrar no sistema" e "criar pedidos".

Caso de Uso tem uma descrio o qual descreve a funcionalidade que ir ser construda no sistema proposto. Um Caso de Uso pode "incluir" outra funcionalidade de Caso de Uso ou "estender" outro Caso de Uso com seu prprio comportamento. Casos de Uso so tipicamente relacionados a "atores". Um ator um humano ou entidade mquina que interage com o sistema para executar um significante trabalho.

25

Levantamento de Requisitos (Role Playing)

Esta tcnica consiste em observar o usurio executando determinada tarefa, no dia-a-dia do seu trabalho, ou, at mesmo, voc fazendo o trabalho deste usurio, para identificar suas dificuldades e necessidades, sentindo na pele como realizar a tarefa. Muito til quando o usurio no consegue identificar ou transmitir as informaes necessrias para a identificao dos requisitos.
26

Levantamento de Requisitos (Prototipagem)

Criao, apresentao e debate de modelos de interao no funcionais que ajudem a ilustrar como o sistema dever se comportar, permitindo assim obter feedback mais detalhado dos stakeholders sobre o sistema. a atividade de desenvolvimento de uma verso inicial do sistema baseada no atendimento dos requisitos ainda pouco definidos, permitindo a descoberta de falhas difceis de serem encontradas na comunicao verbal.
27

Levantamento de Requisitos (Prototipagem)

Um processo que prope a criao de um prottipo de software objetiva apoiar a fase levantamento de requisitos a fim de prevenir as possveis falhas no sistema. Um prottipo simula a aparncia e funcionalidade do software permitindo que os clientes, analistas, desenvolvedores e gerentes percebam os requisitos do sistema podendo interagir, avaliar, alterar e aprovar as caractersticas mais marcantes na interface e funes. Os prottipos podem ser evolutivos ou descartveis.
28

Regras de Negcio

Estabelecem requisitos gerais para o sistema, provenientes do prprio negcio como normas, polticas, legislaes etc. So declaraes que restringem, derivam e fornecem condies de existncia, representando o conhecimento do negcio. Ex: Toda conta de telefone atrasada mais de n dias ter seu nmero bloqueado para receber chamadas.
29

Regras de Negcios

So polticas, condies ou restries que devem ser consideradas na execuo dos processos existentes em uma organizao. Descrevem a maneira pela qual a organizao funciona. Estas regras so identificadas e documentadas no chamado modelo de regras do negcio.
30

Regras de Negcios

A descrio do modelo de regras do negcio pode ser feita utilizando-se texto informal, ou alguma forma de estruturao. Alguns exemplos de regras do negcio:

O valor total de um pedido igual soma dos totais dos itens do pedido acrescido de 10% de taxa de entrega. Um professor s pode estar lecionando disciplinas para as quais esteja habilitado.
31

Regras de Negcios

Regras do negcio normalmente tm influncia sobre uma ou mais funcionalidades.


Nome Descrio Fonte Histrico Quantidade de inscries possveis Um aluno no pode ser inscrever em mais de seis disciplinas por semestre letivo. Coordenador da escola de informtica Data de identificao: 16/04/2006

32

Reviso - Passos de Requisitos

Levantar os requisitos do sistema atravs de entrevistas com representantes do usurio gestor e usurios finais, e registr-los no Documento de Requisitos do Sistema Atualizar o Glossrio do projeto com novos termos identificados durante o levantamento de requisitos Priorizar os requisitos levantados, em conjunto com o responsvel por sua definio, como: essencial, importante ou desejado.
33

Reviso - Passos de Requisitos

Classificar os requisitos levantados como: funcionais, no-funcionais ou regras de negcio. Identificar, com base nos requisitos funcionais levantados, os usurios do sistema Identificar os relacionamentos entre usurios e funcionalidades, representando-os atravs de um Diagrama de Casos de Uso inicial. Revisar, junto aos representantes do usurio gestor e de usurios finais, o Documento de Requisitos do Sistema.
34