aula 3 - levantamento e anÁlise de requisitos

Upload: varelapr

Post on 10-Jul-2015

59 views

Category:

Documents


1 download

TRANSCRIPT

LEVANTAMENTO E ANLISE DE REQUISITOSENGENHARIA DE SOFTWARE I

LEVANTAMENTO E ANLISE DE REQUISITOS Umas das primeiras fases de um processo de desenvolvimento de software consiste no levantamento de requisitos;

LEVANTAMENTO E ANLISE DE REQUISITOS A etapa de levantamento de requisitos trabalha com o domnio do problema e tentase determinar o que o software deve fazer e se realmente possvel desenvolver o software solicitado; Nesta etapa o engenheiro de software busca compreender as necessidades do usurio e o que ele deseja que o sistema a ser desenvolvido realize;

LEVANTAMENTO E ANLISE DE REQUISITOS Todo o processo de levantamento de requisitos feito por meio de entrevistas, nas quais o engenheiro tenta compreender como funciona atualmente o processo a ser informatizado e quais servios o cliente precisa que o software fornea;

LEVANTAMENTO E ANLISE DE REQUISITOS Devem ser realizadas tantas entrevistas quantas forem necessrias para que as necessidades do usurio sejam bem compreendidas; Durante as entrevistas, o engenheiro deve auxiliar o cliente a (i) definir quais informaes devero ser produzidas, (ii) quais devero ser fornecidas e (iii) qual o nvel de desempenho exigido do software.

RESUMINDO O CONCEITO o processo de transformao das ideias que esto na mente dos usurios (entradas) em um documento formal (sada);

PROCESSO DE EXTRAO DE REQUISITOSEntendimento do Domnio

Extrao e Anlise dos Requisitos

Especificao

Validao

PROCESSO DE EXTRAO DE REQUISITOS ENTENDIMENTO DO DOMNIO: Nessa fase, os desenvolvedores devem entender o domnio da aplicao o mais completamente possvel; EXTRAO E ANLISE DOS REQUISITOS: Acontece a descoberta, revelao e entendimento dos requisitos, atravs de interaes com os usurios. So feitas as classificaes e a organizao dos requisitos, assim como a determinao de suas prioridades, resoluo de inconsistncias e conflitos e a descoberta de omisses;

PROCESSO DE EXTRAO DE REQUISITOS ESPECIFICAO DOS REQUISITOS: Ocorre o armazenamento dos requisitos em uma ou mais formas (linguagem natural, informal, formal, representaes simblicas e grficas) VALIDAO DOS REQUISITOS: feita a verificao dos requisitos, visando determinar se esto completos e condizentes com as necessidades e desejos do usurio.

PRINCIPAIS DIFICULDADES Falta de Conhecimento do usurio das suas reais necessidades e do que o produto de software pode lhe oferecer; Falta de conhecimento do desenvolvedor do domnio do problema; Domnio do processo de extrao de requisitos pelos desenvolvedores de software;

PRINCIPAIS DIFICULDADES Comunicao inadequada entre desenvolvedores e usurios; Dificuldade do usurio em tomar decises; Problemas de comportamento; Questes tcnicas;

LEVANTAMENTO E ANLISE DE REQUISITOS Um dos principais problemas enfrentados na fase de levantamento de requisitos o de comunicao. A comunicao constitui-se um dos maiores desafios da engenharia de software;

PARTICIPANTES DA EXTRAO DE REQUISITOS

O ENGENHEIRO DE REQUISITOS responsvel pela produo dos requisitos e lidera o processo; OS USURIOS POTENCIAIS; OUTROS DESENVOLVEDORES; PESSOAL DE APOIO;PARA SER BEM-SUSCEDIDA A EXTRAO REQUISITOS DEVE ENVOLVER VRIAS PESSOAS. DE

TCNICAS DE EXTRAO E ANLISE DE REQUISITOS

Devem sempre fornecer informaes completas e consistentes; As maiores fontes de informao so as pessoas e os documentos relacionados; Precisam ser organizadas; O desenvolvedor deve ser capaz de escolher um conjunto de tcnicas que se adaptem ao produto a ser desenvolvido.

TCNICAS DE EXTRAO E ANLISE DE REQUISITOS

PROCEDIMENTOS GENRICOS, que fazem parte de qualquer processo de extrao de requisitos:

