Você está na página 1de 19

Engenharia de Software Unisul

19

Introduo a Engenharia de Requisitos


Voce j esteve envolvido na construo de uma casa? Ou teve algum prximo a voce construindo?

Isto no acontece porque sabemos da necessidade de termos um projeto claro de nossas necessidades. Finalizados os projetos inicia-se ento a obra, e neste momento o projeto documentado das plantas funciona como roteiro de gerenciamento. Ou seja, tudo o que for construdo deve ser consistente com o que foi projetado.

Engenharia de Software Unisul

19

Este

exemplo

tambm

valido

para

a no

construo do software, mas, infelizmente muitas empresas do ainda produto apostam sem desenvolvimento passar

formalmente pela etapa inicial de definio e projeto indo direto para a programao. O resultado muitas vezes desastroso. Peters (2000) declara que o preciso com grau e rigor a grau grande de da ser de propriedade

compreensibilidade, requisitos diretamente de

descrio fornecida por um documento de software proporcional tende ao

qualidade do produto resultante. Mas o que um requisito? Voce pode dizer que requisito de software software, seu fluxo uma descrio de informaes, dos principais recursos de um produto de comportamento e atributos.

Engenharia de Software Unisul

19

Requisitos podem ser definidos a partir do conceito de que o requisito formado por :

requisitos explcitos que

so

as

necessidades ou as prprias condies e objetivos propostos pelo cliente (o cliente deseja ter os dados cadastrais de seus fornecedores).

os requisitos implcitos que incluem as diferenas entre os usurios, a evoluo no tempo, as implicaes ticas, as questes de segurana e outras vises subjetivas (o cliente deseja um site de comrcio segurana preocupao eletrnico, talvez por no sua questes sejam falta de sua de

conhecimento em tecnologia, mas um requisito que deve estar implcito no seu produto).

e os requisitos normativos que so decorrentes de normas, leis ou padres

Engenharia de Software Unisul

19

( a emisso de uma nota fiscal deve seguir as regras propostas pela federao). Na etapa inicial da anlise de requisitos fundamental o entendimento do analista sobre as necessidades do cliente.

Engenharia de Software Unisul

19

O que necessrio fazer

O que os usurios querem

O que os usurios pedem

O que os desenvolvedores entendem

O que acaba sendo feito

Figura 1. Evoluo dos requisitos (Pdua, 2002)

Existem algumas atividades genricas comuns a todos os processos, so elas : Levantamento de requisitos Documentao de requisitos Especificao de requisitos Validao de requisitos Gerenciamento de requisitos

Engenharia de Software Unisul

19

Levantamento de Requisitos
A etapa de levantamento de requisitos a etapa onde ocorre a compreenso do problema aplicada ao desenvolvimento de software. Quando voce esta nesta etapa fundamental que usurios e desenvolvedores tenham a mesma viso do problema a ser resolvido. Durante o levantamento de requisitos voce vai se deparar com um grande volume de relatrios, formulrios e documentos. Quais os que voce deve avaliar?

Detecte as pessoas chaves do processo, trabalhe

usando amostragens da populao. Escute com ateno a gerncia da empresa e seus objetivos.
Lembra de nosso exemplo da construo de uma casa? Para que o arquiteto inicie o projeto ele precisa perceber o perfil do cliente, suas preferncias e necessidades.

Engenharia de Software Unisul

19

Entrevista
O uso da entrevista feito pelo uso do formato pergunta-resposta. Usando esta tcnica voce pode obter opinies do usurio, descobrir o que o cliente pensa sobre o sistema atual, obter e metas levantar organizacionais/pessoais procedimentos informais. Quando voce realizar uma entrevista lembrese: Tente estabelecer com o cliente um clima de confiana e entendimento; Mantenha-se entrevista; Tente mostrar ao cliente sua importncia dentro do sistema. Prepare-se entrevista. antecipadamente para a sempre no controle da

Engenharia de Software Unisul

19

Estude o material previamente, verifique o linguajar utilizado ! Lembre-se : Inclua em sua lista de entrevistados pessoas chaves dentro do futuro sistema. Quando voce propuser uma entrevista marque a data e a hora com antecedncia, com uma durao de no mnimo 45 minutos e no mximo duas horas. Elabore as questes e a estrutura da entrevista, durante a entrevista registre tudo o que for possvel fazendo uso de anotaes ou de um gravador. Ao formular as questes evite: usar questes que levam o entrevistado a responder de tendenciosa.
Um exemplo ruim: Voce tambm acredita que o a prioridade do desenvolvimento deva ser o faturamento como seu gerente afirmou?

