desenvolvendo aplicações web 2.0 que funcionam eduardo ferreira dos santos...

Post on 21-Apr-2015

108 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Desenvolvendo Aplicações Web 2.0 que Funcionam

Eduardo Ferreira dos Santos

eduardo.edusantos@gmail.com

O que é Web 2.0?

• Por que existe a Internet? Por que alguém teria a idéia de conectar todos os computadores do mundo?

• No início, existiam duas categorias de sites: – Publicar o conteúdo na Internet (Web

Publishing): HTML estático;– Aplicações para a Internet (Web Based

Applications).

Web Publishing

• Podem ser chamados de “revistas eletrônicas”;

• Ex.: Catálogo de produtos de uma companhia

• A tecnologia por trás é apenas um detalhe;

• Principal pergunta: por que um usuário acessaria o seu site?

Web Based Applications

• Sites que realizam ações para o usuário;– Ex.: Guardar registros de vacinas e enviar um

e-mail quando a data da vacina chegar;

• Se baseia no desenvolvimento de tecnologias que rodem na Web;

• Principal pergunta: quais ações são possíveis ao usuário quando acessar o site?

Web 2.0

• “Web 2.0 é uma série de aplicações que propiciam e potencializam a formação de redes sociais digitais. Redes sociais são coletivos de pessoas e agentes que interagem direta ou indiretamente entre si e constroem certos padrões recorrentes de relacionamento e comportamento” - Abel Reis

Web 2.0

• Nesse contexto, como desenvolver aplicações para a Internet?

Web 2.0

• Nesse contexto, como desenvolver aplicações para a Internet?

1. Levar em conta a opinião do usuário: Blogs

Web 2.0

• Nesse contexto, como desenvolver aplicações para a Internet?

1. Levar em conta a opinião do usuário: Blogs

2. Levar em conta o conteúdo produzido pelo usuário: Youtube

Web 2.0

• Nesse contexto, como desenvolver aplicações para a Internet?

1. Levar em conta a opinião do usuário: Blogs

2. Levar em conta o conteúdo produzido pelo usuário: Youtube

3. Levar em conta os sites que o usuário visita: del.icio.us

Web 2.0

• Nesse contexto, como desenvolver aplicações para a Internet?

1. Levar em conta a opinião do usuário: Blogs2. Levar em conta o conteúdo produzido pelo

usuário: Youtube3. Levar em conta os sites que o usuário visita:

del.icio.us4. Armazenar tudo isso e vender para os outros:

Google

Web 2.0

• O que ainda não foi feito em termos comerciais?

Web 2.0

• O que ainda não foi feito em termos comerciais?

Utilizar a rede para construir conhecimento

colaborativamente

Web 2.0

• Exemplos existentes:– Wikipédia e Wikis em geral;

Web 2.0

• Exemplos existentes:– Wikipédia e Wikis em geral;– Orkut;

Web 2.0

• Exemplos existentes:– Wikipédia e Wikis em geral;– Orkut;– MySpace;

Web 2.0

• Exemplos existentes:– Wikipédia e Wikis em geral;– Orkut;– MySpace;– Etc etc etc etc etc...

Aplicações Web 2.0

• Qual é a principal vantagem de apenas publicar conteúdo?

Aplicações Web 2.0

• Qual é a principal vantagem de apenas publicar conteúdo?

$$$

Aplicações Web 2.0

• Qual é a principal vantagem de apenas publicar conteúdo?

• Fazer um site estático pode ser praticamente grátis;

• É possível fazer dinheiro com aplicações para a Internet?

Aplicações Web 2.0

• Construindo um modelo de negócios para o seu serviço de Internet:

– O que ele faz?– Quanto custa?– Quanto posso cobrar por isso?– Quem estaria disposto a pagar?

Aplicações Web 2.0

• Aí vem a pergunta de 1 milhão de dólares:

Aplicações Web 2.0

• Aí vem a pergunta de 1 milhão de dólares:

Como desenvolver algo que faça tudo

isso?

• Já existe uma aplicação que faz quase tudo isso: OpenACS

Aplicações Web 2.0

• Foco principal: organizar, desenvolver e gerenciar a informação produzida pelos internautas;

• Prover soluções seguras para tudo isso;

• Reduzir o trabalho humano no processo;

• Agregar o maior número possível de soluções na mesma plataforma.

OpenACS

• Exemplos:– dotLRN como ferramenta para gestão do

conhecimento:• Portal do Software Público Brasileiro;

• Centro de Aprendizagem Trabalho e Inovação em Rede (CATIR)

• Comunidades de Prática da Tecnologia dos Correios (COPTEC)

OpenACS

• Exemplos:– dotLRN como ferramenta de e-learning:

• Universidade Corportativa Alberto Pereira de Castro (UCA)

• Universidade Aberta da Espanha (UNED);

• Consórcio e-lane;

OpenACS

• Exemplos:– LRN@WU:

• Universidade de Vienna na Áustria

OpenACS

• Exemplos:– XoWiki

• Universidade de Vienna na Áustria;

• Integração com Podcasts;

• Gráficos de colaboração;

OpenACS

• Exemplos:– Bug-tracker, Ticket-tracker e Workflow

• Ferramenta para gerência de projetos de software;

• Exemplo de workflow simplificado;

• Possibilidade de gerência da agenda de trabalho;

• Gerência de tickets;

• Possibilidades de implementação.

OpenACS

• Exemplos:– ]Project Open[

• Módulo ERP (Enterprise Resource Planning) do OpenACS;

• Objetivos: administração dos custos e colaboração entre os membros da equipe;

• Wiki e chat integrados;

• Módulo de workflow específico;

• Gerência de “papéis” na empresa.

OpenACS

OpenACS

• Você pagaria por isso?

OpenACS

• Você pagaria por isso?

• Além de você, quem mais pagaria?

OpenACS

• Como é a estrutura de desenvolvimento da ferramenta?

OpenACS: Estrutura

• Como é a estrutura de desenvolvimento da ferramenta?– XQL query dispatcher: independência do banco

de dados;– Service Contract API

• Reusabilidade de código;• Integração de aplicações;• Extensibilidade de pacotes;

– PostgreSQL

OpenACS: Estrutura

• OpenACS-Core:– Registro e gerenciamento de usuários (Parties

Object System);– Subsites (Community Object System);– Registro e gerenciamento de aplicações (APM);

• Gerenciamento de conteúdo (Content Repository);

• Internacionalização / Localização.

OpenACS: Estrutura

• Modelo MVC:– Independência entre código e design (ATS);– Request Processor;– Cache de queries;– Visualização aprimorada.

OpenACS: Estrutura

• Request Processor

OpenACS: Comunidade

• Como tudo isso é mantido?

OpenACS: Comunidade

• Como tudo isso é mantido?– OCT;– Gerenciamento de código fonte;– TIPs (Technical Improvement Proposals);– Projetos;– Bug-tracking;– Aporte de código (voluntário e comercial).

Contatos

• www.softwarepublico.gov.br

• eduardo.edusantos@gmail.com

top related