im ar sinergia entre soa e web 2.0: novo contexto para as aplicações corporativas cezar taurion...
TRANSCRIPT
IM AR
Sinergia entre SOA e Web 2.0:Novo contexto para as aplicações corporativas
Cezar TaurionGerente de Novas Tecnologias AplicadasIniciativas Estratégicas
[email protected]/developerworks/blogs/page/ctaurion
2 IM AR
Isto tudo faz algum sentido para vocês ?
folksonomy
Wikis
Social Networks
Social Computing
AJAX
RSSMashups
REST
3 IM AR
O Fenômeno Wikipedia
Imaginem um projeto com as seguintes características:
– Aglutinar todo conhecimento humano
– Autoria colaborativa
– Dezenas de línguas (+1.500.000 verbetes em inglês e + 230.000 em português)
– Manter histórico das atualizações, acesso rápido, flexível nas atualizações e inserções de verbetes (1500 verbetes por dia), alta demanda (um dos dez sites mais visitados)
– Como gerenciar este projeto na forma tradicional?
4 IM AR
O Fenômeno das redes sociais
5 IM AR
6 IM AR
Mudanças no comportamento social…
Who do you trust? Word of mouth rank high for all
IM AR
Personalidade de 2006: VOCÊ!
A Web 2.0 está criando novas fronteiras para a colaboração e a inteligência coletiva.
“In 2006, the World Wide Web became a tool for bringing together the small contributions of millions of people and making them matter”
Time, December 25, 2006
8 IM AR
EconomicSocial
Technology
Web 2.0
Web 2.0 is a set of economic, social, and technology trends that collectively form the basis for the next generation of the Internet - a more mature, distinctive medium characterized by user participation, openness, and network effects.
Source: Web 2.0 Best Practices and Principles, O’Reilly Radar
O que é a Web 2.0?
9 IM AR
O que é a Web 2.0?
Web 2.0 is about connecting people, and making technology efficient for people.
Web 1.0 was about connecting computers and making technology more efficient for computers.
Web 2.0 changes the way businesses interact with customers
Expanding from dozens of markets with millions of people to millions of markets of dozens of people
10 IM AR
O contexto da evolução da internet
Web 3DWeb 1.0 Web 2.0
Páginas informativas com texto e gráficos
Usuários gerando conteúdo, blogs, wikis, mashups visando compartilhar
Ambiente altamente social, criado pelo
usuário
Co
nte
úd
o
Acesso ParticiparBusca Colaborar Co-Criação
Comunicação, RH, Compras, Marketing,
Treinamento
Colaboração, Treinamento ,
Marketing
Desenvolvimento de Produtos/ Serviços,
Otimização do Trabalho, Educação,
Comunidades
Neg
óci
os
11 IM AR
Digitalização
Evolução das comunidades
Co
mu
nid
ades
Games Board Video Computer Internet MMOGs
Education Classroom Distance E-learning Virtual UnivPeer-to-peer learning
Marketplace Bricks & Mortar Online Shopping eBayAmazon
Collaboration In-person Tele-conf Video Conf E-meetings IM Jam
Professional development Conference Community of PracticeVirtual conferenceBlackboards
Software development RCS SourceForge SubVersion Rational Jazz
Comunidade 0.0
(Limitada pela geografia)
Comunidade 1.0 (Web interface)
Comunidade 2.0(Social computing)
12 IM AR
Web 2.0 : Internet como “The Platform”
The Web
as
“The Platform”
Tools: RSS, AJAX, PHP,
Ruby
Services, not packaged software
Architectural participation
Small pieces loosely joined, or
“re-mixed”
Harnessing collective
intelligence
Software that gets better as more people use it
Standards: REST, XHTML
Techniques: Mash-up, wiki,
tagging, blogging
Rich user experiences
Light-weight programming
models
13 IM AR
O conceito da Cauda Longa...
The Long Tail• Targeting niche markets - expanding from
dozens of markets of millions of people to millions of markets of dozens of people
• Examples: Google, Netflix, Amazon
Network Effects• Product or service is more valuable the more
people that use it (e.g telephone, email, instant messaging…)
• Examples: eBay, MySpace, Craigslist…
14 IM AR
Long-tail & Software : Situational Applications
Enterprise Application Long-tail
Situational Applications
Applications
Bu
ilt
to L
ast
Mission Critical
WSWS CE & Open Source
15 IM AR
Definition: Situational Applications
Situational application development involves aggregating, customizing, or extending an existing collection of simple web services
– Built to solve an immediate, specific business problem
– Typically performed by non-traditional programmers (e.g., business professionals, analysts, other IT staff, etc.)
– Makes use of pre-existing software components or services such as spreadsheets, report generators or vertical business applications already in use
– Manipulates static and increasingly dynamic content – information-centric
– Accelerated by a community-based development approach
Integration is pushed to the edges and on a global scale
16 IM AR
The Accelerating Evolution of Software
New tools and approaches to develop situational applications – applications built with simplicity, efficiency, and just enough function to solve the business problem at hand – are emerging
– Proliferation of easy-to-use software, tools and techniques (e.g., Web 2.0, LAMP, PHP)
– Wide availability of domain-specific web services (e.g., Google maps, UPS, NoAA)
– Simple application paradigms to manipulate, integrate, and publish dynamic content (e.g., QEDWiki)
– The rapid growth in computer literacy and non-traditional programmers
These trends will result in significant challenges for enterprise IT environments
– Supporting and enabling community-based development within the enterprise
– Refactoring interfaces to enterprise applications as consumable web services
– Dealing with the growing heterogeneity in the IT environment
– Facilitating the development, deployment, and management of situational applications
Situational application development approaches will fundamentally change the way applications are developed and deployed, accelerating the proliferation of consumable web services
Situational application development paradigms are emerging which will challenge traditional IT development
17 IM AR
Evolution of Enterprise ApplicationsE
nte
rpri
se A
pp
licat
ion
Evo
luti
on
60’s-80’s 90’s-00 00-10’s Time
Mainframe World
Client-Server World
Web Services Enabled World
Enterprise applications built by IT departments
Applications initially prototyped by LOBs, then rebuilt by IT departments
Applications built by LOBs and end-users, customizing and aggregating services as needed
18 IM AR
Situational Application Example – Scipionus.com
Application built by one person in one day, leveraging Google maps web service
Legend:
– events
– changes
– 50 latest
19 IM AR
Situational Applications: The primordial mashup
www.housingmaps.comcraigslistGoogle Maps + =
20 IM AR
Mashups: Script, scrape, shred, snip, mash, map…. That is the new programming fashion. .
Mashups like Coffee integrate disparate data sources through simple scripting tools by combining existing web services into entirely new applications
Typically sourced from a third party via a public interface using Web feeds (e.g. RSS or Atom) and JavaScript
21 IM AR
AccuWeather™
Overview
– SMB company that aggregates weather content, crushes forecasts that are consume by diverse businesses
– ProfessionalPlus staff that assembles custom forecast models for businesses
– ModelPlus - suite of advanced forecast modeling solutions such as StormTimer
– Example: CSX - sends train route information to AccuWeather - compares with severe weather to “message” CSX systems of severe, situational conditions
AccuWeather Opportunity
– Backlog of custom dashboards growing fast
– Customers asking for “flexible” mash-ups to meet ongoing changing business needs
– Customize costs high given current technology foundation
– Extend current weather content subscription to enabling user-customizable dashboards
– Seeing growing number of weather widgets, branded with AccuWeather - with poor quality - potential reflection on company
AccuWeather™“(Web 2.0) Widget-delivered weather information allows our clieants to be more productive in utilizing AccuWeather data to identify and exploit business opportunities while at the same time helping clients manage risks imposed by adverse weather conditions.”
22 IM AR
Causa The World is Flat
Information Overload
Business Changes faster than IT can respond
CIOs can’t afford to serve the “long tail”
Efeito Empowerment and independence of Knowledge worker
Knowledge Worker is now the Situational Application Assembler.
Web 2.0 enables the Knowledge worker to collaborate and create “good enough” solutions that satisfy their ever changing needs
Issues Productivity of Knowledge worker – Tools for new programming models
Reliability and Manageability of decentralized IT applications
Search capabilities to enable reuse of long-tail solutions
Porque as empresas precisariam de Web 2.0?Because the Landscape has changed
23 IM AR
IT buyers view the Web 2.0 concept favorably
“Which of the following best describes your reaction to the term ‘Web 2.0’?”
Source: Forrester Research, June 2007 United States Web 2.0 Online Survey
Base: 275 IT decision-makers at US companies with 500 or more employeesNote: “Don’t know” responses excluded
Neutral,29%
3% Ï’ve not heard the term Web 2.0 beforeStrongly Negative,0%
Positive, 44%
20% Strongly PositiveNegative, 3%
IM AR
“How businesses are using Web 2.0:A McKinsey Global Survey”
25 IM AR
Embora ainda estejamos na fase do “Hype Cycle” precisamos entender o assunto e (re)agir!
Visibility
TechTrigger
Peak of inflated expectation
Citizen journalism
Podcasts
RSS
Blogs
Wikis
Search Engine Opt.
Word of Mouth
Social networks
Webcasts
Instant messaging
database
newsgroup
Direct mail
PostPress confPhoneFax
Slope of enlightenment
Plateau of productivity
Tecnologias que compõem a Web 2.0
26 IM AR
Types Of Enterprise Web 2.0 AppsJuly 2007 “Developing Enterprise Web 2.0 Applications”
27 IM AR
Junção dos mundos SOA e Web 2.0
SOA-class Apps• Standards-based (WS-*,…, SCA)
• Normalized Transactions
• Inward-Facing
• Somewhat loosely Coupled
• Security: “lockdown”
Gartner™
Web 2.0-class Apps• Web 2.0 technologies & services
- defacto standards
• Content/data focused
• Outward-Facing
• Very Loosely Coupled
• Security: Assume Everything is a Threat
28 IM AR
Reshaping of Enterprise Software
• Focus on Simplicity - empowering content-centric developers
• Data Driven - business value centered on content
• Remixability - new business opportunities to COMBINE content
• OpenAPIs - building/extending ecosystems both with ISVs & customer COLLABORATION
• Rich Internet Applications - improved EXPERIENCE leads to improved revenue
• User Generation Content - active participation & self organization to influence product development
Enterprises Putting Web 2.0 to Work
29 IM AR
Web
Enterprise
RESTJSON
XML RSS
ATOM
LegacyCICSIMS
J2EE
App ServerWAS, CE, Tomcat
WPS, ESB, Portal
SOAPWS-* JMS
MOM
“Bridging Web and Enterprise SOA”
AJAX
DB2
Web 2.0 permite criar uma Global SOA
Exposing Enterprise Services to the Web extends your enterprise globally and simplifies:
– Development
– Composition of Services
– Deployment and accessibility
– QoS: Performance, Scale, Security
Enterprises are exposing more services and feeds to the Web …and consuming more services and feeds from the Web
30 IM AR
SOA e Web 2.0: Mudanças no contexto: processos, tecnologias, skills…
Traditional (Transactional)
Structured design and programming
Code Review
Function test
Quality test
Performance test
Handful of large applications on 100s of machines
Often dedicated – several machines per application
Careful, formal change management
Slowly evolving applications
Changes are major
Situational (Collaborative)
Unstructured programming
Little discipline
No formal test process – using the application is test
Thousands of small applications on handful of machines
Each machine has hundreds of applications
Change management is a huge challenge
Rapidly changing applications
Changes generally minor
Model
Assemble
Deploy
Manage
31 IM AR
Increasingly, applications will be developed or modified in departments and LOBs, not just in IT shops
Situational applications are being developed in simple ways (e.g., Web 2.0), and will integrate and run across different development environments (J2EE, LAMP, .Net, …)
Situational applications will integrate components from within the enterprise and from the outside (other enterprises, internet)
Therefore, corporate IT will be challenged to facilitate the development, integration, and management of situational and enterprise applications
SOA e Web 2.0: Mudanças no contexto: processos, tecnologias, skills…
32 IM AR
Facilitate problem determination in a mixed environment (e.g., stitching together traces and logs from different application environments)
Autonomic resource management (e.g., tuning and load balancing optimized across application environments)
Gathering business requirements, discovering available services and components, and simulating the desired business processes
Compose applications that use services residing in different environments using natural metaphors (e.g., access EJB or web service from PHP)
Testing – provide the developer with an environment that resembles the deployment environment (e.g., testing solutions across multiple environments)
Configure distributed applications so that different pieces can run in their associated environments
Coordinate upgrades of dependent pieces across heterogeneous environments using a common set of tools
SOA e Web 2.0: Mudanças no contexto: processos, tecnologias, skills…
Model
Assemble
Deploy
Manage
IM AR
Obrigado pela Atenção!
Cezar TaurionGerente de Novas Tecnologias AplicadasIniciativas Estratégicas
Visitem meu blog em:www.ibm.com/developerworks/blogs/page/ctaurion