• Nenhum resultado encontrado

SMiLe no Contexto de Análise de Requisitos

3 SMiLe: Uma Notação Textual Modular para os Modelos iStar

3.5 SMiLe no Contexto de Análise de Requisitos

Para melhor compreender escopo desta proposta, e como a solução pretendida pode encaixar-se dentro do contexto de análise de requisitos, a Figura 22 mostra uma visão da solução completa almejada. Essa visão demonstra a concretização desta proposta como um todo, através de camadas de abstração, com diferentes responsabilidades, compostas por artefatos. Essas camadas são compreendidas como:

Na Figura 22c, consta a camada que representa a base de informações iStar. Essa camada oferece regras e denições através da especicação, e dados no formato da SMiLe (Scalable Modular iStar Language) para a camada intermediária. A SMiLe é uma notação textual modular com regras sintáticas e semânticas fundamentadas nos modelos grácos iStar. Incorporada nas denição, a notação tem o propósito de ter uma leitura mais próxima do natural para humanos, mas sem perder a formalidade semântica para evitar ambiguidades e permitir automações.

A camada das ferramentas para apoiar os ambientes, na Figura 22b, é composta por duas ferramentas idealizadas para gerenciar as informações contidas na base textual. As ferramentas são a partir das denições estabelecidas na SMiLe, essas ferramentas são: (i) o SMiLeCompiler: um compilador para automatizar as análises sintática e semântica com base na grmática SMiLe e as denições dos modelos iStar, além de possibilitar extraír

Figura 22: SMiLe no contexto de análise de requisitos.

informações quantitativas, e realizar transformações verticais (ex.: modelo arquitetural) e horizontais (ex. iStarML); e (ii) o SMiLeQL (SMiLe Query Language) para oferecer uma linguagem simples (ex. Structured Query Language) de consultas à base textual.

A Figura 22a expõem a camada de ambiente para analistas que abstrai a comple- xidade da camada anterior para oferecer um ambiente amigável para os usuários nais. Os ambientes oriundas dessa camada têm como intenção: (i) editar e organizar diagramas que representem uma fragmentação da modelagem; (ii) manipular a notação textual; (iii) representar a modelagem de forma híbrida (gráca e textual); (iv) apresentar informações quantitativas; (v) possibilitar o acompanhamento histórico da evolução da modelagem, devido à facilidade de integração da base SMiLe com algum serviço web de controle de versão (ex. GitHub1)

3.5.1 SMiLeCompiler

Dentro dos artefatos apresentados nas camadas de abstração, esta proposta enfatizou dois artefatos fundamentais: (i) a notação textual modular SMiLe, por esta ser o pilar para toda a arquitetura proposta; e (ii) o SMiLeCompiler, para garantir as estruturas textuais conforme as regras sintáticas e semânticas dos modelos iStar, e as especicações SMiLe. O último artefato, colaborando em [43], é uma evidência de que o REQ3., apresentar uma estrutura concisa e legível para máquinas, foi alcançada.

1https://github.com/ - uma plataforma de desenvolvimento que oferece os serviços na web de revisão de armazenamento de código e recursos para gerenciar o projeto.

Como um compilador, a Figura 23 apresenta as entradas, como o conjunto de com- plexidade social de ator, e três tipos distintos de saídas: (i) um arquivo nas denições do iStarML para se beneciar das especicações grácas e da comunidade iStar, que já vem utilizando como modelo de interoperabilidade entre ferramentas; (ii) uma estrutura que contenha informações de análise quantitativa com a possibilidade de trabalhar o quali- tativo dos modelos; e por último, (iii) uma estrutura para armazenar as informações de avisos e erros encontrados durante a análise sintática e semântica.

Figura 23: Entradas e saídas da SMiLeCompiler.

Fonte: [43]

A ferramenta foi implementada seguindo as considerações SMiLe, que foram pautadas para satisfazer o modelo SD do framework iStar. Para esse modelo, a SMiLeCompiler implementa os seguintes requisitos: (i) ler diversos arquivos SMiLe; (ii) dene mecanismos de gerência de escopo para evitar elementos repetidos; (iii) indicar inconsistência nos modelos denido em SMiLe; (iv) vericar se as relações dos elementos fazem sentido com base nas denições dos modelos iStar; e (v) mostrar informações quantitativas para auxiliar na análise do modelo.

Resultados da SMiLeCompiler

