Você está na página 1de 5

Modelo de projeto Desenvolvimento Web

Arquitetura

A arquitetura que ir compor o projeto apresentada na figura acima. Abaixo segue a descrio de cada item da arquitetura. Domnio Representa a aplicao em Classes. Nele contm todas as classes iro representar o Aplicativo o Neg!cio e a "ersist#ncia de $ados. % $om&nio se subdividir em ' (quatro) camadas. Camada *ean Negocio $A% e +acade. A camada *ean a representao do $om&nio da Aplicao. Cada Classe dever conter somente ,et-s e .et-s. /odos os atributos devero ser privados e os mtodos p0blicos. A camada Negocio contm toda a regra de neg!cio que ir controlar o dom&nio. /oda validao fica a cargo dessa camada. Nela ocorre a maior parte do processo de integrao entre a camada *ean e $A%. Cada classe que comp1e a camada de neg!cio dever possuir uma interface com exceo das classes de validao. A nomenclatura das classes dever seguir o seguinte formato [NomeClasse]Negocio. A figura abaixo demonstra o modelo da arquitetura de neg!cio.

A camada $A% representa o padro de projeto $ata Acess %bject. Nessa camada ir conter somente as manipulao com a *ase de dados. /oda classe nessa camada tambm dever possuir uma interface. A nomenclatura das classes dever seguir o seguinte formato [NomeClasse]DAO. A figura abaixo demonstra o modelo da arquitetura de neg!cio.

A camada +acade representa o padro de projeto +ac2ada. Nessa camada iremos simplificar acesso ao mtodos e agrupar as regras de neg!cio. 3ssa camada ser a responsvel tambm por controlar a conexo e transao com o banco de dados. A nomenclatura das classes dever seguir o seguinte formato [NomeClasse]Facade. A figura abaixo demonstra o modelo da arquitetura de neg!cio.

Criando um novo Domnio 4No escrito5 InfraEstrutura Camada responsvel por garantir a infra estrutura de todo o ambiente. 3la contm classes como 3xceptions +un1es de $ata +/" +abrica de Conexo com banco de dados ("$% e $octrine) entre outras classes. REST /odos os projetos de desenvolvimento 63* iro trabal2ar tambm com a arquitetura orientada a servios. "ara esse tipo de arquitetura ser adotado o conceito de

implementao com Rest+ul. As A"7-s em Rest iro consumir principalmente implementa1es do $om&nio. /odas as A"7-s iro possuir comportamento ou regra de validao e neg!cio. doc /oda a documentao do sistema deve ser arma8enada nesta camada. 3R 9ist!rias Caso de :so $ocumentao de .istema e $ocumentao de :surio. log Caso a aplicao arma8ene log de arquivo esta pasta foi reservada para esta inteno. site Camada que ir arma8enar o +ront;3nd da aplicao. 9/<= C.. e >avascript somente aqui poder existir. tmp Camada que ir arma8enar os temporrios gerados pela aplicao. vendor /odas as bibliotecas de terceiros usadas na aplicao. Documenta o A documentao crucial para a legitimidade da aplicao. Abaixo ser apresentada um modelo de documentao de classe e mtodo. Documentao de Classe ?@@ @ Camada Negocio @ 7mplementao da 7nterface 7.c2elude3mail @ @ Aaut2or $ilson >os @ Aversion B.C @ ApacDage $ominioENegocio @? /oda classe deve ter no m&nimo o modelo acima iniciando com uma descrio breve do que significa a classe o seu autor sua verso e a qual pacote ela pertence. Documentao de mtodo ?@@ @ Agenda um email para que o servio do agendamento envie as mensagens. @ @ Aparam $ate/ime FdataAgendamento $ata de agendamento da mensagem @ Aparam .tring FemailGdestino 3mail de destino @ Aparam /ext FcorpoGemail Corpo do email @ @ Aaut2or $ilson >ose Hdilsonrabelo.unasusAgmail.comI @ Areturn .tring 9as2 de confirmao do agendamento. @ At2roJs 7nfra3struturaE3xceptionENegocio3xception @?

/oda classe deve ter no m&nimo o modelo acima iniciando com uma descrio breve do mtodo os parKmetros (cada parKmetro deve se destacar o /7"% N%<3 $% A/R7*:/% e *R3L3 $3.CR7/7L%) o autor (caso o autor no seja especificado ser considerado o da classe) o retorno (destacando o /7"% e um *R3L3 $3.CR7/7L%) e caso implemente a definio da exceo. !ibliotecas de "erceiros "ara o desenvolvimento das aplica1es devem ser adotados as seguintes bibliotecas. Mend +rameJorD N ou superior O :tili8ado para o +ront3nd e alguns dos seus m!dulos podem ser adotados no dom&nio. .lim +rameJorD O :tili8ado para implementao do R3./+ul. $octrine N ou superior O :tili8ado para persist#ncia de dados do dom&nio. "9":nit O :tili8ado para implementao de testes :nitrios. .elenium 9P O :tili8ado para implementao de testes de Liso. /oda incluso de nova biblioteca deve ser avaliada e testada por toda a equipe de desenvolvimento.

#evis$es %d Data B CQ?CR?NCB'

Autor $ilson >os

Observa$es Criao do documento

Você também pode gostar