• Nenhum resultado encontrado

4. Metodologia para Definição de Requisitos em Sistemas Data

4.5 Especificação de Requisitos

4.5.4 Conformidade de Requisitos

Conformidade de requisitos é uma etapa particular da especificação de data warehouses. Projetos data warehouse somente podem ser bem-sucedidos se suas peças de montagem fazem sentido em dois universos interdependentes: a visão orientada a assunto dos Data Marts e o esquema global do Data Warehouse. Tentativas de definir peças isoladas do data warehouse que, ao final, não podem ser funcionalmente integradas concorrem fortemente para o fracasso do projeto. Antes de construir um data mart departamental ou o data warehouse de toda a organização, é imperativo que a equipe de desenvolvimento considere a arquitetura multidimensional proposta dentro de uma visão corporativa de todos os dados da organização. Dentro desse princípio, KIMBALL et al. (1998a) coloca que, quando se espera construir um data warehouse que seja robusto e resistente em face à contínua

Capítulo 4 – Metodologia para Definição de Requisitos em Sistemas Data Warehouse

evolução dos seus requisitos, deve-se aderir a uma especificação de data mart na qual dimensões e fatos comuns estão em conformidade entre todos os data marts.

Uma dimensão está em conformidade quando tem o mesmo significado para toda tabela- fato à qual está ligada. A dimensão “Tempo” é um exemplo clássico de dimensão em conformidade, visto que uma das funções primárias em um data warehouse é a soma de métricas de fato ao longo do tempo. De maneira similar, um fato está em conformidade com o esquema global do data warehouse se a mesma terminologia para representação do seu conteúdo é usada ao longo de todos os data marts constituintes. Exemplos típicos de fatos que requerem conformidade são vendas do produto, lucro obtido, preços padrão e custos padrão. Quando presentes em mais de uma tabela-fato, esses fatos devem possuir o mesmo formato, mesma regra de formação, mesma lei de cálculo e definidos no mesmo contexto dimensional.

Em nossa abordagem, o conceito de conformidade é estendido a um patamar maior de abstração, onde todos os requisitos comuns do sistema são postos em conformidade. Definimos que um requisito está em conformidade se este é comum a vários (ou todos os) data marts e é descrito identicamente em cada uma das diferentes visões de assunto do data warehouse. Mais do que apenas aspectos multidimensionais, requisitos em conformidade respondem por cada funcionalidade, característica ou restrição ao desenvolvimento do sistema que guarda o mesmo raciocínio por todo o projeto, devendo ser, portanto, representados de forma única. Em outros termos, conformidade de requisitos é mais uma das múltiplas facetas do reuso de requisitos.

Requisitos em conformidade trazem os seguintes benefícios para a especificação de sistemas data warehouse:

(i) Evitam redundância e ambiguidade entre requisitos que permeiam o data warehouse como um todo;

(ii) Permitem que dimensões comuns sejam relacionadas com múltiplos fatos no mesmo espaço de banco de dados (database space);

Capítulo 4 – Metodologia para Definição de Requisitos em Sistemas Data Warehouse

(iii) Em conjunto com abordagens orientadas a cenário (ex. casos e uso), possibilita o reuso de conhecimento previamente acordado no escopo do projeto, promovendo, dessa forma, a melhoria da qualidade;

(iv) Melhora a consistência das interfaces do usuário e do conteúdo dos dados agregados onde quer que seja feito uso do modelo comum (em conformidade);

(v) Possibilita operações drill-across entre data marts, i.e., a recuperação de dados factuais a partir de tabelas-fato localizadas em diferentes visões de assunto dentro do data warehouse da organização;

(vi) Facilita a integração requerida entre data marts, permitindo que a arquitetura multidimensional trabalhe como um todo único;

(vii) Propicia escalabilidade e facilita a evolução do data warehouse; (viii) Facilita a aderência a padrões de projeto e organizacionais.

Cabe ao time de projeto estabelecer, publicar, manter e reforçar a conformidade de requisitos. Após cada fase de documentação, todos os documentos de especificação devem ser analisados para identificar aqueles requisitos que representem aspectos gerais do data warehouse. Engenheiros de software devem estar atentos para reconhecer sobreposições e similaridades entre requisitos e proceder a ajustes na sua especificação para mantê-los em conformidade, quando possível, com um modelo de requisitos global, promovendo inclusive requisitos a artefatos de mais alto nível de abstração se necessário.

4.6 Validação de Requisitos

Considerando-se uma aplicação data warehouse, é provável que, após várias iterações executando as fases previamente descritas, alguns erros de interpretação e/ou concepção equivocadas a respeito das capacidades analíticas a serem entregues ainda persistam. Muitas vezes, nem o grupo de usuários nem a equipe de desenvolvimento estão confiantes o suficiente do que o produto sendo entregue é capaz de fazer.

Capítulo 4 – Metodologia para Definição de Requisitos em Sistemas Data Warehouse

Para validação do que foi definido como a especificação para o data warehouse, propomos a junção entre as técnicas de Revisão e Prototipação como uma estratégia efetiva para detectar e remover defeitos na especificação, antes que estes se tornem parte do “pacote data mart”. Durante a reunião de revisão, a linha base final do data mart é apresentada para todos os envolvidos, e descrita em termos de seus requisitos funcionais e de qualidade. O protótipo desenvolvido na ferramenta OLAP auxilia o reconhecimento pelos usuários dos aspectos arquiteturais que implementam os requisitos especificados.

Quando problemas são identificados, a especificação é revista no contexto do requisito funcional, não-funcional ou do domínio multidimensional que dá origem à inconsistência. O time de validação deve gerar imediatamente uma lista de ações em resposta a cada um dos casos, e acordar entre os envolvidos com as ações propostas. O processo de desenvolvimento retorna à fase de especificação, onde as ações são aplicadas para adequar a especificação dos requisitos às definições corretas. É importante que as ações considerem tanto uma revisão conceitual quanto arquitetônica do esquema implementado. O time de prototipação, juntamente com os especialistas em banco de dados, deve efetuar uma análise dos impactos das alterações acordadas no esquema multidimensional implementado. Outro fator importante durante a validação dos requisitos do data warehouse é incluir especialistas de domínio que não estiveram envolvidos com a engenharia dos requisitos do sistema. Revisores externos enriquecem o processo de análise, na medida em que não estão atrelados a noções preconcebidas da solução.