Perguntar Identificar a pessoa apropriada, como o usurio do produto de software, e perguntar quais so os requisitos

Observar e Inferir Consiste em observar o comportamento dos usurios de um produto existente (manual ou automtico) e ento inferir suas necessidades a partir de seu comportamento.

Discutir e Formular Discutir com os usurios as suas necessidades e, juntamente com eles, formular um entendimento comum dos requisitos.

Negociar a partir de um conjunto padro Comear com um conjunto padro de requisitos ou caractersticas, negociar com os usurios quais dessas caractersticas sero includas, excludas ou modificadas.

Estudar e Identificar os Problemas Investigar os problemas para identificar os requisitos que podem melhorar o produto. Por exemplo, se o produto for muito lento, ele pode necessitar de um sistema de monitoramento complexo para identificar quais os requisitos que alterariam o sistema; Para um produto com milhes de usurios, uma pesquisa estatstica atravs de questionrios pode ser necessria para identificar problemas significativos.

Supor Quando no existe acesso ao usurio, ou para a criao de um produto inexistente, preciso usar a intuio para identificar caractersticas ou funes que o usurio possa desejar.

LEVANTAMENTO E ANLISE DE REQUISITOS A fase de levantamento de requisitos deve identificar dois tipos de requisitos: Funcionais: correspondem ao que o cliente quer que o sistema realize, ou seja, as funcionalidades do software; No-Funcionais: correspondem as restries, condies, consistncias, validaes que devem ser levadas a efeito sobre os requisitos funcionais;

LEVANTAMENTO E ANLISE DE REQUISITOS Podem existir diversos tipos de requisitos nofuncionais, como de usabilidade, desempenho, confiabilidade, segurana ou interface. Alguns requisitos no-funcionais identificam regras de negcio, ou seja, as polticas, as normas e condies estabelecidas pela empresa que devem ser seguidas na execuo de uma funcionalidade;

LEVANTAMENTO E ANLISE DE REQUISITOS

LEVANTAMENTO E ANLISE DE REQUISITOS

LEVANTAMENTO E ANLISE DE REQUISITOS Logo aps o levantamento de requisitos, passa-se a fase em que as necessidades apresentadas pelo cliente so analisadas Anlise de requisitos; Nesta fase o engenheiro examina os requisitos enunciados pelos usurios, verificando se estes foram especificados corretamente e se foram realmente bem compreendidos. A partir da etapa de anlise de requisitos so determinadas as reais necessidades do sistema de informao;

LEVANTAMENTO E ANLISE DE REQUISITOS A grande questo :

Como saber se as necessidades dos usurios foram realmente bem compreendidas?

LEVANTAMENTO E ANLISE DE REQUISITOS Um dos objetivos da anlise de requisitos consiste em determinar se as necessidades dos usurios foram entendidas de maneira correta, verificando se alguma questo deixou de ser abordada, determinando se algum requisito foi especificado incorretamente ou se algum conceito precisa ser melhor explicado;

LEVANTAMENTO E ANLISE DE REQUISITOS Durante a anlise de requisitos uma linguagem de modelagem auxilia a levantar questes que no foram concebidas durante as entrevistas iniciais. Tais questes devem ser sanadas o quanto antes, para que o projeto do software no tenha que sofrer modificaes quando seu desenvolvimento j estiver em andamento, o que pode causar significativos atrasos no desenvolvimento do software, sendo por vezes necessrio remodelar por completo o projeto.

LEVANTAMENTO E ANLISE DE REQUISITOS Outro problema, que na maioria das vezes, os usurios no tem realmente certeza do que querem e no conseguem enxergar as reais potencialidades de um sistema; Os engenheiros de software precisam sugerir inmeras caractersticas e funes do sistema que o cliente no sabia como formular ou sequer havia imaginado.

LEVANTAMENTO E ANLISE DE REQUISITOS Em muitos casos esperam tudo do engenheiro de software, j em outros podem encontrar fortes resistncias a qualquer mudana na forma como a empresa manipula suas informaes, fazendo-se necessrio um significativo esforo para provar ao cliente que as modificaes sugeridas permitiro um melhor desempenho do software, alm de ser til para a prpria empresa.

TRABALHO5 grupos de 5 componentes, descrever e apresentar na prxima aula em forma de dinmica-seminrio. ENTREVISTA BRAINSTORMING PIECES JAD (Joint Application Design) PROTOTIPAGEM