wiki:WF/levantamentorequisitos

Version 6 (modified by viani, 14 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 um método para validação de dados, na camada model
16 Obrigar a implementação de uma ação padrão para a aplicação
17 Gerar o código básico da camada model
18 Implementar uma estrutura de mensagens para o processo, com possibilidade de internacionalização
19 A camada controller fornece dados para a camada view através de um objeto VO
20 A camada de visualização tem a responsabilidade de criar as interfaces, usando ferramentas que estejam disponíveis
21 A camada view deve mesclar os dados com a interface
22 A camada view não deve misturar código da aplicação servidora com código html
23 A camada view executa chamadas endereçadas para ações da controller, utilizando protocolo http/post
24 Disponibilizar uma interface de serviço para ações da camada controller
25 Autenticar as chamadas de serviço usando sessão do Expresso
26 Implantar uma ferramenta para construção de interfaces, com template padrão e internacionalização
27 Validar os dados no lado cliente, usando javascript, garantido adequação às propriedades dos campos, e prevenindo contra sqlinjection e xss
28 A camada de visualização deverá invocar a validação de dados, implementada na model, antes de submeter o formulário
29 A validação de dados deve ser obrigatória no lado servidor
30 Criar uma biblioteca (lib) de classes utilitárias
31 Possibilitar a construção de classes utilitárias pelas organizações
32 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
33 Construir componentes de visualização específicos para o negócio do workflow
34 Executar a aplicação sob tratamento de erros
35 Implementar a sinalização de erro em todos as classes utilitárias disponíveis para o sistema
36 Prover um local para a armazenamento da configuração e dados constantes do sistema
37 Identificar quais bibliotecas de javascript estarão disponíveis para o sistema
38 O código da aplicação não poderá ter acesso à classes do módulo
39 Registrar a estrutura de processos de workflow vinculados a uma aplicação
40 Compartilhar os perfis de uma aplicação com os seus processos
41 Associar ações de uma aplicação com atividades do processo
42 Possibilitar à camada model definir operações sobre a instância: iniciar, completar, enviar, definir transição, definir usuário, atualizar atributos
43 A classe de instância deverá percorrer o fluxo, executando as atividades não interativas
44 A classe de instância será responsável por persistir os seus dados