o uso do contexto social na elicitação de requisitos de software

38
O O Uso Uso do do Contexto Contexto Social Social na na Elicita Elicita ç ç ão ão de de Requisitos Requisitos de Software de Software Daniel Ferreira Daniel Ferreira Daniel Ferreira Daniel Ferreira [email protected]

Upload: daniel-ferreira

Post on 05-Jul-2015

324 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: O Uso do Contexto Social na Elicitação de Requisitos de Software

O O UsoUso do do ContextoContexto Social Social nanaElicitaElicitaççãoão de de RequisitosRequisitos de Softwarede Software

Daniel FerreiraDaniel FerreiraDaniel FerreiraDaniel Ferreira

[email protected]

Page 2: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

JJÁÁ ACONTECEU COM VOCÊ?ACONTECEU COM VOCÊ?

O sistema que queremos deve fazer isto, isto… e nessecaso também isto..

Sim, sim. Estamos anotando.

Conversei com os usuários e basicamente este é o sistema que teremos que desenvolver.

Sim chefe.

Ótimo. Começaremos a especificar os requisitosimediatamente.

Page 3: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

2 MESES DEPOIS2 MESES DEPOIS……

Pessoal, após o emprego das mais modernas técnicasde espeficação, com nossa melhor equipe, produzimos

este documento que descreve minuciosamente o sistema.

Ótimo! Bom. Hum… É um documento com 300 páginase todos esses gráficos, tabelas… Enfim, vamos analisá-lo

e voltamos a nos falar!

Page 4: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

7 MESES DEPOIS7 MESES DEPOIS……

Pessoal, o cliente não está satisfeito com o sistema poisdiz que está fazendo as coisas diferentes do que ele

pediu, e faltam algumas coisas…

Mas seguimos o documento que foi espeficado com exatamente o que eles queriam…

Sim, mas o cliente disse que não tinha dito exatamenteaquilo que estava no documento e que somente agora

sentiu falta de algumas coisas…

COMO NÃO?? ESSES CLIENTES COMO SEMPRE NÃO SABEM O QUEREM..

Page 5: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

EngenhariaEngenharia de de RequisitosRequisitos

Primeira etapa dentro de todo o processoda engenharia de software, a qual estudacomo coletarcoletarcoletarcoletar, entender, armazenar, verificar e gerenciar os requisitos

[THAYER, 97]

Page 6: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

EngenhariaEngenharia de de RequisitosRequisitos

coletarcoletarcoletarcoletar

[THAYER, 97]

É o processo através do qual clientese usuários são questionados por um desenvolvedor para falarem “o quê”o software deve fazer.

Page 7: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

ElicitaElicitaççãoão de de RequisitosRequisitos: : UmaUma ciênciaciência social?social?

Os problemas da elicitação de requisitos não podem ser resolvidos simplesmente com tecnologia, pois o contextocontextocontextocontexto socialsocialsocialsocial neste caso é mais crucial que etapas de programação, especificação ou modelagem.

[GOGUEN, 94]

Page 8: O Uso do Contexto Social na Elicitação de Requisitos de Software

DificuldadesDificuldades da da ElicitaElicitaççãoãode de RequisitosRequisitos

Page 9: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

usuusuááriosrios

nãonão sabemsabemcomocomo o o sistemasistema quequeprecisamprecisam devedeve serser

Page 10: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

usuusuááriosrios temtem

diferentesdiferentespontospontos de vista do de vista do

problemaproblema

Page 11: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

nemnem todostodos osos usuusuááriosrios

participamparticipamdo do processoprocesso de de

elicitaelicitaççãoão

Page 12: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

usuusuááriosrios temtem

dificuldadedificuldadeparapara descreverdescrever o o

domdomíínionio do do problemaproblema

Page 13: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

Page 14: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

Page 15: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

PrincipaisPrincipais TTéécnicascnicas

Tradicionais Colaborativas

CognitivasAbordagenscontextuais

Tradicionais Colaborativas

Cognitivas

Tradicionais Colaborativas

Abordagens

contextuaisCognitivas

Tradicionais Colaborativas

Page 16: O Uso do Contexto Social na Elicitação de Requisitos de Software

O O ContextoContexto SocialSocial

