PORTAL UNISINOS
UTILIZANDO JOOMLA 3.1.5
• Johnny Salazar Reidel
• Gaúcho, morador do Rio Grande do Sul
• Gerente de Projetos Web na TI Corporativa da Unisinos
• D...
• A Universidade do Vale do Rio dos Sinos – UNISINOS, é
mantida pela rede Jesuítas e possui cerca de 30 mil alunos.

• Pos...
Por que utilizamos Joomla?
• Estrutura adequada para construções complexas
• Projeto Open Source com vasta contribuição
• ...
Quando utilizamos Joomla?
 sites, portais e aplicações

 blogs

 aplicações internas
Versões do Portal Unisinos
Portal Unisinos 1.0
• Lançado em 2005
• Construído utilizando Mambo
• Chegou a ser migrado até a versão 1.15 do Joomla
• C...
Portal Unisinos 2.0
• Lançado em 2010
• Construído utilizando Joomla 1.5
• Chegou a ser migrado até a versão 2.5 do Joomla...
Portal Unisinos 3.0
• Lançado em Agosto/2013
• Construído utilizando uma única instalação Joomla 3.1.5
• Possui mais de ma...
Itens cadastrados no Administrator
Artigos
4264
Módulos
2684
Itens de menu
7723
Menus
24
Categorias
874
Itens Construídos
...
Como foi o projeto?
• Conceito e Design  empresa Brivia e Núcleo Digital da
Universidade
• Desenvolvimento  4 desenvolve...
Desafios do projeto
• Atualizar a versão do Joomla, utilizando uma única instalação
• Melhorar a performance
• Reformular ...
Infraestrutura do Portal
Arquitetura do Portal
• Administração centralizada
• Funcionalidades genéricas e escaláveis
• Estrutura dividida por sites...
Integração com o ERP Totvs
• Cursos de Extensão e Eventos
• Minha Unisinos (Perfis | Consulta de Turmas | Notas)
• Inscriç...
Autenticador
• Autenticador único para o Portal, o ERP e outras aplicações
• Compartilha sessão entre sites Joomla
• Gera ...
Diretório DEF
• Estrutura de
aplicações

diretórios

compartilhada

com

outras

• Contempla:
• Parametrizações gerais
• C...
Gerenciador de Cursos
• Componente que gerencia todos os cursos da Universidade
• Possibilita de forma simples parametriza...
Vamos então ver na prática..
http://unisinos.br
Mas nem tudo foi
perfeito no projeto...
FALTANDO UMA SEMANA PARA COLOCAR O
PROJETO NO AR, SURGE UM ENORME
PROBLEMA...
RESULTADO DO TESTE DE CARGA:
Somente 20 usuários simultâneos conseguem
acessar o Portal.
O que fazer em um
momento desses?
1º
Avisa a família que vai
dormir no trabalho...
COLOCAR FOTO DO FELIPE DORMINDO COM A
SEGUINTE LEGENDA “sim! Nós trabalhamos dia e
noite e finais de semana para cumprir o...
2º
Corre atrás do problema...
E qual era o problema?
A lógica do framework não comporta a quantidade de itens de
menu cadastrados.
Impactos no back-end
...
E como fica o mandamento
de nunca mexer nos
arquivos do Joomla?
Faltando uma semana
para colocar o projeto
no ar?
Só resta alterar o Joomla!
Solução 1
• Somente os grupos
de menus são
carregados.
• Itens de menus de
cada nível são
carregados a partir
de
requisiçõ...
Solução 2
• Removida a opção “Todos” do filtro de busca
• Removida a coluna “Página”
Solução 3
• Removida a coluna “Módulo de Atribuição deste Item de Menu”
Solução 4 (a principal)
• Reescrita a classe “JMenuSite” de forma a trabalhar
somente com os itens de menus necessários pa...
Sugestões para a comunidade Joomla
• Reformular a lógica de uso dos itens de menu
• Criar possibilidade de uso de categori...
Obrigado!

