Arquitetura:
Model View Controller
Universidade Federal do Ceará
Engenharia de Software - Arquitetura de Software

2014.2
MVC - Histórico
Controller
View
Model
Modelo Mental
Modelo Computacional
MVC
MVC não é um padrão de design,
é um padrão de arquitetura que
descreve uma forma de estruturar
a nossa aplicação e as
responsabilidades e interações
para cada parte dessa estrutura.
Model Controller View
Pontos positivos e negativos
Prós:
• Clara separação de apresentação (a
interface com o usuário) e lógica de
aplicação
• Suporte para diferentes tipos de
usuários, utilizando diferentes tipos de
dispositivos é um problema comum nos
dias de hoje
• Além de isolar o ponto de vista da lógica
de negócios, a separação MVC reduz a
complexidade na concepção de
aplicações de grande porte
• Torna o sistema escalável e portável.
Contras:
• Requer uma quantidade maior de
tempo para analisar e modelar o
sistema
• Requer pessoal especializado
• Não é aconselhável para pequenas
aplicações
Atributos estruturais de Qualidade
QUALIDADE
Desempenho
Escalabilidade
Segurança
Modificabilidade
Padrões de Projetos compatíveis
• Bridge é um padrão de projeto de software, utilizado
quando é desejável que uma interface (abstração) possa
variar independentemente das suas implementações.
Padrões de Projetos compatíveis
• Observer
• define uma dependência um-para-muitos entre objetos de modo que quando
um objeto muda o estado, todos seus dependentes são notificados e
atualizados automaticamente
• Strategy
• representar uma operação a ser realizada sobre os elementos de uma
estrutura de objetos
• Composite
• utilizado para representar um objeto que é constituído pela composição de
objetos similares a ele
HMVC
Hierarchical Model–View–Controller
HMVC - Detalhado
Model
Controller
View
Model
Controller
View
Model
Controller
View
MVC - Obrigado
Alunos:
• Jefferson Silva
• Laisa Morais
• Thiago Pereira
Professor:
• Diego Andrade
Referências:
• http://en.wikipedia.org/wiki/
Hierarchical_model–view–controller
• http://www.javaworld.com/article/
2076128/design-patterns/hmvc--the-
layered-pattern-for-developing-strong-
client-tiers.html
• Bass, L., Clements, P., Kazman, R.,
“Software architecture in practice”,
Addison-Wesley, 2003.
• Kassab, M., El-Boussaidi, G., & Mili, H.
A quantitative evaluation of the impact
of architectural patterns on quality
requirements, 2012.

Arquitetura MVC

  • 1.
    Arquitetura: Model View Controller UniversidadeFederal do Ceará Engenharia de Software - Arquitetura de Software 2014.2
  • 2.
  • 3.
    MVC MVC não éum padrão de design, é um padrão de arquitetura que descreve uma forma de estruturar a nossa aplicação e as responsabilidades e interações para cada parte dessa estrutura. Model Controller View
  • 4.
    Pontos positivos enegativos Prós: • Clara separação de apresentação (a interface com o usuário) e lógica de aplicação • Suporte para diferentes tipos de usuários, utilizando diferentes tipos de dispositivos é um problema comum nos dias de hoje • Além de isolar o ponto de vista da lógica de negócios, a separação MVC reduz a complexidade na concepção de aplicações de grande porte • Torna o sistema escalável e portável. Contras: • Requer uma quantidade maior de tempo para analisar e modelar o sistema • Requer pessoal especializado • Não é aconselhável para pequenas aplicações
  • 5.
    Atributos estruturais deQualidade QUALIDADE Desempenho Escalabilidade Segurança Modificabilidade
  • 6.
    Padrões de Projetoscompatíveis • Bridge é um padrão de projeto de software, utilizado quando é desejável que uma interface (abstração) possa variar independentemente das suas implementações.
  • 7.
    Padrões de Projetoscompatíveis • Observer • define uma dependência um-para-muitos entre objetos de modo que quando um objeto muda o estado, todos seus dependentes são notificados e atualizados automaticamente • Strategy • representar uma operação a ser realizada sobre os elementos de uma estrutura de objetos • Composite • utilizado para representar um objeto que é constituído pela composição de objetos similares a ele
  • 8.
  • 9.
  • 10.
    MVC - Obrigado Alunos: •Jefferson Silva • Laisa Morais • Thiago Pereira Professor: • Diego Andrade Referências: • http://en.wikipedia.org/wiki/ Hierarchical_model–view–controller • http://www.javaworld.com/article/ 2076128/design-patterns/hmvc--the- layered-pattern-for-developing-strong- client-tiers.html • Bass, L., Clements, P., Kazman, R., “Software architecture in practice”, Addison-Wesley, 2003. • Kassab, M., El-Boussaidi, G., & Mili, H. A quantitative evaluation of the impact of architectural patterns on quality requirements, 2012.