98

GORE e as principais técnicas de especificação 2

Embed Size (px)

Citation preview

Page 1: GORE e as principais técnicas de especificação 2
Page 2: GORE e as principais técnicas de especificação 2

GOREe as principais técnicas de

especificação

2

Page 3: GORE e as principais técnicas de especificação 2

Agenda• Motivação Goal-Oriented Requirements

Engineering (GORE)

• GORE - Especificação de requisitos

– GBRAM

– GRL

– KAOS

3

Page 4: GORE e as principais técnicas de especificação 2

Motivação GORE

• Métodos tradicionais se preocupam apenas com o que deve ser feito.

• Métodos orientados a metas se preocupam com o “porquê” e “como”.

4

Page 5: GORE e as principais técnicas de especificação 2

Métodos GORE• Perguntam porque uma certa funcionalidade

é necessária e como ela pode ser implementada.

• Mantém a razão para a funcionalidade do sistema através do conhecimento do porquê.

• Rastreiam diferentes alternativas de implementação e o critério de seleção entre estas alternativas.

5

Page 6: GORE e as principais técnicas de especificação 2

GORE

• O que é uma meta?

– Existem várias definições na literatura.

– Para contextualizar:

• É um objetivo do sistema sob consideração que deve ser alcançado.

• Formulações de metas se referem a propriedades que pretende-se garantir.

6

Page 7: GORE e as principais técnicas de especificação 2

Métodos GORE

• Existem métodos GORE para atender as principais atividades da ER.

• A tabela presente em [Kavakli 2003] mostra as principais técnicas divididas por atividades da ER.

7

Page 8: GORE e as principais técnicas de especificação 2

Métodos GORE

8

Page 9: GORE e as principais técnicas de especificação 2

GBRAM

9

Page 10: GORE e as principais técnicas de especificação 2

GBRAM

• GBRAM é a sigla para Goal-Based Requirements Analysis Method.

• É utilizado para identificar, aprimorar, refinar e organizar metas para a especificação de requisitos.

10

Page 11: GORE e as principais técnicas de especificação 2

GBRAM

• O método é focado em duas perspectivas:

– Análise de Metas

– Evolução de Metas

11

Page 12: GORE e as principais técnicas de especificação 2

GBRAM

• Antes de conhecermos o método em si, vamos conhecer:

– Terminologia.

– Alguns conceitos chave.

12

Page 13: GORE e as principais técnicas de especificação 2

GBRAM - Conceitos

• Metas

– São objetivos de alto nível do negócio, organização ou sistema. Capturam as razões que justificam a necessidade do sistema.

• Requisitos

– Especificam como uma meta deve ser cumprida por um sistema proposto.

13

Page 14: GORE e as principais técnicas de especificação 2

GBRAM - Conceitos

• Operacionalização

– É o processo de definir uma meta suficientemente detalhada de forma que suas sub-metas tenham uma definição operacional.

• Metas de Realização

– São objetivos de alguma corporação ou sistema.

– Exemplo: Alistar estudantes nos cursos antes do início das aulas.

14

Page 15: GORE e as principais técnicas de especificação 2

GBRAM - Conceitos

• Metas de Manutenção

– São aquelas metas que são satisfeitas enquanto sua condição alvo permanecer verdadeira.

– Tendem a ser operacionalizadas como ações ou restrições que previnem certos estados de serem atingidos.

• Agentes

– São as entidades ou processos que realizam metas dentro de uma organização ou sistema.

15

Page 16: GORE e as principais técnicas de especificação 2

GBRAM - Conceitos

• Restrições

– São requisitos que devem ser conhecidos para a realização da meta.

– Uma restrição coloca uma condição para a realização da meta.

• Decomposição de Metas

– É o processo de subdivisão de um conjunto de metas em um subconjunto lógico.

– Facilita o entendimento, definição e especificação dos requisitos do sistema.

16

Page 17: GORE e as principais técnicas de especificação 2