johnnymgo@gmail.com
linkedin.com/in/johnnymgo
facebook.com/johnnymgo
Palestra Joomla Day Rio - Case Portal Unisinos com Joomla 3.1.5
Palestra Joomla Day Rio - Case Portal Unisinos com Joomla 3.1.5
Palestra Joomla Day Rio - Case Portal Unisinos com Joomla 3.1.5
Palestra Joomla Day Rio - Case Portal Unisinos com Joomla 3.1.5
Palestra Joomla Day Rio - Case Portal Unisinos com Joomla 3.1.5
Palestra Joomla Day Rio - Case Portal Unisinos com Joomla 3.1.5
Palestra Joomla Day Rio - Case Portal Unisinos com Joomla 3.1.5
Palestra Joomla Day Rio - Case Portal Unisinos com Joomla 3.1.5
Upcoming SlideShare
Loading in …5
×

Palestra Joomla Day Rio - Case Portal Unisinos com Joomla 3.1.5

1,122 views

Published on

Palestra apresentada em 15/11/2013 no Joomla Day Rio sobre o case do Portal Unisinos utilizando o Joomla 3.1.5.

Published in: Software
1 Comment
5 Likes
Statistics
Notes
No Downloads
Views
Total views
1,122
On SlideShare
0
From Embeds
0
Number of Embeds
11
Actions
Shares
0
Downloads
29
Comments
1
Likes
5
Embeds 0
No embeds

No notes for slide

