Title: Revised Submission to the UML Profile and metamodel for Voicebased applications RFP Document mars050
1Revised Submission to the UML Profile and
metamodel for Voice-based applications RFP-
Document mars/05-07-01 MDL filePresentation
mars/05-09-08
- Atlanta 2005, September 13th
- Mariano Belaunde France Telecom RD
Submitters Alcatel, IBM, Softeam,
Telelogic Supporters France Telecom, EURESCOM, HP
2Outline
- Introduction
- Reminder on the purpose of this RFP and the
VoiceXML standard - Salient features of the Voice language
- What's new in the specification
- Textual notation
- lllustration with examples
- Demo
- Vote to reccommend adoption
3Introduction Purpose of the RFP
- Purpose
- This RFP addresses the need for standardizing a
high-level notation for designing dialogs in
interactive voice response applications,
independently of any specific voice-based
platform.
4Introduction VoiceXML
H (human) 0607511563 (dialing)
ltvxml version"1.0"?gt ltformgt ltfield
name"welcome"gt ltpromptgtGood morning
name How can I help
you?lt/promptgt ltgrammar
src"coffee.gram" type"application/x-jsgf"/gt
lt/fieldgt ltblockgt ltsubmit
next"http//www.coffee/getNext?transition2"/gt
lt/blockgt lt/formgt lt/vxmlgt
C (computer) Good morning, Mariano C (computer)
How can I help you?
H (human) Abracadabra.
Need for a graphical high-level design notation!
C I did not understand what you said.
H I would like a coffee, please.
C What kind of Coffee do you want. Black or
Cream?. C (continues in document
kindOfCoffee.vxl)
C Black coffee.
5Introduction Our approach
- Mainly based on state/transition machine
execution semantics - Uses transition-centric notation (appears like
activity diagrams) - Based on experiments made by France Telecom
- In previous european MODA-TEL project
- In current european IST-Modelware project
- In internal project
- Various concrete notations (UML/Text) but a
metamodel serving as pivot.
6Structure of the submission
Mapping tables Examples
General information
Technical Part
Purpose, and approach taken
3. The Voice UML Profile
Overview
1. Introduction
Resolution of RFP requirements
2. The Voice metamodel
4. Textual Notation
Address diferent Kind of voice modelers
Diagrams class description
7Illustration of concepts and notation
Variable
Decision
Interruptible play of a message
Diversion
End of service
8Illustration of concepts and notation
Junction point
Parameters
Non interruptible play
Multiple triggers
Trigger (speech recognition)
9What's new? The textual syntax
- Graphical notation and textual are complementary
- Graphical
- Good for communication
- Maintenability
- Analyst people
- Textual
- Faster development
- Scalability
- Programmer people
- Implementation aspects
- Any text editor becomes a design tool
- Code generation versus XMI generation
10Illustration Coffee example
voiceservice Coffee maindialog Coffee
message HowCanIHelpYou() return "Hello.
What do you want?" behavior () --
initial state junction entry play
HowCanIHelpYou() wait accept Coffee
call Coffee_D() jump entry
accept DtmfStar stop -- end
wait
11Illustration Coffee example (2)
dialog Dialog_D message WhatKind_Msg()
return "What kind of Coffee?" behavior ()
-- initial state play WhatKind_Msg()
wait accept Black jump test
accept Cream jump test -- end wait
junction test decision "Customer Account
has enough money" case
"yes" playAll Price_Msg()
play Confirmation_Msg() case "no"
play NoMoney return
12Next steps
- Atlanta meeting
- Vote to reccommend and AB adoption
- Chartering of an FTF
- Future
- Alignment issues with VoiceXML meta-language (in
FTF/RTF or Voice 2.0?) -
13DEMO
14VoiceXML forum initiative for a meta-language
- Last draft requirement doc issued on Jan 11,
2005 - VoiceXML Meta-language A representation for a
complete voice application and is the bridge from
application development tools to an application
server. - Aim to facilitate cross-vendor interoperability
of tools and delivery platforms. - Meta-language workgroup ejTalk, Fonix, Unisys,
VoiceGenie, Audium, VoiceObjects, Oracle, SBC,
Temic, Scansoft, France Telecom and others ..
15Relation of the OMG RFP with VoiceXML forum
initiative
Billing module
Common MM (dialog, speech reco, Text-to-speech)
UML Profile
VoiceXML projection
Log Analysis module
16Metamodel summary
- A dialog a reusable callable entity
- A graph of nodes (states/transient) and
transitions - May have variables and parameters
- Waiting (WaitNode), Invocation (SubDialogState),
diversion (DiversionNode), final (Next,Stop),
choice (DecisionNode) - Generic behavior (HistoryState, ListState,
AnyState) - Grammar attachment (to states or to input events)
- Various kinds of input events
- Concept (interpretation of speech), DTMF, Reject,
Inactivity, ExternalEvent, Recording - Messages
- Messages with fixed parts, variable and
conditional parts. For each parts. - Actions and expressions
- Play (may be interruptible), assignment,
ifthenelse, while, uninterpreted - Expressions to call business classes, informal
expressions