WO2005050503A1 - Method and computer system for workflow management - Google Patents

Method and computer system for workflow management Download PDF

Info

Publication number
WO2005050503A1
WO2005050503A1 PCT/EP2004/052796 EP2004052796W WO2005050503A1 WO 2005050503 A1 WO2005050503 A1 WO 2005050503A1 EP 2004052796 W EP2004052796 W EP 2004052796W WO 2005050503 A1 WO2005050503 A1 WO 2005050503A1
Authority
WO
WIPO (PCT)
Prior art keywords
workflow
computer system
specific
client device
item
Prior art date
Application number
PCT/EP2004/052796
Other languages
French (fr)
Inventor
Cédric HEBERT
Roger Killian-Kehr
Original Assignee
Sap Aktiengesellschaft
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sap Aktiengesellschaft filed Critical Sap Aktiengesellschaft
Publication of WO2005050503A1 publication Critical patent/WO2005050503A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling

Definitions

  • the present invention generally relates to electronic data processing, and more particularly, relates to methods, computer program, products and systems for workflow management .
  • a runtime analysis is applied to the presentation layer of a workflow application and its description in an abstract data representation in a specially designed XML dialect.
  • a set of device-dependent XSL transformation rules is applied to the abstract description to transfer (render) the abstract description into a UI description suitable for a specific device.
  • all user interface primitives push buttons, text fields etc.
  • workflow management computer system includes a workflow engine for creating workflow items .
  • a workflow item has a self descriptive part that specifies details for generating a device independent representation of the respective workflow item. The generation of the device independent representation is performed by a workflow manager based on the self descriptive part.
  • the workflow manager can generate a functional description of the user interface that relates to the workflow item.
  • a client device that connects to the workflow manager to retrieve the workflow item can transform the functional description in form of the device independent representation into a device specific representation.
  • This device specific representation can be rendered into an appropriate user interface on the client device.
  • Self descriptive workflow items eliminate the need for extensive runtime analysis of the presentation layer of a workflow application, in order to generate a device specific UI of the workflow application.
  • FIG. 1 is a simplified block diagram of a computer system for workflow management including a workflow engine and a workflow manager according to the present invention
  • FIG. 2 shows details of the workflow manager using a rule set
  • FIG. 3 shows the workflow manager including a notifying component
  • FIG. 4 is a simplified flow chart of a method for performing workflow management according to the present invention.
  • FIG. 1 is a simplified block diagram of a computer system 999 for workflow management including a workflow engine 100 and a workflow manager 200 according to the present invention.
  • the workflow engine 100 and the workflow manager 200 can communicate over an interface 501 and can both be run by one or more computers 900.
  • the computer system 999 can include further computing devices 910, 920, such as client devices like mobile phones, PDAs, desktop computers, laptop computers, etc. These devices can communicate with the workflow computer 900 over a network, such as a local area network (LAN) , a wide area network (WAN) or the Internet. In the case of using mobile devices, at least parts of the network can be operated by wireless technology.
  • the workflow engine 100 creates workflow items (151, 152, 153) .
  • each workflow item 151, 152, 153 has a self descriptive part 151', 152', 153' that specifies details for generating a device independent representation 251 of the workflow item 151.
  • the self descriptive part 151', 152', 153' includes meta data for defining at least a part of the semantics of the workflow item 151, 152, 153.
  • the workflow item can have a generic yes/no field that is used for approval or rejection by the manager.
  • the workflow manager 200 can generate the device independent representations 251 of the workflow items 151 by using the self-descriptive part 151'.
  • the device independent representations 251 are then transformed 430 into device specific representations 251a, 251b.
  • the transformation 430 is performed by the client device 910 (e.g., by a browser of the client device) that is used to access 425 the device independent representations 251 of the workflow item 151 (illustrated by solid arrows 425, 430) .
  • the transformation 430 can be performed by further client devices 920 (illustrated by dashed arrows 425, 430) .
  • the transformation 430 can be done by the workflow manager 200.
  • the workflow manager 200 can serve as a repository for a user to access workflow tasks from various devices, such as, PDA, desktop, mobile phone, etc.
  • devices such as, PDA, desktop, mobile phone, etc.
  • the manager uses a mobile phone for executing the workflow item the user interface of the workflow item looks typically quite different from what it looks like on a desktop PC or on a PDA.
  • Each of the client devices interprets the device independent representation 251 in a specific way to meet the restrictions or capabilities (e.g., display area) of the device. Therefore, the device dependent representations 251a, 251b in general will not be equal .
  • workflow parameters in the workflow engine 100 are basic character strings.
  • Special characters and/or keywords can be defined as specific workflow parameters, to convey semantic information (metadata) about the workflow item to the workflow manager 200 where the information can be further processed.
  • the following example illustrates the implementation of a self-descriptive workflow item Assume a travel planning workflow scenario, where the end user should receive a workflow item that allows him/her to choose how to be identified at the airport for his/her electronic ticket. For example, possible choices can be credit card number, ID card or passport.
  • the workflow engine 100 of the computer system 900 enriches the workflow item 151 by a self-descriptive parameter 151' (e.g., META_IDENTIFIED_BY parameter) that provides the information needed by the client device for generating an appropriate user interface.
  • the self-descriptive parameter 151' for the travel planning workflow item can be defined as :
  • the workflow manager 200 can then process all self-descriptive parameters starting with 'META' . Ignoring these parameters would deliver the same result as not using the self-descriptive part of the workflow item.
  • ' Selectl ' can be identified as a keyword for generating a dropdown box. From this parameter, the device independent representation 251 can be generated as the following XML code:
  • the XML code is compliant with the x- forms standard of W3C (http: //www.w3.org/MarkUp/Forms/) .
  • the client device 910, 920 e.g., desktop, PDA, laptop, mobile phone
  • the client devices 910, 920 run generic programs that interpret XML tags.
  • some client devices, such as PDAs and mobile phones have embedded browsers, such as HTML- or WML-browsers .
  • the generic program can be implemented as a browser that is able to render the device independent representation 251 (e.g., x-forms XML) into a browser compatible device specific representation 251a, 251b.
  • a Java Server Page parses the content of the device independent representation 251 at the client device and renders a corresponding device specific representation (e.g., a HTML page) 251a, 251b.
  • the 'generic program' e.g., JSP or browser
  • References on client side generic program implementations can be found on the W3C x-forms web site at http://www.w3.org/MarkUp/Forms/, chapter "XForms Implementations" .
  • the ⁇ selectl> tag is rendered as a drop-down box.
  • a workflow manager generates device-independent representations of workflow items based on a self-descriptive part of the workflow items . These device-independent representations can be directly transformed into device specific representations for a variety of client devices. No complex runtime analysis is required. Further, no complex transformation rules are needed to transform the abstract UI description layer into a device compliant description because this is automatically achieved by generic programs as describe above .
  • FIG. 2 shows details of the workflow manager 200 having a rule set 210.
  • the rule set 210 includes representation rules 212 for evaluating 415 whether a specific self descriptive workflow item 151 is suitable for a specific client device 910, 920.
  • the representation rules 212 include rules to check the self-descriptive parts 151', 152', 153' for the existence of self-descriptive parameters SDPl, SDP2, SDP3.
  • the rules 212 indicate that a workflow item that includes SDPl is only suitable for a PDA or a mobile phone. This may be the case when the workflow item is part of a pure mobile scenario where it does not make sense to execute the workflow item on a non-mobile device.
  • a workflow item that includes SDP2 is suitable for a PDA or a laptop but not for a mobile phone.
  • the required display area for the corresponding UI may be too large for a mobile phone display.
  • a workflow item that includes SDP3 is suitable for a desktop computer or a laptop but not for the mobile devices.
  • the required computing power for executing the workflow item may be too large for mobile devices .
  • the workflow manager evaluates 415 that the first workflow item including SDPl is only suitable for PDAs and mobile phones.
  • the second workflow item 152 including SDP3 is only suitable for desktop computers or laptops.
  • the third workflow item SDP3 is suitable for PDAs, desktop computers or laptops .
  • the rules can equally be defined for device categories and specific devices.
  • the rule set 210 can thus be used for filtering the self descriptive workflow items 151, 152, 153 to allow only specific tasks in dependence of the capabilities of the corresponding client device 910, 920.
  • the rule set 210 can be enhanced by user specific rules so that the filtering can be performed also in response to characteristics defined by the user. For example, a user might add user specific rules to prevent his/her particular mobile device from retrieving workflow items having a low priority in order to save these items to be processed later with a desktop computer in the office.
  • An example of a rule for avoiding large workflow items being sent to devices with a small display area can be implemented like :
  • the adaptation to the corresponding UI will be done automatically, as the client device gets the device-independent XML file format, and uses one of the previously described generic programs.
  • the workflow manager 200 can then mark or flag the workflow items or their device independent representations according to the result of the evaluation 415. Dependent on the marking only suitable workflow item representations are retrieved from the workflow manager 200 by the corresponding client devices, whereas, in a conventional workflow system a client device would try to retrieve all of the items for its user.
  • the rules of the rule set 210 can be set up to reflect a corporate policy on the one hand and individual tuning on the other hand. In other words, a subset of the rules are set as a framework that is valid for any user.
  • a company might want to change the size of the workflow items that a client device might receive for reasons, such as, deactivating certain classes of devices for security reasons, etc.
  • a user can define rules to reflect a user policy.
  • the user policy is a personal tuning and applies further user-specific restrictions to what the corporate policy allows .
  • FIG. 3 shows the workflow manager 200 including a notifying component 230.
  • the workflow manager 200 receives the self- descriptive workflow items from the workflow engine 100 (cf. FIG. 1) and makes the workflow items available in an inbox for a particular user.
  • the rule set 210 can further include notification rules 214 that, when applied to the workflow items, can request 435 from a notification component 230 of the workflow manager 200 to notify 440 the specific client device 910, and, thereby, notify the user of the client device 910.
  • the notification component 230 can use SMS messages, WML pages or similar formats for notifying 440.
  • the representation rules 212 (cf. FIG. 2), the notification rules 214 can depend on workflow item parameters, such as a priority parameter PPl for board member workflow items .
  • the priority parameter PPl included in a workflow item 151 can then trigger an alert that is sent 440 proactively from the workflow manager as a notification to the corresponding device
  • the user can configure or customize the notification rules 414 by, for example, manipulating parameters of a corresponding workflow user profile. For example, the user may insert or adjust a rule for suppressing notification under specific conditions, such as: no alerts over the weekends.
  • the user may also define rules for automatic workflow execution. For example, if a department has a rule that vacation of up to two days will always be approved, a rule can be set up that checks a vacation request workflow item for the number of vacation days. In case the number is less than 3, the workflow item will be automatically processed by the workflow manager 200 and a corresponding notification is sent to the approving manager to inform about the workflow item execution.
  • FIG. 4 is a simplified flow chart of a method 400 for performing workflow management according to one implementation of the present invention. In other implementations, some method steps can be omitted or can also be performed in a different order.
  • the flowchart illustrates which method steps are executed by which component of the computer system 999.
  • the components workflow engine, workflow manager and client device are separated by dashed lines. The various steps can be implemented as described in the description of FIGs . 1 to 3.
  • the workflow engine creates 410 self- descriptive workflow items . These workflow items are then received 413 by the workflow manager and placed in a workflow inbox that belongs to a user who is the recipient of the workflow item.
  • the workflow manager 200 then evaluates 415 the workflow items by using a rule set 210 (cf. FIGs. 2, 3) that is applied to the self-descriptive part of the workflow item and/or to the workflow item as a whole.
  • the evaluation 415 can cause the workflow manager to notify 440 the user of the client device.
  • the evaluation 415 results in filtering 417 the workflow items to keep only those that are suitable for the client device.
  • the workflow items can be flagged 419 to reflect the filtering result.
  • the workflow manager Based on the self-descriptive part of the workflow items, the workflow manager generates 420 a device- independent representation of each workflow item.
  • the client device When the client device connects to the workflow manager it retrieves the corresponding device- independent representation. Advantageously, only those representations that are flagged as meaningful for the device are retrieved.
  • the client device then transforms 430 the device- independent representation into a device-specific representation (UI) by using a generic program, such as a browser.
  • UI device-specific representation
  • the executed workflow item is received 443 by the workflow manager and the workflow engine receives 444 a corresponding confirmation.
  • the workflow manager can generate 445 a timeout. For example, for timeout generation the workflow manager launches a timer for each workflow item when retrieved by a client device.
  • the timeout can cause the workflow manager to invalidate 450 the workflow item and to return the workflow item to the workflow engine where it is received 446 with a failure status.
  • the timeout generation 445 can also cause the workflow manager to make 460 the device independent representation of the workflow item visible again so that a further client device can retrieve the workflow item.
  • the further client device may belong to the same user. It may also belong to a further user who has a similar role as the user and who is also in a position to execute the workflow item.
  • Information about substitute users can be stored in a workflow user profile or can be dynamically determined by user-to- role assignments by selecting the further user from a list of users who are assigned to the same role as the original recipient.
  • Embodiments of the invention can be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them.
  • the invention can be implemented as an workflow management computer program product, i.e., a computer program tangibly embodied in an information carrier, e.g., in a machine-readable storage device or in a propagated signal, for execution by, or to control the operation of, data processing apparatus, e.g., a programmable processor, a computer, or multiple computers.
  • An workflow management computer program can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment.
  • a computer program can be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a communication network. Method steps of the invention can be performed by one or more programmable processors executing a computer program to perform functions of the invention by operating on input data and generating output.
  • Method steps can also be performed by, and apparatus of the invention can be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application-specific integrated circuit) .
  • processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer.
  • a processor will receive instructions and data from a read-only memory or a random access memory or both.
  • the essential elements of a computer are at least one processor for executing instructions and one or more memory devices for storing instructions and data.
  • a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, e.g. , magnetic, ⁇ magneto-optical disks, or optical disks.
  • Information carriers suitable for embodying computer program instructions and data include all forms of non-volatile memory, including by way of example semiconductor memory devices, e.g., EPROM, EEPROM, and flash memory devices; magnetic disks, e.g., internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks.
  • the processor and the memory can be supplemented by, or incorporated in special purpose logic circuitry.
  • the invention can be implemented on a computer having a display device, e.g., a cathode ray tube (CRT) or liquid crystal display (LCD) monitor, for displaying information to the user and a keyboard and a pointing device, e.g., a mouse or a trackball, by which the user can provide input to the computer.
  • a display device e.g., a cathode ray tube (CRT) or liquid crystal display (LCD) monitor
  • keyboard and a pointing device e.g., a mouse or a trackball
  • Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback, e.g., visual feedback, auditory feedback, or tactile feedback; and input from the user can be received in any form, including acoustic, speech, or tactile input.
  • the invention can be implemented in a computing system that includes a back-end component, e.g., as a data server, or that includes a middleware component, e.g., an application server, or that includes a front-end component, e.g., a client computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the invention, or any combination of such back-end, middleware, or front-end components.
  • the components of the system can be interconnected by any form or medium of digital data communication, e.g., a communication network. Examples of communication networks include a local area network (LAN) and a wide area network (WAN) , e.g., the Internet.
  • the computing system can include clients and servers .
  • a client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.