uma forma

especfica

ou

Engenharia de Software Unisul

19

Melhor: O que voc acha que deva ser implantado


em primeiro plano?

evite fazer duas questes em uma, confuso completa. e a resposta pode no que ser o Ainda possvel

entrevistado acabe respondendo uma das questes apenas. Um exemplo ruim:


em que situaes voce cancela uma nota fiscal e quais os procedimentos que voce faz durante o cancelamento?

Questionrio
O questionrio uma tcnica que permite o levantamento de informaes a partir da coleta de informaes de diferentes afetadas pelo sistema. Sempre que possvel, use o vocabulrio das pessoas que iro responder. Prefira simples. o uso de perguntas curtas e pessoas

Engenharia de Software Unisul

19

Certifique-se de que as questes esto tecnicamente precisas antes de inclu-las no questionrio.

Observao Direta
A observao direta pode ser utilizada como validao das entrevistas, identificao de documentos , esclarecimento do que est sendo feito no ambiente atual e a forma como ocorre.

analista

observa

sem

intervir

diretamente no processo. importante planejar a observao e isto significa identificar o que deve ser observado, obter aprovao das gerncias apropriadas, obter as funes e nomes das pessoas envolvidas nas aes que sero observadas.
Se voce optar por esta tcnica prepare os usurios com cuidado esclarecendo sobre a forma como o processo vai ocorrer.

Engenharia de Software Unisul

19

Brainstorming
No sentido exato da palavra brainstorming uma tempestade de idias. O uso da discusso em grupos onde a partir dos resultados das tcnicas acima procura-se documentos, para que compreender respostas se chegue corretamente pelos boa oferecidas a uma

usurios, processos existentes so a base especificao. Nesta etapa inicia-se a formatao de um documento que deve conter os requisitos necessrios ao projeto dentro de um consenso entre desenvolvedores e cliente. Durante o levantamento dos requisitos estabelecido o escopo do projeto e tambm as possveis restries que possam delinear algum tipo de risco no horizonte.

Engenharia de Software Unisul

19

Anlise do Problema por Peters(2000)


Anlise De Problemas Modos de operao Itens produzidos Funes Mtodos utilizados Forma de produzir o item Quando as operaes acontecem

Ambiente

Pessoas no sistema Pessoas afetadas Mquinas no sistema Mquinas afetadas Servios necessrios Outros itens afetados pelas operaes do software

Itens processados Itens consumidos Itens produzidos para satisfazer as necessidades do sistema

Funes executadas por pessoas, por mquinas Funes necessrias para produzir o servio ou item Itens consumidos Itens produzidos para satisfazer as necessidades do sistema

Engenharia de Software Unisul

19

O Design Centrado no Usurio segundo a Norma ISO 9241


A norma composta por vrias partes mas a parte 11 da norma faz nfase ao fato de que a usabilidade dos computadores dependente do contexto de uso e que usabilidade usado. O contexto de uso consiste de usurios, tarefas, equipamentos (hardware, software e materiais), e do ambiente fsico e social, pois todos esses podem influenciar a usabilidade de um produto dentro de um sistema de trabalho. alcanado o nvel de das depender

circunstncias especficas nas quais o produto

Engenharia de Software Unisul

19

Descrio dos Objetivos O objetivo de um produto deve ser

claramente colocado. A partir deste podero ser decompostos em sub-objetivos como critrios que iro satisfaz-lo . assim

Engenharia de Software Unisul

19

Contexto de Uso No contexto e do de uso so descritos tarefas, O permite rico que

componentes equipamento detalhamento

como

usurios,

ambientes. contexto

aspectos relevantes para a usabilidade sejam reproduzidos. A especificao pode ser em termos de caractersticas relevantes ou de uma situao especfica.

Descrio dos usurios - so descritas todas as caractersticas que possam ser pertinentes ao usurio.

Descrio

das

tarefas

so

descritas As as

caractersticas que influenciam a usabilidade como freqncia e durao da tarefa. funes ou funcionalidades, todas tarefas devem ser descritas alm de suas atividades e passos que se relacionam a tarefa e seu desempenho sejam relacionadas ao objetivo da tarefa.

Engenharia de Software Unisul

19

