wiki:WF/exibirinterface

Version 4 (modified by fabianok, 14 years ago) (diff)

--

Exibir Interface de Visualização

1 Descrição

Para o usuário interagir com a aplicação é necessário uma interface que possibilite o envio e recebimento de informação entre o sistema e o usuário humano. Quando a camada de controle processa o recebimento de uma ação é executada a classe definida no campo model do banco de dados. De posse do resultado da classe de negócios um objeto, ou array de objetos, é repassado para a classe que criar o HTML/XML para ser retornado ao solicitante. No caso de retornar informações no formato HTML é instanciada a classe que formata os dados.

Quando a interface a ser retornada é um XML é instanciada a classe classToXML que converte um objeto ou array para o formato XML e retorna estes dados para o cliente. No entanto se o dado a ser retornado tem formato HTML é necessário o uso de um framework capaz de mesclar os dados do negócio com a interface HTML a ser retornada para o clientes. O framework recupera o template gerado pela interface de cadastro de aplicaçẽs definida no uc Criar Interface  http://trac.expressolivre.org/wiki/WF/criarinterface e então insere os dados obtidos durante a execução das regras de negócio nos campos adequados.

O template e o framework de geração de interfaces HTTP processam as informações das classes de negocios pela inclusão da mesma via recebimento de parâmetro no método que constroi a interface. A camada deve conhecer também os métodos e atributos da classe passada como parâmentro através da inclusão do arquivo em seu código utilizando a função require_once.

2 Atores

Usuários da aplicação

3 Pré-condições

Clicar em uma aplicação.

4 Eventos

  1. Usuário clica sobre o ícone da aplicação e o navegador envia requisição ao servidor Web contendo o código da aplicação e a ação a ser executada.
  2. Camada de controle recebe informação, executa o UC Executar Aplicação  http://trac.expressolivre.org/wiki/WF/executarrotina.
  3. Camada de controle executa o negócio do cliente e retorna um objeto com os dados a serem mesclados com a camada de controle.
  4. Camada de controle instancia o objeto de visualização utilizando a classe de visualização obtida no banco de dados da ação, passando o objeto de negócio como parâmetro.
  5. Classe de visualização mescla os dados da camada de controle com os dados de negócio.
  6. Sistema retorna para o cliente o HTML gerado

5 Eventos Alternativos

{A1} Desenvolvedor edita uma interface já existente.

6 Tratamento de Erros

{E1} .

7 Mensagem

{M1}

8 Pós-condições

Interface humano computador gerada.

9 Regras de Negócio

Não relevante.

10 Telas Envolvidas

Não relevante.

11 Notas

  • input box
  • combo box
  • list box
  • text area
  • div
  • grid
  • table
  • etc.

Existem ainda componentes especiais para recursos do ambiente Expresso:

  • seleção de usuários
  • seleção de cidades
  • seleção de estados

Cada componente possui um conjunto de propriedades, pertinentes ao seu tipo, e alguns terão opção de ação vinculada a método da camada de negócio. Componentes do tipo submit deverão submeter a interface para o controller do aplicativo via http (ou https), e nos demais casos, a requisição deverá ser do tipo Ajax. Também está prevista a carga de bibliotecas javascript da aplicação e utilização de funcionalidades destas bibliotecas pelos componentes. Existirão outras bibliotecas Javascript padrão, a serem utilizadas nativamente pela interface. A interface utilizará obrigatoriamente o template css definido para o ambiente. Componentes onde é possível a exibição de valores do tipo lista, possuirão uma propriedade especial onde é possível definir uma classe e método de negócio responsável por recuperar os valores da lista.

2 Atores

Desenvolvedores da aplicação

3 Pré-condições

Desenvolvedor deve possuir acesso administrativo à aplicação

4 Eventos

  1. Desenvolvedor acessa ferramenta do sistema que possibita o desenho da interface.
  2. Desenvolvedor desenha a interface, utilizando os componentes disponíveis, e definindo as propriedades para cada componente. {A1}
  3. Desenvolvedor informa um nome para a sua interface.
  4. Sistema converte a interface para Xml.
  5. Sistema salva a interface na pasta view/templates da aplicação. {E1}

5 Eventos Alternativos

{A1} Desenvolvedor edita uma interface já existente.

6 Tratamento de Erros

{E1} Caso não consiga grava a interface na pasta apropriada, envia mensagem {M1}, se o usuário opta por Cancelar encerra o fluxo, caso opte por Ignorar executa a próxima instrução, se optar por Tentar novamente o sistema deve executar a linha que provocou o erro.

7 Mensagem

{M1} Não foi possivel salvar a interface {Nome da Interface} Ignorar | Tentar Novamente | Cancelar

8 Pós-condições

Arquivo de definição da interface salvo em disco.

9 Regras de Negócio

Não relevante.

10 Telas Envolvidas

Não relevante.

11 Notas