Abstract

Method and computer system workflow management. A workflow engine (100) creates (410) workflow items (151, 152, 153). Each workflow item (151, 152, 153) has a self descriptive part (151', 152', 153') that specifies details for generating (420) a device independent representations (251) of a corresponding workflow item (151). A workflow manager (200) generates (420) the device independent representation (251) based on the self descriptive part (151').

Description

METHOD AND COMPUTER SYSTEM FOR WORKFLOW MANAGEMENT
Field of the Invention
The present invention generally relates to electronic data processing, and more particularly, relates to methods, computer program, products and systems for workflow management .
Background of the Invention In general, integrating mobile devices into workflow management needs adaptation of workflow application user interfaces to fit the capabilities of the various mobile devices. For example, typically the user interface (UI) of a workflow application that relates to vacation approval when executed on a desktop computer looks different from the corresponding UI on a personal digital assistant (PDA) or a mobile phone. The publication "On Integrating Mobile Devices Into A Workflow Management Scenario" (Proc. 11th International Workshop on Database and Expert Systems Applications (DEXA 2000) ; Published by IEEE Computer Society, Los Alamitos, California, Page(s) 186-192) addresses this problem by proposing a Java Border Service Architecture (JBSA) . A runtime analysis is applied to the presentation layer of a workflow application and its description in an abstract data representation in a specially designed XML dialect. A set of device-dependent XSL transformation rules is applied to the abstract description to transfer (render) the abstract description into a UI description suitable for a specific device. As part of the analysis, all user interface primitives (push buttons, text fields etc.), are identified at an operating system level by means of UI object hierarchy Δ
inspection. No semantic analysis is performed and thus no "valence" will be given to identified elements. Type and unique identifier of each user interface primitive is derived and registered to allow for later access to each GUI element. All results of the runtime analysis are assembled and form a "snapshot" in a well defined descriptive language. This approach requires extensive runtime analysis of the presentation layer of a workflow application, which is time consuming. Further, complex transformation rules are needed to transform the abstract UI description layer into a device compliant description.
Summary of the Invention
Based on the teaching of the above publication there is a need to improve the generation of workflow task user interfaces for execution of workflow tasks on multiple devices . Workflow tasks are usually parts of a workflow application and will also be referred to as workflow items, hereinafter. This is achieved by a workflow management computer system according to claim 1. Further embodiments of the invention are a workflow management method according to claim 12 and a workflow management computer program product according to claim 21. The computer system includes a workflow engine for creating workflow items . A workflow item has a self descriptive part that specifies details for generating a device independent representation of the respective workflow item. The generation of the device independent representation is performed by a workflow manager based on the self descriptive part. By using self descriptive workflow items, the workflow manager can generate a functional description of the user interface that relates to the workflow item. A client device that connects to the workflow manager to retrieve the workflow item can transform the functional description in form of the device independent representation into a device specific representation. This device specific representation can be rendered into an appropriate user interface on the client device. Self descriptive workflow items eliminate the need for extensive runtime analysis of the presentation layer of a workflow application, in order to generate a device specific UI of the workflow application. The aspects of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the appended claims. Also, the described combination of the features of the invention is not be understood as a limitation, and all the features can be combined in other constellations without departing from the spirit of the invention. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention as described.
Brief Description of the Drawings
FIG. 1 is a simplified block diagram of a computer system for workflow management including a workflow engine and a workflow manager according to the present invention; FIG. 2 shows details of the workflow manager using a rule set; FIG. 3 shows the workflow manager including a notifying component; and FIG. 4 is a simplified flow chart of a method for performing workflow management according to the present invention.
Detailed Description of the Invention
FIG. 1 is a simplified block diagram of a computer system 999 for workflow management including a workflow engine 100 and a workflow manager 200 according to the present invention. The workflow engine 100 and the workflow manager 200 can communicate over an interface 501 and can both be run by one or more computers 900. The computer system 999 can include further computing devices 910, 920, such as client devices like mobile phones, PDAs, desktop computers, laptop computers, etc. These devices can communicate with the workflow computer 900 over a network, such as a local area network (LAN) , a wide area network (WAN) or the Internet. In the case of using mobile devices, at least parts of the network can be operated by wireless technology. The workflow engine 100 creates workflow items (151, 152, 153) . For example, when a user of the computer system 999 applies for vacation the workflow engine 100 creates a corresponding workflow item for the user's manager. The work flow item represents a small application that allows the manager to approve or reject the vacation request. Each workflow item 151, 152, 153 has a self descriptive part 151', 152', 153' that specifies details for generating a device independent representation 251 of the workflow item 151. The self descriptive part 151', 152', 153' includes meta data for defining at least a part of the semantics of the workflow item 151, 152, 153. In the example above, the workflow item can have a generic yes/no field that is used for approval or rejection by the manager. The workflow manager 200 can generate the device independent representations 251 of the workflow items 151 by using the self-descriptive part 151'. The device independent representations 251 are then transformed 430 into device specific representations 251a, 251b. Usually, the transformation 430 is performed by the client device 910 (e.g., by a browser of the client device) that is used to access 425 the device independent representations 251 of the workflow item 151 (illustrated by solid arrows 425, 430) . Alternatively, the transformation 430 can be performed by further client devices 920 (illustrated by dashed arrows 425, 430) . Alternatively, the transformation 430 can be done by the workflow manager 200. The workflow manager 200 can serve as a repository for a user to access workflow tasks from various devices, such as, PDA, desktop, mobile phone, etc. For example, when the manager uses a mobile phone for executing the workflow item the user interface of the workflow item looks typically quite different from what it looks like on a desktop PC or on a PDA. Each of the client devices interprets the device independent representation 251 in a specific way to meet the restrictions or capabilities (e.g., display area) of the device. Therefore, the device dependent representations 251a, 251b in general will not be equal . For example, workflow parameters in the workflow engine 100 are basic character strings. Special characters and/or keywords can be defined as specific workflow parameters, to convey semantic information (metadata) about the workflow item to the workflow manager 200 where the information can be further processed. The following example illustrates the implementation of a self-descriptive workflow item Assume a travel planning workflow scenario, where the end user should receive a workflow item that allows him/her to choose how to be identified at the airport for his/her electronic ticket. For example, possible choices can be credit card number, ID card or passport. The workflow engine 100 of the computer system 900 enriches the workflow item 151 by a self-descriptive parameter 151' (e.g., META_IDENTIFIED_BY parameter) that provides the information needed by the client device for generating an appropriate user interface. The self-descriptive parameter 151' for the travel planning workflow item can be defined as :
META IDENTIFIED BY="Selectl (VisaCardl IDCard| assport)
For example, the workflow manager 200 can then process all self-descriptive parameters starting with 'META' . Ignoring these parameters would deliver the same result as not using the self-descriptive part of the workflow item. For example, when the workflow manager 200 processes the META_IDENTIFIED_BY parameter, ' Selectl ' can be identified as a keyword for generating a dropdown box. From this parameter, the device independent representation 251 can be generated as the following XML code:
<selectl> <label>VisaCard</label> <label>IDCard</label> <label>Passport</label> </selectl>
For example, the XML code is compliant with the x- forms standard of W3C (http: //www.w3.org/MarkUp/Forms/) . In turn, the client device 910, 920 (e.g., desktop, PDA, laptop, mobile phone) can then retrieve this code over a HTTP connection. The client devices 910, 920 run generic programs that interpret XML tags. For example, some client devices, such as PDAs and mobile phones have embedded browsers, such as HTML- or WML-browsers . To interpret the device independent representation 251 the generic program can be implemented as a browser that is able to render the device independent representation 251 (e.g., x-forms XML) into a browser compatible device specific representation 251a, 251b. In an alternative implementation a Java Server Page (JSP) parses the content of the device independent representation 251 at the client device and renders a corresponding device specific representation (e.g., a HTML page) 251a, 251b. The 'generic program' (e.g., JSP or browser) knows how to render because the device independent representation 251 includes all necessary information. References on client side generic program implementations can be found on the W3C x-forms web site at http://www.w3.org/MarkUp/Forms/, chapter "XForms Implementations" . In the above XML example the <selectl> tag is rendered as a drop-down box. A workflow manager according to the invention generates device-independent representations of workflow items based on a self-descriptive part of the workflow items . These device-independent representations can be directly transformed into device specific representations for a variety of client devices. No complex runtime analysis is required. Further, no complex transformation rules are needed to transform the abstract UI description layer into a device compliant description because this is automatically achieved by generic programs as describe above .
FIG. 2 shows details of the workflow manager 200 having a rule set 210. The rule set 210 includes representation rules 212 for evaluating 415 whether a specific self descriptive workflow item 151 is suitable for a specific client device 910, 920. In the example of FIG. 2, the representation rules 212 include rules to check the self-descriptive parts 151', 152', 153' for the existence of self-descriptive parameters SDPl, SDP2, SDP3. The rules 212 indicate that a workflow item that includes SDPl is only suitable for a PDA or a mobile phone. This may be the case when the workflow item is part of a pure mobile scenario where it does not make sense to execute the workflow item on a non-mobile device. Further, a workflow item that includes SDP2 is suitable for a PDA or a laptop but not for a mobile phone. For example, the required display area for the corresponding UI may be too large for a mobile phone display. Further, a workflow item that includes SDP3 is suitable for a desktop computer or a laptop but not for the mobile devices. For example, the required computing power for executing the workflow item may be too large for mobile devices . In this example, the workflow manager evaluates 415 that the first workflow item including SDPl is only suitable for PDAs and mobile phones. The second workflow item 152 including SDP3 is only suitable for desktop computers or laptops. The third workflow item SDP3 is suitable for PDAs, desktop computers or laptops . The rules can equally be defined for device categories and specific devices. When a device 910, 920 connects to the workflow manager 200, the workflow manager 200 detects the device and can determine the meaningful workflow items for the device/device category. The rule set 210 can thus be used for filtering the self descriptive workflow items 151, 152, 153 to allow only specific tasks in dependence of the capabilities of the corresponding client device 910, 920. The rule set 210 can be enhanced by user specific rules so that the filtering can be performed also in response to characteristics defined by the user. For example, a user might add user specific rules to prevent his/her particular mobile device from retrieving workflow items having a low priority in order to save these items to be processed later with a desktop computer in the office. An example of a rule for avoiding large workflow items being sent to devices with a small display area can be implemented like :
If (WorkflowItem.getSize () <=
RequestingDevice.getMaxSize () ) return Workflowltem;
The adaptation to the corresponding UI will be done automatically, as the client device gets the device-independent XML file format, and uses one of the previously described generic programs. The workflow manager 200 can then mark or flag the workflow items or their device independent representations according to the result of the evaluation 415. Dependent on the marking only suitable workflow item representations are retrieved from the workflow manager 200 by the corresponding client devices, whereas, in a conventional workflow system a client device would try to retrieve all of the items for its user. The rules of the rule set 210 can be set up to reflect a corporate policy on the one hand and individual tuning on the other hand. In other words, a subset of the rules are set as a framework that is valid for any user. For example, a company might want to change the size of the workflow items that a client device might receive for reasons, such as, deactivating certain classes of devices for security reasons, etc. Within the framework a user can define rules to reflect a user policy. The user policy is a personal tuning and applies further user-specific restrictions to what the corporate policy allows .
FIG. 3 shows the workflow manager 200 including a notifying component 230. The workflow manager 200 receives the self- descriptive workflow items from the workflow engine 100 (cf. FIG. 1) and makes the workflow items available in an inbox for a particular user. The rule set 210 can further include notification rules 214 that, when applied to the workflow items, can request 435 from a notification component 230 of the workflow manager 200 to notify 440 the specific client device 910, and, thereby, notify the user of the client device 910. For example, the notification component 230 can use SMS messages, WML pages or similar formats for notifying 440. As the representation rules 212 (cf. FIG. 2), the notification rules 214 can depend on workflow item parameters, such as a priority parameter PPl for board member workflow items . The priority parameter PPl included in a workflow item 151 can then trigger an alert that is sent 440 proactively from the workflow manager as a notification to the corresponding device In one implementation, the user can configure or customize the notification rules 414 by, for example, manipulating parameters of a corresponding workflow user profile. For example, the user may insert or adjust a rule for suppressing notification under specific conditions, such as: no alerts over the weekends. The user may also define rules for automatic workflow execution. For example, if a department has a rule that vacation of up to two days will always be approved, a rule can be set up that checks a vacation request workflow item for the number of vacation days. In case the number is less than 3, the workflow item will be automatically processed by the workflow manager 200 and a corresponding notification is sent to the approving manager to inform about the workflow item execution.
FIG. 4 is a simplified flow chart of a method 400 for performing workflow management according to one implementation of the present invention. In other implementations, some method steps can be omitted or can also be performed in a different order. The flowchart illustrates which method steps are executed by which component of the computer system 999. The components workflow engine, workflow manager and client device are separated by dashed lines. The various steps can be implemented as described in the description of FIGs . 1 to 3. As a response to applications that trigger a workflow, the workflow engine creates 410 self- descriptive workflow items . These workflow items are then received 413 by the workflow manager and placed in a workflow inbox that belongs to a user who is the recipient of the workflow item. The workflow manager 200 then evaluates 415 the workflow items by using a rule set 210 (cf. FIGs. 2, 3) that is applied to the self-descriptive part of the workflow item and/or to the workflow item as a whole. In some cases, such as high priority workflow items, the evaluation 415 can cause the workflow manager to notify 440 the user of the client device. In some cases, for example, when a client device has insufficient capabilities for executing the workflow item, the evaluation 415 results in filtering 417 the workflow items to keep only those that are suitable for the client device. The workflow items can be flagged 419 to reflect the filtering result. Based on the self-descriptive part of the workflow items, the workflow manager generates 420 a device- independent representation of each workflow item. When the client device connects to the workflow manager it retrieves the corresponding device- independent representation. Advantageously, only those representations that are flagged as meaningful for the device are retrieved. The client device then transforms 430 the device- independent representation into a device-specific representation (UI) by using a generic program, such as a browser. When the device-specific representation has been executed by the client device, the executed workflow item is received 443 by the workflow manager and the workflow engine receives 444 a corresponding confirmation. When the client device does not respond within a predefined time period, the workflow manager can generate 445 a timeout. For example, for timeout generation the workflow manager launches a timer for each workflow item when retrieved by a client device. The timeout can cause the workflow manager to invalidate 450 the workflow item and to return the workflow item to the workflow engine where it is received 446 with a failure status. The timeout generation 445 can also cause the workflow manager to make 460 the device independent representation of the workflow item visible again so that a further client device can retrieve the workflow item. The further client device may belong to the same user. It may also belong to a further user who has a similar role as the user and who is also in a position to execute the workflow item. Information about substitute users can be stored in a workflow user profile or can be dynamically determined by user-to- role assignments by selecting the further user from a list of users who are assigned to the same role as the original recipient.
Embodiments of the invention can be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them. The invention can be implemented as an workflow management computer program product, i.e., a computer program tangibly embodied in an information carrier, e.g., in a machine-readable storage device or in a propagated signal, for execution by, or to control the operation of, data processing apparatus, e.g., a programmable processor, a computer, or multiple computers. An workflow management computer program can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program can be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a communication network. Method steps of the invention can be performed by one or more programmable processors executing a computer program to perform functions of the invention by operating on input data and generating output.
Method steps can also be performed by, and apparatus of the invention can be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application-specific integrated circuit) . Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Generally, a processor will receive instructions and data from a read-only memory or a random access memory or both. The essential elements of a computer are at least one processor for executing instructions and one or more memory devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, e.g. , magnetic, ■ magneto-optical disks, or optical disks. Information carriers suitable for embodying computer program instructions and data include all forms of non-volatile memory, including by way of example semiconductor memory devices, e.g., EPROM, EEPROM, and flash memory devices; magnetic disks, e.g., internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks. The processor and the memory can be supplemented by, or incorporated in special purpose logic circuitry. To provide for interaction with a user, the invention can be implemented on a computer having a display device, e.g., a cathode ray tube (CRT) or liquid crystal display (LCD) monitor, for displaying information to the user and a keyboard and a pointing device, e.g., a mouse or a trackball, by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback, e.g., visual feedback, auditory feedback, or tactile feedback; and input from the user can be received in any form, including acoustic, speech, or tactile input. The invention can be implemented in a computing system that includes a back-end component, e.g., as a data server, or that includes a middleware component, e.g., an application server, or that includes a front-end component, e.g., a client computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the invention, or any combination of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication, e.g., a communication network. Examples of communication networks include a local area network (LAN) and a wide area network (WAN) , e.g., the Internet. The computing system can include clients and servers . A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.