Palestra Joomla Day Rio - Case Portal Unisinos com Joomla 3.1.5

  1. 1. PORTAL UNISINOS UTILIZANDO JOOMLA 3.1.5
  2. 2. • Johnny Salazar Reidel • Gaúcho, morador do Rio Grande do Sul • Gerente de Projetos Web na TI Corporativa da Unisinos • Desenvolvedor Joomla desde 2006
  3. 3. • A Universidade do Vale do Rio dos Sinos – UNISINOS, é mantida pela rede Jesuítas e possui cerca de 30 mil alunos. • Possui o campus principal em São Leopoldo, no Rio Grande do Sul, além de estar presente em outras 10 localidades. • A área de Tecnologia da Informação é ligada diretamente a mantida e conta com 92 colaboradores.
  4. 4. Por que utilizamos Joomla? • Estrutura adequada para construções complexas • Projeto Open Source com vasta contribuição • Fácil de administrar Temos 38 sites e 1 portal rodando em Joomla!!
  5. 5. Quando utilizamos Joomla?  sites, portais e aplicações  blogs  aplicações internas
  6. 6. Versões do Portal Unisinos
  7. 7. Portal Unisinos 1.0 • Lançado em 2005 • Construído utilizando Mambo • Chegou a ser migrado até a versão 1.15 do Joomla • Composto de +/- 300 instalações Mambo / Joomla
  8. 8. Portal Unisinos 2.0 • Lançado em 2010 • Construído utilizando Joomla 1.5 • Chegou a ser migrado até a versão 2.5 do Joomla • Composto de 14 instalações Joomla • Passou a incluir a área autenticada denominada como Minha Unisinos
  9. 9. Portal Unisinos 3.0 • Lançado em Agosto/2013 • Construído utilizando uma única instalação Joomla 3.1.5 • Possui mais de mais de 7 mil páginas • Mais de 2,5 milhões de visualizações de páginas/mês • Aproximadamente 600 mil acessos/mês • Processamento 77,78% mais rápido que o Portal anterior
  10. 10. Itens cadastrados no Administrator Artigos 4264 Módulos 2684 Itens de menu 7723 Menus 24 Categorias 874 Itens Construídos Componentes back-end 12 Componentes front-end 15 Módulos front-end 32 Plugins 6 Templates 1
  11. 11. Como foi o projeto? • Conceito e Design  empresa Brivia e Núcleo Digital da Universidade • Desenvolvimento  4 desenvolvedores da TI da Universidade • Gerenciamento do Projeto  utilizado método ágil – SCRUM • Horas de desenvolvimento  3080 horas • Período de desenvolvimento  6 meses
  12. 12. Desafios do projeto • Atualizar a versão do Joomla, utilizando uma única instalação • Melhorar a performance • Reformular o design e navegação • Permitir acesso mobile • Estabelecer novos padrões e nomenclaturas para o desenvolvimento • Atender mudanças no posicionamento estratégico da Universidade • Estruturar um novo ambiente mais seguro, estável e escalável
  13. 13. Infraestrutura do Portal
  14. 14. Arquitetura do Portal • Administração centralizada • Funcionalidades genéricas e escaláveis • Estrutura dividida por sites • Definição de padrões de nomenclaturas • Controle de ACL por funcionalidade
  15. 15. Integração com o ERP Totvs • Cursos de Extensão e Eventos • Minha Unisinos (Perfis | Consulta de Turmas | Notas) • Inscrições e Matrículas • Gerenciamento de ERP Offline • Central de Contatos • Perguntas Frequentes • ....
  16. 16. Autenticador • Autenticador único para o Portal, o ERP e outras aplicações • Compartilha sessão entre sites Joomla • Gera logs de acesso • Autentica via LDAP
  17. 17. Diretório DEF • Estrutura de aplicações diretórios compartilhada com outras • Contempla: • Parametrizações gerais • Classes globais, de conexões e de integrações com ERP • Scripts de CRONS • Bibliotecas • Webservice
  18. 18. Gerenciador de Cursos • Componente que gerencia todos os cursos da Universidade • Possibilita de forma simples parametrizar a localidade, os períodos de inscrições e matrículas, os valores e as páginas de um curso • Utiliza as bibliotecas do Joomla para gerar itens de menus, artigos e módulos • Integrado com o ERP Totvs Educacional • Cursos de extensão são cadastrados a partir de uma CRON
  19. 19. Vamos então ver na prática.. http://unisinos.br
  20. 20. Mas nem tudo foi perfeito no projeto...
  21. 21. FALTANDO UMA SEMANA PARA COLOCAR O PROJETO NO AR, SURGE UM ENORME PROBLEMA...
  22. 22. RESULTADO DO TESTE DE CARGA: Somente 20 usuários simultâneos conseguem acessar o Portal.
  23. 23. O que fazer em um momento desses?
  24. 24. 1º Avisa a família que vai dormir no trabalho...
  25. 25. COLOCAR FOTO DO FELIPE DORMINDO COM A SEGUINTE LEGENDA “sim! Nós trabalhamos dia e noite e finais de semana para cumprir o prazo”
  26. 26. 2º Corre atrás do problema...
  27. 27. E qual era o problema? A lógica do framework não comporta a quantidade de itens de menu cadastrados. Impactos no back-end Aba “Atribuir itens de menus” na edição de um módulo • Tempo de carregamento da página • Erro de Javascript ao salvar Listagem de módulos cadastrados • Opção de filtro “Todos” • Coluna “Páginas” onde módulo é carregado Aba “Módulo de atribuição deste item de menu” na edição de um item de menu • Obtém todos os módulos e seus relacionamentos com menus Impactos no front-end Todas as páginas • Função “load()” da classe “JMenuSite” carrega todos os itens de menu cadastrados e os percorre em vários laços “foreach” OBS: o teste de carga foi realizado quando havia somente 4 mil itens de menu.
  28. 28. E como fica o mandamento de nunca mexer nos arquivos do Joomla?
  29. 29. Faltando uma semana para colocar o projeto no ar?
  30. 30. Só resta alterar o Joomla!
  31. 31. Solução 1 • Somente os grupos de menus são carregados. • Itens de menus de cada nível são carregados a partir de requisições AJAX. • Validação JS é feita somente em itens selecionados.
  32. 32. Solução 2 • Removida a opção “Todos” do filtro de busca • Removida a coluna “Página”
  33. 33. Solução 3 • Removida a coluna “Módulo de Atribuição deste Item de Menu”
  34. 34. Solução 4 (a principal) • Reescrita a classe “JMenuSite” de forma a trabalhar somente com os itens de menus necessários para o funcionamento da página • Breadcrumb • Menus • Página atual
  35. 35. Sugestões para a comunidade Joomla • Reformular a lógica de uso dos itens de menu • Criar possibilidade de uso de categorias para os módulos • Armazenar log de criação/edição de módulos • Tornar administrável as opções de filtros nas listagens de registros dos componentes nativos do Joomla
  36. 36. Obrigado! johnnymgo@gmail.com linkedin.com/in/johnnymgo facebook.com/johnnymgo

×