GBRAM - Conceitos

• Cenários

– São descrições comportamentais de um sistema e seu ambiente em situações restritas.

– Exemplificam comportamentos permitindo que necessidades escondidas sejam descobertas.

– São úteis para avaliar alternativas de projeto e validar projetos.

• Obstáculos de Meta

– São comportamentos ou outras metas que bloqueiam a realização de uma determinada meta.

– Abstrair e identificar obstáculos de meta permite considerar os possíveis caminhos para metas falharem e antecipar casos de exceção.

17

Page 18: GORE e as principais técnicas de especificação 2

• Análise de Metas

– Exploração de documentação

– Organização das metas

– Classificação das metas.

• Evolução de Metas

– Avalia a maneira que as metas mudam em todo o ciclo de vida do método.

GBRAM - Conceitos

18

Page 19: GORE e as principais técnicas de especificação 2

GBRAM

• Agora vamos conhecer todas as atividades associadas a cada perspectiva.

• Conheceremos as atividades através de um estudo de caso.

19

Page 20: GORE e as principais técnicas de especificação 2

GBRAM – Estudo de Caso

• Informações– CTTS (Sistema de Gerenciamento de Curso

de Carreiras).

– Reengenharia de negócios para uma base de força aérea (AFB).

– Aproximadamente 155 funcionários da AFB são alistados no treinamento por ano.

20

Page 21: GORE e as principais técnicas de especificação 2

GBRAM – Análise de Metas

• Identificar metas

– Analisando as informações disponíveis foram encontradas 36 metas.

– Algumas destas metas são:

21

Page 22: GORE e as principais técnicas de especificação 2

GBRAM – Análise de Metas

• Classificar metas de realização e manutenção

– Existem várias perguntas que ajudam a classificar as metas. Por exemplo:

• “Esta meta denota um estado que foi alcançado ou um estado desejado?” (Realização)

• “A realização desta meta é requerida continuamente?” (Manutenção)

22

Page 23: GORE e as principais técnicas de especificação 2

GBRAM – Análise de Metas

• Classificar metas de realização e manutenção

– Exemplo: a meta “Dinheiro dos pagadores de taxas gasto eficientemente” deve ser executada de forma contínua.

– Esta meta caracteriza uma condição que deve ser mantida verdadeira.

23

Page 24: GORE e as principais técnicas de especificação 2

GBRAM – Análise de Metas

• Identificar agentes e stakeholders

– Agentes são identificados para determinar os responsáveis por realizar uma meta em um dado momento.

– Stakeholders são identificados para desenvolver um entendimento dos diferentes pontos de vista envolvidos no sistema para a resolução de conflitos.

24

Page 25: GORE e as principais técnicas de especificação 2

GBRAM – Análise de Metas

• Identificar agentes e stakeholders

– Uma meta pode ter um ou mais stakeholders associados.

– Exemplo: A meta “Conhecimentos profissionais melhorados” é de interesse do empregado e da AFB.

25

Page 26: GORE e as principais técnicas de especificação 2

GBRAM – Evolução de Metas

• Reduzir o tamanho do conjunto de metas e clareá-las.

– Existem três abordagens:

• Eliminar metas duplicadas• Refinar metas baseado nas entidades do sistema• Consolidar metas sinônimas

26

Page 27: GORE e as principais técnicas de especificação 2

GBRAM – Evolução de Metas

• Reduzir o tamanho do conjunto de metas e clareá-las.

– Refinar metas baseado nas entidades do sistema:

• Exemplo: a meta “Processo HRD concluído” deve ser refinada para entendermos tal processo.

• Especificamente neste caso esta meta se transformou em duas: “Vagas disponíveis no curso anunciadas” e “Pessoal qualificado identificado”.

27

Page 28: GORE e as principais técnicas de especificação 2

GBRAM – Evolução de Metas

• Reduzir o tamanho do conjunto de metas e clareá-las.

