990 likes | 1.18k Views
GORE e as principais técnicas de especificação. Agenda. Motivação Goal-Oriented Requirements Engineering (GORE) GORE - Especificação de requisitos GBRAM GRL KAOS. Motivação GORE. Métodos tradicionais se preocupam apenas com o que deve ser feito.
E N D
Agenda • Motivação Goal-OrientedRequirementsEngineering (GORE) • GORE - Especificação de requisitos • GBRAM • GRL • KAOS
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”.
Métodos GORE • Perguntamporqueumacertafuncionalidade é necessária e comoelapode ser implementada. • Mantém a razãopara a funcionalidade do sistemaatravés do conhecimento do porquê. • Rastreiamdiferentesalternativas de implementação e o critério de seleção entre estasalternativas.
GORE • O que é uma meta? • Existemváriasdefiniçõesnaliteratura. • Para contextualizar: • É um objetivodo sistema sob consideração que deve ser alcançado. • Formulações de metas se referem a propriedades que pretende-se garantir.
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.
GBRAM • GBRAM é a sigla para Goal-Based Requirements Analysis Method. • É utilizado para identificar, aprimorar, refinar e organizar metas para a especificação de requisitos.
GBRAM • O método é focado em duas perspectivas: • Análise de Metas • Evolução de Metas
GBRAM • Antes de conhecermos o método em si, vamos conhecer: • Terminologia. • Alguns conceitos chave.
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.
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.
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.
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.
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.
GBRAM - Conceitos • Análise de Metas • Exploração de documentação • Organização das metas • Classificação das metas. • Evolução de Metas • Avalia a maneiraque as metasmudamemtodo o ciclo de vida do método.
GBRAM • Agora vamos conhecer todas as atividades associadas a cada perspectiva. • Conheceremos as atividades através de um estudo de caso.
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.
GBRAM – Análise de Metas • Identificar metas • Analisando as informações disponíveis foram encontradas 36 metas. • Algumas destas metas são:
GBRAM – Análise de Metas • Classificarmetas de realização e manutenção • Existemváriasperguntasqueajudam a classificar as metas. Porexemplo: • “Esta meta denota um estadoquefoialcançadoou um estadodesejado?” (Realização) • “A realizaçãodesta meta é requeridacontinuamente?” (Manutenção)
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.
GBRAM – Análise de Metas • Identificaragentes e stakeholders • Agentessãoidentificadosparadeterminarosresponsáveisporrealizaruma meta em um dado momento. • Stakeholders sãoidentificadosparadesenvolver um entendimento dos diferentespontos de vista envolvidos no sistemapara a resolução de conflitos.
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.
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
GBRAM – Evolução de Metas • Reduzir o tamanho do conjunto de metas e clareá-las. • Refinarmetasbaseadonasentidades do sistema: • Exemplo: a meta “Processo HRD concluído” deve ser refinadaparaentendermostalprocesso. • Especificamentenestecasoesta meta se transformouemduas: “Vagasdisponíveis no cursoanunciadas” e “Pessoalqualificadoidentificado”.
GBRAM – Evolução de Metas • Reduzir o tamanho do conjunto de metas e clareá-las. • Consolidarmetassinônimas: • Exemplo de metassimilares: “Conhecimentosmelhorados” e “Qualificaçõesmelhoradas”. • A meta “Conhecimentosmelhorados” representabem as duasmetas.
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.
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.
GBRAM – Evolução de Metas • Usar restrições • Por causa da restrição, a meta “Cursos que o empregado se qualifica identificados” foi identificada.
GBRAM – Evolução de Metas • Aprimorar e refinarmetas • Relações de dependência • Maneira de consideraroutrospossíveisaprimoramentos e refinamentos. • São definidasatravés das perguntas: • “Quaismetassãopré-requisitoparaesta meta?” • “Quaismetasdevemseguiresta meta?”.
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?”
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.
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.
GBRAM – Evolução de Metas • Identificarcenários • Exemplo: dado o obstáculo “Semvagasdisponíveis”. • Atravésdapergunta “Quaissão as circunstâncias sob as quaisesteobstáculopodeocorrer? • “Todososcursosfechados (vagaspreenchidas)”. • “Cursocancelado”.
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.
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.
GBRAM – Evolução de Metas • Operacionalizar metas
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.
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.
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.
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.
GRL • Elementos intencionais • Goal • Task • Resource • Softgoal • Belief
GRL • Elementos intencionais • Definição de um elemento intencional:
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.
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).
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.
GRL – Elementos intencionais • Tarefa (Task) • Especifica uma forma particular de se fazer algo. • Podem ser vistas como soluções em um sistema alvo.