| 1 | == 1 Descrição == |
| 2 | O desenvolvedor do sistema deverá criar uma estrutura mínima de classes que promovem a integração com as funcionalidades do sistema de desenvolvimento de aplicações. Estes arquivos tem por objetivo facilitar o desenvolvimento da aplicação oferecendo automatização do processo. O mecanismo de funcionamento do sistema exige a existência destas classes e toda integração com a aplicação será feita a partir da instanciação de objetos gerados a partir destas. |
| 3 | |
| 4 | A camada view não depende da implementação de nenhum arquivo padronizado mas é fortemente recomendado a utilização das ferramentas propostas pela aplicação para integração. Esta exibilidade da-se pelo fato do motor do sistema de desenvolvimento de aplicações atuar como um provedor de serviços onde atende a chamadas que respeitam determinados padrões sintaticos. |
| 5 | |
| 6 | Na camada controler é necessário um arquivo chamado controler.class.php responsável por atender todas as solicitações de serviços por parte da aplicação cliente. Este arquivo implementa um método default que é executado para qualquer chamada. Neste método deve estar previsto uma estrutura de controle que procura pelo parâmetro action e executa o código correspondente a decisão do uso. A classe !MainControler implementa o construtor e o destrutor padrão da classe e prove um método de validação de acesso que é implementada no metodo checkAccess. Abaixo segue especicação do arquivo. |
| 7 | |
| 8 | |
| 9 | * class Controler extends !MainControler implementes !ImplementControler |
| 10 | * function default |
| 11 | * switch |
| 12 | * controler = new Controler(); |
| 13 | |
| 14 | Para a camada model é necessário a existência do arquivo model.class.php que implementa a classe responsável por acessar os recursos do sistema. Esta classe deve ser ancestral a toda classe de negocio que necessitar recurso da aplicação. A classe deverá utilizar herança da classe !MainModel, que implementa um construtor e um destrutor, e implementar metodos defidos em !ImplementModel, conforme especicado a seguir. |
| 15 | |
| 16 | * class Controler extends !MainModel implementes !ImplementModel |
| 17 | * function initialize |
| 18 | * function destruct |
| 19 | |
| 20 | A classe !MainModel deve implementar métodos para acessar plugins, registrando os plugin quando utilizado e nalizar plugin. Todos os plugins não nalizados devem ser avaliados no destrutor da classe. A classe !MainModel também deve implementar métodos para validação de usuários e grupos. |
| 21 | |
| 22 | O sistema deve prover informações para disponibilizar o caminho das bibliotecas da aplicação |
| 23 | principal para incluir as classes Main e Implement. |
| 24 | |
| 25 | == 2 Atores == |
| 26 | * 1. Desenvolvedores do sistema |
| 27 | |
| 28 | == 3 Pré-condições == |
| 29 | |
| 30 | * 1. Ter realizadop o UC-001 Criar Estrutura de Arquivos |
| 31 | |
| 32 | == 4 Eventos == |
| 33 | |
| 34 | * 1. Desenvolvedor copia arquivos básicos do sistema para as camadas adequadas {A1} |
| 35 | * 2. Desenvolvedor do sistema cria permissões de acesso aos arquivos {A1} |
| 36 | |
| 37 | == 5 Eventos Alternativos == |
| 38 | |
| 39 | * A1 Desenvolvedor da aplicação utiliza ferramenta para a geração da estrutura de arquivos e permissões. |
| 40 | |
| 41 | == 6 Tratamento de Erros == |
| 42 | |
| 43 | Não relevante |
| 44 | |
| 45 | == 7 Mensagem == |
| 46 | |
| 47 | Não relevante |
| 48 | |
| 49 | == 8 Pós-condições == |
| 50 | |
| 51 | Estrutura básica de pastas para ser utilizada pela aplicação. |
| 52 | |
| 53 | == 9 Regras de Negócio == |
| 54 | |
| 55 | Não relevante. |
| 56 | |
| 57 | == 10 Telas Envolvidas == |
| 58 | |
| 59 | Não relevante. |
| 60 | |
| 61 | == 11 Notas == |
| 62 | |
| 63 | |