Descrio dos equipamentos - a descrio do software, hardware e materiais, ou mesmo de seu desempenho, Descrio de ambientes ambiente e atributos de a descrio do um ambiente

tcnico, fsico, atmosfrico, cultural e social. A norma sugere que sejam analisados os seguintes quesitos:
Usurios Tipos de usurio primrios secundrios e indiretos Tarefas Falha da tarefa Nome da tarefa Freqncia de uso da tarefa Durao da tarefa Habilidades e Freqncia de conhecimentos eventos Habilidade/conhe Flexibilidade da cimento produto tarefa Habilidade/conhe Demanda fsica e cimento sistema mental Experincia na Dependncias da tarefa tarefa Experincia Resultado da organizacional tarefa Nvel treinamento Risco resultante Habilidade nos de erro dispositivos de Demandas entrada crticas de Qualificaes segurana Equipamentos Descrio bsica Identificao do produto Descrio do produto Principais reas de aplicao Funes principais Especificao Hardware Software Materiais Servios Outros itens

Engenharia de Software Unisul

19

Habilidade de linguagem Conhecimento geral Atributos pessoais Idade Gnero Capacidades fsicas Limitaes fsicas Habilidade intelectual Atitude Motivao
Tabela 4.1 Exemplo de atributos de contexto de uso (ISO 9241-11, 1998)

Engenharia de Software Unisul

19

Relatrio de Anlise do Problema

Data <dd/mm/aaaa>

Histrico de Revises Verso Descrio <x.x> <detalhes>

Autor <nome>

<neste item procure informar as alteraes sofridas no documento, o individuo que as realizou e a data de sua realizao > 1. Nome da Empresa: <nome da empresa que contratou seu servio> 2. Contato: <nome e telefone de seus contatos na empresa> 3. Descrio do problema < Descrio sucinta do problema apresentado pelo cliente (mximo 1 pgina)> 4. Identificao do principal objetivo do cliente. < Descreva o principal objetivo do cliente com a implementao do sistema o objetivo do cliente pode em alguns casos ser sua maior angstia em relao ao processo da empresa> 5. Descrio dos usurios do sistema <Definio de caractersticas do usurio, aes no sistema, responsabilidades no processo, escolaridade, aptides de uso de recursos de informtica (basear-se na iso9241), deficincias fsicas ou mentais>. 6. Descrio detalhada dos processos existentes ( COMO O SISTEMA ATUAL FUNCIONA?) <Todos os processos que possam interagir significantemente ou que fazem parte do problema devem ser descritos, apresentando paralelismos, concorrncias e restries> 7. Elaborao de um fluxo de ao dos usurios, processos e circulao de documentos. <Descrever a relao do item 6 com os usurios que interagem com os processos, a origem e o destino de relatrios e informaes que circulam nos processos. Esta descrio pode ser feita utilizando-se uma notao grfica ou de forma textual >. 8. Itens produzidos no sistema (quais so os relatrios e consultas existentes ou solicitados pelos clientes) <Descrio de todos os documentos j existentes na empresa e informaes contidas nestes documentos (nome do documento, campos do documento, descrio dos campos). Verifique documentos que sero utilizados como entrada e sada de dados no

Engenharia de Software Unisul

19

sistema. Lembre-se de que cada informao deve ser claramente entendida nesta etapa evitando enganos futuros no desenvolvimento.> 9. Volume de informaes do sistema atual <Deve ser descrito o volume de informaes existente no sistema atual por exemplo nro. de clientes da carteira da empresa, nmero de faturas emitidas no ms, etc.> 10. Descrio de situaes consideradas crticas e atores envolvidos < Verifique se no sistema atual existe alguma situao que possa levar a problemas que possam danificar o bom funcionamento do mesmo ou mesmo interromper o andamento de um processo, como por exemplo em um sistema de matricula o ms de matricula leva a um acesso de mais de 6000 usurios em um dia, esta situao pode ser critica pela degradao da performance do sistema > 11. Restries do projeto So descritas restries que possam comprometer a especificao, como prazos, valores, compras ou no de software e equipamentos. <Neste item so descritos restries que comprometem ou que delimitam o projeto, um exemplo pode ser a exigncia do cliente de trabalhar sobre uma plataforma free>.

Especificao do Futuro Produto


12. Objetivo principal do produto a ser desenvolvido 13. Funcionalidades do Produto a ser desenvolvido 14. Requisitos No Funcionais do novo produto 15. Requisitos Normativos do novo produto

Você também pode gostar