CONTEXTUAL GOAL MODELS
Naara Soares Negre
AUTORES
Raian Ali
Lidera grupos de pesquisa em Engenharia de Sistemas
de Sotware na School of Design, Engineering and Computing
Bournemouth University, UK.
Possui Ph.D. em Engenharia de Software pela Universidade
de Trento, Itália
Fabiano Dalpiaz
Professor assistente no grupo de pesquisa Organization &
Information no Departamento de Informação e Ciências da
Computação na Utrecht University, Holanda.
Possui Ph.D. em Ciências da Computação pela Universidade
de Trento, Itália
AUTORES
Paolo Giorgini
Professor associado na Universidade de Trento.
Possui Ph.D. em Ciências da Computação pela
Universidade de Ancona, Itália
RESUMO
Contexto pode ser um fator principal para se
determinar o conjunto de requisitos aplicáveis ​a um
sistema, as alternativas que podem ser adotadas
para atender a esses requisitos, bem como a
qualidade de cada uma dessas alternativas
 Apesar disso, boa parte das pesquisas em ER
ignoram o contexto
 Há ainda a falta de um framework em ER voltado
para sistemas que refletem seu contexto
 É proposto o modelo de objetivos contextual

INTRODUÇÃO
Contexto tem uma grande influência no nível de
objetivos, decidindo quais os objetivos devem ser
atingidos e como alcançá-los
 Exemplo:

Em um instituto de cuidados da saúde de pessoas com
demência
 Existe o cuidador que possui o objetivo – G1 “deixar o
paciente mais envolvido na vida social”
 O objetivo G1 pode ser alcançado através de dois
subobjetivos:

G1.1 “Levar o paciente para uma viagem na cidade”
 G1.2 “Levar um parente ou um velho amigo do paciente para
visitá-lo”

INTRODUÇÃO
O objetivo G1 (o objetivo principal) é ativado pelo
contexto C1 “o paciente está se sentindo entediado
e tem sido há muito tempo desde a sua última
atividade social”
 O objetivo G1 pode ser alcançado através do
subobjetivo G1.1
 O subobjetivo G1.1 pode ser alcançado se o
contexto C1.1 “a cidade não está lotada for
verdadeiro”
 Isto porque pessoas com demência podem ficar
ansiosos em lugares lotados

INTRODUÇÃO

Para a construção de um sistema que suporte
estas alternativas devem ser representados
Objetivos: G1, G1.1 e G1.2
 Como alcançar o objetivo principal: (G1.1 v G1.2) -> G1
 Contexto: (C1 ^ C1.1) -> G1.1


Para tanto é proposto uma linguagem de
modelagem de requisitos contextuais
EXEMPLO DE EXECUÇÃO
É apresentado um exemplo de aplicação de
requisitos contextuais que será utilizado durante o
decorrer do trabalho
 Consiste em um sistema de divulgação de produtos
a clientes dentro de um shopping
 O sistema tem por principal objetivo divulgar um
produto a clientes através de várias alternativas de
execução
 A escolha da alternativa a ser adotada dependerá
do contexto, o que incluirá as características dos
clientes, produtos, equipe de vendas e outros
elementos no shopping

MODELO DE OBJETIVOS
Representa uma mudança de paradigma em
relação a análise de requisitos orientado a objetos
 Pois foca na análise dos requisitos iniciais onde
são analisados ​os objetivos organizacionais para
identificar e justificar os requisitos de software e
posicioná-los dentro do sistema organizacional
 Assim é possível identificar e justificar os requisitos
de software

CONTEXTO EM REQUISITOS
Contexto foi definido em várias disciplinas de
ciência da computação, especialmente em
inteligência artificial. Também em paradigmas
computacionais emergentes, tais como sistemas
ubíquos, adaptáveis ​e sistemas móveis
 Mas a definição específica de contexto depende
fortemente do domínio no qual ele está inserido

CONTEXTO EM REQUISITOS
Java
Histórico de Busca
CONTEXTO EM REQUISITOS
Os atores dentro de um modelo de objetivos
deverá ser o observador de um contexto
 Um ator pode ser definido como: uma entidade que
tem objetivos e pode decidir como alcançá-los
 Sendo a principal característica de um ator a
autonomia
 Por exemplo:

Uma equipe de vendas possui como objetivo transmitir
de forma adequada informações sobre os produtos aos
clientes
 A equipe tem total autonomia em decidir quando
alcançar esse objetivo e como

CONTEXTO EM REQUISITOS

A equipe de vendas pode alcançar seu objetivo:
Realizando contato com o cliente através de telefone
 Ou fornecer informações pessoalmente