Page 17: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

seminseminááriorio

Page 18: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

FerramentasFerramentasCASECASE

PlanilhasPlanilhas

DiagramasDiagramas

ReuniõesReuniões

CiênciasCiênciasSociaisSociais??

Page 19: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

Resultado:Respostas rápidas, fluentes e diretas.

Resultado:Palavras soltas, sem segurança, com longas

pausas.

Page 20: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

ConclusãoCrianças negras tem problemas de

linguagem e precisam ser ensinadas

a falar.

Grau de confiabilidadedessa conclusão?

Page 21: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

Resultado:Linguagem extensa, fluente com uma

surpreendente complexidade e competência.

Page 22: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

Teste emambienteartificial

Teste emambientenaturalxx

Page 23: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

EtnometodologiaEtnometodologia

AnAnááliselise de de conversasconversas

AnAnááliselise de de tarefastarefas

TeoriaTeoria da da atividadeatividade

Page 24: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

TeoriaTeoria da da AtividadeAtividade

� Estrutura filosófica e interdisciplinarinterdisciplinarinterdisciplinarinterdisciplinar para estudardiferentes formas de práticas humanas de processosprocessosprocessosprocessos de desenvolvimento, tanto no nívelindividual como no nível socialsocialsocialsocial (Martins, 1999)

� Três vertentes:�Filosofia clássica Alemã dos séculos XVIII e XIX

�Escritos de Marx e Engels que elaboraram o conceito de atividade

�Psicologia Soviética, fundada por Vygostky, Leont'ev e Lúria

Page 25: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

Ferramenta

Sujeito Objeto

RESULTADORESULTADO

TeoriaTeoria da da AtividadeAtividade

Page 26: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

Editor de texto

Programador Algoritmo

PROGRAMAPROGRAMAFONTEFONTE

““CodificarCodificar um um programaprograma””

Page 27: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

AtividadesAtividades

Atividade

Ações

Operações

CondiçõesOperações

MetaAções

MotivoAtividade

Page 28: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

AtividadeAtividade ““FaturarFaturar vendavenda””

Imprimir duplicatas

Gerar datas de vencimento

Emitir duplicatas

Imprimir NF

Calcular impostos

Preencher campos da NF

Emitir nota fiscal

Faturar uma venda

OperaçõesAçõesAtividade

Page 29: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

ElicitandoElicitando RequisitosRequisitos UtilizandoUtilizandoa a TeoriaTeoria da da AtividadeAtividade

� Identificar procedimentos realizados no sistema que possam ser classificados como atividades

� Para cada atividade identificar: sujeito, ferramenta, objeto, comunidade, regras, divisão de trabalho e resultado (representação do modelo sistêmico da atividade).

� Decompor em ações e operações (a partir do modelo sistêmico)

Page 30: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

ExemploExemplo de de UsoUso

�Sistema de controlecontrolecontrolecontrole de de de de protocolosprotocolosprotocolosprotocolos de umasecretária de faculdade

�Atividades identificadas:�Criar protocolo

�Atualizar protocolo

�Consultar protocolo por data

Page 31: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

Caneta

SecretáriaQuadro de registro de

protocolo

Protocolorealizado

Regras para criação

de protocoloSecretárias

Divisão de

trabalho entre

as secretárias

Page 32: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

RegrasRegras parapara CriaCriaççãoão do do ProtocoloProtocolo

� O campo número do protocolo deve ser gerado seqüencialmente. O novo número gerado deve ser igual ao número do último protocolo mais um.

� O campo número do protocolo e nome devem ser destacados, utilizando-se cor vermelha para o preenchimento destes campos.

� Todos os campos do quadro de registro de protocolo devem ser preenchidos, com exceção do campo origem, que quando tem o mesmo conteúdo do campo assunto, pode ser omitido.

� Todos os documentos protocolados no livro do protocolo devem receber um carimbo constando a data em que o documento chegou na secretaria da faculdade e o número do protocolo gerado para esse documento

Page 33: O Uso do Contexto Social na Elicitação de Requisitos de Software

ConclusãoConclusão

Page 34: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

ConclusãoConclusão

� Elicitação de requisitos precisa ser mais centradano usuário e no contexto do ambiente em que o software deve ser usado

