sexta-feira, novembro 30, 2007

Capitulo 3 - Geracao de IU Baseada em Modelos - parte 1

Missão dada é missão cumprida, 02!

Em outras palavras, como prometi, aqui está o fragmento das seções iniciais do Captítulo 3 da dissertação sobre o Merlin, que fala da geração de IU baseada em modelos.

3.1 Histórico

A geração de IU baseada em modelos tem suas origens em um tipo de software conhecido como User Interface Management System (UIMS), aparecido no início de 1980. Os UIMSs foram a primeira alternativa em relação à construção manual de interfaces de usuário, possibilitando aos programadores escrever aplicações em uma linguagem de mais alto nível, ao invés de trabalhar diretamente com um Toolkit gráfico. Uma vez construídas essas especificações, era tarefa do gerador traduzí-las no programa final ou, então, serem interpretá-las em tempo de execução, gerando assim a respectiva IU (SCHLUNGBAUM, 1997) e (SZEKELY, 1996).

A maioria dos primeiros UIMSs era focada na especificação do diálogo existente entre o usuário e a IU da aplicação. Através de diagramas de transição de estados, gramáticas especiais ou representações baseadas em eventos de IU, essas ferramentas possibilitavam a especificação das respostas do sistema em relação aos eventos de entrada produzidos pelo usuário. Já no tocante à aparência da IU, geralmente esse detalhamento era feito em linguagens próprias, que eram relacionadas ao restante da aplicação através de chamadas de procedimentos em modo call-back.

Como produtos dessas primeiras UIMSs estavam a geração de menus de sistema, a vinculação de eventos, as chamadas de métodos e a produção de caixas de diálogo para mensagens de usuário (SZEKELY).

3.2 As MBIDEs

Entre os anos de 1980 e 1990, aproximadamente, as linguagens de especificação tornaram-se mais sofisticadas, suportando representações mais ricas e detalhadas, permitindo a construção de interfaces de usuário mais complexas e robustas. Nessa época, diversos conceitos desenvolvidos de forma paralela em vários projetos acabaram sedimentando-se, e uma nova gama de ferramentas aparecera.

Enquadrando-se na categoria das ferramentas model-based (SCHULUNGBAUM, 1996), os chamados Model-Based Interface Development Environments (MBIDEs) são a evolução das UIMSs e, conforme alguns críticos argumentam (SCHLUNGBAUM e THOMAS, 1996), elas representam a gama de ferramentas mais promissora em relação à geração automatizada de interfaces de usuário.

Os MBIDEs utilizam um conceito essencial para alcançar seus objetivos: valer-se de modelos declarativos de alto nível como elementos-chave em um processo de desenvolvimento interativo e incremental. De forma geral, a idéia é que tais modelos possam ser capazes de descrever todos os aspectos relevantes de um sistema, cabendo ao gerador a tarefa de transformá-los no aplicativo final (PUERTA e EISENSTEIN, 1999).

Embora norteada por uma premissa simples, o funcionamento e o uso de uma MBIDE são complexos, e, nesse sentido, três elementos ganham relevância: (i) o conjunto de modelos suportados, (ii) o processo de desenvolvimento amparado pela ferramenta e (iii) a arquitetura de geração da IU (GRIFFITHS et al., 1997).

Se entender as características de cada um desses componentes é uma necessidade para qualquer desenvolvedor que veja adotar uma solução desse porte, a exploração detalhada de cada um desses itens é tarefa de suma importância quando se deseja construir um software desse tipo.

Sendo o objetivo dessa dissertação apresentar uma proposta diferenciada na área das ferramentas MBIDEs, as seções 3.3 a 3.5 apresentam maiores detalhes sobre cada um dos três componentes citados.

0 comentários: