Changes between Version 12 and Version 13 of WF/versaoexperimental


Ignore:
Timestamp:
12/18/09 17:38:28 (14 years ago)
Author:
viani
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WF/versaoexperimental

    v12 v13  
    3636Caso alguma implementação no Flumem possa ser aproveitada de imediato no módulo oficial, nada impede que seja transferida, desde que bem testada e não comprometa o funcionamento do módulo e processos. 
    3737 
    38 Mais abaixo segue o levantamento de requisitos desejáveis para a nova versão. 
     38Mais abaixo segue uma lista de melhorias desejáveis para a nova versão. 
    3939 
    4040== Propostas para o Módulo == 
     
    4444  * Separar o código interno do módulo (lib); 
    4545  * Separar o código de terceiros (php e js); 
    46   * Prever local para o código das organizações: hooks, plugins, especializações de classes, templates. 
     46  * Prever local (custon) para o código das organizações: hooks, plugins, especializações de classes, templates. 
    4747 
    4848 * Revisar o código do engine 
     
    7575  * Deve-se criar uma estrutura padrão para os plugins que siga o design pattern MVC; 
    7676  * Deve existir algum controle de acesso para liberar os plugins para usuários; 
    77   * Possibilitar aninhamento de plugins. 
     77  * Possibilitar aninhamento de plugins; 
     78  * Possibilitar a criação de plugin na área custom da organização. 
    7879                 
    7980 * Pesquisar e implantar uma ferramenta para design dos fluxos dos processos 
     
    102103  * Implementar uma nova funcionalidade para atividades em que possa ser definido um tempo máximo de permanência da mesma com o usuário que detém a posse; 
    103104  * Criar um job genérico que rode diariamente e selecione as atividades que expiraram os prazos, e de alguma forma comunicar o usuário ou um administrador designado; 
    104   * Se ficar inviável criar o job, porque o atual modelo exige configuração do cron do servidor, criar ao menos um página que mostre o resultado das pesquisas com opção de envio de email. 
     105  * Se ficar inviável criar o job, porque o atual modelo exige configuração do cron do servidor, criar ao menos um página que mostre o resultado das pesquisas com opção de envio de email; 
     106  * Verificar a possibilidade de gravar buscas no monitoramento por processo, e efetuar envio de email automático a partir do resultado da busca. 
    105107         
    106108 * Prover uma auditoria de queries executadas nas tabelas do módulo Workflow. 
    107   * Quando alguma alteração nos dados do processo for realizada, na interface de administração, registrar o evento em banco de dados para se ter um histórico dos acontecimentos. Por exemplo, ativação/desativação de processo, alteração de parâmetros, etc; 
     109  * Quando alguma alteração nos dados do processo for realizada, na interface de administração, registrar o evento em banco de dados para se ter um histórico dos acontecimentos. Por exemplo, ativação/desativação de processo, alteração de configuração, inclusão/exclusão de elementos, etc; 
    108110  * Verificar a possibilidade de executar triggers nas tabelas do módulo Workflow, para logar a atividade sql. Cuidar para não impactar na performance geral do banco; 
    109111  * Outra abordagem pode ser inserção de código nos principais eventos administrativos, para logar as modificações; 
     
    135137   * Facade (opcional); 
    136138   * Dao; 
     139   * Serviços 
    137140   * Log. 
    138141  * Isolar os dados variáveis como log, documentação, compiled, smarty, graph, para facilitar a automação de deploy e a integração com IDEs; 
     
    141144 * Criar um novo modelo de execução de atividades 
    142145  * Criar uma classe base para execução de atividades, contendo métodos básicos como inicialização, finalização, cancelamento, execução, continuação de uma instância, execução de ajax, comunicação com o engine e outros que um estudo mais detalhado venha a revelar; 
    143   * Incluir também objetos para as classes já existentes hoje como regex, factory, validações; 
    144   * O desenvolvedor irá criar uma classe para cada uma de suas atividades, que estenderá a superclasse e que contenha atributos do tipo objeto para as classes controller e model da atividade; 
     146  * O desenvolvedor irá criar uma classe para cada uma de suas atividades, que estenderá a superclasse e que contenha atributos do tipo objeto para as classes controller, model e view da atividade; 
    145147  * Implementar um método run que possa ser executado para iniciar a atividade. Continuarão a existir as classes de controller e model da atividade, em separado. Continuarão a existir as classes basecontroller e basemodel; 
    146148  * O desenvolvedor poderá sobrescrever os métodos de evento da superclasse: inicialização, finalização, cancelamento, transição. Em especial a transição pode servir ao desenvolvedor para obter o id da instância, após o encerramento de uma atividade start; 
     
    149151  * Acomodar os processamentos pré e pós execução das atividades (agente de correio) em outro local do código; 
    150152  * Pensar se é viável liberar para o processo gravar dados na sessão; 
    151   *  
    152153 
    153154 * Criar uma camada de visualização