� Técnicas que usam alguma ciência social geralmente tem essa caracteristica

� A Teoria da Atividade se mostra fácil de implementar e os resultados são de boa visualização para vários públicos�Leva em consideração elementos importantes como

sujeito, ferramentas, objetos, regras, ambiente, etc.

� Alguns trabalhos na área também utilizam o conceito de Cenários.

Page 35: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

Page 36: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

ReferênciasReferências

[EASTERBROOK, 04] EASTERBROOK, Steve. Requirements ElicitationRequirements ElicitationRequirements ElicitationRequirements Elicitation. 2004. (Department of Computer Science) - University of Toronto. Toronto.

[GOGUEN, 94] GOGUEN, J.A.; LINDE, C. TechiquesTechiquesTechiquesTechiques for Requirements for Requirements for Requirements for Requirements ElicitationElicitationElicitationElicitation. In: Proceedings of the First IEEE International Symposium on Requirements Engineering, San Diego, Ca, IEEE Computer Society Press, p. 1-14, 1994.

[CLAUS, 71] Claus Moser and GrahamKalton. Survey Methods in Social Survey Methods in Social Survey Methods in Social Survey Methods in Social InvestigationInvestigationInvestigationInvestigation. Gower, 1971.

[PARASURAMAN, 91] PARASURAMAN, A. Marketing researchMarketing researchMarketing researchMarketing research. 2. ed., Addison Wesley Publishing Company, p. 21-60, 1991

[JUNIOR, 05] JUNIOR, Paulo Roberto de O. ElicitaElicitaElicitaElicitaççççãoãoãoão de de de de RequisitosRequisitosRequisitosRequisitos de de de de Software Software Software Software AtravAtravAtravAtravééééssss da da da da UtilizaUtilizaUtilizaUtilizaççççãoãoãoão de de de de QuestionQuestionQuestionQuestionááááriosriosriosrios. 2005. Pontifícia Universidade Católica do Rio de Janeiro.

[THAYER, 97] THAYER, R. H. e DORFMAN, M.; Introduction to Tutorial Introduction to Tutorial Introduction to Tutorial Introduction to Tutorial Software Requirements Software Requirements Software Requirements Software Requirements EnginneringEnginneringEnginneringEnginnering in Software Requirements Engineering, IEEE-CS Press, Second Edition, 1997, p.p. 1-2.

Page 37: O Uso do Contexto Social na Elicitação de Requisitos de Software

Dan

iel F

erre

ira

–Se

min

ário

apre

sen

tad

on

ad

isci

plin

ad

e G

estã

o, Q

ual

idad

ee

Pro

cess

os

–C

InU

FPE

–D

ezem

bro

/201

2

ReferênciasReferências

[PREECE, 02] Preece, Rogers and Sharp, Interaction Design, beyond Interaction Design, beyond Interaction Design, beyond Interaction Design, beyond Human Computer InteractionHuman Computer InteractionHuman Computer InteractionHuman Computer Interaction, Wiley, 2002, p. 249

[CASTRO, 98] CASTRO, Jaelson. ElicitaElicitaElicitaElicitaççççãoãoãoão e e e e AnAnAnAnááááliseliseliselise de de de de RequisitosRequisitosRequisitosRequisitos. Universidade Federal de Pernambuco. 1998. Disponível em<http://www.cin.ufpe.br/~if119/aulas/cap3.PDF>. Acessoem 25 set 2012.

[DAMIAN, 97] DAMIAN, Adrian, et al. Joint Application Development and Joint Application Development and Joint Application Development and Joint Application Development and Participatory DesignParticipatory DesignParticipatory DesignParticipatory Design. 1997. Disponível em<http://www.cpsc.ucalgary.ca/~pand/seng/613/report.html>. Acesso em 26 set 2012.

[CMMI, 12] CMMiCMMiCMMiCMMi –––– Requirements DevelopmentRequirements DevelopmentRequirements DevelopmentRequirements Development. Disponível em<http://www.software-quality-assurance.org/cmmi-requirements-development.html>. Acesso em 01 out 2012.

Page 38: O Uso do Contexto Social na Elicitação de Requisitos de Software

OBRIGADO!OBRIGADO!

Daniel Ferreira