Claims

Claims
1. A computer system (999) for workflow management comprising: a workflow engine (100) for creating (410) workflow items (151, 152, 153); and a workflow manager (200) for generating (420) device independent representations (251) of the workflow items (151, 152, 153); characterized in that a workflow item (151, 152, 153) has a self descriptive part (151', 152', 153') that specifies details for generating (420) the corresponding device independent representation (251) .
The computer system of claim 1, where the self descriptive part (151', 152', 153') comprises meta data for defining at least a part of the semantics of the workflow item (151, 152, 153) .
3. The computer system of claim 1 or 2, further comprising: a client device (910, 920) for transforming (430) the device independent representation (251) into a device specific representation (251a, 251b) .
4. The computer system of claim 3, where the client device (910, 920) is a mobile device.
5. The computer system of claim 3 or 4, where the client device (910, 920) uses a generic program for transforming (430) .
The computer system of any one of the previous claims, where the workflow manager (200) has a rule set (210) comprising representation rules (212) for evaluating (415) whether a specific self descriptive workflow item (151) is suitable for a specific client device (910, 920) .
The computer system of claim 6, where the specific client device (910) is configured to retrieve the corresponding self-descriptive representation (251) of the specific workflow item (151) .
8. The computer system of claim 6 or 7, further comprising: a notification component (230) for notifying (440) the specific client device (910) if requested by notification rules (214) of the rule set (210) .
9. The computer system of any one of the claims 6 to 8, where the rule set (210) comprises further rules to suppress the notifying (440) under specific conditions .
10. The computer system of claim 8, where the notification component (230) uses a SMS message for notifying (440) .
11. The computer system of claim 8, where the notification component (230) uses a WML page for notifying (440) .
12. The computer system of any one of the previous claims, where the workflow manager (200) is configured to invalidate (450) the specific workflow item (151) when a timeout indicates that the specific client device (910) did not respond within a predefined time period.
13. A computer implemented workflow management method (400) comprising the steps of: receiving (413) workflow items (151, 152, 153), wherein a workflow item (151, 152, 153) has a self descriptive part (151', 152', 153') specifying details for a device independent representation (251) of the respective workflow item (151) ; and generating (420) the device independent representation (251) by using the self descriptive part (151'), the device independent representation (251) being a base for transformation into a device specific representation (251a, 251b) .
14. The method of claim 13, where the self descriptive parts (151', 152', 153') comprise meta data for defining at least a part of the semantics of the corresponding workflow items (151, 152, 153) .
15. The method of claim 13 or 14, comprising the further step: evaluating (415) whether a specific self descriptive workflow item (151) is suitable for a specific client device (910, 920) by applying representation rules (212) to the self descriptive part (151').
16. The method of claim 15, comprising the further step: notifying (440) the specific client device (910) if requested by notification rules (214) .
17. The method of claim 16, where the notifying (440) step sends a SMS message to the specific client device (910) .
18. The method of claim 16, the notifying (440) step sends a WML page to the specific client device (910) .
19. The method of any one of the claims 13 to 18, comprising the further step: invalidating (450) the specific workflow item (151) when a timeout indicates that the specific client device (910) did not respond within a predefined time period.
20. The method of claim 19, comprising the further step: making (460) the device independent representation (251) of the specific workflow item (151) visible to a suitable further client device (920) after the timeout.
21. A computer program product for workflow management comprising a plurality of instructions that when loaded into a memory of a computer system (999) cause at least one processor of the computer system (999) to execute the steps of any one of the claims 13 to 20.
PCT/EP2004/052796 2003-11-05 2004-11-04 Method and computer system for workflow management WO2005050503A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP03025242A EP1530139A1 (en) 2003-11-05 2003-11-05 Method and computer system for workflow management
EP03025242.3 2003-11-05

Publications (1)

Publication Number Publication Date
WO2005050503A1 true WO2005050503A1 (en) 2005-06-02

Family

ID=34429261

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2004/052796 WO2005050503A1 (en) 2003-11-05 2004-11-04 Method and computer system for workflow management

Country Status (3)

Country Link
US (1) US20050154741A1 (en)
EP (1) EP1530139A1 (en)
WO (1) WO2005050503A1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10055238B2 (en) 2013-06-18 2018-08-21 Ciambella Ltd. Method and apparatus for code virtualization and remote process call generation
US10067490B2 (en) 2015-05-08 2018-09-04 Ciambella Ltd. Method and apparatus for modifying behavior of code for a controller-based device
US10095495B2 (en) 2015-05-08 2018-10-09 Ciambella Ltd. Method and apparatus for automatic software development for a group of controller-based devices
US10409562B2 (en) 2017-03-14 2019-09-10 Ciambella Ltd. Method and apparatus for automatically generating and incorporating code in development environments
US10732969B2 (en) 2015-12-21 2020-08-04 Ciambella Ltd. Method and apparatus for creating and managing controller based remote solutions
US10798780B2 (en) 2016-08-22 2020-10-06 Ciambella Ltd. Method and apparatus for creating and managing controller based remote solutions
US10997531B2 (en) 2007-09-11 2021-05-04 Ciambella Ltd. System, method and graphical user interface for workflow generation, deployment and/or execution
US11087249B2 (en) 2016-05-24 2021-08-10 Ciambella Ltd. Method and apparatus for triggering execution of a workflow over a network

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7904488B2 (en) 2004-07-21 2011-03-08 Rockwell Automation Technologies, Inc. Time stamp methods for unified plant model
US8756521B1 (en) 2004-09-30 2014-06-17 Rockwell Automation Technologies, Inc. Systems and methods for automatic visualization configuration
US7672737B2 (en) 2005-05-13 2010-03-02 Rockwell Automation Technologies, Inc. Hierarchically structured data model for utilization in industrial automation environments
US7676281B2 (en) 2005-05-13 2010-03-09 Rockwell Automation Technologies, Inc. Distributed database in an industrial automation environment
US8799800B2 (en) 2005-05-13 2014-08-05 Rockwell Automation Technologies, Inc. Automatic user interface generation
US7650405B2 (en) 2005-05-13 2010-01-19 Rockwell Automation Technologies, Inc. Tracking and tracing across process boundaries in an industrial automation environment
US7809683B2 (en) 2005-05-13 2010-10-05 Rockwell Automation Technologies, Inc. Library that includes modifiable industrial automation objects
US8819143B2 (en) * 2005-05-31 2014-08-26 Flash Networks Ltd. Presentation layer adaptation in multimedia messaging
US7881812B2 (en) * 2005-09-29 2011-02-01 Rockwell Automation Technologies, Inc. Editing and configuring device
US7548789B2 (en) * 2005-09-29 2009-06-16 Rockwell Automation Technologies, Inc. Editing lifecycle and deployment of objects in an industrial automation environment
US8275680B2 (en) 2005-09-30 2012-09-25 Rockwell Automation Technologies, Inc. Enabling transactional mechanisms in an automated controller system
US7801628B2 (en) 2005-09-30 2010-09-21 Rockwell Automation Technologies, Inc. Industrial operator interfaces interacting with higher-level business workflow
US8484250B2 (en) 2005-09-30 2013-07-09 Rockwell Automation Technologies, Inc. Data federation with industrial control systems
US7660638B2 (en) 2005-09-30 2010-02-09 Rockwell Automation Technologies, Inc. Business process execution engine
US7734590B2 (en) 2005-09-30 2010-06-08 Rockwell Automation Technologies, Inc. Incremental association of metadata to production data
WO2008091282A2 (en) * 2006-07-11 2008-07-31 Carnegie Mellon University Apparatuses, systems, and methods to automate procedural tasks
US7743328B2 (en) * 2006-10-12 2010-06-22 Microsoft Corporation Preserving a process instance for use by different user interfaces
US7953758B2 (en) * 2006-11-10 2011-05-31 Ricoh Company, Ltd. Workflow management method and workflow management apparatus
US8204851B2 (en) * 2007-04-02 2012-06-19 Verizon Patent And Licensing Inc. Method and system for providing a graphical workflow monitor
US9734465B2 (en) * 2007-09-14 2017-08-15 Ricoh Co., Ltd Distributed workflow-enabled system
US20090183185A1 (en) * 2008-01-16 2009-07-16 Microsoft Corporation Declarative and Extensible Process Definition
US20090254903A1 (en) * 2008-04-08 2009-10-08 Eric Denis Dufosse Open framework to interface business applications and content management in media production and distribution environment
US8645854B2 (en) * 2010-01-19 2014-02-04 Verizon Patent And Licensing Inc. Provisioning workflow management methods and systems
US8788941B2 (en) 2010-03-30 2014-07-22 Itxc Ip Holdings S.A.R.L. Navigable content source identification for multimedia editing systems and methods therefor
US9281012B2 (en) 2010-03-30 2016-03-08 Itxc Ip Holdings S.A.R.L. Metadata role-based view generation in multimedia editing systems and methods therefor
US8806346B2 (en) 2010-03-30 2014-08-12 Itxc Ip Holdings S.A.R.L. Configurable workflow editor for multimedia editing systems and methods therefor
US8463845B2 (en) 2010-03-30 2013-06-11 Itxc Ip Holdings S.A.R.L. Multimedia editing systems and methods therefor
US8484401B2 (en) 2010-04-15 2013-07-09 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US9392072B2 (en) 2010-04-15 2016-07-12 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US8984533B2 (en) 2010-04-15 2015-03-17 Rockwell Automation Technologies, Inc. Systems and methods for conducting communications among components of multidomain industrial automation system
US20140059496A1 (en) * 2012-08-23 2014-02-27 Oracle International Corporation Unified mobile approvals application including card display
US8738049B1 (en) 2012-11-05 2014-05-27 International Business Machines Corporation Converged dialog in hybrid mobile applications
US9465607B2 (en) 2014-06-11 2016-10-11 Oracle International Corporation Configuration-based processing of requests by conditional execution of software code to render regions in a display
US10101995B2 (en) 2016-07-15 2018-10-16 Microsoft Technology Licensing, Llc Transforming data manipulation code into data workflow

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030055668A1 (en) * 2001-08-08 2003-03-20 Amitabh Saran Workflow engine for automating business processes in scalable multiprocessor computer platforms
US20030135659A1 (en) * 2002-01-16 2003-07-17 Xerox Corporation Message-based system having embedded information management capabilities

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6225998B1 (en) * 1997-12-02 2001-05-01 Aspect Communications Visual design of workflows for transaction processing
US6067548A (en) * 1998-07-16 2000-05-23 E Guanxi, Inc. Dynamic organization model and management computing system and method therefor
US6539396B1 (en) * 1999-08-31 2003-03-25 Accenture Llp Multi-object identifier system and method for information service pattern environment
US6662199B1 (en) * 2000-01-04 2003-12-09 Printcafe Systems, Inc. Method and apparatus for customized hosted applications
US6563514B1 (en) * 2000-04-13 2003-05-13 Extensio Software, Inc. System and method for providing contextual and dynamic information retrieval
AU2002219926A1 (en) * 2000-11-29 2002-06-11 Fourbit Group, Inc. Generating a declarative user interface
US20020129021A1 (en) * 2000-12-26 2002-09-12 Appareon System, method and article of manufacture for handling global data in a supply chain system
US20020138320A1 (en) * 2000-12-26 2002-09-26 Appareon System, method and article of manufacture for global, device-independent deployment of a supply chain management system
US6847974B2 (en) * 2001-03-26 2005-01-25 Us Search.Com Inc Method and apparatus for intelligent data assimilation
US6920456B2 (en) * 2001-07-30 2005-07-19 International Business Machines Corporation Method, system, and program for maintaining information in database tables and performing operations on data in the database tables
US7840934B2 (en) * 2001-08-29 2010-11-23 Hewlett-Packard Development Company, L.P. Method and system for integrating workflow management systems with business-to-business interaction standards
US8914807B2 (en) * 2001-09-28 2014-12-16 International Business Machines Corporation Method, system, and program for generating a program capable of invoking a flow of operations
EP1481346B1 (en) * 2002-02-04 2012-10-10 Cataphora, Inc. A method and apparatus to visually present discussions for data mining purposes
US7571187B2 (en) * 2002-05-31 2009-08-04 Microsoft Corporation Support for real-time queries concerning current state, data and history of a process
US7254581B2 (en) * 2002-11-13 2007-08-07 Jerry Johnson System and method for creation and maintenance of a rich content or content-centric electronic catalog
US7007049B2 (en) * 2002-11-18 2006-02-28 Innopath Software, Inc. Device memory management during electronic file updating
US7810078B2 (en) * 2002-12-10 2010-10-05 International Business Machines Corporation System and method for constructing computer application flows with specializations for targets
GB0306739D0 (en) * 2003-03-24 2003-04-30 British Telecomm Mediator-based recovery mechanism for multi-agent system
US20050010892A1 (en) * 2003-07-11 2005-01-13 Vocollect, Inc. Method and system for integrating multi-modal data capture device inputs with multi-modal output capabilities
US7496887B2 (en) * 2005-03-01 2009-02-24 International Business Machines Corporation Integration of data management operations into a workflow system
US20070005623A1 (en) * 2005-06-30 2007-01-04 Microsoft Corporation Process oriented message driven workflow programming model

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030055668A1 (en) * 2001-08-08 2003-03-20 Amitabh Saran Workflow engine for automating business processes in scalable multiprocessor computer platforms
US20030135659A1 (en) * 2002-01-16 2003-07-17 Xerox Corporation Message-based system having embedded information management capabilities

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10997531B2 (en) 2007-09-11 2021-05-04 Ciambella Ltd. System, method and graphical user interface for workflow generation, deployment and/or execution
US10055238B2 (en) 2013-06-18 2018-08-21 Ciambella Ltd. Method and apparatus for code virtualization and remote process call generation
US10853108B2 (en) 2013-06-18 2020-12-01 Ciambella Ltd. Method and apparatus for code virtualization and remote process call generation
US10067490B2 (en) 2015-05-08 2018-09-04 Ciambella Ltd. Method and apparatus for modifying behavior of code for a controller-based device
US10095495B2 (en) 2015-05-08 2018-10-09 Ciambella Ltd. Method and apparatus for automatic software development for a group of controller-based devices
US10732969B2 (en) 2015-12-21 2020-08-04 Ciambella Ltd. Method and apparatus for creating and managing controller based remote solutions
US11087249B2 (en) 2016-05-24 2021-08-10 Ciambella Ltd. Method and apparatus for triggering execution of a workflow over a network
US10798780B2 (en) 2016-08-22 2020-10-06 Ciambella Ltd. Method and apparatus for creating and managing controller based remote solutions
US10409562B2 (en) 2017-03-14 2019-09-10 Ciambella Ltd. Method and apparatus for automatically generating and incorporating code in development environments

Also Published As

Publication number Publication date
US20050154741A1 (en) 2005-07-14
EP1530139A1 (en) 2005-05-11

Similar Documents

Publication Publication Date Title
EP1530139A1 (en) Method and computer system for workflow management
Chatterjee et al. Developing enterprise Web services: an architect's guide
CN1609873B (en) Method, apparatus, and user interface for managing electronic mail and alert messages
US7428582B2 (en) Semantic interface for publishing a web service to and discovering a web service from a web service registry
US7761885B2 (en) Task computing
US6806890B2 (en) Generating a graphical user interface from a command syntax for managing multiple computer systems as one computer system
CN100578495C (en) Method and system for exposing nested data in a computer-generated document in a transparent manner
US20060212836A1 (en) Personalized user interfaces for presentation-oriented web services
JP5248964B2 (en) Method and system for generating screen elements or data objects for wireless applications
US20090100321A1 (en) Universal contextual actions menu across windows applications
US8429099B1 (en) Dynamic gazetteers for entity recognition and fact association
US8572564B2 (en) Configuring and constructing applications in a mainframe-based computing environment
CN104519120B (en) Business object attachments and expiration uniform resource locators
CN112136125A (en) Training data extension for natural language classification
EP1526452A2 (en) Programming interface for a computer platform with functionalities related to file system, documents, e-mail and audio/video.
US20070055755A1 (en) Remote authoring for dynamic web pages
US8364625B2 (en) Mainframe-based business rules engine construction tool
US20130166678A1 (en) Smart Suggestions Engine for Mobile Devices
US9116705B2 (en) Mainframe-based browser
US6728750B1 (en) Distributed application assembly
KR20100038122A (en) Method and system for presenting a mash-up, or personalized mixture, and associated contextual suggestions to mobile users
US20070220177A1 (en) Declarations for transformations within service sequences
US7966601B2 (en) Generating web service without coding logic with a programming language
US7310677B1 (en) Resolver service for making decisions at run-time in a componentized system
US8683346B2 (en) Client integration of information from a supplemental server into a portal

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase