wiki:WF/levantamentorequisitos

Version 8 (modified by viani, 13 years ago) (diff)

--

Requisitos para o Novo Módulo Applications

01 Implementar a estrutura da aplicação com divisão em camadas: controller, model e view
02 A camada controller deve conhecer a camada view e model
03 A camada model não terá acesso a camada view
04 Será obrigatório implementar as camadas controller, model e view
05 Registrar as ações da aplicação e os perfis de acesso às ações
06 Possibilitar a associação de usuários/grupos aos perfis
07 A associação de usuários/grupos aos perfis será o controle de acesso da aplicação
08 A primeira fronteira da camada controller será a página de entrada do módulo
09 Os dados passados para a controller deverão ser: identificador da aplicação, identificador da ação, e opcionalmente dados para consumo na execução da atividade
10 A camada model deve retornar um objeto de dados VO para a camada controller
11 A camada model deve ter acesso a qualquer classe de negócio do sistema
12 A camada model deve ter acesso à biblioteca (lib) do módulo
13 Implantar uma ferramenta para mapeamento de objetos de banco de dados
14 Definir uma estrutura de armazenamento de código para aplicação, que contemple as novas características do mvc
15 Obrigar a implementação de uma ação padrão para a aplicação
16 Gerar o código básico da camada model
17 Implementar uma estrutura de mensagens para o processo, com possibilidade de internacionalização
18 A camada controller fornece dados para a camada view através de um objeto VO
19 A camada de visualização tem a responsabilidade de criar as interfaces, usando ferramentas que estejam disponíveis
20 A camada view deve mesclar os dados com a interface
21 A camada view não deve misturar código da aplicação servidora com código html
22 A camada view executa chamadas endereçadas para ações da controller, utilizando protocolo http/post
23 Disponibilizar uma interface de serviço para ações da camada controller
24 Autenticar as chamadas de serviço usando sessão do Expresso
25 Implantar uma ferramenta para construção de interfaces, com template padrão e internacionalização
26 Validar os dados no lado cliente, usando javascript, garantido adequação às propriedades dos campos, e prevenindo contra sqlinjection e xss
27 É recomendável a validação de dados no lado servidor
28 Criar uma biblioteca (lib) de classes utilitárias
29 Possibilitar a construção de classes utilitárias pelas organizações
30 Disponibilizar as classes utilitárias, para as camada model, sob demanda. Controlar a inicialização e destruição das classes através de métodos da camada model
31 Construir componentes de visualização específicos para o negócio do workflow
32 Executar a aplicação sob tratamento de erros
33 Implementar a sinalização de erro em todos as classes utilitárias disponíveis para o sistema
34 Prover um local para a armazenamento da configuração e dados constantes do sistema
35 Identificar quais bibliotecas de javascript estarão disponíveis para o sistema
36 O código da aplicação não poderá ter acesso à classes do módulo
37 Registrar a estrutura de processos de workflow vinculados a uma aplicação
38 Compartilhar os perfis de uma aplicação com os seus processos
39 Associar ações de uma aplicação com atividades do processo
40 Possibilitar à camada model definir operações sobre a instância: iniciar, completar, enviar, definir transição, definir usuário, atualizar atributos
41 A classe de instância deverá percorrer o fluxo, executando as atividades não interativas
42 A classe de instância será responsável por persistir os seus dados