8:30 - 9:00 Breakfast
9:00 - 10:30 Welcomeand introductions
10:30 - 10:50 Break
10:50 - 12:30 Positionpapers and presentations
WG Members to present positionpapers/ideas for the group. Time to be divided equally.
10:50 - 11:20 LucianWischik, Bolgna University - invited talk
ProcessCalculii for Web Services (30 mins)
11:20 - 11:40 KevinLiu, SAP,
Position paper(20 mins)
11:40 - 12:00 DanielAustin, Grainger,
Towards webservices choreography (20 mins)
12:00 - 12:10 YokoSeki, Hitachi,
Position paper(10 mins)
12:10- 12:20 CarolMcDonald, Sun,
Position paper(10 mins)
12:30 - 1:30 Lunch
1:30 - 3:00 Position papers and presentations (cont)
1:30 - 1:50 DuncanJohnston-watt, Enigmatec Corporation,
Making webservices work. (20 mins)
1:50- 2:20 TonyFletcher/Peter Furniss, Choreology,
Choreographyand Coordination (30 mins)
2:20- 2:35 AssafArkin, Intalio,
Modelingcausality in WS communication (15 mins)
2:35- 2:50 JimHandler, Univ of Maryland,
Dynamic WebService Composition using Semantic Markup (15 mins).
2:50 Ð 3:10 FrankMcCabe, Fujitsu
Frank'sposition as opposed to Fujitsu's with a WSA bias (15 mins)
3:10 - 3:30 Break
3:30Ð 3:50 GregMeredith, Microsoft,
Orchestrationor Contracts É (20 mins)
3:50 - 5:00 Invitedtalks and Challenges/Issues from the Chairs
3:50- 4:30 Jean-Jacques Dubray
4:30- 5:00 Issuesfrom the Chairs & discussions
5:00 - 5:15 Wrapup for day 1
6:30 Selfpay dinner at local restaurant
8:30 - 9:00 Breakfast
9:00 - 10:30 WGLogistics
Weekly callschedule
F2Fschedule/hosting
Group etiquette
10:30 - 10:50 Break
10:50 - 12:30 Requirementsgathering session
Break outs.Suggestion include, but not limited to, use cases and formalism underpinning.Actual break outs to be decided at the meeting.
12:30 - 1:30 Lunch
1:30 - 3:00 Requirementsgathering session (cont)
Includingsummaries of break outs
3:20 - 5:00 Roadmap,schedule and wrap up.
Attendees:
BEA Systems | |
Choreology Ltd | |
Choreology Ltd | |
Cisco Systems Inc | |
Cisco Systems Inc | |
Computer Associates | |
EDS | |
Enigmatec Corporation (co-chair) | |
Enigmatec Corporation | |
Fujitsu Ltd | |
Hewlett-Packard | |
Hitachi, Ltd. | |
Intalio Inc. | |
IONA | |
Microsoft Corporation | |
Microsoft Corporation | |
National Computerization Agency | |
Novell | |
Oracle Corporation (co-chair) | |
Oracle Corporation | |
Oracle Corporation | |
Progress Software | |
SAP AG | |
SeeBeyond Technology Corporation | |
Sun Microsystems, Inc. | |
TIBCO Software | |
TIBCO Software | |
Uniform Code Council | |
Uniform Code Council | |
University of Maryland (Mind Lab) | |
W. W. Grainger, Inc. | |
W. W. Grainger, Inc. | |
W3C (W3C staff contact) | |
W3C (W3C staff contact) | |
webMethods, Inc. | |
webMethods, Inc. |
Summary of Actions:
CLOSED ACTIONITEMS:
ACTION:Hugo Hass: will post archive URL algorothm to IRC
http://lists.w3.org/Archives/Public/www-archive/
WGlist: http://lists.w3.org/Archives/Public/public-ws-chor/
OPEN ACTION ITEMS:
ACTION:W3C staff to setup teleconf [1]
ACTION:Hugo to send choreography definitions to the list [2]
ACTION:write up use cases [3]
Summary of openissues/questions:
Weneed an internal glossary of terms.
Whatdo we mean by external process choreography?
Whatdo we mean by internal process choreography?
Whatdo users actually need?
Thisgroup is all about capturing external behaviour of choreography?
Thisgroup is all about internal process choreography?
Thisgroup is all about capturing internal and external behaviour of processchoreography?
DAY ONE
Welcome andIntroductions
MC: Leadsintroductions
Eachmember introduces themselves) (roughly 25 present)
Scribesto be assinged in half day chunks
Scribeslist to be established; rotation of scribes in order to reduce
wear and tear
Explanationof W3C process
HugoHaas and Yves Lafon are staff contacts
Reviewof various uri's (included):
Alltech work is public
Alldocuments are posted, as well as the mailing lists
thishas its good and bad points. WG may receive comments from outside
reviewers.
Membersmay join at any time during the two year duration
Areading list for the WG will be established (see some uri's enclosed)
Allmailing lists are archived
Providespublic record of group activities
Etiquette:
Don'tsend large files directly the to WG mailing list
Insteadsend them to the archive list, www-archive@w3.org
Thensend the URL to the list (email by reference)
Don'tpost trade secrets!
HTMLformats preferred and readable format (i.e. text) is okay.
Otherformats are okay but with HTML too.
ACTION: Hugo Haas:will post archive URL algorothm to IRC
http://lists.w3.org/Archives/Public/www-archive/
WG list: http://lists.w3.org/Archives/Public/public-ws-chor/
F2Fwill be announced 8 weeks prior;
Teleconfagendas 24 hours prior
Note: SRTleaves the room
WGmembers to read group charter ( will ocver this PM)
Alsoplease review the WSCI spec, it is a key input for this WG
W3Chas introduced bugzilla for issues tracking; will use on this WG
Charter:http://www.w3.org/2003/01/wscwg-charter
Note: SRTreturns to the room
SRT: Askslate arrivals to introduces themselves
P: Prasadfrom webMethods
GM/AB: Gregmeredith and Alan Brown from Microsoft
LucianWischik, Bolgna University - invited talk
ProcessCalculii for Web Services (30 mins)
http://www.wischik.com/lu/research/choreography.html
FMC: Whenyou say possible state, do you mean one involving an external message?
LW: yes
DA: Arethese sequences symmetric?
LW: Generally.If the implementation has different sequences, they can be
distinguished.
GM: There'sanother aspect of bisimulation, concerned with complexity.
GM: Canyou speak to the issue of the complexity of checking the sequences
GM: isthis (polynomialy) decidable?
LW: No,I can't say anything
GM: Mentionsother researchers in this area
GM: usefulto understand, bisimulation is simplest for checking
GM: thereason things go bad in laguage equivalence is that you have to search
GM: withbisimulation it's easier
seeGM's presentation under references.
JD: Arethere methods of specifying choreography that make decidability
testing easier?
DuncanJW: GM referenced Colin Stirlingand Hans Huttel here are the uri's
http://www.dcs.ed.ac.uk/home/cps/ - Colin Stirling
JD: Isthere an easier means than the diagrams in your presentation (to LW)
LW: No,not really
LW: whatyou are saying is, is there a more restricted language that makes
model-checkingsimpler?
LW: yesthere are, we need to find an intermediate solution that makes things
easier
SRT: Therewas work done by others that uses the mu-calculus
SRT: areyou familiar with this?
LW: No
LW: Thisis quite exciting to the academia, we've had the pi-calculus for
years, with no killer app
LW: perhapsWS is a good use
LW: willrely on mailing list, as won't be able to be present
EP: Twopart Q: in order to make the bisim testing easier, are there other
ways to reduce complexity?
EP: canyou elaborate on your bisim example? I'm not clear on the
importance...
EP: perhapswe can get away w/o this functionality
LW: passeson 1st Q, addresses 2nd: do we really need reconfigurability?
LW: seeslide 10
LW: Icannot think of a WS example, but this is an issue in academe
EP: dothese languages form a continuum? Is there one that makes the testing
simpler
LW: itseems like it would be worthwhile to find the simplest solution for WS
SRT: thereis a classic example in pi-calculus concerning cell phones
SRT: sayyou want to understand roaming
JD: Ithink the first example in the presentation is message-driven switching
SRT: suggestslooking at papers on LW's web site
SRT: usefulto have some background from LW
SRT: wecan debate the proper formalism
Kevin Liu(SAP)
PositonPaper (20 mins)
http://lists.w3.org/Archives/Public/www-archive/2003Mar/0032.html
KL: chorneeded for large scale implementations
KL: focuson convergence
KL: muchwork already done, WG should use prior art
KL: seeksvendor neutral solution
KL: possiblemodularized approach if problem domain too large for a single spec
KL: industryawaits solution
KL: reliability,security, processing model out of scope
JD: youmentioned implementation is out of scope, can you elaborate?
KL: wesee an interface for interaction
KL: howiits implemented should be left to the user
DanielAustin (W.W. Grainer)
Towards webservices choreography (20 mins)
http://lists.w3.org/Archives/Public/www-archive/2003Mar/0071.html
DA: Wedo a lot of e-commerce
DA: Interms of choreography, we are interested in how to integrate a lot of
services
DA: comingfrom a user POV
DA: forthis presentation, we thought about the problems that we would like to
see the WG provide solutions for
DA: 4problems: sticky policies, WS processing model, orchestration, interop
DA: weneed a framework
DA: slide3: Sticy Policies
DA: howto handle metadata?
DA: isan outside controller necessary to manage the chain of composite
services?
DA: slide4: Processing Model
DA: slide5: Orchestration
DA: Needto define orchestration vs. choreography, relationship with business
model
DA: whatis the practical limit on nodes in call chain? look at the real world
DA: slide6: Interoperability
DA: lookingat the organizational level
DA: semanticsissues
LG: thesemantics issue is critical, and across organization nature of this
work is going to be hard
DA: slide7: Summary
DA: implementationof a solution can be very costly (e.g. BPMI)
DA: wewant a practical solution
AH: UN/CEFACThas done some work on the semantics side
DJW: wecan present/relay user's POV (answer to DA's question about users)
KL: wethink that the implementation aspect of the processing model is out of
scope
DA: weare interested in addressing the concept of a shared context between
composite services
SRT: Weare hearing people about addressing common understanding; how many
people are experimenting with Semantic Web technologies?
Crowd: not thatmany
SRT: JimHendler will talk about this later on
Yoko Seki,Hitachi,
Positionpaper (10 mins)
http://lists.w3.org/Archives/Public/www-archive/2003Mar/0061.html
YS: slide1: Background
YS: talksabout workflow
SRT: whatwas that about grid computing?
YS: developersmay use WS to control flows in the grid
KL: whenyou says WS_Choreography what do you mean?
YS: theresults of this WG
CarolMcDonald, Sun,
Positionpaper (10 mins)
http://lists.w3.org/Archives/Public/www-archive/2003Mar/0042.html
FM: youmentioned mgmt, do you see mgmt as a choreography issue?
CM: thinksthat is it is useful
JD: weshould use some of the EBXML work...can you elaborate on your BPSS
comments?
CM: basisof contractual agreement
JD: howis the partner concept in BPEL, how does that relate?
CM: whatdo you mean by long-running dynamic services?
CM: typicalin business processes
GM: wrtscope, do we feel that org level computing is the only one in our
remit?
GM: canwe imagine apps that use BPs, is this in scope?
MC: myopinion is yes
MC: nothingin our work says anything about organizational boundaries
M: hasWSA considered these issues?
MC: yes,but from a diff point of view
SRT: ifXML processing can be made more efficient, choreography will play a
greater role
SRT: sayin 2 years time...we need to future-proof our work in this light
GM: futurePDAs are today's high powered workstations
PF: thereis no CORBA 'choreography" because we have now reached the point
where it's needed
??: themagnitude of users forces the use of online svcs, rather than personal
interaction
PF: absolutely
DuncanJohnston-watt, Enigmatec Corporation,
Making webservices work. (20 mins)
SRT: thereis a paper on naming that is applicable
urito book or paper to be supplied as part of reading list
SRT: Finalcomment, we do need to address the formal semantics of WS-chor
SRT: Isanyone working with investment banks?
JD: Reuterssupplies financial data to these banks
SRT: areyou seeing adoption of WS?
SRT: it'simportant to know there are potential users that might actually pay
attention to us
Lunch
PeterFurniss, Choreology,
Choreographyand Coordination (30 mins)
http://lists.w3.org/Archives/Public/www-archive/2003Mar/0038.html
pf: choreologymeans "science and notation of movement"
pf: choreologyltd "interplays of commerce"
pf: coordination- agreement of multiple parties on mutually shared state
(more than 1-1)
pf: agreementrequires "contingent" offers
pf: goalof this is "assured common knowledge"
pf: theinteraction between the participants thus needs to be conditionalizaed
pf: needboth and interaction description and a process description
pf: needcoordination in either case
pf: discussionof cancellation of processes during service "failures"
pf: goodbusiness protocols need coordination
pf: discusses"thought experiment" of taking BTP as an app protocol
pf: suggestwe use BTP and WS-C/T as transition protocol?
Crowd: discussionof whether group is looking at transaction protocols or not
Crowd: discussionof possibility of group doing a set of "small specs"
ygoland: we need to get to fitthings to existing protocols
jimh-scribe: maybe we should make it so our product has"hooks" for other protocols,
there are many
AssafArkin, Intalio,
Modelingcausality in WS communication (15 mins)
http://lists.w3.org/Archives/Public/www-archive/2003Mar/0045.html
AA: Ihave investigated about modelling all sorts of processes
AA: manyof the things we have been looking at talk about "causality"
AA: from"intalio: The business process mgt company" (end quote)
AA: synchronizationis essentially a causal relation between eventws
AA: choreographyshould be based around "long running interactions"
AA: wecan define how things could "possibly happen"
AA: wewant to be able to do simulation or analysis before we start
AA: modularity,composition very important
AA: restrictionon bi-lateral choreography is artificial and can't work
AA: showssome requirements on choreography (too fast to scribe)
AA: discussesreqs for a formal model - run simulation, make predictions,
expressthings as a "formula"
AA: thatis, be able to say something like "how long to receive a quote from N
customers"
AA: needsimple, elegant, and minimalist formal model
AA: butneed to allow mappings between formal models
AA: suggesteswe use pi-calculus
AA: webis "mobility, replication and passing processes as data"
AA: wantit defined to be reduced to the formal model
AA: norestriction on number of service types of services
AA: multipleforms of composition
AA: describesthe language he has described - simple at base, complexity in
putting it together
AA: useWSDL for interaction betw loosely coupled services
AA: providesvarious parallel flows
AA: specis only 100 pages or so...
AA: Ipopose a model for the language, WSCI as proof of concept
Crowd: discussionof relation between this and CSP (?)
AA: solvesour customer's problems
ygoland: want to make sure grouprealizes one big choice is "either inside-out or
outside-in"
ygoland: langauge or langaugeplus things around it
Crowd: discussionof discussing that stuff later.
JimHendler, Univ of Maryland,
Dynamic WebService Composition using Semantic Markup (15 mins).
[1]http://www.mindswap.org/~evren/composer/(please note:this is not a permanent
URI,the approach via clicking above will take you to the permanent page when thisis finalized)
[2]http://www.daml.org/services
[3]http://www.mindswap.org/~evren/composer/composer.JNLP
JH: whycan't different apps talk to each other - have to rekey into pda what
its displaying
JH: group(Univ Maryland) - also working on linking devices (projector, pda
etc)by choreographies
JH: wantto be able to analyse what the web agents are doing - e.g. ask of
description if
JH: giventhe information the service can get to the desired solution.
JH: c.f.going through 15 forms before finding can't fill in the last one
JH: DAML-S(darpa agent markup language) led to Web Ontology WG (co-chair Jim H)
JH: weakestpart is process model underlying it
JH: demo- (lite version from inside firewall - full runnable by anyone if
outside fw)
JH: demowould normally invoke various services
JH: demokeeps track of inputs/outputs from various services - various
servicesoffered
JH: choosingbabelfish - demo knows it takes string, offers selection of all
services that would deliver
JH: astring.
JH: demosaves the information about each svc in DAML-S
JH: cancompose service of other known svc
JH: sensorexamples: can select sensors by type, location, filter on
characteristics
JH: gridcomputing : can use very similar choreographies (and extended wsdl,
not soap) to WS
JH: cantake composition of svcs and construct soap msg
JH: wantsome way of saying "run this" to something that can
JH: investigatedBPEL, WSCI (? pf) and they don't quite have the necessary
capability
JH: wantto pass more complex compositions
LG: Weneed to be able compose things at run time ?
JH: desireis to have language that allows this - bpel has too static a view
JH: happyto have something that can say "go to directory and find out",
JH: wedon't need to define how to talk to directories, but allow it to be
done
JH: wantto have a tool that creates a workflow and hands it off - not so much
that we must do the
JH: discovery
JH: 5-6years before having machine dynamic composition
KL: Isthis feature addressed by WSCI Dynamic paricipation
JH: Carefulnot to eliminate ability to have dynamic composition
DA: severalhave mentioned this
MC: subjectfor tomorrow group
FrankMcCabe, Fujitsu
Frank's position as opposed to Fujitsu's with a WSA bias (15 mins)
http://lists.w3.org/Archives/Public/www-archive/2003Mar/0051.html
FM: Hopesthis group will expand this model
FM: reqs:combining web services - specify the relations, specify the message flows
potentialfor automation - automatically verify, automatically drive,
simplydocument what is happening
FM: "anew generation of 'stub' code
FM: showsdiagram of choreograph as state diagrams (model a process)
examplehas several (not just 2) participants
FM: showsa diagram of choreography "concepts" things like about, exchanges,
provides
FM: thiscaptures choreography as process, but misses tasks
FM: trustan aspect of this that is important, but include intention, must be
applied to something (trust you to wash my car, not date my kid)
FM: diagramcalled "layers of meaning"
message,ontology, contract, constitution -- ontology defines meaning of
terms
FM: contractmeans actions, cause and effect
FM: constitutionis who are the participants
FM: task-orientedchoreography digram
e.g.web service performs a task, task depends on another task, executes
anaction. Task description containdependency rules and the like
choreographyspecifies the descriptions
FM: dependencybased WS Chor - WS's combined by expressing dependencies,
connectsto SW (OWL), do require rules w/variables
FM: issues- cooperation, not technology. Semantics - goal v. process;
theoems v. development (support developer or the QA checker)
OWLspec is at http://www.w3.org/2001/sw/WebOnt
FM: clarifiesthat Fujitsu is interested in the "task computing" area
PF: asksquestion about state diagram choreography -- would things need to
know about each other in that?
FM: answersby discussing make files, suggests that something like that may be
needed in the choreography world
LG: questionwas about difference between goal and task.
Break
GregMeredith, Microsoft,
Orchestration or Contracts (20 mins)
GM: diagramshowing implementation connected to contract to contract to
implementation
GM: backendis General progr lang (turing), contract level is WSDL, but more
needed
GM: position- the "contract" portion of this space is considerly simpler than
the full language
GM: conformanceplus compatibility yield correctness - lock free and leak free
GM: thatis both interesting (theoretically) and business wise (note leaking
secrets)
GM: discusseddifficulty in wiring web service implementation - shows a live
lock situation
GM: runsthrough an example - where things can be composed but leave need open
GM: position(2)simple contract-like mechansisms are exhibited in the
literature (many citations)
GM: ifthis WG created a contract langauge that guaranteed basic versions of
thingslike this, it would be a big advance (at compatibility level)
GM: WGcould ignore operational data
GM: position(3)contract portion of this design space should be invoked by
discovery/verification
GM: position(4)- plan for success (what happens when LOTS of these out there)
GM: somethingless than GPL is desirable - allows the query (analysis?) of
contracts
GM: discussestrust issues
GM: position(5) work needs to be carried out w/formal basis -- suggested
"mobileprocess calculi"
GM: comparessome of the formal models w/respect to completeness,
compositionality, parallelism, resources -- pi-calc only one tohandle all
of these (to date) (i.e. to have a model of each of these)
GM: describessome challenges on process calculi
GM: describessome issues w/mobility
FM: whenyou say mobile what do you mean?
GM: mobilitymeans "name shipping" in P-calculus model
UNKNOWN: question aboutwhat conformance is?
GM: contractis a projection, conformance is making sure the contract respects
the homomorphism
UNKNOWN: question - yousay you see non-TM complete language as desirable?
Canyou explain further?
GM: CFGor below allows a lot of things to be tested that aren't allowable in
Turing
JimH: cart/horseissue - how do we make the trade-off decisions
GM: lotof things we looked at drive us in this direction - example: bizTalk
hadproblems because we couldn't handle some of these things
JD: question- curious about relation of your talk to BPEL?
BPELpushes high expressivity, now you're talking more limited - where is
thebusiness case?
GM: Letme be clear - we need GPL on implementation (e.g. BPEL) but we need
provableproperties at the compatibility/conformance level
GM: sowe have a different space than BPEL, and we also may get
discoverability out of this
GM: Ifthe body moves to implementation over contracting, MS cannot
participate
Jean-JacquesDubray (invited talk)
http://lists.w3.org/Archives/Public/www-archive/2003Mar/att0044/wschor_eigner.ppt
JJD: seeskey words that haven't been in other presentations, specifically
service oriented architecture. Give some elements on debatebetween
collaboration,executable business processes, choreography.
JJD: comesfrom experience with BPS.
JJD: XML,WS, and BPM will revolutionize the way we build applications, towards
the"ultimate" component model.
JJD: canwe do achieve for machines what the web has done for humans? Can
applications fetch data from remote services?
JJD: immediateuse is for applications to better interact w/ environment.
JJD: today,current app models (java, j2ee, C#) have limitations from
programminglanguage perspective. E.g. Java doesn't have all constructs
necessary to take advantage of J2EE model. Other languages arerequired
forus to fully utilize J2EE. This complexity hasn't been taken out of the
programminglanugages. Choreography is a way to address this.
JJD: Choreographyrepresents convergence -- b2b, eai, distributed computing,
J2EE / .net.
JJD: Notionof provider / consumer is completely wrong for SOA. It's just a
particular case for use of web services, real model is peer topeer.
JJD: provider/ consumer model will place severe restrictions on the model, we
should avoid this. This said, how do we define a SOA.
JJD: tooksolution from OAG -- coarse components that interact with each other,
exchangingmessages. e.g. customer service component / order mgmt
component.
JJD: theservices represent each one of the boxes in the scenario
JJD: needliberty to place application, corporation boundaries wherever you
like.What is impact on choreography design? This would be a big advance.
InPLM a manufacturer works with suppliers. You could have activities
localizedat supplier, team, different location in same company. From
choreographyperspective we don't care, it should be relatively neutral.
JJD: thisopens new possibilities for application developers.
JJD: toemphasize, intra / inter company message exchanges are different. No
shared memory (state alignment), legal aspects(non-repudiation).
JJD: needminimum contracts in place to ensure that most cases are covered.
JJD: SOAas application model slide. In an application model, much work being
done by MS, SAP, IBM on this aspect. Process engine appears with
applicationmodel itself. If you take the EAI concept, used to be separate
afterbuilding applications, now its covered as part of the application
model.Must provide facilities for the application developer to perform
integration,not after the application is developed.
JJD: thiswill allow us to achieve process & data federation, representing
process / data collaborations. Notion of application becomesdifferent
because the middle tier and UI tier become spread acrossmultiple
applications.
JJD: Keytakeaway -- WS-chor is major enabler of SOA. What are the elements of
WS-chor?
JJD: we'vebeen talking about contract and implementation. There are three
levels, using buyer / purchase order scenario. Roles in scenarioare
Buyer, Supplier, Order Entry, Manager, Billing. These rolesinteract via
message exchange. Most companies have similar scenario in place.
JJD: referencein middle, which requires mapping & routing. Coupling is handled
by execution rules @ Supplier role.
JJD: messagein this slide is collaboration between any 2 components. These
help define contracts between business partners, but they alsoapply to
collaborations between components within an organization. Notionof B2B
vs. EAI is arbitrary according to this kind of thinking.
JJD: importantconcepts: role, executable business processes. Difference
between collaboration and executable business processes: bothare state
machines, but collaboration has no engine associated with it(nothing is
in the middle).
JJD: nowan engine provides many roles (mapping, routing, "advancement").
Collaboration service is repsonsible for ensuring that incoming/ outgoing
messages are expected at a point in time.
JJD: processengine monitors interactions, and can decide that a process has
"advanced".
JJD: collaborationacts as business process firewall -- routing to existing
service, or filter it out. No execution, just there to monitorflow of
messages.
JJD: backto picture, adding roles of process engine, you see entities that no
one talks about. This third level of "orchestration"is necessary. WS Chor
is about message exchange. You can choreograph message exchangesinternal
& external.
JJD: atmodeling level they aren't different.
JJD: Acomponent can interact with external entities. However, it's important
to distinguish 3 levels.
JJD: example-- integration with SAP. integrating BOM with SAP. Step one,
synchronize item (add if not there already). Second, we cansynchronize
the BOM.
JJD: withincomponent, there is additional logic that is different from
message. May be long running, but does not involve messageexchange.
JJD: WSChor applies to 2 levels, lowest level may be different (BPML, BPEL are
appropriate).
JJD: whatdo we choreograph? How do you do techincal binding? How do we handle
message exchange patterns (WSDL provides 4). Needed for BPSs tostart
business transaction, need two types of requests. This scenarionot
supported by BPSS.
JJD: alsonotion in BPSS of signals. Message exchange is receiving signals,
generating response, sending response. If you think ofchoreography in
terms of patterns, it will be difficult to express even simple
choreography.
JJD: ifyou take away one idea, it's this chart. You have to choreograph
message exchange patterns. The choreography is much simpler ifyou express
it in terms of message exchange patterns. Chart is in terms ofroles, not
contracts, which can be generated automatically.
JJD: alsonotion of protocol. in b2b, bpss requires signals (know that message
was processed by receiver) because response could come longafter request.
JJD: youneed to know whether a response has come back. need to guarantee that
request is in the system of the receiver.
JJD: onceyou have this in place, choreography needs to handle exceptions
(technical & business) that prevent request from going intosystem of
record.
JJD: transactionalbehavior is an aspect of choreography. With BPSS, people
don't complain about explicit compensation trx, because they are
available.
JJD: messagecontent needs to be defined. Is the SOAP model enough? Are there
other needs for collaboration?
JJD: controlflow specification, countless attempts at this. BPSS is good at
this. Maybe it's time to consolidate all the differentapproaches into the
best one. could reference patterns for control flow to once andfor all
solve this problem.
JJD: Ofthe three levels (collaboration, executable process, service / business
component), semantics are different. Example: fork atcollaboration has
choice of messages, one becomes invalid. As executable process,both can
be executed in parallel, or engine restricts behavior.
JJD: Needto apply specific semantics, based on scope.
JJD: Twoapproaches to technical binding. Neutral approach: roles that provide
techincal bindings. This approach allows easy definition ofcontracts.
JJD: neutralform is better than reviewing 2 contracts for compatibility.
Ultimately the second approach doesn't allow for flexibility. Towork
together they must mirror each other.
JJD: coulddo this with multiple WSDL services, providing greater flexibility.
JJD: beyondChoreography, many other approaches: UMM, Business Collaboration
Patterns from COOL, REA
(http://homepage.interacess.com/~linkage/REA4SCM.htm,
Business Entities (http://www.collaborativedomain.com/standards/
JJD: inweb services chor thinking, no one thinks about shared business objects
that each party may change state, how is this aligned betweenparties?
This concept could fit nicely atop WS chor.
JJD: theseare completely different approaches.
JJD: conclusions-- important to view WS Chor as Service Oriented Architecture.
Convergence of concepts. In terms of WS Chor, having mutual peerto peer
interaction is important. Scope should be whatever is puremessage
exchange (2 of 3 levels from above).
JJD: B2Bdifferent from EAI. Do we need protocol as a standard step? All this
is about defining more metadata, but we'll be overloaded by itsoon. Need
to be careful about articulating all the layers of metadata.
DC: MEPas units of what's being choreographed. Does this mean no one thing
has total knowledge about the transaction?
JJD: simplecontructs like flow, to express MEP you express very complex
sequence, lots of constructs of chor language that would berepeated. It
would lead to greater simplicity if MEPs could be defined astypes, then
choreographed.
JJD: otherwise,choreography gets too complex.
MC: increasedlast week at WSDL group to seven patterns.
DA: wemay want to put together a pattern languages based on primitives from
which the 7 could be built.
GM: wantedto chime in w/ experience we've had. There are 2 kinds of
approaches to describing MEPs. Many familiar w/ sequence |parallel |
choice model. Corresponding notion of encoding agents that do verysimple
patterns (send msg, duplicate msg, forward msg). There are 7 ofthese, and
from these seven you can get any flow you want.
GM: westarted down this path, but when simple flows compiled in this format,
they become very large. It is important to gain experience w/various
representations and learn their advantages & disadvantages.
GM: theproof on this (minimality) is available by Yoshiisa on the web.
Yoshidapapers
http://citeseer.nj.nec.com/222733.html
http://www.doc.ic.ac.uk/~yoshida
FrankMcCabe, WS Architecture
WSApositioning (15 mins)
http://www.w3.org/2002/ws/arch -- web servicesarchitecure
FM: WSAgroup meeting for about 1 year, starting 04/2002. Now at point of
beginning to hone in on what WSA looks like.
FM: sharethe architecture, drivers.
FM: followingon JDs presentation, we view WSA as an SOA. P2P is of the
essence. Services are defined by messages that are exchangedbetween them.
FM: notionof service, agent as compositional entity that represents a
service.
FM: goalsof architecture: interoperability between WS, integration with WWW,
capturing reliability, security, extensibility, manageability.
FM: theseare like the primary goals of the architecture.
FM: non-goals-- programming models, technologies, internal architecture of
specific WS. We aren't interested in showing you how to buildit.
FM: notinterested in being specific about how messages or other descriptions
areformatted. Architecture is a framework, not the detailed structure.
FM: whatwe do own is the relationship between say SOAP and choreography.
FM: reviewingConcepts & Relationships slide... Agent is computational
resourceowned by someone. It requests / provides services.
FM: aservice has a description, semantics, interface. The description of a
servicedescribes these things and messages, and so on.
FM: theone thing i didn't talk about earlier, is that agents & services are
deployedelements. This is not complete story, but how we're incorporating
management into WS. Diagram is 2 dimensional diagram of coreconcepts that
arepart of the architecture, core relationships among the concepts. Core
technicalmeat of the architecture is an enumeration of this chart. We may
doa UML diagram to relate in more detail.
FM: this allows us to defineconformance points.
FM: wecan distinguish between may have & must have relationships, based on
thesekey ideas in the architecture.
FM: thisallows us to define constraints on the implementations.
GM: supposeI have an architecture which doesn't have a description, and say
the service is its own description?
FM: wehaven't yet identified where the mays and musts are. It might come to a
point that it's not a W3C service if it doesn't have a WSDLdescription.
FM: inthe WSA document (in CVS tree, not an official release, expected may),
actual concepts are represented alphabetically.
FM: example-- Message: read summary & relationships to other elements.
FM: precisedetails may change, but this is the style we use to communicate
whatwe mean by a Message. Another example: Legal entity.
FM: eachterm has Summary, Relationships, Description.
FM: nextpart of architecture is very important, the Stakeholder's viewpoints.
These address how architecture meets requirements.
FM: thereare entry points from different perspectives (security,
introduction, etc.) elaborates on the entry point.
FM: thiswill be presented in intgrated, non-alphabetical organization.
FM: example-- Goal AG007 identifies manageability as a major goal. Describes
thegoal...
FM: weidentify core conepts in architecture that relate to the goal.
FM: examplefor AG007 is manageable element.
FM: anotherdiagram, not yet agreed, management viewpoint, which illustrates
manageableelement.
FM: toenable p2p, we demonstrate enabling this in the architecture through
MEPs,agents / services have identifiers allowing long running
conversations,and that they have roles.
FM: issues,some of the definitions need work. Responsibility of the WS chor
working group to have coherence with the WSA. This is abidirectional
relationship. WSA has to ensure that our requirements areaccounted for in
the architecture.
JH: question-- choreography items seem contradictory?
FM: noneof current WSA text will make it into the next iteration.
MC: whatis the difference between choreography, conversations, and
orchestration is a major question to be resolved?
UNKNOWN: question ?? JJD'spresentation mentioned business objects / resources not
fullyworked out in BPSS. In architecture, this is an important idea, a
service has access to one or more resources. Is there a way totalk about
resourcesin choreography?
MC: aresource is anything accessible via URI.
FM: thisis a topic (trout ocean waiting for us).
MC: importantpoint we still have to address.
GM: howare you informing about ITU standards (e.g. manageability)?
FM: canonly give a meta answer. Work on manageability is done by
representatives from IBM, HP, and Sun. To extent they take thisinto
account...
FM: realthing we want to capture is the core idea so we can fit it into the
specification.
MC: thisis more from management view (tivoli, openview, etc.).
Martin Chapman & Steve Ross-Talbot,co-chairs WS Choreography
Issues fromthe Chairs & discussions
http://lists.w3.org/Archives/Public/www-archive/2003Mar/0037.html
SRT: Wantsto start collecting issues. Have dubious task of going through
archives. Sheer volume / complexity of arguments was daunting.
SRT: consolidateddiscussions, wants to set context. Martin will address
issues.
SRT: wehave yet to put something up about the charter. Deliverables -- focus
is clear on process external description.
SRT: wehave 2 years to create the deliverables. we don't have much time.
SRT: charterstates that the language we devise must have composition,
associations,message exchanges, and state management. Playing to the
focus, we'll see what stays in vs. falls out.
charter ishere:http://www.w3.org/2003/01/wscwg-charter
SRT: landscape is confusion over choreography specs. see
http://www.webservices.org/index.php/poll/result/33?
SRT: needsto have some clarity brought to bear on the situation by focusing on
external.
SRT: ourunderstanding of workflow / declarative modeling, and the web. WFMC,
W3C / HTTP / XML/ Semantic Web / Web Services (as businessneed),
BPMI(encoding workflow / process models in XML), BPEL. all theseled to
formation of choreography group.
SRT: BPEL4WSis proprietary. IBM is not here. We don't know where it's going.
We have to deal with what we know in W3C (open, rules & regsfor W3C).
SRT: formalmodels -- lots already said. Greg's chart summarized things well.
SRT: modelsto be embraced, will not see life of day outside of our work, but
they will underpin everything we do.
Note - SRT showedslide which suggested Microsoft where not here (clearly slides were
done lastnight).
Note - SRT shouldchange slide to reflect the fact that Microsoft are here in force
SRT: wemust be very careful to be user driven. If we forget about the end
user, the result will be bad. I will actively talk to usercommunity,
asking them to contribute informally on archives.
SRT: thereare different types of users (fast changing vs. slow changing needs,
complex vs. simple).
SRT: ifall we do is service complex, we'll miss most companies who have
simpler needs. We need to manage both sets of users. When wedefine
requirements, must classify the type of user / requirements.
SRT: inputs-- is wsci enough? If not, what does it lack? term definitions:
conversation, choreography, orchtestration?
SRT: also,is wsci the right direction? is it too much?
MC: whatfixtures do we need? How do we merge things together?
SRT: needconsensus in this group, we may do mapping later to outside world.
DA: pointsout that the concerns about WSCI also apply to BPEL & co.
SRT: wheredoes semantic web fit? Interesting possibilities here.
SRT: dowe leverage patterns (MEPs, etc.)
MC: issues-- what is choreography about? where we will start fighting is when
we start to define terms. Even capitalization of words.
MC: biggestthing is what is an external description? charter says to focus on
this. Need to nail this down first.
MC: we'llgenerate issues and add more to the list later.
MC: allthe items on the slide have been discussed today -- are transactions
part of it? Chor language needs syntax, but detail out of scope.
Compatibility checks (bi-simulations not decidable)? whathappens at
contractual level?
MC: issueor fact -- if chor about implementation, aren't we inventing another
programming language?
MC: ifwe don't make a distinction and it's turing complete, of course we're
makinga programming language.
MC: howdo we relate these things together? public description and private
implementation.
MC: separatingexternal conversations (inter-company boundaries) vs internal?
are they separate or the same? Today, everyone says we shouldn'tmake a
distinction, because you always have to consider trust, securityeven
between departments.
SRT: namingthings public vs. private. if iname something, does its internal
behavior remain private? Naming it does not say anything aboutits
internal behavior.
SRT: whenwe do this work, naming is a key concept, so we wanted to raise it as
an issue.
GM: dowe mean scope of naming?
MC: manypeople want to do very simple things. Others need transactions,
security, processes running over months, hundreds ofparticipants, etc.
MC: boeingneeding every part in the plane on the purchase order is different
than a travel agent booking a flight.
FM: howmany PhDs do you need to understand it? LOL...
MC: wehear about B2B. Is this important here? there are other application
areas than B2B. What level of granularity makes sense? What isthe
significance of the "B"? Is it too narrow?
MC: manydiscussions about formal models. We'll probably see convergence quite
quickly. Other aspect is discussions about state vs. activitydiagrams.
Notion of graphical notation was ruled out of scope.
MC: wewill not standardize any graphical notation.
MC: wecan use whatever is suitable for this group.
MC: whatis a conversation, a collaboration? Do we break down everything down
into 2 party exchanges? No, breaking it down doesn't alwayswork.
MC: multipleparticipations, multiple conversations at the same time. also
discussion about negotiation of contracts.
MC: thisis not an exhaustive list. Need to think about these issues and new
ones we must process.
mc: wecan't make progress until we resolve execution issue. If you can
identify other burning issues, we'll post them.
DAY TWO
THE BORING STUFF
(mc) today's focuswill be the "boring stuff", including requirements
(mc) first line ofbusiness -- when are conference calls?
(mc) two (equallyuncomfortable) alternatives: Tuesdays 1p PST or 7a PST
(pause torearrange lighting in the OCC)
MEETINGS
CONFERENCE CALLS
first poll: 1pmPST = 18, 7am PST = less than 18
suggestion: howabout alternating times weekly?
response: that'seven worse -- it rules out scheduling anything in both of those times
suggestion:alternate days?
response: friday'stricky with time zones, mondays get difficult with long holidays
(mc) we couldpossibly consider alternating at some longer interval (possibly months)
(mc) conferencecall will be 1.5 hours every Tuesday at 1pm PST
first call will beTuesday, March 25th
(mc) call-indetails will be posted on the admin web site
ACTION W3Cstaff to setup teleconf
FACE TO FACE
(mc) second item:face-to-face meetings
(mc) although itwould be nice to coordinate with some of the other W3C working groups, that ishighly unlikely
(mc) it seems thatfour meetings a year would work: March, June, September, December
question: why can'twe overlap meetings? there's a lotof overlap in what's being worked on
response:logistics with that many people wind up limiting where you can host such anevent
response: we canre-evaluate this at any time
(mc)rotation: West Coast, East Coast,Europe, Oceana (?)
(mc) obviouslyknowing where we'll meet sooner is better, but W3C rules require at least 8weeks notice
WSA/WSD - 12-16May in Rennes, France
WSA/WSD - 28 Jul -16 Aug Toronto, Canada
point: conferencesin Oceana typically involve everyone travelling a long time
point: employeesof US companies can have difficulty travelling outside the US
point: Japanesecompanies tend to wind up hosting more often than is fair to them
(mc) Our two-yearschedule calls for only two meetings in Oceana
(mc) If it becomesa problem, nobody should feel pressured to host -- if nobody volunteers, we'llhave to find an alternate venue
question: WW-Grainger isn't quite East Coast, butwill investigate hosting in June
(kliu) SAP may beable to host either in Europe or the US
(srt) Australia inDecember is a *lot* more expensive than other times of the year
I can also askabout Sun hosting in Burlington Massachussetts
question: is therea list of responsibilities for the host?
(mc) connectivity*at least* with HTTP
(mc) usual daytimestuff -- breakfast, lunch
(mc) dinner istypically self-paid
guides for hostingF2Fs: http://www.w3.org/Guide/hosting.htmand http://www.w3.org/Guide/meeting-checklist.html
(mc) usually thebiggest problem in organizing is connectivity
(mc) the number ofpeople presents a challenge; with the size of this group, classroom-stylesetups are more workable
WORK SCHEDULE
(mc) third item --the work schedule
<mc>
April 2003: 1stdraft of requirements and use cases
June 2003: WGapproved requirements doc (v1)
Sept 2003: 1stdraft of abstract spec
Dec 2003: 1stdraft of concrete spec
Feb 2004: approveupdates to requirements doc (v2)
July 2004: lastcall for all abstract/concrete specs
Aug 2004 - Marc2005: test suite, interop, primer, consolidate recs
</mc>
(fmccabe) AFAIK,W3C has no policy about test suites and the like
(mc) No, but theyencourage it, and it's in our charter
(mc) we've triedto align the larger milestones with our F2F meetings
jhendler haschanged the topic to: WS Choreography f2f March 14, 2003 http://www.w3.org/2003/03/14-ws-chor-irc
concrete vs.abstract specs: it seems like a good idea to get down an abstract spec, but arewe definite that there will be one concrete spec?
(srt) no, we mayhave multiple concrete specs
(kliu) thetimeline extends to Mar 2005, but the charter ends Dec 2004
(hugo+yves) goodpoint, but we have a rule that the group stays alive for six months after ourwork is over. And this wouldn't bethe first time a working group was extended.
(mc) We should aimto be finished by December
(mc) Chairsappoint an editing team -- feel free to volunteer
REQUIREMENTS DOCUMENT
(mc) Firstdocument will be the requirement document; we have two volunteers
(mc) (Abbie Barberand Dan Austin)
(daustin) I wantto work on the requirements spec, but I'd rather it not preclude working onother things
GLOSSARY
(cmcdonald) we'realso going to work on terminology as well, right?
(mc) I hadn'tthought whether we'd propose a separate glossary, or propose diffs/ammendmentsto the WSA glossary
(mc) there are afew classes of things: additions, redefinitions, overloading
(hugo) working inour corner and then merging into the larger glossary would probably be the bestapproach
(mc) Anytimeanyone has something they expect might help, send it to the list, BUT be awareof the IPR rules
(mc) Make it veryclear when you're just contributing background
(hugo) there'salready a set of definitions in the current glossary that we could either startwith or ignore
(hugo) will sendit to the list
ACTION:Hugo to send choreography definitions to the list
(daustin) weshould probably as a group decide to adopt the issues approach that the WSA hasput together
(mc) what is thatprocess?
(daustin) someonereports an issue by sending it to a special mailing list
(daustin) anissues editor compiles the issues into a document
(daustin) someoneis assigned to resolve that issue by proposing a solution and working itthrough the group
(daustin) onceresolved, the issue editor updates the document
REF: WSA Issuesprocess URL: http://www.w3.org/2002/ws/arch/2/04/wd-wsa-issues-process-20020426
(mc) W3C isencouraging groups to use bugzilla
(jhendler) thereare a couple of different types of issues, and document issues aren't somethingwe should spend a lot of time on right now
(jhendler) what wereally should spend time on now is how to deal with working group issues
(mc) right, we'vetalked about a public issue list, but we do need to deal with internal issuesas well. perhaps bugzilla isworthwhile for this?
(mc) chairs takean action to think about the handling of issues
no, bugzilla wouldbe terrible for internal issues, I was NOT suggesting it.
in fact, I wassuggesting "NOT it"
REF: W3C Bugzillainformation URL: http://www.w3.org/Bugs/
Jim -- I think Iattributed the bugzilla comments to Martin. Did I goof?
(mc) (demo ofbugzilla)
(mc) people shouldplay around with bugzilla
(jhendler) notsure whether I would advocate bugzilla
(jdart) seems likeother groups accumulate a lot of issues
(jdart) how do wekeep a list like this winnowed to keep it from growing out of control?
(mc) one approachis to do some kind of limited triage at each conf. call and F2F
(mc) dispose ofthe easy ones at conf. calls, and save the big ones for F2F meetings
qa deliverablesat:
http://www.w3.org/TR/2003/WD-qaframe-intro-20030210/
http://www.w3.org/TR/2003/WD-qaframe-ops-20030210/
http://www.w3.org/TR/2003/WD-qaframe-spec-20030210/
we have to becareful to separate issues that must be addressed i.e. sent to the publiccomment list, and issues that do not require that level of formal treatment
<hugo>
I'm talking aboutQA. This presentation was from theQA working group.
My point is tohighlight that QA is important, and we're committed to a certain level ofquality, and there are things to make our lives easier getting there.
Some workinggroups have been able to create good test suites. It doesn't take a lot of effort if you do it right.
hugo slides at http://www.w3.org/2003/talks/qa-outreach/overview.html
There is a QAworking group, but they won't do the work of creating the test suite for us.
There aredocuments to guide us through the QA process. The intended audience includes the chair, staff, and membersof the working group. They are abit hefty.
Guidelines forwriting a testable spec:
* define scopeclearly
* specifyconformance policy
There is adocument describing these guidelines.
Most important forus is: how are we going to do that clearly?
Suggestion is toappoint a QA lead within the working group.
In the end,"everyone is responsible", but this person would be a focus.
REF: RFC 2119 -terms for use in specs: http://www.ietf.org/rfc/rfc2119.txt
Feedback isencouraged on these QA documents.
(Especially sincethese will be included in the W3C process)
</hugo>
(daustin) are theygoing to grandfather specs written before this process?
(hugo) there's noclear answer to that right now
(mc) Thesedocuments are really talking about testing and test suites. QA includes issues and management andeverything else. How do you writea test suite for an architecture?
(hugo) For somethings (like this working group), test suites are more relevant than others.
(hugo) Our nextstep is probably to appoint a QA lead.
(mc) We need aquality champion.
(mc) Volunteerswelcome.
(mc) There is asort of "field guide" to the QA documents, detailing who should readwhat, but it takes some reading to get to it.
(yves) We expectour mailing list to be very crowded.
(yves) Label youremail in the subject line (for instance, with an issue number), so people caneasily sort your email
(yves) If youreply and change the subject of your comment, change the subject line of theemail.
(jhendler) We havethreads like this now. The emailarchive will keep track of the chain of replies, so change your subject freelyas you change topics.
(yves) Keep inmind that the list is public.
(mc) To reiterate,if you change topics, change subject lines.
QA presentation byHugo: http://www.w3.org/2003/Talks/qa-outreach/
(fmccabe) Forthose people who aren't in the W3C list, you have to affirm that you want youremail archived.
(yves) This is inpart to control spam, but also to prevent people from not knowing they'reposting to a public list.
(jhendler) Somekind of subject-line annotation to administrative messages would be good
(mc) Those usuallycome out on the members-only list
(mc) A number ofpeople are in many groups, so they're overloaded with email. Making a point at the end of a verybusy 300-reply chain of conversation is not always effective.
(fmccabe) Ouremails, wherever possible, should focus on documents, and contributions tothem. If you have a suggestion fora document, prepare it as drop-in text.
(mc) Ourconversations are going to be structured around documents and issues. Perhaps we should have a separate tagfor "theory" conversations.
(daustin) Maybethis is a good spot to talk about our use of XML spec(?).
(mc) That mightput people off right now.
s/XML spec/XMLSpy/
(daustin) Perhapswe should send some email to XML Spy about getting copies for members of thegroup.
(mc) Anythingelse?
(kaustin) Whatabout usage scenarios?
(mc) At the momentthat's lumped in w/ requirements. Perhaps we'll need two separate documents, but for now we're thinking ofthem as one.
contact at Altova(XMLSpy) is Alexander Falk
Break
s/(kaustin)/(kevinliu)
*** starting ***
(mc) Why the hell are we here?
It's clear that wehave a big decision: external only, internal only, both, or somethingdifferent. Until we resolve that,it's pointless going on.
(mc) We'll have todo some iteration on that question. First we'll take a vote, then we'll have some discussion, and then comeback for more.
(mc) Non-bindingstraw poll: external only, internal only, both, don't understand, not preparedto say at this stage.
(jhendler) Can weget definitions of this terms?
(srt) No, thatwould be an "I don't understand"
(ygoland) Could weat least qualify "external only" to mean contracts, as per theMicrosoft presentation from yesterday?
(mc) WhyMicrosoft's? Why not anotherpresentation.
THESTRAW POLL
(srt) Not preparedto say: 5
(srt) Don'tunderstand: 7
(srt) It's all thesame thing (both): 8
(srt) Internalonly: 1
(srt) Externalonly: 11
(srt) One group isgoing to pitch external, another internal, and a third one will pitchboth. Part of the job is"what do you mean by internal/external"?
(srt) Assaf: both
(srt) YGoland:external
(srt) JDart:internal
(mc) Each groupworks on it for 1/2 hour, then a ten minute pitch for each with questions
(mc) Don't knowswill meet and elaborate on why they don't know and what they'd need to know inorder to make a decision.
Lunch
Externaland Internal (both)
(daustin) This isour first hard issue to take on.
(daustin)"Internal vs. External" -- it's not a versus
(daustin) We allneed to deal with external communications b/w compositions of web services
(daustin) Is itsufficient to just consider these communications? We think not.
(daustin) Firstquestion: what does the charter say? It was written with 'creative ambiguity', so it can be read to supportboth positions.
(daustin) Nextquestion: what is the boundary b/w external and internal? It's arbitrary, and your external is myinternal. You'll end up doingboth, anyway.
(daustin) Thedistinction between internal and external doesn't help you solve anything.
(daustin) Next:what would it be like to only do external?
(daustin) We'dprobably need a formal composition model based on pi-calculus, an overall modeldescription describing internal and external, and a subset of that model forexternal only.
(daustin) Anothermodel would be to have the same formal model, and then two distinct sub-models:one external and one internal.
In the first case,it would be hard to do the formal model and the external model without the"in-between". In thesecond case, we could just ignore the internals.
(daustin) In acollaboration, we need to know some minimal amount about the internal workingsof the other participants. Withoutthis internal info, we'd be out of luck.
(daustin) Abehavioral description of web services would span internal and external.
(daustin) Thearbitrary inside/outside distinction doesn't serve a purpose for the users ofthe technology.
(daustin) If we'veonly got a definition of the external actions, we can't test the entireorchestration.
(daustin)Recursive composition can't be implemented with a strictly external model.
(daustin) Youcan't do a forward-looking spec for the external without having specified theinternal.
(daustin) How dowe describe multiple interactions across boundaries?
(ygoland) I don'tunderstand the difference between internal and external.
(daustin) That'spart of the point: it's an arbitrary distinction.
(mc) Summary: thedefinition of internal and external is arbitrary, so let's do all of it.
(ygoland) I stilldon't understand what we're talking about.
(arkin) We'retalking about the behavioral specification of web services.
(pfurniss) I maybe in the wrong group. We'retalking about two different things: the behavioral specification of a webservice, and the B.S. of a web service user.
(ms) Let's talkexternal before we discuss.
(??) Breaksomething into an interface/implementation, and there's the same underlyingmodel behind them both. How do youdo one without the other?
(daustin)Nightmare scenario: if this group didn't chose to define internal processing,standards would still emerge in that arena.
(afletcher) We mayhave three things, instead of two. One is the global model of the whole process. Another is a description of the individual endpoints(configuration). The external infois the message sequencing info.
ExternalOnly
(ygoland)Presenting the discussion in the external-only group.
(ygoland) Don'tlike the terms internal/external.
(ygoland) The keydistinction is a matter of policy. For example, say someone sends you and order, and you check theircredit, and then respond.
(ygoland) Oneissue is visibility: you want to tell your customer that you can accept ordersand respond to them, but the credit check is none of their business.
(ygoland) I wantmodular technology so I can describe my internal process (including the creditcheck), and at the same time describe to my partner how we fit together.
(mc) Question: wecan do this in WSDL today.
(ygoland) Notreally, because WSDL can't describe the ordering of the serviceinvocations. It can say thatmessages exist, but not the other stuff.
(ygoland) So whatI want is to be able to send out something that says, "this is how youtalk to me"
(ygoland) Discussionmoved on to the way you'd represent this external view as a state diagram, andthe question of: how do you specify the transitions between the states? Programmatically?
(ygoland) I don'twant to put code in my model (like XPath).
(ygoland) Howwould you use this? You wouldgenerate skeleton code. You couldalso do runtime validation?
(nick) This goesagainst Greg's presentation from yesterday, and this goes againstpi-calculus. You don't care aboutdistribution or about parallelism. What's the value?
(ygoland) If youlook at BPSS, it expresses all roles and states globally. It includes conditions, which I don'twant to do.
(ygoland) A lot ofdiscussion was spent on the difference between interface and implementation.
(ygoland) Can Ichange my implementation, without changing my interface?
(ygoland) If Ican't separate them, we have to define a new programming language, or take anexisting one and refine it.
(mccabe) Much ofthe heat of the discussion came from what the semantics of the interface weregoing to be. How much detailbelongs in it?
(ygoland) If Isend you a message, and part of it is my email address, but I don't want you toshare it with anyone, is the expression of that issue within the scope of thisworking group? Personal opinion:start small.
(daustin) I agreethat you should be able to change the implementation without changing theinterface. But our distinction isnot along those lines.
(daustin) So we'retalking about issues that don't entirely match up.
(daustin) What weneed to describe is what happens when web services interact witheachother. The "both"group wanted to cover the whole chain.
(mc) I understandthe "beefing up WSDL" approach. Where's the choreography angle in that?
good notes!
(nick) But isn'tthis BPSS?
Thanks.
(mc) So this isextended WSDL, basically.
(ygoland) No, thisis a global view of the entire thing -- all participants.
(mc) So doesn'tthat constrain the implementation?
(ygoland)Yes. That's the point.
(nick) I agreewith the BPSS-style third-party view. But you're making the same argument that the "both" group is.
(ygoland) Are wegoing to try to create a description that fully describes all aspects of thebehavior of a service? This isgoing to include code? BPEL iscode.
(jdart) One of theissues here is the desire to separate interface and implementation. Another issue is whether the languageused to describe the two are the same.
(jdart) We cancapture a certain level of use case with nothing more than a directedgraph. Additional features, likeconditional transitions, add complexity. WSCI/BPEL are advanced in complexity and functionality.
(jdart) So theconcern is: do we need a Turing-complete language?
(jdart) Do we needto do computation, especially on message content, including variables, in orderto express our use cases? Thisdepends on the use cases, and we don't have any!
(daustin) The"both" group thought that the formal model and the internal modeldescription would be turing-complete.
(ygoland) Thereare many use cases that a simple state-transition diagram couldn't possiblyhandle, but even the ones it can handle are *very* useful.
(arkin) Whatyou're describing is an orchestration, and it's not computationallycomplete. If you add XPath, itbecomes computationally complete.
(mc) Say we decideonly to do the external, and someone says, "what if we add this one tinyfeature"?
(ygoland) Puttingin XPath doesn't solve your problems, it starts them. You become a programming language, and a full-fledgedenvironment, and you have to define your application platform.
(ep) Why would youadd XPath so that someone else could compute your state? I know what state you're in by what yousend me.
(ygoland) Oneclaimed benefit of XPath is that we can check on eachother.
(arkin) So youclaim languages like BPML are impossible?
(ygoland) No, Iclaim that they're programming languages, and they're a basis for*portability*, rather than *interoperability*.
(nick) So what are the basic elements of interoperability?
(mc) It's clearly not what goes on the wire, but it's a higher-level application-defined sort of thing.
(nick) But where does it stop?
(jhendler) This discussion still sounds like position statements, rather than discussing the implications of the decisions. Saying "we couldn't do X" doesn't really give us the picture.
(jeff) If you make a firm condition that you'll go so far and no farther (i.e. "noXPath"), there's no smooth path for improvement. You ought to have an understanding of how to expand your usecases over time.
(ygoland)Sometimes you don't have those smooth paths. Part of the reason this XPath discussion is so heated isbecause it is such a big leap.
(arkin) BPML andBPEL prove that you can use the same language for both implementation and interface. If either of those is standardized, then there will be no reason to use a W3C choreography.
(ygoland) The morefunctional language doesn't always win. Our challenge is not just to provide functionality, but to show our customers what they don't need to do.
(srt) Aninteraction pattern: order goes in, unspecified number of interactions comeback.
Daniel sez: Todayis Albert Einstein's birthday! (Al would agree with the 'both' group)
(srt) This iscritical to financial services.
what is the 80/20?
(ygoland) They'redoing without it now.
(mccabe) In theexternal view, the "formal model" shows up in the interface.
Steve -- yourfinancial services example was a good one, but it's not just FS. Established standards like RosettaNetuse communication patterns like the one you described.
Undecided
(lgreski) Speakingfor the undecideds ...
(lgreski) Wehaven't completely defined the business problem we're trying to solve, anduntil we do that, we're out of luck.
(lgreski) What isthe difference between internal and external?
(lgreski) Is adistinction necessary? If so, whatare the implications?
(lgreski) As aconsumer/developer, what do I need to know to use a web service choreography
(lgreski) Are wetrying to develop a language to tie together web services?
(lgreski) Whatterms/definitions do we need to be decided on? Choreography, orchestration, composition ...
(lgreski) Doesthis externalization of service behavior require access to the internals?
(lgreski) Maybethere's something that relates an interface to an implementation?
(lgreski) How dowe ensure that we have a set of abstractions at different levels of granularityso the relations between the levels is complete and well-formed?
(lgreski) Does theinternal/external distinction mean anything across intra-/inter- companyboundaries?
(lgreski) Ifchoreography must be internally consistent, how can we only view it externally?
(lgreski) What'sthe theoretical foundation for choreography? Does this mean anything for the internal/externaldistinction?
(lgreski) Doescompositionality require an internal view? For real-life applications, we want to assemblechoreographies at runtime.
(lgreski) HolyGrail for end-users: build and develop complex services without having toinvolve large teams of coders.
(lgreski) Is thething that is composed (the choreography) in itself a service? Does this have implications forinternal/external view?
(lgreski) How canwe understand what we're trying to do in the context of existingspecifications: BPML, BPEL, BPSS?
(lgreski) What arethe technical problems we're trying to solve. How do they relate to the business problems? Are there different problems forinternal vs. external?
(jdart) Question:say more about customer-specific services and composition at runtime.
(lgreski) WW Graingersells maintenance supplies. Customers vary in size from F500 to small manufacturing or constructionconcerns. They all have differentprocurement processes.
(lgreski) Our datashows that 40-60% of the cost of an item is the process cost around purchasing.
(lgreski) To helpour customers reduce costs, we understand their processes and help themeliminate steps. We supportelectronic marketplaces, which are arguably standard, but adding customers tothem is still painful.
(lgreski) We wantto look at a customer's process and expose our services electronically. We want to choreograph interactionswith our customers for catalog queries, order management, etc.
(jdart) Is thatreally composition at runtime?
(lgreski) We'dlike our salespeople to be able to interactively develop a process.
(jdart) Anotherexample is offering an order to the best of N suppliers.
(daustin) Thereactually is a good case for runtime composition. Say a customer wants part X, and we want to be able tofallback from one supplier to another, or one part for another.
(ygoland) Twodifferent issues: dynamic membership, where I don't know how many people aregoing to participate, or I want to actually pull down another choreography andrun it.
Sure, if we've gotanother volunteer I'd love to start making trouble. :)
would it be trueto say that maybe now is the time to go back to basics and start compiling usecases?
(fm) There is noreason why we cannot review use cases now
(mc) greg made itclear that BPEL does not do *contracts*
(jd) has questionsabout BPEL
(jd) why doesabstract BPEL exist?
(jd) if we do dosomething like it how does it paly w/ BPEL?
(jd) brings outuse cases that exist..
(jd) statesproduct example
decide uses casesand terminology
group decides towork on use cases and terminologies (definitions)
(mc) asks dif.between choreography and orchestration
(??) orchestrationis more control, choreography is description of what needs to be done.
(nick) is there aformal model?
(nick) pi-calculuscan capture both internal/external
(mc) we are insolution space now, back to problem..
(steve)orchestration has controler
(fm) orch is arealization of a choreography
(duncan)composition vs. chor, composition is when you're actually building something
Webster definitionfor Orchestration: "harmonious organization <develop a world communitythrough orchestration of cultural diversities)"
(assaf)choreography can be a choreograph of orchestrations
Webster definitionfor composition (those that make sense for us): "3 : mutual settlement oragreement
4 : a product ofmixing or combining various elements or ingredients
(??) what are wetrying to decsribe, we need to agree on terms
The W3C usesmerriam-Webster online dictionary for its definitions
(mc) presents chormodel on board (flow), and then orch model (hub-and-spoke)
(mc) semanticallyequiv.
I got these fromMerriam-Webster Online
(mc) does anyonedisagree w/ dropping *orchestration* as a term?
(mc) orchestrationhas state (?)
(lg) have we drawnany conclusions?
(mc) word *orchestration*is banned from this group
(steve) centralcontroller model is not precluded
Break
(mc) use cases,like idea of developing a set, trivial to more complex
(mc) could dosimpler cases (e.g. Chroreography 1.0)
(mc) presents 1stuse case on board, a reservation system
(mc) new entity(e.g. airline) wants to plug into the system, what does it need to know?
(mc) have WSDLsand what other artifacts?
(mc) addsstock-quote use case as simple case
(steve) adds carreserv. system to travel reservation system
(fm) adds movie& a pizza case, agent puts together an evening of dining, enter., etc. forcustomer
(fm) a *know typesbut not instances* case
(jd) given anactor what is it's view of the system?
(da) rememberaudience is implementers of the services
(pl) presents*provisioning* use case
(pl) moreprecisely the GM new hire provisioing use case
(YG) brings upprovisioning example using *UAN*, asks about human interaction issues, and HTMLand SOAP
(mc) clearifiespl's case ... an iterative process in which goal is unknown
(yg) asks how usecase reflects back into requirements?
(yg) asks how wecan accomidate system change
(jd) prov exampleis a good one, interesting aspect is furniture vendor negotiation
(lp) issend/recieve model rich enough?
(steve) presentsclient/server example
(steve) think ofidle server and busy server, trying to tease out differnces between cws andstate
(da) need todefine set of primitives to build upon
(fm) presentsdoctor's office (receptionist, patients, doctors)
(fm) conversationsbetween recept and doctors, and recept and patients, doctors and patients
(fm) in lucian'spaper(?)
(jd) needdescription when you have multiple actors that need to know how to interact w/a system
(fm) setting bartoo high
(yg) brings uplegacy issue
(yg) figuring outhow to structure for white, black, gray box scenarios
(mc) anysuggestions on what to next?
(lg) recap of usecase purposes
could lp pleasepost these recaps?
sorry, I mean lg
yes.
thanks
ACTION:Presenters of use cases to write them up
(steve) takesaction item to capture use cases
ActuallySteve took an action item to capture his use case not all others.
client / serveruse case: basic communication pattern between two machines. How do we dscribeinteraction of one particular service vs another at the point at which wecompose them. Pattens of interatctions they support, and composition of thoseservices. (e.g. open, close,request / reply). How do we capture the different patterns of interactionagainst the state of the service?
Action: write upuse cases
reservation usecase: new airline wants to join reservation system. Need to know the artifactsthat are required by the system / airline in order for airline to join andparticipate in transactions on the system.
recommendationsystem: provide recommendations, package restaurants, movies, etc. into nightout for customer. Addresses dynamic membership problem, processes are known,it's a question of adding a new restaurant, movie. At the beginning of the interaction I don't know whichrestaurants / movies to access.
doctor office:multiple service, single queue. dynamic instance allocation. Multiple actorsthat interact with a service in a predictable, reliable way.
provisioning:Coordinating iterative communications between company and external entities,where the goal is unknown in advance, or the goal changes based on results ofindividual process steps.
Also, changingdefinitions of process(es) at runtime.
Negotiation /proposal, counterproposal.
(da) can we breakup into diff levels of abstraction?
(da) here is thestack bottom up: MEP, WSCI,Metadata (policy), Global Process
(da) expressesneed to get handle on types of probs were are trying to address, use stack as apoint of discussion
(da) MEPrepresents the basic 7 messages
(da) metadatarepresents business policies related to the message (e.g. we won't sell yourname to spam.com...)
(da) MEP -messages passed and what is contained, WSCI - programming, Metadata -assertions, overall view of the chain of msgs or events
(da) globalprocess represents the entire business process
(da) wscirepresents one participant's perspective on its programmatic abilities
(da) globalprocess sequences multiple participants (services)
(Tony) is notconvinced we wnat MEP layer
(da) another wayto summarize, as levels of abstraction: MEP = message, WSCI = service, metadata= contract, and global process = composite.
(yg) signals areimportant and need to included
(mc) we have to beconsistent w/ a version of SOAP and a version of WSDL
(yg) is multipleoccurances of MEP / Choreogrphy pattern significant?
(mc) suggestswrap-up
(mc) suggestion:given 1st poll, there is a majority for external, so maybe we should startlooking at external
(Jeff) perhapsgood idea to start w/ pi-calc
(Steve) expressesneed to elaborate on use cases
(mc) suggestsbuilding requirements from the use cases
(mc) answers thatthere is no concensus on what is *external*
(yg) BPSS giveexternal view w/ no logic
(mc) closingcomments, end of f2f