Depois de analisar as relações e associações apresentado no cenário apresentado na Figura 12, o SMiLeCompiler oferece informações quantitativas gerais e especícas sobre o modelo de estudo para o interessado. De posse desses dados, pode-se ver quais atores possuem mais associações, muitas dependências, ou até identicar quais atores possuem muitas responsabilidades (muitas relações na perspectiva dependee). Essas informações, apresentadas nas Tabela 2 e Tabela 3, são úteis para a análise do processo de decisão de uma organização social, principalmente para sistemas complexos, que envolvam muitos elementos.

Tabela 2: Cenário Plano de Saúde (Figura 12): informações quantitativas totais

Quantidade total de atores 9

Quantidade total de associações 8

Quantidade total de relacionamentos externos 6

Tabela 3: Cenário Plano de Saúde (Figura 12): informações quantitativas por perspectiva Associações Perspectiva Depender Perspectiva Depender

Paciente 0 2 2 Plano de Saúde 0 2 2 Médico 1 2 2 Diretor 1 0 0 Ortopedista 2 0 0 Cardiologista 1 0 0 Eduardo 1 0 0 Junta Médica 1 0 0 Alocador de Recurso 0 0 0

3.6 Discussão

Esta proposta pretende, por meio da notação textual, oportunizar uma alternativa para melhorar o entendimento dos modelos do framework iStar. Teorias cognitivas [16,20] e trabalhos da comunidade iStar [17, 12, 11,13, 27, 19,28, 29] orientam a elaboração da SMiLe para lidar com a complexidade dos modelos grácos, por gerenciar carga cognitiva através da composição da complexidade social do ator, e oferecer um canal verbal (textual) para a comunicação dos modelos iStar.

A modularidade foi o ponto considerado para tornar a complexidade dos modelos gerenciável, por proporciona uma efetiva "divisão do trabalho cognitivo" e permitir uma evolução granular do conhecimento sobre o sistema [15, 16]. Além disso, esta proposta fortaleceu-se com a Teoria do Código Duplo [20] e em experimentos que evidenciavam [23,

24, 25] que uma abordagem híbrida (gráca e textual) pontencializavam a compreensão dos modelos.

Dessa forma, esta proposta desenvolveu uma notação textual modular, a SMiLe, com a qual fosse possível oferecer um canal com estímulos verbais, alternativo ao estímulos não-verbais obtidos pelos modelos grácos. O conceito de perspectiva foi oferecido para maximizar a compreensão de uma abstração gráca através da abordagem híbrida dos seus modelos, como exposto na Figura 21.

promove alta coesão e baixo acoplamento [44], por compreender um agrupamento de diver- sos elementos, apresentando-os sob um subdomínio especíco (nesta proposta, complexi- dade social do ator). Eric Yu [10] reforça essa necessidade e entendimento da perspectiva, pelo fato de indicar que a modelagem social precisa de tantos modelos SR, quantos atores houver na modelagem. Outros trabalhos [17,11,28,29] apontaram o elemento ator como o elemento modular do iStar. Assim, nesta proposta, a escolha foi por seguir na mesma direção.

Neste sentido, a elaboração deste trabalho foi concebida com o intuito de proporcionar uma parte interdependente, gerenciável, não ambígua, precisa e completa da modelagem sem incluir conceito pesados e elementos grácos novos aos modelos. Devido aos mode- los iStar não proporcinar uma concepção modular satisfatória para grandes modelos, a comunidade iStar tem elaborado propostas que atendem, dada as especicidades de cada proposta, a necessidade de modularidade para o framework iStar.

Embora esta proposta permeia por modularidade, devido a necessidade de diminuir a quantidade de elementos apresentado na modelagem social, a SMiLe é uma notação textual que guia a descrição dos modelos por meio de partes que pudessem, de forma in- dependente, proporcionar uma compreensão na leitura de qualquer envolvido no ambiente de desenvolvimento. Uma particularidade das complexidades sociais dos atores é que, por conseguir compor o diagrama através dessas partes, os diagramas poderão ser gerados de acordo com a necessidade particular de cada envolvido.

Neste momento, deve-se ter compreendido que a proposta não exclui, de maneira alguma, os modelos e a abordagem monolítica do Framework, todavia ser um modelo complementar, que possa agregar benefícios ao assumir uma abordagem híbrida (gráca e textual). Com a proposta estruturada e inspecionada por especialistas no domínio, foi possível fazer o planejamento de uma validação. Essa validação contou com a participação de convidados para um estudo, cujo perl era correlacional. Essa validação é apresentada no Capítulo 4.

Documentos relacionados