– Consolidar metas sinônimas:

• Exemplo de metas similares: “Conhecimentos melhorados” e “Qualificações melhoradas”.

• A meta “Conhecimentos melhorados” representa bem as duas metas.

28

Page 29: GORE e as principais técnicas de especificação 2

GBRAM – Evolução de Metas

• Reduzir o tamanho do conjunto de metas e clareá-las.

– As metas de realização do CTTS foram afetadas utilizando as técnicas de refinamento mostradas.

– O número de metas de realização diminuiu de 27 para 19.

29

Page 30: GORE e as principais técnicas de especificação 2

GBRAM – Evolução de Metas

• Usar restrições

– Exemplo: “O curso deve qualificar o empregado para avançar para outro nível”.

– Antes do empregado poder avançar seu nível de certificação ele deve participar de um curso que o qualifique para o avanço.

30

Page 31: GORE e as principais técnicas de especificação 2

GBRAM – Evolução de Metas

• Usar restrições

– Por causa da restrição, a meta “Cursos que o empregado se qualifica identificados” foi identificada.

31

Page 32: GORE e as principais técnicas de especificação 2

GBRAM – Evolução de Metas

• Aprimorar e refinar metas

– Relações de dependência

• Maneira de considerar outros possíveis aprimoramentos e refinamentos.

• São definidas através das perguntas:

– “Quais metas são pré-requisito para esta meta?”

– “Quais metas devem seguir esta meta?”.

32

Page 33: GORE e as principais técnicas de especificação 2

GBRAM – Evolução de Metas

• Identificar obstáculos de metas

– É útil considerar casos específicos que devem ser tratados devido a atividades que impedem a realização da meta.

– Exemplo: “De quais outras metas ou condições esta meta depende?”

33

Page 34: GORE e as principais técnicas de especificação 2

GBRAM – Evolução de Metas

• Identificar obstáculos de metas

– A realização da meta “Portfolio de carreira disponibilizado” depende da cooperação do surpevisor.

– Caso não exista tal cooperação surge um obstáculo.

34

Page 35: GORE e as principais técnicas de especificação 2

GBRAM – Evolução de Metas

• Identificar cenários

– A identificação de obstáculos inicia na identificação de caminhos nos quais as metas podem falhar.

– Cenários aprimoram esta informação.

– Cenários são instâncias dos obstáculos.

35

Page 36: GORE e as principais técnicas de especificação 2

GBRAM – Evolução de Metas

• Identificar cenários

– Exemplo: dado o obstáculo “Sem vagas disponíveis”.

– Através da pergunta “Quais são as circunstâncias sob as quais este obstáculo pode ocorrer?

• “Todos os cursos fechados (vagas preenchidas)”.

• “Curso cancelado”.

36

Page 37: GORE e as principais técnicas de especificação 2

GBRAM – Evolução de Metas

• Operacionalizar metas

– Informações das metas devem ser traduzidas para uma especificação de requisitos.

– Isto é feito através da consolidação das informações das metas em um conjunto de esquemas de metas.

37

Page 38: GORE e as principais técnicas de especificação 2

GBRAM – Evolução de Metas

• Operacionalizar metas

– Esquemas de metas especificam os relacionamentos entre metas e agentes em termos de eventos que causam a mudança de estado.

38

Page 39: GORE e as principais técnicas de especificação 2

GBRAM – Evolução de Metas

• Operacionalizar metas

39

Page 40: GORE e as principais técnicas de especificação 2

GRL

40

Page 41: GORE e as principais técnicas de especificação 2

GRL

• GRL é a sigla para Goal-oriented Requirement Language.

• Dá suporte à modelagem e a justificativa de requisitos orientados a metas.

– Própria para requisitos não-funcionais.

41

Page 42: GORE e as principais técnicas de especificação 2

GRL

• Fornece diversas construções para expressar vários tipos de conceitos que surgem durante o processo de requisitos.

• Existem três principais categorias destes conceitos.

