• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Intention Oriented Model Interaction
 

Intention Oriented Model Interaction

on

  • 391 views

 

Statistics

Views

Total Views
391
Views on SlideShare
386
Embed Views
5

Actions

Likes
0
Downloads
0
Comments
0

2 Embeds 5

http://www.slideshare.net 3
http://www.linkedin.com 2

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Intention Oriented Model Interaction Intention Oriented Model Interaction Presentation Transcript

    • Intention Oriented Model Interaction
    • Document as a Service
      • WSDL representation of a schema XSD
      • A form or petition is merely just an XML formed by XSD schema document
      • Any application/petition/document can be thrown directly into deployment container
      • The deployment container will directly convert this single document to WSDL using hot-plugin in JBI
    • XSD to WSDL Processor from Apache CXF Framework
      • private void addWSDLTypes() throws ToolException {
      • Element sourceElement = this.xsdDoc.getDocumentElement();
      • Element targetElement = (Element)sourceElement.cloneNode(true);
      • this.wsdlDefinition.setTargetNamespace((String)env.get(ToolConstants.CFG_NAMESPACE));
      • this.wsdlDefinition
      • .setQName(new QName(WSDLConstants.NS_WSDL11, (String)env.get(ToolConstants.CFG_NAME)));
      • Types types = this.wsdlDefinition.createTypes();
      • ExtensibilityElement extElement;
      • try {
      • registry = wsdlFactory.newPopulatedExtensionRegistry();
      • registerJAXWSBinding(Definition.class);
      • registerJAXWSBinding(Types.class);
      • registerJAXWSBinding(Schema.class);
      • extElement = registry.createExtension(Types.class, WSDLConstants.QNAME_SCHEMA);
      • } catch (WSDLException wse) {
      • Message msg = new Message("FAIL_TO_CREATE_SCHEMA_EXTENSION", LOG);
      • throw new ToolException(msg, wse);
      • }
      • ((Schema)extElement).setElement(targetElement);
      • types.addExtensibilityElement(extElement);
      • this.wsdlDefinition.setTypes(types);
      • WSDLWriter wsdlWriter = wsdlFactory.newWSDLWriter();
      • Writer outputWriter = getOutputWriter();
      • try {
      • wsdlWriter.writeWSDL(wsdlDefinition, outputWriter);
      • } catch (WSDLException wse) {
      • Message msg = new Message("FAIL_TO_WRITE_WSDL", LOG);
      • throw new ToolException(msg, wse);
      • }
      • try {
      • outputWriter.close();
      • } catch (IOException ioe) {
      • Message msg = new Message("FAIL_TO_CLOSE_WSDL_FILE", LOG);
      • throw new ToolException(msg, ioe);
      • }
      • }
    • Semantic Linking
      • Semantic linker will compare semantically the missing info (data) within other schemas/models/worlds
      • A function of semantic linker is to receive requests from
    • Requirements Capturing
      • Requirements Capturing starts instantaneously when a user starts to fill the forms/application/document
      • If any missing info the user fails to find are detected
      • The system will send notifications to user of the needed info
    • Process Model
      • Process Model Elements are
        • References, standards, namespaces, schemas,..etc
        • Variables
        • Partners (PartnerLinks)
        • Activities
          • Functional centric
            • 9 flow control activities
          • Compensation centric
            • 2 compensation activities
          • Fault centric & Events Centric
            • 3 activities
    • Process Model
      • Receive a client request message with <receive>.
      • Invoke other web services within the composition using <invoke>.
      • Send a response back to invoking clients using <reply>.
      • Copy data from part of one message or variable into another using <assign>.
      • Represent exceptions and handle them using <throw>, <catch>, and <catchAll>.
      • Implement conditional logic using <switch>, <if>, <else>, and <pick>.
      • Loop using <while>.
      • Perform a step in the process after a duration or on a certain date and time using <wait>
    • BPEL as a Programming Lang
      • Procs/Merits
      • Cons/Limitations
    • Code Portability
      • The BPEL Process deployment tool is a good example of code portability as BPEL opens extreme ambitions into:
        • Interoperability of programming syntax, elements because it separates data from functions and logic
        • An example to show simulation of portable (could be platform independent model PIM also) code deployment like for ex writing x-language code to deploy it in different language compiler engines
    • On-Demand Constructs
      • Design Patterns
        • Our model will find necessary BPEL constructs to simulate modular programming aspects like Methods, Attirbs,…etc
        • For ex.
          • Create necessary PartnerLinks, receives, invokes and reply's to do Model Interaction with External Partners
          • Create necessary PartnerLinks, receives, invokes and reply's to do Model interaction with Humans (Human Tasks)
          • Creat necessary Joins do Link transitionConditions
          • ..etc
      • Refactoring Patterns
        • At runtime any change in BPEL process of the artifacts in the model of intention will drive to re-creation of some constructs in the process model l
    • Requirements Change
      • Data, Fault and Event management used to manage change in requirements
        • Run Time
          • Change in Process itself
          • Human behavior effect
          • Change in business rule
          • Change in environmental arguments
        • Design time
          • Change in functional requirements
          • Change in non-functional requirements
    • Interaction Model
      • Data, Fault and Event management used to manage
      • Internal
        • Activity <-> Activity
      • External
        • Process <-> Process
      • Human
        • Activity <->Human
        • Process <-> Human
    • Interaction Model Elements
      • Human Centric
        • Document
        • Report
        • Form
      • System Centric
        • Standard (schemas, WS-*..etc)
        • Functions/Activities through end-point WSDL’s
        • Types
        • Variables & data
    • Interaction Model Human Task Activity Timer Request Required Attributes Document Function
    • Interaction Model Then transformed into Model of Intention