• Nenhum resultado encontrado

Capítulo 4 UbiCheck: Uma Abordagem para Apoiar a Definição de Requisitos de

4.3. Atividades de UbiCheck

4.3.2. Configurar Guia para Definição de Requisitos de Ubiqüidade

O Guia para Definição de Requisitos de Ubiqüidade elaborado até agora considera as informações de todos os fatores de ubiqüidade. Entretanto, não considera se todos esses fatores são importantes para o projeto em que ele será aplicado.

Como no capítulo 2 foi discutido que projetos de software ubíquo podem contemplar uma pequena parcela dos fatores, seria interessante aproveitar essa situação para configurar o Guia para Definição de Requisitos de Ubiqüidade. Nesse sentido, poderiam ser consideradas apenas as perguntas que tivessem relação com os fatores considerados relevantes para o projeto, o que poderia trazer os seguintes benefícios:

Foco no que é importante: o desenvolvedor não perderia tempo respondendo perguntas que não dizem respeito ao seu projeto, o que poderia reduzir a quantidade de informações estranhas capturadas nos requisitos.

56

Redução do tamanho do guia: ele conteria menos perguntas, portanto, exigiria menos esforço para ser aplicado em um projeto.

Sendo assim, foi preparada uma estratégia para especializar o Guia para Definição de Requisitos de Ubiqüidade. Conforme ilustra a figura 19, o primeiro passo é Identificar as Necessidades do Projeto, que consiste na seleção dos fatores de ubiqüidade relevantes.

Conforme visto no final da seção anterior, UbiCheck oferece apoio parcial para a seleção dos fatores: é fornecida uma lista de fatores e o desenvolvedor utilizar sua própria experiência e intuição para selecionar aqueles que são relevantes para o projeto.

Uma vez selecionados os fatores, o próximo passo é Especializar o Guia para Definição de Requisitos de Ubiqüidade, o que é feito selecionando apenas as perguntas que possuem relação com esses fatores, ou seja, aquelas em que foram originadas por pelo menos um fator considerado relevante para o projeto.

A tabela 7 mostra um trecho do Guia para Definição de Requisitos de Ubiqüidade da característica Sensibilidade ao Contexto, o qual será utilizado para exemplificar essa atividade.

Tabela 7: Trecho do Guia para Definição de Requisitos de Ubiqüidade da característica Sensibilidade ao Contexto

Fatores Pergunta

SC05,SC10,SC12,SC13,

SC14,SC17, SC22 e SC23 1. Quais as informações de Contexto relevantes para o sistema?

SC05 2. Quais informações de contexto são do tipo informação do sistema?

SC17 3. Como categorizar informações de contexto?

SC10,SC14 e SC17 4. Como a fonte de dados influencia na categorização das informações

de contexto?

Figura 19: Passos da atividade Configurar Guia para Definição de Requisitos de Ubiqüidade Identificar Necessidades do Projeto Especializar o Guia de Definição de Requisitos de Ubiqüidade

57 Fatores Pergunta

SC12 e SC13 5. Como a utilidade da informação de contexto é considerada?

SC23 6. Como personalizar informações de contextos?

SC22 e SC23 7. Como a preferência do usuário influencia na personalização de

informações de contexto?

SC14 8. Quais os usuários relevantes para o sistema?

SC22 e SC23 9. Como a preferência do usuário é considerada?

SC10,SC14 e SC17 10. Quais fontes de dados são relevantes para o sistema?

SC09 e SC10 11. Quais fontes de dados são do tipo sensor?

A partir dela, as perguntas foram agrupadas de acordo com os fatores que as originaram, conforme mostram as listagens a seguir:

SC05

1. Quais as informações de Contexto relevantes para o sistema? 2. Quais informações de contexto são do tipo informação do sistema?

SC09

11. Quais fontes de dados são do tipo sensor?

SC10

1. Quais as informações de Contexto relevantes para o sistema?

4. Como a fonte de dados influencia na categorização das informações de contexto? 10. Quais fontes de dados são relevantes para o sistema?

11. Quais fontes de dados são do tipo sensor?

SC12

1. Quais as informações de Contexto relevantes para o sistema? 5. Como a utilidade da informação de contexto é considerada?

SC13

1. Quais as informações de Contexto relevantes para o sistema? 5. Como a utilidade da informação de contexto é considerada?

SC14

1. Quais as informações de Contexto relevantes para o sistema?

4. Como a fonte de dados influencia na categorização das informações de contexto? 8. Quais os usuários relevantes para o sistema?

10. Quais fontes de dados são relevantes para o sistema?

SC17

1. Quais as informações de Contexto relevantes para o sistema? 3. Como categorizar informações de contexto?

4. Como a fonte de dados influencia na categorização das informações de contexto? 10. Quais fontes de dados são relevantes para o sistema?

58

SC22

1. Quais as informações de Contexto relevantes para o sistema?

7. Como a preferência do usuário influencia na personalização de informações de contexto? 9. Como a preferência do usuário é considerada?

SC23

1. Quais as informações de Contexto relevantes para o sistema? 6. Como personalizar informações de contextos?

7. Como a preferência do usuário influencia na personalização de informações de contexto? 9. Como a preferência do usuário é considerada?

Continuando o exemplo, para configurar o Guia para Definição de Requisitos de Ubiqüidade basta realizar a união das perguntas associadas a cada fator relevante para o projeto.

Supondo que seja interessante para o projeto definir requisitos associados apenas aos fatores SC12, SC13 e SC23, o guia configurado teria todas as perguntas associadas a esses fatores. Como o fator SC12 tem as perguntas 1 e 5 associadas; o fator SC13 também tem as mesmas perguntas (1 e 5) e o fator SC23 tem as perguntas 1, 6, 7 e 9. O guia configurado para esses três fatores seria o conjunto de perguntas 1, 5, 6, 7 e 9, conforme listado a seguir:

SC12, SC13 e SC23

1. Quais as informações de Contexto relevantes para o sistema? 5. Como a utilidade da informação de contexto é considerada? 6. Como personalizar informações de contextos?

7. Como a preferência do usuário influencia na personalização de informações de contexto? 9. Como a preferência do usuário é considerada?

Caso o fator SC05 também fosse interessante para o projeto, as suas perguntas (1 e 2) também seriam consideradas no guia especializado, conforme listado a seguir:

SC05, SC12, SC13 e SC23

1. Quais as informações de Contexto relevantes para o sistema? 2. Quais informações de contexto são do tipo informação do sistema? 5. Como a utilidade da informação de contexto é considerada? 6. Como personalizar informações de contextos?

7. Como a preferência do usuário influencia na personalização de informações de contexto? 9. Como a preferência do usuário é considerada?

É importante destacar que apenas a pergunta 2 é realmente nova neste novo guia, pois a pergunta 1 já era contemplada no guia anterior por fazer parte dos fatores SC12, SC13 e SC23.

59

Uma vez configurado, a próxima atividade é definir os requisitos de ubiqüidade do projeto, o que é descrito na próxima subseção.