A decisão de como alcançar o objetivo dependerá
do estado de uma parte do mundo que o ator está
inserido, contexto
CONTEXTO EM REQUISITOS

Por exemplo:
O cliente estar interessado em um produto é importante
para a equipe de vendas decidir se divulga ou não um
produto ao cliente
 Mas será irrelevante se a equipe de vendas decidir
divulgar os produtos através de um autofalante


Contexto é inerentemente parcial e de natureza
volátil
MODELO DE OBJETIVOS CONTEXTUAL
Abordagens atuais de modelagem de objetivos não
suportam a relação entre contexto e os objetivos
 Apesar de fornecer uma maneira de identificar
variantes para a satisfação dos objetivos, não há
uma forma explícita de relacionar a solução e o
contexto que irá ser aplicado
 Pois a especificação do contexto para cada
variante no modelo de objetivos trás alguns
desafios:

Pode haver um grande número de variantes e
especificar um contexto pra cada uma delas pode ser
demorado
 Pode haver variantes complexas o que dificulta definir o
contexto de cada uma delas

MODELO DE OBJETIVOS CONTEXTUAL
É proposto um modelo de objetivos contextual
onde pontos de variação são introduzidos para
relacionar contextos e as variantes do modelo de
objetivos
 É presentado parte do modelo de objetivos em
Tropos para a divulgação de produtos que possui
um conjunto de pontos de variação, que são
anotações de contexto

MODELO DE OBJETIVOS CONTEXTUAL
MODELO DE OBJETIVOS CONTEXTUAL

Definição dos pontos de variação no modelo de
objetivos contextuais

Or-decomposition: a adoção de cada subtarefa e/ou
subojetivo em uma decomposição OR pode exigir um
contexto específico.

Exemplo do modelo de objetivos contextual em Tropos:
 “Divulgar o produto por venda casada” só pode ser adotado
quando o produto pode ser utilizado com outro que o cliente já
tem (C2)
 “A divulgação por oferta de desconto” é adotado quando o
produto pode ser descontado e for de interesse do cliente (C3)
 “Promoção por amostra grátis” é adotado quando o produto é
amostra e é novo para o cliente (C4)
 “Pegar amostra grátis através de uma máquina” pode ser
adotado o cliente tem experiência com esse tipo de máquina e
não for perder muito tempo pra pegar o produto (C5)
MODELO DE OBJETIVOS CONTEXTUAL

Means-end: objetivos podem ser alcançados por meio
de tarefas. A adoção de cada tarefa pode exigir um
contexto específico

Exemplo do modelo de objetivos contextual em Tropos:
 “Obter a confirmação do cliente por reconhecimento de voz”
pode ser adotado quando o local que o cliente está não for
barulhento e o sistema deve ser treinado o suficiente para
reconhecer a voz do cliente (C7)
 “Obter a confirmação do ciente através de um clique” pode
ser adotado quando o cliente tem um bom nível de
conhecimento no que diz respeito ao uso de tecnologias e
um bom controle sobre seus dedos, e o dispositivo seja
touchscreen (C8)
MODELO DE OBJETIVOS CONTEXTUAL

Dependência: um determinado contexto pode ser
necessário para um ator atingir seu objetivo e/ou
executar um tarefa através de outro ator

Exemplo do modelo de objetivos contextual em Tropos:
 Para satisfazer o objetivo “Oferecer uma amostra do
produto para o cliente através da equipe de vendas” o
sistema irá delegá-lo a equipe de vendas, que tem a
capacidade e tempo para explicar suficientemente sobre o
produto ao cliente (C6)
MODELO DE OBJETIVOS CONTEXTUAL

Objetivo raiz: objetivos raiz só podem ser alcançados
em determinados contextos

Exemplo do modelo de objetivos contextual em Tropos:
 “Divulgar um produto ao cliente no shopping” para ser
alcançado o cliente tem que estar dentro do shopping e
aceitar participar da divulgação (C1)
MODELO DE OBJETIVOS CONTEXTUAL

And-decomposition: a satisfação e/ou execução de um
subobjetivo e/ou subtarefa podem ser necessários em
apenas alguns contextos, ou seja, alguns subobjetivos
ou subtarefas são necessariamente obrigatórios para
alcançar o objetivo ou tarefa principal

Exemplo do modelo de objetivos contextual em Tropos:
 “Apresentar o local atual do cliente a equipe de vendas”
não é necessário se o cliente está próximo e pode ser
localizado pela própria equipe de vendas (C12)
MODELO DE OBJETIVOS CONTEXTUAL

Contribuição: as contribuições para os softgoals podem
variar de um contexto para outro

