1 / 16

† Vanderbilt University Nashville, TN

Automated Context-Sensitive Dialog Synthesis for Enterprise Workflows Using Templatized Model Transformations. Amogh Kavimandan † amoghk@dre.vanderbilt.edu. Reinhard Klemm ‡ klemm@avaya.com. Aniruddha Gokhale † gokhale@dre.vanderbilt.edu. † Vanderbilt University Nashville, TN.

Download Presentation

† Vanderbilt University Nashville, TN

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.


Presentation Transcript

  1. Automated Context-Sensitive Dialog Synthesis for Enterprise WorkflowsUsing Templatized Model Transformations Amogh Kavimandan† amoghk@dre.vanderbilt.edu Reinhard Klemm‡ klemm@avaya.com Aniruddha Gokhale† gokhale@dre.vanderbilt.edu †Vanderbilt University Nashville, TN ‡Avaya Labs Research, Basking Ridge, NJ

  2. Enterprise Workflows • Large enterprises increasingly automate business processes through workflows • Supply chain management • Production • Shipping • Billing • HR • Customer service

  3. Advantages of Automation • Faster • More precise, fewer errors • Less tedious, manual work • Requires fewer people, thus cheaper • Scalable: fast output variations without requiring linear human resource variations (hiring, reassignment, termination) • Repeatable because processes are codified • Codified processes can be more easily optimized • Audit trail

  4. Automating Communication Processes • Human “impedance” • Workflows convey information to human decision makers in the enterprise • Enterprise workers communicate, collaborate about information from workflows • Enterprise workers feed decisions, parameters back to workflows • Information flow between workflows and enterprise workers and between enterprise workers traditionally slows down workflows tremendously • Solution: automate communication processes with/between humans through workflows

  5. Communications Middleware and Dialogs • Communications workflows • Designed on, executed on communications middleware • Set up communications with and between users • Voice, video, email, IM, SMS,… • Dialogs • Interface between communications workflows and users • Convey information from workflows to users • Allow users to feed decisions, parameters, content back to workflows

  6. Challenges for Middleware and Workflows • Users are not static entities! • Who (to communicate with or connect with each other)? • When? • Through which endpoints? • Through which communication media? • In which languages? • … • Our solution approach • Context-awareness in middleware to automate communications decisions where possible and reasonable • Presence on endpoints, capabilities of endpoints, (un)availability settings, location, current activities, corporate/personal rules, user skills/expertise, handicaps, spoken languages, etc. • In all other cases, ask users through dialogs about their availability, interruptibility, reachability, skills/expertise, preferences, etc.

  7. Challenges for Dialogs • Context-sensitive communications workflow decisions (who, when, where, how, …) are made dynamically • Enterprise users employ a large, constantly changing set of communication endpoints and media • Office phones, cell phones, IM clients, Web browsers, video clients, email clients, SMS, pagers, etc. • … which means dialogs are best created dynamically • Need programmatic, customizable mappings from workflow decision points to dialog instantiations on specific endpoints Endpoint Medium Content Recipient Rules Content + Context Parameters Context-Sensitive, Dynamic Dialog Generation Context- Sensitive Dialog Dialog Rendering

  8. Challenges for Context-Sensitive Dialogs • Endpoints have widely varying static capabilities and dynamic characteristics • Modality, processing power, input devices, output devices, battery level, connectivity, … • … which means dialog formatting and rendering has to be tailored to static + dynamic endpoint characteristics • Many dialogs do not just inform – but also collect feedback • Response option definitions can vary from Yes/No buttons to freeform text input • … which means dialogs have to be able to incorporate widely varying types of input forms over a given endpoint/communication medium

  9. Challenges for Context-Sensitive Dialogs • Dialogs may have to contain/link to supporting content, e.g., case documents • … which means the dialog creation has to consider the static/dynamic capabilities of the chosen endpoint to render the desired support content • or select alternative ways for user to access support content • Endpoints change rapidly! • … which means the dialog creation needs to adjust to the endpoint evolution with relatively minor changes

  10. The Good News… • Despite the potential variabilities in dialogs, they also share many commonalities • Product line architectures (PLAs) and provides a precedent for solving our challenges • … giving us the opportunity to synthesize families of context-sensitive dialog • by employing customizable and reusable software patterns and artifacts so • … rather than either • statically building context-insensitive dialogs or • creating ad-hoc programmatic mappings from workflow decision points+user context to endpoint-specific dialogs • and changing these mappings at a high cost when the endpoints change

  11. Templatized Model Transformation Endpoint-specific variations in dialogs are provided as arguments to transformation • Model Transformation & template Specialization (MTS) : • Decouples variations in communication dialogs (for individual endpoints) from the transformation • These variations are later used to instantiate endpoint-specific mappings • Extends existing modeling and model transformation toolchains without incurring additional overhead

  12. Development of templatized transformation stages Developers specify constraints notation blocks in transformation rules to identify points of configuration variability Transformation instance-specific variability modeling language (VMM) is Templatized Model Transformation auto-generated – useful for capturing variabilities • Variability models used for instantiating endpoint-specific transformation mappings • Similar to C++ class templates

  13. Templatized Model Transformation • Constraint notation blocks can be used to identify the following variabilities: • Direct Assignments of target language objects • Conditional Mappings of target language objects from some source objects (both compositional and qualitative variabilities) • Sequencing block specifies locations in transformation project where variability would be accommodated • Opaque to transformation engine and does not interfere with its translation logic Constraint notation blocks inserted as special comments in transformation project

  14. Templatized Model Transformation • General purpose transformations auto-generate VMM from source, target languages and transformation variability points • VMM can be used to specify transformation instance-specific variabilities • Variabilities are expressed as name-value pairs (direct assignments) or associations (conditional mappings) • Variability is in model as opposed to transformation rule! VMM Associations

  15. Templatized Model Transformation • Finally, transformation variabilities incorporated in transformation algorithms • Uses a higher-order transformation to construct/modify rules • Endpoint-specific VMM models used to instantiate their communication dialogs MTS can be downloaded from http://www.dre.vanderbilt.edu/CoSMIC More information can be found at http://www.dre.vanderbilt.edu/~amoghk

  16. Questions?

More Related