– Elementos intencionais.

– Ligações.

– Atores.

42

Page 43: GORE e as principais técnicas de especificação 2

GRL

• Suporta avaliação sobre cenários.

– A modelagem de cenários é complementar à de metas.

• Ajuda na identificação de mais metas e cenários importantes.

• Contribui para a completude e precisão dos requisitos.

43

Page 44: GORE e as principais técnicas de especificação 2

GRL

• Elementos intencionais

– São chamados intencionais por causa da capacidade de responder questões:

• O porquê de comportamentos particulares.

• Aspectos informacionais e estruturais que foram escolhidos para serem incluídos nos requisitos do sistema

– Alternativas existentes.

– O porquê da escolha de uma alternativa em detrimento da outra.

44

Page 45: GORE e as principais técnicas de especificação 2

GRL

• Elementos intencionais

– Goal

– Task

– Resource

– Softgoal

– Belief

45

Page 46: GORE e as principais técnicas de especificação 2

GRL

• Elementos intencionais

– Definição de um elemento intencional:

46

Page 47: GORE e as principais técnicas de especificação 2

GRL – Elementos intencionais

• Meta (Goal)

– É uma condição que os stakeholders gostariam de alcançar.

– Não se especifica como alcançá-la.

• Permite que alternativas possam ser consideradas.

47

Page 48: GORE e as principais técnicas de especificação 2

GRL – Elementos intencionais

• Meta (Goal)

– Pode-se classificar uma meta como:

• Meta de negócio

– Expressa metas relativas ao negócio ou a algo que a organização quer alcançar.

• Meta de sistema

– Expressa metas que o sistema alvo deve alcançar (geralmente descrevem os requisitos funcionais).

48

Page 49: GORE e as principais técnicas de especificação 2

GRL – Elementos intencionais

• Meta (Goal)

– É representada graficamente por um retângulo arredondado

– Exemplo: VoiceConnectionBeSetup

• Meta básica para qualquer sistema de telecomunicação.

• Existem várias formas de configurar a conexão de voz.

49

Page 50: GORE e as principais técnicas de especificação 2

GRL – Elementos intencionais

• Tarefa (Task)

– Especifica uma forma particular de se fazer algo.

– Podem ser vistas como soluções em um sistema alvo.

50

Page 51: GORE e as principais técnicas de especificação 2

GRL – Elementos intencionais

• Tarefa (Task)

– É representada graficamente por um hexágono.

– Exemplo: MakeVoice-Over-LAN

• É uma forma particular de configurar uma conexão de voz.

51

Page 52: GORE e as principais técnicas de especificação 2

GRL – Elementos intencionais

• Recurso (Resource)

– É uma entidade física ou informacional.

– Disponibilidade é a principal preocupação.

52

Page 53: GORE e as principais técnicas de especificação 2

GRL – Elementos intencionais

• Recurso (Resource)

– É representado graficamente por um retângulo.

– Exemplo: LAN Bandwidth

• Largura de banda deve estar disponível na arquitetura voz sobre LAN.

53

Page 54: GORE e as principais técnicas de especificação 2

GRL – Elementos intencionais

• Meta Flexível (Softgoal)

– É uma condição que o ator gostaria de alcançar.

– Diferente da meta normal.

• Não há um critério bem definido para determinar se a condição foi alcançada.

54

Page 55: GORE e as principais técnicas de especificação 2

GRL – Elementos intencionais

• Meta Flexível (Softgoal)

– É representada graficamente por uma forma curvilínea irregular.

– Exemplo: Reliability of Router

• A confiança no roteador é uma softgoal que deve ser alcançada durante o projeto de um sistema de telecomunicação.

55

Page 56: GORE e as principais técnicas de especificação 2

GRL – Elementos intencionais

• Crença (Belief)

– São usadas para representar argumentos de projeto.

– Permitem que características do domínio sejam consideradas e corretamente refletidas dentro de um processo de tomada de decisão.

