Traditionally, a workflow is a depiction of a sequence of operations, declared as work of a person, a group of persons, an organization of staff, or one or more simple or complex mechanisms. The simulation modeling application has a significant number of mission critical workflows. These workflows are usually triggered manually.
Embodiments of the present invention provide an activated workflow engine (apparatus) and method. Applicant's activated workflows are specific to the world of simulation modeling and its integrated suite of relevant applications.
The simulation modeling application has a significant number of mission critical workflows. These workflows are usually triggered manually. The present invention introduces a mechanism to pre-configure these workflows starting with seeding appropriate input parameters or input variables. The pre-configured (seeded) workflow then sets the stage for the subsequent steps of the workflow. When an end user performs a transaction in the simulation model, sometimes referred to as a performing transaction, embodiments are able to automatically gather the necessary and sufficient information from the context of the simulation model transaction. Then, from the gathered information, embodiments match appropriate variables and parameters to respective input variables/input parameters of the workflows and assign the relevant input variables values and input parameters values to suit the respective workflows which are applicable to the transaction.
The above mechanisms facilitate the ability to invoke multiple workflows associated with a subject simulation model transaction and subsequently validates the “activated state” of these workflows. When the underlying simulation model or the main transaction gets executed, embodiments activate the workflows, meaning the input variables and input parameters get populated, and the individually independent workflows get invoked automatically. No user intervention to initialize the workflow and no manual input by the user to invoke the workflow is required (necessary). As results (output) of the invoked workflows become available, the invention system enables users to fetch the results anywhere, anytime.
The foregoing will be apparent from the following more particular description of example embodiments of the invention, as illustrated in the accompanying drawings in which like reference characters refer to the same parts throughout the different views. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating embodiments of the present invention.
A description of example embodiments of the invention follows.
The teachings of all patents, published applications and references cited herein are incorporated by reference in their entirety.
For the purposes of this invention, the workflow is defined as a set of one or more sequential and inter-connected simple or complex steps or mechanisms. The important aspect of this workflow is its automated and activated nature. The automation of all steps facilitates the art of executing business critical workflow. The automated steps may include seeding the appropriate variables as input parameters and input variables, ordering the sequence of steps, as well as mapping the workflow schema, and then associating the workflow schematics with specific use cases. In embodiments, the invention (system, method and apparatus) relate to a computer simulation modeling method.
The one or more workflows 15 can be pre-configured by seeding variables as input parameters and input variables in respective workflows. In embodiments, a first step of the activated workflow engine 100 of the invention is to pre-configure (including assign to) the proper input variables with sensible defaults and other relevant variable values (or thresholds) along with input parameters from the context of the underlying transaction (i.e., simulation model 13 transaction). In some embodiments, the context of the underlying transaction depends on the current state of the simulation/modeling application system 13. The activated workflow engine 100 preconfigures or otherwise assigns seed variables to the input variables and input parameters of various workflows 15 based on one or more of the following: simulation model 13 context, engine stored data 94, business logic of the engine routine 92, and rules built into the engine routine 92. In embodiments, the user can modify one or more sensible default or seeded variables for a particular workflow 15. In some embodiments, input variables and input parameters are not visible to the user and Engine 100 automatically matches and/or assigns to these input variables/input parameters based on the context of the underlying simulation model 13 transaction and the business logic of the simulation being modeled. In some embodiments, engine 100 may call or import workflow input variables and input parameters (definitions and/or values) from an external source.
A second step in the activated workflow engine 100 of the invention is to define the applicable workflow 15 from independent applications 23 that are integrated into the main simulation modeling application 13. Then the sequence of steps that form each of the workflows 15 is made to run in parallel, where for each workflow one step of the workflow feeds the data and functional flow to the next step of that workflow. In some embodiments, the one or more applications 23 integrated into the main simulation modeling application 13 are modular. In some embodiments the main simulation modeling application 13 is modular.
At this stage, Engine 100 associates the relevant workflows 15 with the main simulation modeling application 13. Then the invention system 100 validates the workflows 15 and puts the validated workflows 15 in ready to run mode. This is the “activated state” of the workflows 15. In some embodiments, the activated workflows 15 (Engine 100) populate default values or values from the seed variables triggered by rules, logic code, or business logic. In some embodiments, as the workflow progresses, additional variables (values for) are populated. In embodiments, invocation of the activated workflows 15 is triggered by certain respective user action.
When the transaction on the main simulation modeling application 13 runs, a processor initiates or launches the individual workflows 15 in parallel and the results are made available (e.g., displayed or output) to users. In a user-interface, the user obtains the results (respective executed workflows 15) by clicking on or otherwise selecting the appropriate icon on the dashboard (GUI area) that lists the activated workflows 15 that are applicable and pre-associated with the main simulation model 13 transaction.
Some of the benefits of activated workflow 15 are given below:
In example embodiments, context sensitive workflows 15 are dynamically generated by the invention system 100. For example, as pieces or modules are added to the main application 13 platform, the new piece or module may include additional workflows, input variables, and input parameters not previously available. In some embodiments, the one or more activated workflows 15 can be integrated into one or more applications 13. In some embodiments, the one or more activated workflows 15 involve turn taking (pauses integrated into the activated workflow, for example, for input variables, input parameters, or shared resources). In some embodiments, the variables and parameters in a given workflow 15 are populated based on the value of the previous step of the workflow. For example, additional input variables or input parameters of step 2 are populated against input variable/parameter values of step 1.
In some embodiments, workflows 15 may be dependent on availability of finite resources shared across different enterprise users. In some embodiments, additional workflows 15 compatible with current tasks may be temporarily available. In some embodiments, the activated workflows 15 might have compatibility but not resource availability. Activated workflow engine 100 manages workflows 15 taking into consideration compatibility and availability.
In some embodiments, the workflow 15 is multithreaded, i.e. contains one or more threads. In embodiments, workflow 15 steps may be run in a serial sequence or in a parallel sequence (multithread). In some embodiments, the workflow 15 may be scalable on one or more threads. In some embodiments, the system 100 uses multithread operations to implement some workflows 15. For example, when populating variables with respective values, the values are implemented by threads of a multithread workflow.
In some embodiments, multiple simultaneous modes of the main simulation application 13 may be running In some embodiments, multiple simultaneous modes of the activated workflow 15 may be running. For example, one mode may continually run the activated workflow 15 in the background (of a processor session) upon execution of the main simulation application 13. In some embodiments, the user may need to manually turn off the continuous mode of operation or the workflow will remain activated. In other embodiments, a mode may have a temporal component or launch at certain specified times, for example, requiring manual activation by the user, user-selected triggering, or event-specific triggering. For example, an activated workflow 15 for economics analysis may be run to evaluate costs of a modeled simulation process after one hour, one day, one week, or three months.
Scenario-1: Identify and Visualize the Scope for Energy Savings Using Activated Workflows
With reference to
Scenario-2: Identify and Visualize the Scope for Economics Analysis Using Activated Workflows
In
Scenario-3: Increases Portability of the Activated Workflows
As shown in
Similarly,
When the activated workflows 15 are executed, the system 100 comes up with a list of actionable suggestions which will help the engineer (user) to optimize various parts of the system 100.
Scenario-4: Identify and Visualize the Scope for Heat Exchanger Design and Rating Using Activated Workflows:
In reference to
A schematic view of an example main application 13 and associated activated workflows 15 for energy analytics, economic analysis, and heat exchanger design and rating can be displayed while modeling is being performed. For example, the activated work flow 15 for energy analytics (
Likewise a schematic view of an example main application 13 with an activated workflow for economics analysis (
In any computer based business application, workflow is an integral part of the system. Applicant has developed an activated workflow engine technology to automate the delivery of basic process engineering optimization and decision support functionality. This significantly reduces the required human intervention, reduces the margin of error, and facilitates an automated and activated workflow paradigm where cost, time, efficiency, and accuracy are important factors in arriving at a decision.
Moreover, the present invention has the ability to create the activated workflows 15 and provides the ability to run them automatically when a parent level functionality (such as main application 13 or transaction therein) gets executed. Before this invention, software applications would launch these functionalities as independent programs (silos) and users would be suddenly directed to a completely different application and interface where they would need to start from the beginning and input data manually. With embodiments 100 of the present invention, one can achieve visual consistency by implementing activated workflows 15 and running them from the main program 13 (including user interface thereof) itself.
By virtue of providing two way communications to the end user, the activated workflows 15 help to (a) elevate the inherent business value of the main software application 13, (b) provide better response times, (c) implement role-based access control, (d) enhance user experience, and (e) increase the feedback loop by providing valuable suggestions and guidance.
Computer Support
Client computer(s)/devices 50 and server computer(s) 60 provide processing, storage, and input/output devices executing application programs and the like. Client computers/devices 50 may be for example desktops, laptops, mobile devices and so forth. The executed application programs are, for non-limiting example, the simulation modeling application 13 and integrated relevant applications described above.
Client computer(s)/devices 50 can also be linked through communications network 70 to other computing devices, including other client devices/processes 50 and server computer(s) 60. Communications network 70 can be part of a remote access network, a global network (e.g., the Internet), a worldwide collection of computers, Local area or Wide area networks, and gateways that currently use respective protocols (TCP/IP, Bluetooth, etc.) to communicate with one another. Other electronic device/computer network architectures are suitable.
In some embodiments, system 100 variables and parameters involved in key inputs and outputs of activated workflows 15 are stored in data 94. Example functional data structures for configuring data 94 are provided below:
From Simulation 13 to Activated Energy Analysis (Supporting Dashboard 21 Element):
From Activated Energy Analysis to Simulation 13:
From Simulation 13 to Activated Economic Analysis 33 (Supporting dashboard 31):
From Activated Economic Analysis 33 to Simulation 13:
In one embodiment, the processor routines 92 and data 94 are a computer program product (generally referenced 92), including a computer readable medium (e.g., a removable storage medium such as one or more DVD-ROM's, CD-ROM's, diskettes, tapes, etc.) that provides at least a portion of the software instructions for the invention system. Computer program product 92 can be installed by any suitable software installation procedure, as is well known in the art. In another embodiment, at least a portion of the software instructions may also be downloaded over a cable, communication and/or wireless connection. In other embodiments, the invention programs are a computer program propagated signal product 107 embodied on a propagated signal on a propagation medium (e.g., a radio wave, an infrared wave, a laser wave, a sound wave, or an electrical wave propagated over a global network such as the Internet, or other network(s)). Such carrier medium or signals provide at least a portion of the software instructions for the present invention routines/program 92.
In alternate embodiments, the propagated signal is an analog carrier wave or digital signal carried on the propagated medium. For example, the propagated signal may be a digitized signal propagated over a global network (e.g., the Internet), a telecommunications network, or other network. In one embodiment, the propagated signal is a signal that is transmitted over the propagation medium over a period of time, such as the instructions for a software application sent in packets over a network over a period of milliseconds, seconds, minutes, or longer. In another embodiment, the computer readable medium of computer program product 92 is a propagation medium that the computer system 50 may receive and read, such as by receiving the propagation medium and identifying a propagated signal embodied in the propagation medium, as described above for computer program propagated signal product.
Generally speaking, the term “carrier medium” or transient carrier encompasses the foregoing transient signals, propagated signals, propagated medium, storage medium and the like.
While this invention has been particularly shown and described with references to example embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the scope of the invention encompassed by the appended claims.
This application claims the benefit of U.S. Provisional Application No. 61/734,961 filed on Dec. 7, 2012. The entire teachings of the above application are incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
D403673 | Arora et al. | Jan 1999 | S |
D420995 | Imamura et al. | Feb 2000 | S |
D451928 | Van Huong | Dec 2001 | S |
D454138 | Imamura et al. | Mar 2002 | S |
D462695 | Nguyen Van Huong | Sep 2002 | S |
D500766 | Hanisch et al. | Jan 2005 | S |
D592223 | Neuhaus | May 2009 | S |
D593120 | Bouchard et al. | May 2009 | S |
D598468 | Hirsch et al. | Aug 2009 | S |
D606091 | O'Donnell et al. | Dec 2009 | S |
D607007 | Kocmick | Dec 2009 | S |
7627694 | Sreenivasan et al. | Dec 2009 | B2 |
D614192 | Takano et al. | Apr 2010 | S |
D624928 | Agnetta et al. | Oct 2010 | S |
D628584 | Umezawa | Dec 2010 | S |
D629410 | Ray et al. | Dec 2010 | S |
D657377 | Vance et al. | Apr 2012 | S |
D658204 | Jones | Apr 2012 | S |
D660313 | Williams et al. | May 2012 | S |
D661369 | Nelson | Jun 2012 | S |
D674405 | Guastella et al. | Jan 2013 | S |
D678320 | Kanalakis, Jr. et al. | Mar 2013 | S |
D678894 | Kanalakis, Jr. et al. | Mar 2013 | S |
D678895 | Ebler et al. | Mar 2013 | S |
D681663 | Phelan et al. | May 2013 | S |
D681664 | Phelan et al. | May 2013 | S |
D681667 | Phelan | May 2013 | S |
D682293 | Kanalakis, Jr. et al. | May 2013 | S |
D682847 | Gardner et al. | May 2013 | S |
D682866 | Peters et al. | May 2013 | S |
D687063 | Myung et al. | Jul 2013 | S |
D688692 | Tanghe et al. | Aug 2013 | S |
D691160 | Schupp et al. | Oct 2013 | S |
D694257 | McKinley et al. | Nov 2013 | S |
D698816 | Phelan et al. | Feb 2014 | S |
D699746 | Pearson et al. | Feb 2014 | S |
D700208 | Phelan et al. | Feb 2014 | S |
D704207 | Lee et al. | May 2014 | S |
D704733 | Jewitt | May 2014 | S |
D706828 | Hollobaugh | Jun 2014 | S |
D709077 | Jonsson et al. | Jul 2014 | S |
8788068 | Kocis et al. | Jul 2014 | B2 |
D710892 | Hollobaugh et al. | Aug 2014 | S |
D722075 | Zhang et al. | Feb 2015 | S |
D726214 | Wantland et al. | Apr 2015 | S |
D729836 | Lee | May 2015 | S |
D730388 | Rehberg et al. | May 2015 | S |
D730394 | Bray | May 2015 | S |
D730397 | Oh et al. | May 2015 | S |
D730932 | Kim et al. | Jun 2015 | S |
D730952 | Siboni et al. | Jun 2015 | S |
D731521 | Heo et al. | Jun 2015 | S |
D731525 | Myers | Jun 2015 | S |
9046881 | Blevins et al. | Jun 2015 | B2 |
D737299 | Hisada et al. | Aug 2015 | S |
D737321 | Lee | Aug 2015 | S |
D750123 | Subramanian et al. | Feb 2016 | S |
9354776 | Subramanian et al. | May 2016 | B1 |
9442475 | Subramanian et al. | Sep 2016 | B2 |
20020194324 | Guha | Dec 2002 | A1 |
20090076681 | Yasue et al. | Mar 2009 | A1 |
20100088654 | Henhoeffer | Apr 2010 | A1 |
20100332273 | Balasubramanian et al. | Dec 2010 | A1 |
20120029661 | Jones et al. | Feb 2012 | A1 |
20130339100 | Warrick et al. | Dec 2013 | A1 |
20140267425 | Moll et al. | Sep 2014 | A1 |
20140330542 | Subramanian et al. | Nov 2014 | A1 |
20140330783 | Provencher et al. | Nov 2014 | A1 |
20140379112 | Kocis et al. | Dec 2014 | A1 |
20150244884 | Sensu et al. | Aug 2015 | A1 |
Entry |
---|
Altair HyperStudy; 137 pp.; 2009; obtained from http://blog.altair.co.kr/wp-content/uploads/2011/03/hyperstudy—10-0.pdf. |
Mathur, Abhinav, “Failure Handling in YARN-Map Reduce v2,” Jan. 30, 2013, 1 page. |
Murthy, Arun, “Apache Hadoop YARN—Concepts and Applications,” Hortonworks, Aug. 15, 2012, 13 pages. |
Kumar Vavilapalli, Vinod, “Apache Hadoop YARN—ResourceManager,” Hortonworks, Aug. 31, 2012, 12 pages. |
“AspenTech Announces Availability of aspenOne® V8 Process Optimization Software”, Dec. 10, 2012, PDF downloaded from http://www.aspentech.com/—ThreeColumnLayout.aspx?pageid=2147485680&id=15032387367, (3 pages) on Mar. 11, 2014. |
“AspenTech Brings Search and High Performance Trending to Manufacturing Execution Systems with New Release of Aspen InfoPlus.21® Software”, Mar. 6, 2012, PDF downloaded from http://www.aspentech.com/—ThreeColumnLayout.aspx?pageid=2147485680&id=15032385728, (2 pages) on Apr. 29, 2013. |
“New Assay Management Functionality in Aspen PIMS™ Software Optimizes Crude Purchasing Decisions and Increases Profitability”, Aug. 27, 2012, PDF downloaded from http://www.aspentech.com/—ThreeColumnLayout.aspx?pageid=2147485680&id=15032386682, (2 pages) on Mar. 11, 2014. |
“New Release of Aspen Plus® Software Delivers an Innovative New Interface and Opens Process Simulation to a Wider Range of New Users”, Mar. 6, 2012, PDF downloaded from http://www.aspentech.com/—ThreeColumnLayout.aspx?pageid=2147485680&id=15032385734, (3 pages) on Apr. 29, 2013. |
“New Release of Aspen PIMS™ and Aspen Petroleum Scheduler™ Software Improves Collaboration Between Refining Planners and Schedulers”, Mar. 6, 2012, PDF downloaded from http://www.aspentech.com/—ThreeColumnLayout.aspx?pageid=2147485680&id=15032385732, (2 pages) on Apr. 29, 2013. |
“New Release of aspenONE® Software Enables Process Engineers to Display Real-Time Data on Simulation Flowsheets for the First Time”, May 14, 2012, PDF downloaded from http://www.aspentech.com/—ThreeColumnLayout.aspx?pageid=2147485680&id=15032386067, (2 pages) on Apr. 29, 2013. |
“Version 8.4 of aspenONE® Software Expands Activation Capability to Optimize Energy, Economics, and Heat Exchanger Designs”, Nov. 25, 2013, PDF downloaded from http://www.aspentech.com/—ThreeColumnLayout.aspx?pageid=2147485680&id=15032390879, (3 pages) on Mar. 11, 2014. |
Hughes, J., “What is a Microsoft Failover Cluster Virtual Adapter anyway?,” dated Feb. 13, 2009, 18 pages, retrieved from https://web.archive.org/web/20160810142046/https://blogs.technet.microsoft.com/askcore/2009/02/13/what-is-a-microsoft-failover-cluster-virtual-adapter-anyway/. |
Wikipedia, “Element (mathematics),” archived definition dated Nov. 28, 2012, 3 pages, retrieved from https://en.wikipedia.org/w/index.php?title=Eiement—(mathematics)&oldid=525288249relevant?. |
Hashiguchi, et al., “Wide-area Integrated SCADA System Designed to Improve Availability and Flexibility,” Hitachi Review, vol. 60 (2011), No. 7, p. 399-403. |
When is multi-threading not a good idea? Sep. 2008. Retrieved from the Internet URL: http://stackoverflow.com/questions/93834/when-is-multi-threading-not-a-good-idea. |
Pillai, et al., “Development of Supervisory Control and Data Acquisition system for Laboratory Based Mini Thermal Power Plan using LabVIEW”, International Journal of Emerging Technology and Advanced Engineering, (ISSN 2250-2459, vol. 2, Issue 5, pp. 449-453, May 2012). |
Meeks, Hutson, BPPM Self Monitoring Core Components—How-To Video Series, Mar. 30, 2012, downloaded from https://communities.bmc.com/docs/DOC-18939. |
Notice of Allowance and Fee(s) Due for U.S. Appl. No. 13/931,715, “Method and System for Stateful Recovery and Self-Healing,” date mailed, Dec. 21, 2016, 39 pp. |
Number | Date | Country | |
---|---|---|---|
61734961 | Dec 2012 | US |