SlideShare uma empresa Scribd logo
Case CMS Abril System of Systems e  Arquitetura (quase) caótica
Case Requisitos Contexto Empresa Complexa Arquitetura Empregada Distribuída System of Systems REST Case CMS Abril System of Systems e Arquitetura (quase) Caótica AGENDA
CASE Criar  um  gerenciador  e  publicador  de conteúdo digital para o  Grupo Abril Case CMS Abril System of Systems e Arquitetura (quase) Caótica
REQUISITOS Matérias Criar um gerenciador e publicador de  conteúdo digital  para o Grupo Abril qual? Chamadas Estabelecimentos Imagens Atrações Carros Famosos Etc. Etc. Etc. Receitas Jogos Infográficos Case CMS Abril System of Systems e Arquitetura (quase) Caótica
Criar um gerenciador e publicador de  conteúdo digital  para o Grupo Abril publicar onde? Web site Mobile iPad Web API It doesn’t matter... Case CMS Abril System of Systems e Arquitetura (quase) Caótica REQUISITOS
E o que mais temos que fazer? Funcionalidades cross marcas Case CMS Abril System of Systems e Arquitetura (quase) Caótica Anotação de conteúdo (Ranking, Comentários, etc.) Segurança e… Discovery Métricas Search Categorização Autenticação REQUISITOS
Escalar! Case CMS Abril System of Systems e Arquitetura (quase) Caótica REQUISITOS Aproximadamente 300 milhões Pageview/Mês Entre os 600 maiores sites do mundo
 
 
 
 
 
 
CONTEXTO Grupo Abril 15 Unidades de Negócio 85 Marcas 113 Sites                                 Muitos requisitos! Fonte: http://www.grupoabril.com.br / http://www.google.com/adplanner/static/top1000/ Case CMS Abril System of Systems e Arquitetura (quase) Caótica
Um sistema complexo? Case CMS Abril System of Systems e Arquitetura (quase) Caótica CONTEXTO
Sistemas Adaptativos Complexos (CAS) Descentralizado Emergência Co-evolução Sub ideal Variedade Auto-organização Conectividade Regras simples Sistemas Aninhados À beira do caos Fronteiras CONTEXTO Case CMS Abril System of Systems e Arquitetura (quase) Caótica
CAS: Web http://en.wikipedia.org/wiki/Internet CONTEXTO Case CMS Abril System of Systems e Arquitetura (quase) Caótica
CAS: Revoadas CONTEXTO Case CMS Abril System of Systems e Arquitetura (quase) Caótica
CAS: Empresa Complexas no sentido de que são diversas e feitas de múltiplos elementos interconectados; Adaptativos porque têm a capacidade de mudar e aprender com experiências passadas CONTEXTO Case CMS Abril System of Systems e Arquitetura (quase) Caótica
Forças sobre uma empresa Competição Aquisições Otimização de Negócio Business Economia Órgãos Regulatórios Desastre Natural Externa Processos Infra-estrutura Pessoas Interna CONTEXTO Case CMS Abril System of Systems e Arquitetura (quase) Caótica
É preciso… Escalar em requisitos de negócio Absorver os mais diversos requisitos  Escalabilidade e performance Evolutivo, emergente e incremental CONTEXTO Case CMS Abril System of Systems e Arquitetura (quase) Caótica
CMS:   Linked Data CONTEXTO Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  Qual arquitetura que melhor acomoda esses requisitos e esse dinamismo? #comofaz? ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  Sistema Centralizado, Monolítico (Engenharia de Software) ?   ou     Sistema Descentralizado, Distribuído (Engenharia de Sistemas) ? ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  ...organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations. Conway's Law  RESPEITE SEMPRE! ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
Winner is:  System of Systems (SoS) (Engenharia de Sistemas) …  dividir para conquistar ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
System of Systems Independência operacional e gerencial dos sistemas  Desenvolvimento evolutivo Comportamento emergente Sistemas heterogênios Interconectados ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
+ REST: Interconectados Client–server Stateless Cacheable Layered system Uniform interface  A Web é REST! ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
Não só REST, mas também HTTP HTTP como  protocolo de aplicação Um dos protocolos mais bem sucedidos da história  Infra amplamente disponível (proxies, caches, libs, etc) Suportado por qualquer linguagem Conhecimento disseminado  (mas muitas vezes não tão bem entendido) O HTTP é rei na Web! ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
Alguns sistemas que já temos... ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
Independência de um sistema no SoS Cada um com suas próprias : Features Responsabilidades Tecnologia Equipe Ciclo de releases e deploy Ciclo de produto  ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
Alguns sistemas que já conhecemos... CMS  Descentralizado Distribuído! REST, HTTP... ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
Identificação e Localização de um conteúdo (recursos) http://editorial.api.abril.com.br / materias /lula-inaugura-nova-hidroeletrica  http://editorial.api.abril.com.br / listas-editoriais /veja-10-mais    http://media.api.abril.com.br / imagens /482840AC3242   http://anotacoes.api.abril.com.br / comentarios /48284719280182   http://aapg.api.abril.com.br / usuarios /jcmlima   http://search.api.abril.com.br / indices /veja ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
Identificação e Localização de um conteúdo (recursos) {     "id": " http://editorial.api.abril.com.br/materias/critico-olhar- estrangeiro ",     ...          "link": [         {             "href": " http://editorial.api.abril.com.br/materias/critico- olhar-estrangeiro ",             "rel": "self",             "type": "application/json"          },         ...     ] } ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
Hypermedia as the engine of application state (HATEOAS) {      "link": [ {              "href": "http://anotacoes.api.abril.com.br/comentarios",              "rel": " self ",              "type": "application/json"          },          {              "href": "http://anotacoes.api.abril.com.br/comentarios/novo",              "rel": " novo ",              "type": "application/json"          },          {              "href":"http://anotacoes.api.abril.com.br/comentarios/busca/des criptor",              "rel": " search ",              "type": "application/opensearchdescription+xml"          }      ] } ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
Baixo acoplamento entry_point = Restfulie.at( ANOTACOES_ENTRYPOINT ).get! if entry_point.links.include?( :search )      open_search_descriptor = entry_point.links.search.get!      url_search = open_search_descriptor.replace( conteudo_anotado  =>  conteudo).url      anotacoes = Restfulie.at(url_search).get!.first      return anotacoes. comentarios end Restfulie tem contribuição da Abril ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
Liberdade de implementação ... independência! Times pequenos...  ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
Escalabilidade e tolerância a falha HTTP Cache-Control: Max-age=60 ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
Monitoramento Webaliser ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
Pulveriza requisitos, paraleliza desenvolvimento Imagens: http://dryicons.com ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica evolução?
ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica evolução?
O Ecossistema decide quem sobrevive... ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica Evolução!
Arquitetura Emergente: A arquitetura não deve focar num sistema, mas sim no ecossistema CAS e Web como inspiração Deixe o ecossistema decidir ... mas sendo pragmático    SoS, REST, HTTP para permitir a evolução do ecosistema        Nunca substime a "Conway's Law" No BDUF but isn't a  no design up front Usar padrões abertos: Não reinvente a roda!    Case CMS Abril System of Systems e Arquitetura (quase) Caótica CONCLUSÃO
That's all QUESTIONS? David Lojudice Sobrinho [email_address] @dalssoft Julio César Lima [email_address] @jcmlima