– Facilita uma posterior revisão, justificativa e mudança do sistema.

56

Page 57: GORE e as principais técnicas de especificação 2

GRL – Elementos intencionais

• Crença (Belief)

– É representada graficamente por uma elipse.

– Exemplo:

• Este argumento apóia a task VoiceLAN como um redutor de custos.

57

Page 58: GORE e as principais técnicas de especificação 2

GRL

• Relacionamentos intencionais

– Ligam os elementos intencionais.

• Existem cinco tipos:

– Decomposition

– Means-Ends

– Contribution

– Correlation

– Dependency

58

Page 59: GORE e as principais técnicas de especificação 2

GRL

• Relacionamentos intencionais

– A definição dos relacionamentos intencionais:

59

Page 60: GORE e as principais técnicas de especificação 2

GRL – Relacionamentos intencionais

• Means-Ends

– A sentença MEANS-END descreve como as metas são de fato alcançadas.

– Cada tarefa fornecida é um meio alternativo para alcançar a meta.

60

Page 61: GORE e as principais técnicas de especificação 2

GRL – Relacionamentos intencionais

• Means-Ends

– Exemplo gráfico:

61

Page 62: GORE e as principais técnicas de especificação 2

GRL – Relacionamentos intencionais

• Decomposition

– É a sentença que permite definir quais outros elementos precisam estar disponíveis para realizar uma tarefa.

• Estes elementos podem ser: tasks, goals, resources ou softgoals.

62

Page 63: GORE e as principais técnicas de especificação 2

GRL – Relacionamentos intencionais

• Decomposition

– Exemplo gráfico:

63

Page 64: GORE e as principais técnicas de especificação 2

GRL – Relacionamentos intencionais

• Contribution

– É a sentença que descreve como elementos intencionais contribuem entre si.

– Existem vários tipos: AND, OR, MAKE, BREAK, HELP, HURT, SOME-, SOME+, EQUAL, UNKNOWN.

64

Page 65: GORE e as principais técnicas de especificação 2

GRL – Relacionamentos intencionais

• Contribution

– Exemplo gráfico:

65

Page 66: GORE e as principais técnicas de especificação 2

GRL – Atores

• É uma entidade ativa que realiza ações para alcançar metas.

• É representado graficamente por um círculo.

• Exemplo:

66

Page 67: GORE e as principais técnicas de especificação 2

GRL – Atores

• Opcionalmente pode haver uma fronteira que define o escopo de atuação do ator.

• É representada por um círculo tracejado cinza.

• Exemplo:

67

Page 68: GORE e as principais técnicas de especificação 2

GRL – Relacionamentos intencionais

• Dependency

– É a sentença que descreve um relacionamento intencional entre dois atores.

68

Page 69: GORE e as principais técnicas de especificação 2

GRL – Relacionamentos intencionais

• Dependency

– Exemplo gráfico:

• Vários atores e

dependências

69

Page 70: GORE e as principais técnicas de especificação 2

GRL – Relacionamentos intencionais

• Correlations

– Funciona da mesma forma que Contributions.

– A diferença é que a correlação é um desejo explícito e a contribuição é um efeito colateral.

70

Page 71: GORE e as principais técnicas de especificação 2

KAOS

71

Page 72: GORE e as principais técnicas de especificação 2

KAOS

• É uma metodologia.

• Tem o propósito de suportar todo o processo de elaboração de requisitos, a partir das metas de alto nível a serem alcançadas.

• Fornece:

– Linguagem de especificação.

– Método de elaboração.

72

Page 73: GORE e as principais técnicas de especificação 2

KAOS

• Antes de conhecermos a linguagem e método vamos conhecer:

– Terminologia

– Alguns conceitos

73

Page 74: GORE e as principais técnicas de especificação 2

KAOS

• Objeto

– É algo de interesse no sistema cujas instâncias podem evoluir de estado.

– São caracterizados por declarações de atributos e constantes.

