Developing Collaborative Applications for the Peer Web using Adaptive XML Jeffrey Kay <jkay @ engenia .com > Chief Technology Officer, Engenia Software Inc.
Jan 20, 2016
Developing Collaborative Applications for the Peer Web using Adaptive XML
Jeffrey Kay <[email protected]>Chief Technology Officer, Engenia Software Inc.
2
Collaborative services can enrich business-to-business relationships by boosting site stickiness, facilitating transactions, creating communications channels, disseminating information, and improving problem solving.
Collaborative services can enrich business-to-business relationships by boosting site stickiness, facilitating transactions, creating communications channels, disseminating information, and improving problem solving.
B2B Collaboration. Business-to-business (B2B) relationships can be enriched by various collaboration tools. While currently a nascent market, collaborative services will quickly be embedded in diverse B2B areas such as Net markets, partner relationship management tools, and portals.
B2B Collaboration. Business-to-business (B2B) relationships can be enriched by various collaboration tools. While currently a nascent market, collaborative services will quickly be embedded in diverse B2B areas such as Net markets, partner relationship management tools, and portals.
““Companies should build Companies should build collaborative services collaborative services around B2B activities.”around B2B activities.”
Matt Cain, MetaGroupMatt Cain, MetaGroup
““Companies should build Companies should build collaborative services collaborative services around B2B activities.”around B2B activities.”
Matt Cain, MetaGroupMatt Cain, MetaGroup
B2B services will first use collaboration as a market differentiator, but by 2004 rich collaboration services will be a given for most B2B activities.
B2B services will first use collaboration as a market differentiator, but by 2004 rich collaboration services will be a given for most B2B activities.
B2B CollaborationBuilding Strong Relationships
3
Collaboration
• Collaboration is about people, processes and projects• Collaboration systems must be able to adapt to change• People require proactive, event-driven, contextual, and
adaptable information to avoid information overload• Processes and projects need meaningful and useful
information that can be automatically processed in an appropriate fashion
• Enterprises and people must be able to directly and easily connect to each other with minimal integration
• Distributed processes must be able to span between enterprises, creating virtual workflows
4
B2B Collaboration Is Transitioning From Centralized
To Distributed
Enterprise
Enterprise
Enterprise
Enterprise
Enterprise
Enterprise
CentralExchange
Enterprise
Enterprise
EnterpriseEnterprise
Enterprise
Enterprise
5
B2B and Peer Technology
“By using the Internet to bundle products with related information and services, creative companies can improve their effectiveness and efficiency of their clients’ businesses. By doing so, the will be able to forge strong, long-lasting client relationships that will de-emphasize product price and exchange-based transactions.”
– Harvard Business Review, Beyond the Exchange, November-December 2000
Peer technology enables enterprises to forge the strong, long lasting relationships needed to
succeed in today’s market
6
peer \pir\ n.
1 : one that is of equal standing with another : EQUAL; esp : one belonging to the same societal group esp. based on age, grade or status
7
A Definition of P2P
P2P means many things
– Content distribution networks between individuals– Cycle sharing systems for computationally intense tasks– File sharing between devices– Collaboration systems– Instant messaging
A clear definition is key to success implementation of peer technology in an enterprise
8
Router
Internet
Router
RouterModem
Modem
Modem
Modem
Node
Node
Server
Server
Node
PDA
Comm. Tower
Node
p2p \pir too pir\ n. a virtual network of functionally similar nodes created using an alternate, often private, namespace
9
p2p n. a virtual network of functionally similar nodes created using an alternate,
often private, namespace
Important concepts– Connectivity is implied in the definition– Intermediaries don’t imply lack of
purity– Functionally similar doesn’t mean
exactly equal– Alternate namespaces step outside the
realm of DNS– Namespaces could be user or system
generated
10
The Significance of P2P
Services at the “edge of the network” that …– Increase user autonomy and empowerment– Enable the easy distribution of new services– Enhance relationships between enterprises
and between individuals by reducing the reliance on centralized exchanges and e-hubs
… and improve the overall power and scalability of the Web
11
Focus of Peer Web Technology
• Discovery– Provide named access to edge services– Locate and services that do not have a fixed IP address
• Connectivity– Transfer information between edge nodes without
interruption by intermediaries (firewalls)– Standard message formats for common service access
• Security– Identify trusted peers and users– Ensure non-repudiation of transactions– Maintain privacy of transactions
12
Not the Focus
• Illegal distribution of content– Napster and Gnutella educated the market about peer
technology but generally do not represent it
• Circumvention of IT – Empowerment does not have to be about “hopping
firewalls”– Enterprises need to be educated and evaluate the
applicability of peer technology
• Arbitrarily Creating Standards– Much of today’s web technology is applicable to the
peer web– Some additions enhance the ability for edge nodes to
interconnect
13
B2B CollaborationBuilding Strong Relationships
LargeEnterprise
Small Enterprise SmallEnterprise
Largest partner initiatespartnerships
Node
Small Enterprise
Relationships throughsingle partner's node
14
B2B CollaborationBuilding Strong Relationships
Stronger relationshipsbetween enterprises
New partner nodes toexpand capabilities at
each site
Node
Node
Node
LargeEnterprise
Small Enterprise
Node
Small Enterprise Small Enterprise
15
B2B CollaborationBuilding Strong Relationships
Node
Node
Node
Large Enterprise
Small EnterpriseMid Market Enterprise
Small Enterprise
Node
Node
Large Enterprise
New partner
More relationshipsbetween enterprises
Growth from small tomid-market enterprise
Growth from small tolarge enterprise
16
B2B and Peer Technology
• Today’s open standards provide solid components for creating peer based B2B collaboration systems–XML applied as an information interchange vehicle
–Scripts joined with XML to create portable business logic
–Complex, adaptive system structure to create independent, cooperative, collaborative applications that sharing of data and business rules
17
Applying Peer Technology to the Web
• Discovery– Identify new entities in
the web• Connectivity
– Easily network in new enterprises and partners
• Adaptability– Adjust automatically to
new entity types, additional nodes
• Scalability– Distribute the processing
among the partners to reduce central server burden
18
Implementation Approach
• Distributed Web Services– HTTP and XML as basic plumbing
• Relationship Model– Long-lived links between entities in the
system
• Adaptive application development model– The system grows dynamically as the number
of participants increases– New elements can be introduced without
requiring changes to the existing ones
19
Adaptive XML
• Supplants the traditional "business logic in a box" mentality and moves towards a more common environment where the business logic can be directly part of the data it is expected to manipulate
• Unique characteristic of being a dynamic entity, not a static data construct
• Combines the ability of XML information interchange with scripted behaviors to enable intelligence and collaboration
• An important approach to developing collaborative systems because entities can have the opportunity to adapt to their environment by changing their own properties or evolving new, more complex behaviors
20
Adaptive XML
• Representational entities describe business constructs and their corresponding behaviors– People– Activities– Processes and process steps– External events
• Functional entities provide services to other functional and representational entities– Search services– Connectivity services
21
Adaptive XML Application Model
Person
Activity
Activity
Activity
Person
Enterprise
Group
Event
EventIncludes
IncludesIncludes
Owns
Manages
Manages
Activity
Follows
OwnsFollowsManages
Owns
Owns
Owns
Implements
Implements
Manages
Group
Includes
Includes
Watches
EnterpriseIncludes
IncludesOwns
22
Characteristics of Adaptive XML
• Environmental awareness
• Autonomy• Reactivity• State
23
Environmental Awareness
• Relationships define nearby entities– Context is asserted by relating multiple
Adaptive XML streams to each other– Bidirectionality of relationships with
verbs provides context and semantics
• Event handlers accept environmental notifications
24
Autonomy
• Autonomous and scheduled operations–Allows systems to begin to work for users
–Moves systems from user-demand-driven to more autonomous operation
–Entities can change based on non-user events – changes in the weather, fluctuations of the stock market, news events
–User moves from demanding content to examining a snapshot of the state of a model
25
State
• Adaptive XML is not static–It is intended to be changed based on the business rules contained within its set of defined behaviors
–Changes to the XML reflect its current state–Behaviors with the XML can be defined to operate in context of the current state
• Adaptive XML will naturally change state as it is used to implement collaborative applications–Tasks can record completion–New information can be related and added to the system
–Events can be triggered based on changes
26
Reactivity
• Reactivity is the ability to respond to changes and to adapt accordingly
• Today’s XML schemas are not intelligent at all – most target basic information interchange
• Adaptive XML begins to add intelligent behavior to information – the XML can change to react to the world around it–New properties added as needed without schema redefinition
–Recalculations based on characteristics of neighbors (e.g. computing the state of a project based on the total collection of task end dates and statuses)
27
Skeleton Adaptive XML<?xml version="1.0" encoding="UTF-8" ?><?engenia.com version="1.0"?><e:OBJECT xmlns:e="urn:engenia.com" guid="xo_f709d140ffff83fc11d49f35d57af8f8ebc3"> <e:TITLE>Allen Abbeydale</e:TITLE> <e:DESCRIPTION>Analyst</e:DESCRIPTION> <e:TYPE VERSION="3.5">_bc_person</e:TYPE> <e:SCRIPT LANGUAGE="javascript"><![CDATA[function onPropertyChanged(prop,oldvalue,newvalue) { if (prop.toLowerCase() == "title") return false; // cannot change title here return true;}]]></e:SCRIPT> <e:ATTRIBUTES> <LASTOBJECTUPDATE>977328294910.000000</LASTOBJECTUPDATE> </e:ATTRIBUTES> <e:PROPERTIES STRUCTURED="true"> <PASSWORD PRIVATE="false">swaprods</PASSWORD> </e:PROPERTIES> <e:RELATIONSHIPS> <XO_3E8ACE60FFFF850211D49F35D57AF8F8EBC3 OBJTYPE="_bc_group"> <VERB>MANAGES</VERB> </XO_3E8ACE60FFFF850211D49F35D57AF8F8EBC3> </e:RELATIONSHIPS> <e:PUBLISH/> <e:SECURITY-POLICY> <ALLOW TYPE="RWD"> <XO_97485F40FFFF837211D49F35D57AF8F8EBC3>READWRITEDELETEACCESS</XO_97485F40FFFF837211D49F35D57AF8F8EBC3> </ALLOW> </e:SECURITY-POLICY></e:OBJECT>
28
XML Architecture
XML accessible information store
Adaptive XML --Collaboration Application Development
XM
L-b
ase R
PC
--se
rvice a
ccess
XML transforms intostandard schemas
XML query --search
XM
L/X
SL
T --
pu
blish
ing
WebDAV --unstructured data input
29
Node Architecture
Web Browser
Adaptive XMLEngine
HTTP
SOAPWebDAV
Adaptive XMLEngine
HTTP
SOAPWebDAV
Document-BasedApplications
Other Systems
SOAP
Adaptive XML
30
Applications for B2B Collaboration
• Collaborative Planning, Forecasting and Replenishment (CPFR)
• Supply Chain Logistics Collaboration• eXtended Relationship Management
(XRM)– Partner management– Client management– Vendor management
31
The Business Internet
• Adaptive XML helps companies fulfill the promise of the Business Internet with adaptive collaborative systems– Much more complex systems can evolve over
time– More enterprises can participate more easily in
systems that are designed to adapt to change– Systems can adopt new enhancements and
still participate in existing workflows and processes
– B2B collaboration begins to scale as systems decentralize
32
Peer Technology is the Centerpiece of B2B
Collaboration
Successful B2B is all about relationships and peer technology makes it happen
– Capabilities of B2B collaborative systems come together to help enterprises form tight relationships
– Enterprises provide more value to each other by developing long lasting relationships and working cooperatively
– Long lasting relationships are established through peering rather than through centralized exchanges
33
Pointers
• XMLP – www.w3.org W3C’s efforts to fully standardize SOAP
• P2PWG – www.p2pwg.org
Working Group for Peer to Peer technology
• Decentralization – www.yahoogroups.com Where the P2P geeks go
Jeffrey Kay <[email protected]>
Engenia Software Inc.
www.engenia.com