Mais conteúdo relacionado

PDF
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
PDF
Como um verdadeiro sistema REST funciona: arquitetura e performance na Abril
PDF
Rest Teoria E Pratica
KEY
PHP RESTful Web Services - PHPConf'09
PDF
PHP RESTful Web Services
PDF
Criando e consumindo webservice REST com PHP e JSON
PDF
Mini Curso Web Services com PHP
PPT
Web Services Rest
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
Como um verdadeiro sistema REST funciona: arquitetura e performance na Abril
Rest Teoria E Pratica
PHP RESTful Web Services - PHPConf'09
PHP RESTful Web Services
Criando e consumindo webservice REST com PHP e JSON
Mini Curso Web Services com PHP
Web Services Rest

Semelhante a Case CMS Abril - System of Systems e Arquitetura (quase) Caótica. (20)

KEY
Construindo uma arquitetura com REST, HTML 5 e JSF 2
PDF
Cache, Concorrência e Sincronização.
PDF
Como um grande sistema REST funciona - arquitetura e desempenho
PPT
Sistemas Distribuídos - Modelos Arquitetônicos
PDF
[DevDay2018] Arquitetura de Software num cenário de incertezas - Arquitetura ...
PDF
Arquitetura, uma questão de "estilo"?
PDF
ACII - SL07 - Introducao aos sistemas distribuidos
PDF
Coleta de configurações com o KORUJA OpenCMDB
PDF
APSI 2 aulas - padroes arquiteturais - camadas PROF.TARCIANE
PPTX
Fundamentos da arquitetura cliente servidor.
PDF
TDC2016POA | Trilha Arquetetura - Revitalizando aplicações desktop usando Ce...
PDF
TDC2016SP Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...
PPTX
Cloud Computing - Palestra de Silvio Meira no Road Show da Amazon Web Services
PDF
Arquitetura e Integração de sistemas
PPT
Arquitetura da Informação de web sites: avaliação de blogs desenvolvidos por...
PPT
História dos Sistemas - 3a Semana de SI
PDF
Arquitetura evolutiva - Arquitetura ágil (TDC FLORIPA 2023)
PPTX
Panorama Atual e Tendências do Desenvolvimento de Sistemas para Internet
PDF
Meet-ups Brazil: Padrões de Gerenciamento de Conteúdo / Patterns in Content M...
Construindo uma arquitetura com REST, HTML 5 e JSF 2
Cache, Concorrência e Sincronização.
Como um grande sistema REST funciona - arquitetura e desempenho
Sistemas Distribuídos - Modelos Arquitetônicos
[DevDay2018] Arquitetura de Software num cenário de incertezas - Arquitetura ...
Arquitetura, uma questão de "estilo"?
ACII - SL07 - Introducao aos sistemas distribuidos
Coleta de configurações com o KORUJA OpenCMDB
APSI 2 aulas - padroes arquiteturais - camadas PROF.TARCIANE
Fundamentos da arquitetura cliente servidor.
TDC2016POA | Trilha Arquetetura - Revitalizando aplicações desktop usando Ce...
TDC2016SP Trilha Arquitetura.NET - Revitalizando aplicações desktop usando C...
Cloud Computing - Palestra de Silvio Meira no Road Show da Amazon Web Services
Arquitetura e Integração de sistemas
Arquitetura da Informação de web sites: avaliação de blogs desenvolvidos por...
História dos Sistemas - 3a Semana de SI
Arquitetura evolutiva - Arquitetura ágil (TDC FLORIPA 2023)
Panorama Atual e Tendências do Desenvolvimento de Sistemas para Internet
Meet-ups Brazil: Padrões de Gerenciamento de Conteúdo / Patterns in Content M...
Anúncio