– Podem ser organizados em hierarquia de herança.

74

Page 75: GORE e as principais técnicas de especificação 2

KAOS

• Objeto

– Entidade: é um objeto independente.

– Relacionamento: é um objeto dependente de objetos que os ligam.

– Evento: é um objeto instantâneo.

75

Page 76: GORE e as principais técnicas de especificação 2

KAOS

• Operação

– É uma relação de entrada e saída sobre os objetos.

– Operações quando aplicadas definem transições de estado.

– São caracterizadas por pré-condições, pós-condições e condições de gatilho.

76

Page 77: GORE e as principais técnicas de especificação 2

KAOS

• Agente

– É um objeto ativo que age como processador para algumas operações.

– Realiza uma operação, quando alocada a ele.

– Monitora e controla um objeto se os estados do objeto são observáveis e controláveis por ele.

– Podem ser humanos, dispositivos, programas, entre outros.

77

Page 78: GORE e as principais técnicas de especificação 2

KAOS

• Meta

– É um objetivo que o sistema deve satisfazer.

– Captura um conjunto de comportamentos desejados.

78

Page 79: GORE e as principais técnicas de especificação 2

KAOS

• Meta

– Existem dois tipos de refinamento que relacionam as metas com as sub-metas:

• AND-refinement

– A única condição suficiente para satisfazer a meta é satisfazer todas as sub-metas.

• OR-refinement

– Satisfazer uma das sub-metas é condição suficiente para satisfazer a meta.

79

Page 80: GORE e as principais técnicas de especificação 2

KAOS

• Meta

– Pode (opcionalmente) ser caracterizada por um atributo de prioridade:

• Especifica se a meta é obrigatória ou opcional.

– São classificadas de acordo com a categoria dos requisitos que irão lidar.

80

Page 81: GORE e as principais técnicas de especificação 2

KAOS

• Meta

– Metas funcionais resultam em requisitos funcionais.

– Por exemplo: SatisfactionGoals

• São relacionadas com a satisfação das requisições dos agentes.

81

Page 82: GORE e as principais técnicas de especificação 2

KAOS

• Meta

– Metas não-funcionais resultam em requisitos não-funcionais.

– Por exemplo: AccuracyGoals

• São relacionadas com a manutenção da consistência entre o estado dos objetos no ambiente e o estado de suas representações no software.

82

Page 83: GORE e as principais técnicas de especificação 2

KAOS

• Meta

– O refinamento da meta termina quando as metas terminais são atingidas.

– Uma meta terminal pode ser formulada em termos de estados controláveis por algum agente individual.

– Um requisito é uma meta terminal designada a um agente no ambiente.

– As metas terminais são operacionalizadas por operações e objetos.

83

Page 84: GORE e as principais técnicas de especificação 2

KAOS

• Propriedade de domínio

– É uma propriedade sobre os objetos ou operações no ambiente que existe independentemente do sistema a ser construído.

– Incluem leis da física, regulamentos, restrições impostas por agentes ambientais, entre outros.

84

Page 85: GORE e as principais técnicas de especificação 2

KAOS

• Cenário

– É uma seqüência consistente de domínio das transições de estado controladas por instâncias dos agentes correspondentes.

– Consistência de domínio significa que a operação é aplicada em um estado que satisfaz sua pré-condição de domínio, resultando em um estado que satisfaz sua pós-condição de domínio.

85

Page 86: GORE e as principais técnicas de especificação 2

KAOS

• Cada construção na linguagem tem uma estrutura genérica de dois níveis:

– Uma camada de rede semântica exterior.

• Declara um conceito, seus atributos e suas várias ligações a outros conceitos.

– Uma camada de declaração interna para definir formalmente o conceito.

86

Page 87: GORE e as principais técnicas de especificação 2

KAOS

• Exemplo de especificação para um sistema de despacho de ambulância:

87

Page 88: GORE e as principais técnicas de especificação 2