Exemplo do modelo de objetivos contextual em Tropos:
 Uma tarefa como “Obter a confirmação de um cliente por
reconhecimento de voz” contribui negativamente para o
softgoal “menos perturbação” quando há outras pessoas ao
redor do cliente (C13)
ANÁLISE DE CONTEXTO
Como na análise de objetivos que verifica as
possíveis atividades a serem realizadas para se
alcançar um objetivo, na análise de contexto deve
se verificar com base em um conjunto de fatos se
um contexto se aplica
 O contexto é especificado como uma fórmula de
predicado de mundo (wp)

ANÁLISE DE CONTEXTO

O predicado de mundo é classificado de acordo
com a possível verificação através do ator, como
fato ou declaração
Fato (Fact): um predicado de mundo F é um fato para
um ator A se pode ser verificado por A
 Declaração (Statement): um predicado de mundo S é
uma declaração para um ator A, se S não pode ser
verificado por A

ANÁLISE DE CONTEXTO

Um fato não é um assunto de ponto de vista,
normalmente quando se verificado como
verdadeiro por um ator, também o é para outro
Por exemplo, um predicado de mundo “cliente comprou
recentemente um produto no shopping” é um fato
 Este fato pode ser verificado olhando o histórico de
compra do cliente

ANÁLISE DE CONTEXTO

Uma declaração é um predicado de mundo que não
pode ser verificado por um ator, por razões tais como:

Falta de informação: pode não ser possível obter
informações necessárias.


“Um cliente não sabe sobre um novo produto” é uma declaração,
pois a equipe de vendas não pode obter todas as informações
necessárias para obter esta informação. A equipe de vendas não
pode monitorar se um cliente tenha lido sobre o produto ou que
tenha conhecido o produto através de um amigo
Natureza abstrata: alguns predicados de mundo são por
natureza abstratos

“Um cliente está interessado em um produto” é um predicado de
mundo que um ator, como a equipe de vendas, não tem uma
forma precisa de verificar o interesse do cliente, pois é um
conceito que está relacionado ao humor do cliente
ANÁLISE DE CONTEXTO

Mesmo uma declaração não podendo ser
diretamente verificada, pode-se realizar a
verificação através de um refinamento de fatos e
outras declarações


Por exemplo para se verificar o wp – “Cliente está
interessado no produto” poderá se fazer um
refinamento considerando o comportamento do cliente
no shopping e seu histórico de compras
Este refinamento é chamado de Suporte, que é
definido como

Uma declaração S é suportada por uma fórmula de
predicado de mundo ɸ se ɸ prover apoio a S
ANÁLISE DE CONTEXTO
Portanto o modelo de objetivos contextual proposto
só permite apenas contextos que são especificados
por meio de fatos e/ou declarações que são
apoiados por fatos
 No modelo de objetivos contextuais as declarações
e contextos são do tipo monitoráveis

Declarações monitoráveis: uma declaração S é
monitorável se existe uma fórmula de fatos que suporta
S
 Contextos monitoráveis: um contexto C é monitorável
se C pode ser especificado por uma fórmula de fatos e
declarações monitoráveis

ANÁLISE DE CONTEXTO
A análise de contexto tem por objetivo definir se um
contexto é monitorável e encontrar a fórmula de
fatos que os especifica
 A análise de contexto começa com a especificação
de uma fórmula de predicado de mundo que
representa um contexto
 Com a análise de contexto podemos obter um
modelo de representação do contexto

ANÁLISE DE CONTEXTO
ANÁLISE DE CONTEXTO

Com a análise de contexto pode-se descobrir os
dados que um ator deve capturar para o contexto
ANÁLISE DE CONTEXTO
Enquanto a análise de objetivos fornece
construções para analisar hierarquicamente
objetivos e descobrir conjuntos alternativos de
tarefas utilizadas para alcançar os objetivos
 A análise de contexto fornece construções para
analisar hierarquicamente contextos e descobrir
conjuntos alternativos de fatos que o sistema tem
e verificar se dá suporte ao contexto

ANÁLISE DE CONTEXTO
CONCLUSÕES
O modelo de objetivos e seu monitoramento pela
análise de contexto e a associação entre pontos de
variação no modelo, permite uma contextualização
sistemática do sistema no nível de abstração dos
objetivos
 Essa contextualização pode ser realizada em dois
momentos



Durante o desenvolvimento do sistema
Durante a execução do sistema
CONCLUSÕES

A análise de contexto tem um potencial para
representar um contexto
Mais compreensível para os stakeholders
 Facilmente modificável
 Melhor reutilizável

Download

Contextual Goal Models