Último (11)

PDF
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf
PPTX
Viasol Energia Solar -Soluções para geração e economia de energia
PDF
Manejo integrado de pragas na cultura do algodão
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PPTX
Arquitetura de computadores - Memórias Secundárias
PPTX
Design - Introdução a Gestalt e teoria das formas
PPTX
Proposta de Implementação de uma Rede de Computador Cabeada.pptx
PDF
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
PPTX
Eng. Software - pontos essenciais para o início
PPTX
Tipos de servidor em redes de computador.pptx
PPTX
Utilizando code blockes por andre backes
eBook - GUIA DE CONSULTA RAPIDA EM ROTEADORES E SWITCHES CISCO - VOL I.pdf
Viasol Energia Solar -Soluções para geração e economia de energia
Manejo integrado de pragas na cultura do algodão
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Arquitetura de computadores - Memórias Secundárias
Design - Introdução a Gestalt e teoria das formas
Proposta de Implementação de uma Rede de Computador Cabeada.pptx
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
Eng. Software - pontos essenciais para o início
Tipos de servidor em redes de computador.pptx
Utilizando code blockes por andre backes
Anúncio

Case CMS Abril - System of Systems e Arquitetura (quase) Caótica.

  • 1. Case CMS Abril System of Systems e  Arquitetura (quase) caótica
  • 2. Case Requisitos Contexto Empresa Complexa Arquitetura Empregada Distribuída System of Systems REST Case CMS Abril System of Systems e Arquitetura (quase) Caótica AGENDA
  • 3. CASE Criar um gerenciador e publicador de conteúdo digital para o Grupo Abril Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 4. REQUISITOS Matérias Criar um gerenciador e publicador de conteúdo digital para o Grupo Abril qual? Chamadas Estabelecimentos Imagens Atrações Carros Famosos Etc. Etc. Etc. Receitas Jogos Infográficos Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 5. Criar um gerenciador e publicador de conteúdo digital para o Grupo Abril publicar onde? Web site Mobile iPad Web API It doesn’t matter... Case CMS Abril System of Systems e Arquitetura (quase) Caótica REQUISITOS
  • 6. E o que mais temos que fazer? Funcionalidades cross marcas Case CMS Abril System of Systems e Arquitetura (quase) Caótica Anotação de conteúdo (Ranking, Comentários, etc.) Segurança e… Discovery Métricas Search Categorização Autenticação REQUISITOS
  • 7. Escalar! Case CMS Abril System of Systems e Arquitetura (quase) Caótica REQUISITOS Aproximadamente 300 milhões Pageview/Mês Entre os 600 maiores sites do mundo
  • 8.  
  • 9.  
  • 10.  
  • 11.  
  • 12.  
  • 13.  
  • 14. CONTEXTO Grupo Abril 15 Unidades de Negócio 85 Marcas 113 Sites                                 Muitos requisitos! Fonte: http://www.grupoabril.com.br / http://www.google.com/adplanner/static/top1000/ Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 15. Um sistema complexo? Case CMS Abril System of Systems e Arquitetura (quase) Caótica CONTEXTO
  • 16. Sistemas Adaptativos Complexos (CAS) Descentralizado Emergência Co-evolução Sub ideal Variedade Auto-organização Conectividade Regras simples Sistemas Aninhados À beira do caos Fronteiras CONTEXTO Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 17. CAS: Web http://en.wikipedia.org/wiki/Internet CONTEXTO Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 18. CAS: Revoadas CONTEXTO Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 19. CAS: Empresa Complexas no sentido de que são diversas e feitas de múltiplos elementos interconectados; Adaptativos porque têm a capacidade de mudar e aprender com experiências passadas CONTEXTO Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 20. Forças sobre uma empresa Competição Aquisições Otimização de Negócio Business Economia Órgãos Regulatórios Desastre Natural Externa Processos Infra-estrutura Pessoas Interna CONTEXTO Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 21. É preciso… Escalar em requisitos de negócio Absorver os mais diversos requisitos Escalabilidade e performance Evolutivo, emergente e incremental CONTEXTO Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 22. CMS: Linked Data CONTEXTO Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 23.   Qual arquitetura que melhor acomoda esses requisitos e esse dinamismo? #comofaz? ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 24.   Sistema Centralizado, Monolítico (Engenharia de Software) ?   ou     Sistema Descentralizado, Distribuído (Engenharia de Sistemas) ? ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 25.   ...organizations which design systems ... are constrained to produce designs which are copies of the communication structures of these organizations. Conway's Law RESPEITE SEMPRE! ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 26. Winner is: System of Systems (SoS) (Engenharia de Sistemas) … dividir para conquistar ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 27. System of Systems Independência operacional e gerencial dos sistemas Desenvolvimento evolutivo Comportamento emergente Sistemas heterogênios Interconectados ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 28. + REST: Interconectados Client–server Stateless Cacheable Layered system Uniform interface A Web é REST! ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 29. Não só REST, mas também HTTP HTTP como protocolo de aplicação Um dos protocolos mais bem sucedidos da história  Infra amplamente disponível (proxies, caches, libs, etc) Suportado por qualquer linguagem Conhecimento disseminado (mas muitas vezes não tão bem entendido) O HTTP é rei na Web! ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 30. Alguns sistemas que já temos... ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 31. Independência de um sistema no SoS Cada um com suas próprias : Features Responsabilidades Tecnologia Equipe Ciclo de releases e deploy Ciclo de produto ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 32. Alguns sistemas que já conhecemos... CMS  Descentralizado Distribuído! REST, HTTP... ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 33. Identificação e Localização de um conteúdo (recursos) http://editorial.api.abril.com.br / materias /lula-inaugura-nova-hidroeletrica  http://editorial.api.abril.com.br / listas-editoriais /veja-10-mais    http://media.api.abril.com.br / imagens /482840AC3242   http://anotacoes.api.abril.com.br / comentarios /48284719280182   http://aapg.api.abril.com.br / usuarios /jcmlima   http://search.api.abril.com.br / indices /veja ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 34. Identificação e Localização de um conteúdo (recursos) {     "id": " http://editorial.api.abril.com.br/materias/critico-olhar- estrangeiro ",     ...         "link": [         {             "href": " http://editorial.api.abril.com.br/materias/critico- olhar-estrangeiro ",             "rel": "self",             "type": "application/json"         },         ...     ] } ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 35. Hypermedia as the engine of application state (HATEOAS) {      "link": [ {              "href": "http://anotacoes.api.abril.com.br/comentarios",              "rel": " self ",              "type": "application/json"          },          {              "href": "http://anotacoes.api.abril.com.br/comentarios/novo",              "rel": " novo ",              "type": "application/json"          },          {              "href":"http://anotacoes.api.abril.com.br/comentarios/busca/des criptor",              "rel": " search ",              "type": "application/opensearchdescription+xml"          }      ] } ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 36. Baixo acoplamento entry_point = Restfulie.at( ANOTACOES_ENTRYPOINT ).get! if entry_point.links.include?( :search )      open_search_descriptor = entry_point.links.search.get!      url_search = open_search_descriptor.replace( conteudo_anotado => conteudo).url      anotacoes = Restfulie.at(url_search).get!.first      return anotacoes. comentarios end Restfulie tem contribuição da Abril ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 37. Liberdade de implementação ... independência! Times pequenos... ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 38. Escalabilidade e tolerância a falha HTTP Cache-Control: Max-age=60 ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 39. Monitoramento Webaliser ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 40. Pulveriza requisitos, paraleliza desenvolvimento Imagens: http://dryicons.com ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica
  • 41. ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica evolução?
  • 42. ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica evolução?
  • 43. O Ecossistema decide quem sobrevive... ARQUITETURA Case CMS Abril System of Systems e Arquitetura (quase) Caótica Evolução!
  • 44. Arquitetura Emergente: A arquitetura não deve focar num sistema, mas sim no ecossistema CAS e Web como inspiração Deixe o ecossistema decidir ... mas sendo pragmático    SoS, REST, HTTP para permitir a evolução do ecosistema       Nunca substime a "Conway's Law" No BDUF but isn't a no design up front Usar padrões abertos: Não reinvente a roda!   Case CMS Abril System of Systems e Arquitetura (quase) Caótica CONCLUSÃO
  • 45. That's all QUESTIONS? David Lojudice Sobrinho [email_address] @dalssoft Julio César Lima [email_address] @jcmlima