KAOS

• A primeira parte da declaração:

– Introduz um conceito do tipo Goal: AmbulanceMobilization.

• Declara uma propriedade alvo que deve eventualmente manter, referindo-se a objetos, tais como, Call ou Ambulance.

– Refina a meta de origem AmbulanceIntervention.

• Refinado em sub-metas IncidentFiled, AmbulanceAllocated e AllocatedAmbulanceMobilized.

– E uma definição informal.

88

Page 89: GORE e as principais técnicas de especificação 2

KAOS

• A segunda parte da declaração (opcional):

– Define a meta em termos formais usando uma lógica temporal de tempo real.

– Os operadores de lógica temporal utilizados são:

89

Page 90: GORE e as principais técnicas de especificação 2

KAOS – Método de elaboração

90

Page 91: GORE e as principais técnicas de especificação 2

KAOS – Método de elaboração

• Elaboração de meta

– Elabora a estrutura AND/OR da meta.

• Define metas e suas ligações de refinamento até alcançar as metas designáveis.

• A identificação de metas é realizada geralmente através de uma combinação de processos top-down e bottom-up.

– Metas descendentes são identificadas através de questões “Como?”

– Metas de origem são identificadas através de questões “Porque?”

91

Page 92: GORE e as principais técnicas de especificação 2

KAOS – Método de elaboração

• Captura dos objetos

– Identifica os objetos envolvidos nas formulações das metas.

• Define suas ligações conceituais.

• Descreve suas propriedades de domínio por constantes.

92

Page 93: GORE e as principais técnicas de especificação 2

KAOS – Método de elaboração

• Captura das operações

– Identifica transições do estado do objeto que são significantes para as metas.

– As formulações de metas referem aos estados desejados ou proibidos.

• São alcançáveis apenas através de transições de estado.

93

Page 94: GORE e as principais técnicas de especificação 2

KAOS – Método de elaboração

• Operacionalização

– Deriva:

• As (pré-, pós- e gatilho) condições em operações.

• Constantes em objetos.

94

Page 95: GORE e as principais técnicas de especificação 2

KAOS – Método de elaboração

• Designação de responsabilidade

– Identificar responsabilidades alternativas para metas terminais.

– Designar as operações para os agentes que podem realizá-las.

– As várias metas terminais se tornam requisitos.

95

Page 96: GORE e as principais técnicas de especificação 2

Conclusões

• Avanço a engenharia de requisitos orientada a metas.

• Supõe-se que esta abordagem é bastante proveitosa.

• Captura dos requisitos de forma mais eficaz.

• Evita que alguns projetos fracassem.

96

Page 97: GORE e as principais técnicas de especificação 2

Referências

• [Kavakli 2003] Kavakli, E. and P. Loucopoulos (2003). Goal driven requirements engineering: Evaluation of current methods. 8th CAiSE/IFIP8.1 International Workshop on Evaluation of Modeling Methods in Systems Analysis and Design (EMMSAD'03), Velden, Austria.

• [Annie 1996] Annie, I. A. (1996). Goal-Based Requirements Analysis. Proceedings of the 2nd International Conference on Requirements Engineering (ICRE '96), IEEE Computer Society.

• [Annie 1997] Annie, I. A. (1997). Goal identification and refinement in the specification of software-based information systems, Georgia Institute of Technology.

• [Annie 1998] Annie, I. A. and P. Colin (1998). The use of goals to surface requirements for evolving systems. Proceedings of the 20th international conference on Software engineering. Kyoto, Japan, IEEE Computer Society.

97

Page 98: GORE e as principais técnicas de especificação 2

Referências

• [GRL 2008] GRL – Goal-Oriented Requirement Language Disponível em: http://www.cs.toronto.edu/km/GRL/.

• [Anne 1993] D. Anne, L. Axel van, and F. Stephen, Goal-directed requirements acquisition. Sci. Comput. Program. 20 (1993) 3-50.

98