Notas do Editor

  • #2: Grandes topicos: - Arquitetura Emergente tentar mostrar que Arquitetura também pode ser evolutiva e Arq != BDUF - Arquitetura de Sistemas Distribuidos O que nos levou a usar essa abordagem - Reforcar: Conhecer RESTFUL
  • #3: Requisitos e contexto: tentar explicar a bucha... :) ... vamos viajar um pouco na maionese pra entender nossa empresa.
  • #4: Pq não utilizar soluções de mercado? Necessidades especificas de requisitos, escalabilidade e principalmente extensibilidade .alem de ser estratégico
  • #5: Conteúdo na Abril é o nosso maior asset. Centenas de jornalistas, blogueiros, colunistas, etc - Maior grupo de mídia impressa do país e um dos maiores do mundo Grande variedade de conteúdo, desde fichas de carros, fotos de modelos, notícias políticas, resenhas de atrações, infantil, saude, adulto, etc, etc, etc, etc - Conteúdo de nicho ! Calda Longa !
  • #6: O conteudo deve ser apresentado em varias formas Explorar o melhor de cada media
  • #9: A Abril é uma corporcao formada por diversas empresas, que cuidam de 1 ou mais marcas, Sinergia existe mas nao é tao explorada no paper & ink Muitas        Culturas        Nichos        Requisitos
  • #13: A Abril é uma corporcao formada por diversas empresas, que cuidam de 1 ou mais marcas, Sinergia existe mas nao é tao explorada no paper & ink Muitas        Culturas        Nichos        Requisitos
  • #15: Empresa decentralizada! As unidades de negócios + Marcas + Pessoas: formam um sistema É facil ver que a quantidade de requisito é :        - Gigante        - Evolutivos        - Dinamicos (e mutaveis!)        - CONFLITANTES!
  • #16: Não é um sistema computacional...  mas sistema na definicao:  é um conjunto de elementos interconectados para formar algo : CORPORACAO ABRIL
  • #21: Assim como a revoada, temos forcas agindo na abril        - BUSINESS : Inerentes ao Negocio        - EXTERNAS : Inerentes a Sociedade onde a empresa atua        - INTERNAS
  • #22: Requisitos conflitantes, requisitos não incrementais. Equipe grande -> necessidade de um esforço grande de orquestração e gerenciamento
  • #23: Os dados precisam estar relacionados para: - Descoberta + organica - Search Recomendacao Retenção ! Cross pollination
  • #27: - A WEB é ASSIM !!!
  • #28: QUE É SoS ?? Dividir para conquistar ! Varios sistemas em que CADA UM tem as caracteristicas acima
  • #29: - Cada sistema pode ser um client e/ou um server. - HTTP é um protocolo Stateless = Escalabilidade horizontal ( REQUISITO ATENDIDO : ESCALABILIDADE) - Cacheable pois os recursos podem ser cacheados em camadas intermediarias = varnishd (REQUISITO : ESCALABILIDADE + TOLERANCIA FALHA) - Layerd System = Dominios , Camada de Cache, Sites,  Caches, CDN Web so escala por causa disto! Code on demand = not yet Uniform Interface = Utilizamos HTTP como protocolo de aplicacao e nao como protocolo de transporte.
  • #30: HTTP é o nosso portugues... nossa uniform interface Latencia pode ser alta, porém infra adequada ajuda….. Nao deve ser transparente aos desenvolvedores…. Rede importa!
  • #31: Um CMS distribuido! O conteudo esta em varios sistemas. Não exite centralizador. Não entrar em detalhe de cada sistema... só para entender o tamanho do SoS
  • #32: Sistemas do SoS: um elemento do sistema É autonomo, mas pode ter dependencias
  • #33: Os sistemas emergem das necessidades de negócio. Separation of concern, porém duplicidade podem existir, assim como conflito.
  • #34: PQ? Porque não ter um ID e um Localizador?  Porque não existe um repositório central para fazer o de-para (sistema descentralizado).   Tambem garante um unico ID em todo o sistemas (se localiza, identifica).
  • #35: Lembrar que é um Json
  • #36: - Linkagem de dados  - Navegacao entre dados é semantica (via rel)
  • #37: Codigo ruim! Sem maquina de estado! Apenas demostracao. - FACIL DE LER - FACIL DE MANTER Conhece: - Entry point - Navegacao possivel - Um pouco do conteudo (hash) - HTTP verbs Nao conhece: - Estrutura do objeto predefinida - Estrutura dos metodos - Content-type - URLs - Estruturas intermediarias
  • #38: Equipe grande -> necessidade de um esforço grande de orquestração e gerenciamento Aqui tem Eng. De Software!
  • #39: É premissa que sistemas falham, logo uma aplicacao que utilize-se de outra deve estar pronta para trabalhar com a provavel falha ou indiponibilidade de outra aplicacao (como indisponiblidade)
  • #40: Faz décadas que monitoramos HTTP!!!!!! Monitoramento interno do SoS === Monitoramento Externo! Ferramentas + Know how disponivel!
  • #41: SoS permite PARALELIZAR requisitos 1 MACRO FEATURE = DIVERSAR features pequenos em diversos sistemas…. LEMBRA SEMPRE DE SEPARATION OF CONCERNS! ALGUEM TEM QUE TER VISAO DO TODO Porem implica em mais cuidado no gerenciamento de dependencias!  
  • #42: Falar da idéia de sistemas intercontectados…
  • #44: Existem muitas variaveis no ecosistema: Politica, cultura, novas tecnologias, moda, etc.