US9934027B2 - Method and apparatus for the development, delivery and deployment of action-oriented business applications supported by a cloud based action server platform - Google Patents
Method and apparatus for the development, delivery and deployment of action-oriented business applications supported by a cloud based action server platform Download PDFInfo
- Publication number
- US9934027B2 US9934027B2 US13/622,882 US201213622882A US9934027B2 US 9934027 B2 US9934027 B2 US 9934027B2 US 201213622882 A US201213622882 A US 201213622882A US 9934027 B2 US9934027 B2 US 9934027B2
- Authority
- US
- United States
- Prior art keywords
- action
- data
- app
- oriented business
- platform
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active - Reinstated, expires
Links
- 230000009471 action Effects 0.000 title claims abstract description 363
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000011161 development Methods 0.000 title claims abstract description 12
- 239000000523 sample Substances 0.000 claims description 63
- 238000012544 monitoring process Methods 0.000 claims description 5
- 230000004044 response Effects 0.000 claims description 5
- 238000012549 training Methods 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 24
- 230000008859 change Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 10
- 239000008186 active pharmaceutical agent Substances 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 8
- 230000008520 organization Effects 0.000 description 7
- 238000007726 management method Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 230000010354 integration Effects 0.000 description 5
- 230000001960 triggered effect Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000001815 facial effect Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 101001072091 Homo sapiens ProSAAS Proteins 0.000 description 2
- 102100036366 ProSAAS Human genes 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000010079 rubber tapping Methods 0.000 description 2
- 239000000344 soap Substances 0.000 description 2
- 230000003442 weekly effect Effects 0.000 description 2
- VOZKAJLKRJDJLL-UHFFFAOYSA-N 2,4-diaminotoluene Chemical compound CC1=CC=C(N)C=C1N VOZKAJLKRJDJLL-UHFFFAOYSA-N 0.000 description 1
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 1
- RWSOTUBLDIXVET-UHFFFAOYSA-N Dihydrogen sulfide Chemical compound S RWSOTUBLDIXVET-UHFFFAOYSA-N 0.000 description 1
- 208000022120 Jeavons syndrome Diseases 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000003116 impacting effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000011065 in-situ storage Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
Definitions
- Appendix A is a PowerPoint presentation (3 pages) with example of the Action Apps.
- Appendix B is a presentation (17 pages) with examples of the Action Apps.
- the disclosure relates generally to a system and method for deploying software applications and in particular to a cloud based action server for the development, delivery and deployment of action-oriented business applications.
- the gasoline pricing for a supermarket chain is a business problem that could be solved by the desirable action-oriented business application.
- the business problem is that a major retailer with multiple stores sells gas but currently uses an Excel spreadsheet to set the selling price for the gas at each store.
- This spreadsheet takes in data feeds from a service that provides competitor pricing in the local area for each store and a feed from the nearest refinery to work out supply prices.
- the spreadsheet then uses some custom business logic to adjust the price to maximize the margin and communicates any price changes to both the ERP (which manages product prices) and the marketing team for changing the signage.
- the pricing team sometimes gets calls from a local retailer saying that the competitor has just changed its price, and requesting permission to also change the price.
- Another example of a business problem is profit recovery through better supplier management in which a major retailer runs price promotions for various products all of which are funded by the supplier of that product.
- the retailer realizes that they have not been very diligent about invoicing suppliers for the costs of running these promotions and identifies that there is a potential of up to $20M that the retailer could recover from promotions run over the previous 6 years.
- the retailer needs to comb through sales and product data from their ERP, combine this with commercial discussions recorded only in an email archive, together with invoicing data stored as PDF's in a document repository. Once the analysis is completed, the retailer raises a claim for payment with the supplier.
- this problem involves disparate data sources—ERP plus unstructured data, analytics that are used to identify suspect opportunities that then transition into a largely manual workflow—actions that require implementation through links to internal enterprise systems as well as other mechanisms such as email which can be solved by action-oriented business applications.
- Another example of a business problem is reputation management in which a company wants to manage comments made about it in various online forums, like Twitter, Facebook, LinkedIn, blog posts, etc, in order to be able to identify negative comments and respond. Identifying these comments needs some analysis of unstructured text, and could also identify trends in commentary (e.g. highlighting product problems, or problems in a specific geographic area). This would include monitoring comments from employees too, to check compliance with corporate communication policies. The actions taken might include commenting on the original posts, directing people to a central area (e.g. company website) where a response to the issue has already been identified, identifying that multiple comments are actually from the same person and calling that person up and proposing a way to fix the problem (turning a complainer into an evangelist).
- a central area e.g. company website
- the problem involves disparate data sources—some internal, some external, but many of which are unstructured and quite non-traditional—custom business logic to identify issues and trends, actions that require implementation through links to internal enterprise systems as well as other mechanisms such as email, and workflow processes that consist of many manual elements before the issue can be closed.
- This business issue can be solved by action-oriented business applications.
- Another business issue is decision support for financial trading in which a hedge fund wants to store trades and price changes of securities, together with external factors such as world events associated with a company's home base, commentary about it on social networks, breaking news regarding accidents etc. All of these factors are taken into account in recommending a trading position in that security, going through a workflow process to adjust and approve that trading strategy, and then executing the trades needed to achieve that position.
- this issue involves disparate data sources—some internal, some external, but many of which are unstructured and non-traditional, custom business logic to identify issues and trends, actions that require implementation through links to internal enterprise systems, and workflow process that consists of a defined process of approvals etc before the issue can be closed.
- This business issue can be solved by action-oriented business applications.
- Another business problem is student management for colleges and universities in which students are enrolled in a college, but are not able to choose which courses they want to attend, and what their communication preferences are. Based on their selection, allocation of appropriately-sized lecture rooms can be automated, students can be issued with the set of pre-requisites for the course (e.g. reading materials), advised of any changes to the rooms, have timetable entries added to their calendars, be given reminders when their GPS location is not close to the designated room—or else given directions to get to the room from where they are. Communications can be delivered via email, SMS, or Tweet.
- This problem again involves disparate data sources—mostly internal, custom business logic to react to events (e.g. change of room), actions that typically require implementation through links to internal enterprise systems, and communication via preferred mechanism of each student.
- This business issue can be solved by action-oriented business applications.
- Yet another business issue involves location-based services in which customers sign up for alerts about retail offers based on their location such that whenever they are passing a shop with an offer available, they get alerted with details.
- This issue involves disparate data sources—location-based for customer and store locations, some internal (i.e. the set of offers and promotions), custom business logic to identify which offers to make to which customers, actions that require implementation through links to internal enterprise systems to track take-up of offers vs recommendations made, the need to react to events in real-time and the need to handle high-volume throughput of location updates.
- This business issue can be solved by action-oriented business applications.
- Yet another business issue involves travel information alerts in which a traveler wants to be alerted when a change in travel plans changes—a flight is delayed, or there is an accident on your normal route to the airport, or your commute route.
- This issue also involves disparate data sources—mostly external, but many of which are unstructured and non-traditional and custom business logic to identify issues. This business issue can be solved by action-oriented business applications.
- Yet another business issue involves customer service improvement in which a customer service rep needs to have a 360-degree view of all of a customer's interactions with the company when the customer calls in, including actions taken on the company website a couple of minutes ago, promotions and offers the customer has taken up, emails that have been exchanged with the customer, etc. If there is a problem with the service in the area in which that customer is located, then pro-actively tell them this. Data is used to figure out how to solve the customer's problem, and then take actions such as cross-selling a new product, changing the calling plan that customer is on, offering to refund or defer some costs they may have incurred, etc.
- This issue also involves disparate data sources—mostly internal, but may be unstructured (e.g.
- FIG. 1 illustrates an example of a system that implements the cloud action platform
- FIGS. 2A and 2B illustrate more details of the cloud action platform
- FIG. 3 illustrates a method for development, delivery and deployment of an action app using the system in FIGS. 1-2B ;
- FIG. 4 illustrate an example of the database schemas for the system in FIGS. 1-2B ;
- FIGS. 5A and 5B illustrate an example of a user interface of an action app
- FIG. 6 illustrates more details of the action app platform of the system
- FIG. 7 illustrates more details of the action server of the action app platform
- FIG. 8 illustrates more details of the action SDK of the action app platform
- FIG. 9 is an example of an action app interface that may be implemented using the cloud action platform in FIGS. 1-2B ;
- FIG. 10 illustrates an example of a user interface for defining a system action of an action app
- FIG. 11 illustrates a method for execution of an action in the cloud action platform
- FIG. 12 illustrates an example of a recommendation user interface of the Action App.
- the disclosure is particularly applicable to a cloud based action app platform as described below and it is in this context that the disclosure will be described. It will be appreciated, however, that the system and method has greater utility since it can be implemented in other manners and with other features that are within the scope of the disclosure.
- Action Apps are the opposite of traditional business applications which are large, expensive, viewed as an investment, hard to upgrade and oftentimes require training
- Action Apps are light-weight consumer friendly micro apps that enable the business user to take the right actions, at the right time to produce the right business outcome.
- the action may be as simple as approving a vacation request, or it may trigger a series of more complex actions such as automatically discounting stock based upon competitors' pricing within a specific radius in a given timeframe.
- the bottom layer of the Cloud Action Platform consists of a series of data probes, and/or a data platform, that probes a wide variety of data domains e.g. a Twitter stream, an ERP system, streaming real-time financial data, video streams etc. to detect changes to data.
- the list of data domains being probed will vary depending on the Action Apps being supported.
- the data domain into which the probe is inserted could be on-premise or in the cloud.
- the data probes are constantly identifying specific data events. These events are determined by the actions specified in the Action Apps for a particular deployment. For example, there may be an Action App which is set to trade a specific stock when it reaches a certain threshold but only if the Twitter sentiment for that corporation is at a particular level.
- the system would have data probes in the stream of stock trading data, and a probe in a Twitter sentiment data source.
- the probe in the stock trading stream would be monitoring trades of that stock and would trigger when the specific price was observed; the probe in the Twitter sentiment feed would then retrieve the sentiment value for the corporation and if both thresholds were met, the Cloud Action Server, the next layer in the Cloud Action Platform, would fire a trigger that would notify the Action App which would subsequently prompt the user to make the trade, or could perform it automatically.
- the data probes will also be capable of searching rich contexts, such as a multi-media e.g. a data probe could be set to perform facial feature recognition on a real-time camera feed.
- the data probes can return value sets rather than simple triggers.
- the probe result might be a video sequence with statistical parameters.
- the Cloud Action Platform will provide a simple interface through which business users will be able to build their own Action Apps based upon data domains made available to them by the Cloud Action Platform.
- the data domains made available to a particular user may depend upon their role in the organization so that sensitive data can be protected.
- the Cloud Action Platform will provide the ability to publish Action Apps, and Action App components (data sources, triggers, actions), in an Action App Store which may be private to the enterprise, or published to a publically available store.
- the Cloud Action Server is a new layer in the software stack and is unique to the Cloud Action Platform.
- the Cloud Action Server enables the action logic to be separated out from the application workflow.
- the Cloud Action Server can be deployed in a public or private cloud, and can have an integrated cloud management framework for deployment in either environment.
- the Cloud Action Server encapsulates all of the Action Logic which ranges from the definition of the data domains on which the actions depend, to the thresholds and values that trigger the actions, to the action definitions and the actual triggering and execution of those actions.
- Action logic may also encompass describing classes of action types, the ability to perform transformations (Boolean logic and other) and then codifying a set of activities (say a business function) into action flows, action decision points and from there to action interactions which become Action Apps. This paradigm is highly useful for re-thinking any action intensive process, procedure or function.
- the business process flow charts in use today force a sequential logic rather than an asynchronous action-oriented (computing) logic that is possible with the Cloud
- the user sees a list of Action Apps that the user has already created.
- the certain of the Action Apps may have red notification badges on them to show that these specific action apps have generated an alert (the action of the action app) that the user has not yet read.
- the user interface also allows the user to turn individual apps on or off (e.g., activate or deactivate the action apps and the trigger events associated with the action apps.) For example, the user wants to create a new Action app because, at the end of a quarter, there are cases where Opportunities for the NEMEA Professional Services team in SalesForce are slipping from this quarter to next quarter without the manager noticing and the user would like to be alerted when this event happens.
- the user can choose SalesForce Opportunities as the main data source for the new Action App. If that particular data source has not yet been unlocked (e.g., because the user has not yet provided login credentials for that data source), then the user goes through a process to set up an email address and PIN for the app and get directed to Salesforce to provide login credentials to allow the Action Apps to access the data. Once the data source is unlocked, the user can pick ‘Forecast Period’ for a user interface as the field to watch/monitor (the trigger event.) The user (a professional Services Manager in this example) then decides specifically what they want to be alerted about, and, in one example, chooses a change from ‘this’ quarter to next quarter as the main event to monitor.
- the user then select an alert setting (i.e. email me which is acceptable to the user in this example) and other ‘richer’, more complex options are also available.
- the user may then filter out events that they don't want to know about so they can make sure to only include ‘Opportunities for my region’, Northern EMEA, and only include changes where the forecast probability is quite high, 60% and 90%; whereby all others will be ignored.
- the user can then save the Action App and it will run by default every 15 minutes (though this could have been changed by tapping a clock icon next to the App name).
- the platform also has a simple user interface (partially described above) that allows a user to build and potentially publish their own Action Apps on their mobile device will be unique to the Cloud Action Platform. This interface will be built with one of the tools described above but it will be purpose built exclusively for the definition and publication of Action Apps.
- the Cloud Action Platform uniquely provides the ability to publish Action Apps to an Action App Store. Action Apps and Action App Components may be published to a public Action Apps Store, or enterprises may choose to host a private store where Action Apps and Components would be available for internal consumption only.
- the Cloud Action Platform is designed to take input feeds from disparate data sources (both structured and unstructured data, and both internal and external data sources), each of which are organized into ‘Data Domains’ such as Sales, HR, Finance, etc in order to make them easier for a business user to understand the context.
- Data Domains can be supplied by the Cloud Action Platform, or created by the user themselves.
- ‘triggers’ are then defined which will fire when a set of conditions is met—such as when a forecast value drops below a specified target. When this event happens, an action should take place, such as sending an email to someone, or calling a web service based on parameters derived from the triggering event.
- the system may use recommendation engines to recommend an application, action or trigger to a user based on the other applications used by the user or based on usage data from other users.
- FIG. 12 illustrates an example of how a recommendation user interface is integrated with Action Apps 240 .
- the recommendation user interface may be added to the standard action interface to extend the actions available to the user.
- a community button is present to provide recommendations from an area of interest. By tapping this button, the Action App would access the Cloud Action Platform server to access a recommendation engine to present another set of actions derived by the engine.
- the action processes may include generating output data streams either independent from the input data streams or based on the input data streams (standalone or combined) or additionally enhanced. These enhancements would be provided by libraries of Action enhancement functions. An example of an implementation of the Cloud Action Platform is described in more detail below.
- FIG. 1 illustrates an example of a system 100 that implements the cloud action platform.
- the system has one or more computing devices 102 , such as computing device 102 a to computing device 102 n as shown in FIG. 1 , that connect/interact over a link 104 with a cloud action platform unit 106 .
- computing devices 102 Using the computing devices 102 , a user can develop, deliver, deploy and use/interact with a new Action App by interacting with the cloud action platform 106 and the action app has the capabilities that are desired by the user.
- Each computing device may be a processing unit based device with sufficient memory, display capabilities, speed and connectivity (wired or wireless) to interact with the cloud action platform 106 .
- each computing device may be a smartphone device (for example, an Apple iPhone, a RIM Blackberry, Android operating system based device, Nokia, etc.), a tablet device (for example, an Apple iPad or other tablet devices), a laptop computer, a personal desktop computer, a Windows mobile operating system device and the like as the cloud action platform is not limited to any particular computing device since the cloud action platform may be used with various different computing devices.
- the link 104 may be a wired or wireless link such as an Ethernet connection, a WiFi connection, a cellular data network, a computer network and the like.
- the protocols used for the action app system may be standard transport protocols, such as HTTP, FTP, XML, SOAP etc.
- the cloud action platform 106 may be one or more server computers with the usual server components that execute a plurality of lines of computer code to implement the various modules, servers, etc. of the cloud action platform 106 .
- the one or more server computers may be in the “cloud” meaning that the company that operates the cloud action platform 106 rents/leases the hardware from a cloud computing company.
- FIGS. 2A and 2B illustrate more details of the cloud action platform 106 .
- the platform 106 may have a cloud action server 110 (described below in more detail with reference to FIG. 7 ), a cloud action server metadata repository 112 , a set of data probes 114 (such as data probe A, . . . , data probe F) each of which is connected to a data source 115 (such as SAAS App A, Cloud DB B, Enterprise App A, Enterprise DB A, social content A and a cloud action platform database which provide a data replication service), an App builder 116 , a component builder 118 , an App Builder Pro 120 , an Action App store 122 and one or more action apps 124 generated and deployed by the platform (or used by a user).
- a cloud action server 110 described below in more detail with reference to FIG. 7
- a cloud action server metadata repository 112 a set of data probes 114 (such as data probe A, . . . , data probe F) each of which is
- each unit/module of the cloud action platform 106 may be a plurality of lines of computer code that may be executed by a processor of computing resources, such as cloud resources, to implement the unit/modules described below.
- each unit/module may be hardware or a integrated circuit with code that implement each unit/module.
- the platform 106 may further include a software development kit (SDK) 126 and extensibility units 128 that allow the platform to interact with various other search engines, specialized analytics, data services and the like.
- SDK software development kit
- the cloud action server 110 as shown in FIG.
- 2B may further comprise an action controller 110 a (to allow a user to determine what actions the user is going to take or monitor), an action monitor 110 b (to allow the user to determine the triggers to set), and one or more action probes 110 c (that allows the user to select the data to be watched).
- an action controller 110 a to allow a user to determine what actions the user is going to take or monitor
- an action monitor 110 b to allow the user to determine the triggers to set
- one or more action probes 110 c that allows the user to select the data to be watched.
- the action Apps will typically be deployed on mobile devices such as smart-phones and tablet computers such as iPhones and iPads.
- the user will visit the Action App Store 122 and download and install the Action App 124 or Action App Builder 116 to their computing device 102 .
- the user will then invoke the App Builder 116 , which enables the user to set the values and thresholds for various triggers, on the mobile device (an example of the user interface of which is shown in FIG. 5 ).
- the Action App will run in the background on the device waiting for a notification from the Cloud Action Server 110 that the trigger has fired.
- the Action App will perform whatever Action has been specified—this may be to send a push notification to the user that an event has occurred, or may be an automated action such as invoking a web service.
- the App Builder Pro 120 and Component Builder 118 will typically be deployed on a laptop or desktop computer.
- the Component Builder 118 is used to define and build components for use within the App Builder Pro.
- the Component Builder 118 can publish Components to the Action App Store 122 .
- the App Builder Pro 120 is a point and click interface that allows a User to build Action Apps and publish them to the Action App Store 122 .
- the Cloud Action Server 110 , the Cloud Action Server Metadata Repository 112 and the Cloud Action Platform DB 115 may be cloud based. These components can run in a private or public cloud, or where necessary may be split between public and private clouds e.g. if there were security or performance concerns relating to placing the Cloud Action Platform DB in a public cloud. While the Cloud Action Platform in one implementation may be software and a Software as a Service solution, other implementation of the Cloud Action Platform may be a hardware appliance with integrated cloud management. While data sources accessed by the Cloud Action Platform can be accessed in-situ, there may be instances in which it makes more sense to replicate the data to the Cloud Action Platform Database e.g. to perform analytics on transactional data without impacting the transactional system. The data probes 114 will typically be co-located with the information source they are probing. These may be on premise, in the cloud, or elsewhere. The data probes will be monitoring the information sources for specific events and will notify the Cloud Action Server 110 when those events occur.
- FIG. 3 illustrates a method 130 for development, delivery and deployment of an action app using the system in FIGS. 1-2B .
- Action App Developer A after reviewing the repository of data probes, decides to use the Component Builder 118 to build ComponentXXL (1).
- the developer then publishes the component to the Action App Store 122 (2).
- Action App Developer B decides that ComponentXXL is going to be used with a new Action App ZZZ (3).
- the developer downloads ComponentXXL (4) from the Action App Store and then uses the App Builder Pro 120 to develop Action App ZZZ. Once Action App ZZZ is completed, the action app is published (5) to the Action App Store 122 .
- Action App User C decides to configure a version of Action App ZZZ for use in his/her organization (6) and, using the App Builder 116 , downloads the Action App ZZZ from an Action App Store 122 (7).
- the user launches the Action App on the iPhone and publishes the configured App to the Action App Store 122 for the organization to download and use (8).
- a developer could create a component to make it very easy to make a call into SAP to get a specific type of data out—e.g. Sales data—by wrapping the Web Services API with the specific calling sequence required to get this data set out of SAP. They could then publish this component to an Action App Store and a developer could then develop an Action App, within App Builder Pro, which notifies the Sales VP via email when a sales rep's confidence in a deal closing falls below a certain threshold.
- the Sales VP may download the SAP Sales Data Probe from the Action App Store to enable his Action App to access the necessary SAP sales data.
- the Sales VP can then publish this Action App to an Action App Store.
- the head of sales for a given organization could then download this Action App and set the confidence threshold for his organization to a certain level and then push that out via an Enterprise Action App Store to all the Sales VPs in his organization.
- FIG. 4 illustrates an example of the database schemas for the system in FIGS. 1-2B .
- the database schema may include one or more user records 140 , one or more application catalog records 142 , one or more data probe catalogs 144 , one or more alert records 146 , one or more component catalogs 148 and one or more data source catalogs 149 that each contain the data fields as shown in FIG. 4 .
- the system and method may contain additional records and field not shown in FIG. 4 that would be within the scope of the disclosure.
- FIG. 5A illustrates an example of a user interface 150 of an action app.
- the system has a user interface layer provided: It includes an interface for consuming apps (see FIG. 5A for example) and one for creating them (as example of which is shown in FIG. 5137 )
- This user interface also works within a web browser but the consumer apps also needs to support a wider set of platforms than just a browser such as the apps interface in a device like the iPhone as is shown in FIGS. 5A and 5B .
- the system may also have a third level of developer interaction with the platform: that of the component developer, who puts together the pieces that are consumed by the other two user types. This type of interaction will typically be through an IDE against a class library that we supply, or a separately supplied SDK, rather than having a hosted UI within the platform.
- the consumer user interface's key function is to personalize and configure the parameters for an app, request input from the user and to display output (whether textual or graphical) (shown in FIG. 5 ).
- the business and process flow logic is not contained in the app—instead that is resident on the Cloud Action Platform.
- One common set of user interfaces will be typical BI tools, which will largely ignore the business and process flow logic within the platform, and connect straight through to the underlying data source.
- the system will support common web browsers (e.g., Internet Explorer, Firefox, Chrome and Safari), and that this set will provide the broadest platform coverage including as a lowest-common-denominator option to mobile devices.
- apps will be available to specific computing devices, such as Apple and Android. This will be accomplished by providing an app for each platform as a ‘container’ and rendering engine, that takes the definition of an app from the platform and renders it onto the target device and form factor (screen size and resolution etc). Under this model, the Action App developer does not also need to be an iOS and Android developer too.
- Apps created for the platform will be available on every supported platform automatically, without the app developer needing to do anything to enable this, other than paying attention to form layout issues when creating their app (to ensure it would be usable on a small screen).
- some Apps may not require a user interface: in many ways the point of what we are delivering is that Actions just happen in the background without the user needing to log on and ‘do stuff’ to implement that action.
- Use Case #1 gasoline price changes will happen automatically when the environment changes—no user needs to log on and ‘make it happen’—they only do this when they want to change the parameters of the business logic.
- FIG. 6 illustrates more details of the action app platform of the system including the action SDK 126 , the action server 110 (and its sub-components), the action domain controllers and the action data sources 115 .
- the Action SDK 128 (also shown in FIG. 8 ).
- the SDK 126 has the component builder 118 described above, a user builder 180 that allows the user to create a user profile that is configurable and a device template store 182 that stores the various templates for the different browsers, the different computing device and the like.
- the action server 110 (shown in more detail in FIG. 7 ) encapsulates all of the Action Logic which ranges from the definition of the data domains on which the actions depend, to the thresholds and values that trigger the actions, to the action definitions and the actual triggering and execution of those actions.
- the action apps will be supported by a robust and secure Cloud Action Platform with the Action Server 110 , at the heart of this platform, will be responsible for managing, delivering and coordinating Events.
- An event is any occurrence that your Action App is designed to handle e.g. it could be that a certain data item has been observed in a data stream. Events will be communicated to the Action Apps and fire a trigger which in turn will prompt an action.
- the action server 110 has an action controller 110 a and the action controller controls the actions to be taken by the apps.
- the action controller 110 a will gather meta-data and statistics about how often events are triggered and what Actions take place. Based on this data set, learning mechanisms can be created which will spot patterns of correlation between events and between actions. These patterns can be used to fine-tune Action Apps, and help to filter and prioritize Actions.
- the action controller 110 a has an alert portion 161 a that gathers and store data about each alert including the who (subject of the alert), mode of communication of the alert (e.g., email, SMS or MMS), urgency of the alert (e.g., high, medium or low) and tracking of each alert.
- the action controller 110 a also may have a security/policy portion 161 b that defines and stores App roles, user groups and permissions for groups on roles, a transact portion 161 c that sets the update times, how to perform an update (web service, API, etc.) and BPM integration and a feedback/autotune portion 161 d that gathers and stores the results and tracking, one or more learning algorithms and one or more filters.
- a security/policy portion 161 b that defines and stores App roles, user groups and permissions for groups on roles
- a transact portion 161 c that sets the update times, how to perform an update (web service, API, etc.) and BPM integration
- a feedback/autotune portion 161 d that gathers and stores the results and tracking, one or more learning algorithms and one or more filters.
- the action monitor 110 b sets up one or more triggers for each action.
- the action monitor is the mechanism that matches the results from Data Probes against the configuration parameters of Action Apps and decides whether anything needs to be done.
- events will be triggered based on changes to the result set returned from a Data Probe.
- there will be various ways to control how significant a change must be to trigger an event perhaps any change at all should trigger, or perhaps only a change of more than 5% within the last week, or perhaps only when a Data Probe exceeds a certain absolute value.
- the Action Monitor will have a sophisticated understanding of time so that event correlations over time can be used as triggers (e.g. only trigger an event if both A and B happen within 5 minutes of C).
- formulae can be used to allow for Boolean combinations of events to be set up (i.e. AND, OR, and NOT conditions), and for events to be triggered based on calculations (e.g. only trigger an event if the profit margin of a deal falls below a target threshold, where profit margin is calculated on the fly).
- Boolean combinations of events i.e. AND, OR, and NOT conditions
- calculations e.g. only trigger an event if the profit margin of a deal falls below a target threshold, where profit margin is calculated on the fly.
- the action monitor 110 b has a value portion 162 a that stores a percentage change, threshold and the like that can be used to set up a trigger for an action, a context portion 162 b that gathers and stores a region peak, group events and the like, a correlation portion 162 c that may be a formula, a time series and the like, a timing portion 162 d that stores a date, a period (quarter end), etc. that may be used to trigger an action, and an event portion 162 e that stores KeyCust, KeySupplier and a KeyCompetitor.
- the data probes 110 c set up the data that the user wants to monitor.
- a data probe at its simplest, consists of a query run against a data source.
- the data probes can be either Real-Time, or Scheduled. Most data probes will be run on a schedule, and evaluated as frequently as needed (e.g. some probes would only need to be evaluated on a daily or weekly basis, but the default schedule would be to evaluate a probe every 5 minutes). Examples of the Action Apps (with triggers) are shown and described in further detail in Appendices A and B which are incorporated herein by reference.
- Real-Time probes provide the ability to react more quickly to events as they happen, or to gather aggregated statistics over a series of events that happen rapidly. For example, a stock price might change several times a minute, but if your data probe only wants to know if the price has broken through a threshold at any point during that time, this would be hard to measure if you only sample the data once every 5 minutes.
- a data probe might be scanning a live camera feed at a soccer stadium to identify known football hooligans by matching facial features. Using the App builder Pro interface, it will be possible to create new composite data probes that pull together information from a number of different data sources and data domains.
- a Data Probe therefore needs to abstract and normalize the key elements of the data being monitored in a consistent way, to allow a probe to be monitored by an Action App whatever the underlying data source.
- Key normalized items of data per probe include security and permission information, date/time stamp, data source name and domain name, and a formatted packet of data (e.g. XML or JSON format).
- the data probe will also have a robust mechanism for dealing with security authentication and authorization requirements. These functions will be delegated from the user that is running the Action App that the Data Probe is working within, so that the data returned by the Probe is specific to the user that is running the Action App.
- the security credentials store will be located within the Cloud Action Platform, but managed by the Action App user interface.
- the data probe 110 c may further comprise data probes 163 a that are data domain specific and data stream specific within a data domain, a data/process exception monitor 163 b that updates schedules, tracks a failed update and has an action flow monitor, and a scheduler 163 c that controls the polling interval for each probes and can be immediately, hourly, daily, weekly and the like.
- the Action Server can receive triggering events from a data platform that can detect changes to data, and return events directly to an application tier. In this scenario, the Action Server will only receive events and do no direct processing of the data.
- the action domain controller 114 is a management tool which makes it easy to tag, categorize and search data sources in order to find the most appropriate service for the Action App Developer's needs.
- the Action App Developer will select the Action Apps they want to work with, which will be dependent on a number of Data Probes, Domains and Data Sources.
- the Domain Controller will provide the mechanism for managing these dependencies.
- the meta-data stored by the Action Domain Controller in the Cloud Action Server Metadata Repository would be used to help the Action App Developer find and configure the Data Sources the Developer needs for his or her Action App.
- the action data sources 115 are the data sources of the Cloud Action Platform that can span a wide range of technologies, including both structured and unstructured sources, and also sources that are both internal to and external from an enterprise. Many Data Sources will generally have a number of characteristics in common, such as:
- Endpoint details for the Data Source e.g. HTTP addresses and port numbers
- Transport protocol required e.g. HTTP, FTP, XML, SOAP etc.
- a single Data Source can support both query services to gather data, and also update services to make changes.
- the query service may have more open security requirements than the update service, but in general the Cloud Action Platform will simply pass through the security credentials for the user of the Action App to the end service, or use standard authentication methods, which will be responsible for validating credentials against the service to see if that user is able to perform that operation or not.
- the Data Source layer needs to be able to both replicate an enterprise database efficiently into the Cloud Action Platform (and keep it up to date with changes happening over time), and also to execute queries against data sources where the bulk of the data is held outside of the Action Server's data repository. To ensure the timely delivery of events, data changes will have to be replicated in near real-time.
- Data Sources supported will include the most popular enterprise database servers, on-premise and SAAS ERP and CRM systems, as well as popular technology interfaces, and a set of pre-packaged utility and look-up services from public data providers:
- ERP and CRM Apps Oracle, SAP, Oracle eBusiness Suite, Salesforce, JD Edwards, PeopleSoft, Microsoft Dynamics, Infor, Lawson, BMC Remedy and AMDocs.
- Public Data Sources Utility services such as geo-coding or verification of addresses from services like StrikeIron, or flight data from travel information services like FlightStats.com, or those aggregated through mashery.com, or data sourced via public APIs like map information from Google Maps.
- Cloud Action Platform Component Developer will also make it possible for third-party developers to create custom data sources, and make them available for consumption by other Cloud Action Platform users (either for free or for a fee via an Action App Store).
- the system described above may also have an analytic engine that provides the ability to analyze data of various types and volumes whether streaming or at-rest.
- the Analytic Engine will handle traditional structured and unstructured data as well as non-traditional data sources such as Twitter and RSS feeds.
- the analytic engine will be able to interface with on-premise and cloud-based databases and enterprise applications.
- the system may also have a data acquisition engine that will provide the ability to replicate data from SaaS, PaaS and Enterprise Databases. Data volumes, security concerns and compliance regulations may require direct connections from the Action Platform to the data source; this will be facilitated by the Data Integration Engine.
- the Action/Event Integration Engine will facilitate the integration of streaming or event data. This data may be stored locally in the Analytic Engine for future analysis or may be accessed directly by the Action Platform.
- the system may also have a “Power User” User Interface.
- the Action App Developer uses the platform to create apps—combinations of data sources, analytics, process/business logic and actions—that are made available to other users. This function is aimed at ‘power users’ rather than programmers, so this function is designed to make it as easy as possible to use the platform to develop tactical apps, as well as to package up those apps for consumption by others.
- These developers build in configuration parameters to their app which can be customized and tailored by the end users. For example, the App Developer might set some default thresholds for creating alerts when events happen, but will mark these items as configurable, so that the end user of the App can customize these thresholds. Only those aspects of the app that are declared as configurable will work in this way, hence allowing the real process and connector complexity of an app to be hidden from the end user.
- a hierarchy of configuration data could be set up, so that default configuration data could be supplied to work for any user within a given organization or group, but they could supply more personalized information for specific systems if they have it, to get access to different levels of data.
- an app may ship with no configuration data, and only works once a user has set it up with their own login data for the systems it accesses.
- the developer workbench will support features for adding collaboration to an app, for example by clearly defining the user roles for the app using ‘swimlane’ notations or similar. This would also help to set the security requirements for the app, as app functionality and users would then be clearly organized into groups which in turn have roles, and any user's set of permissions would be the combination of all roles from all groups that they are members of.
- the ‘power user’ developer is someone who is capable of writing quite complex spreadsheet models including formulae and simple macros. They are not programmers, but sometimes undertake business tasks which require them to approach that level of understanding of program logic and flow control. These users will typically be the ones who supply domain-specific knowledge to a process, and assemble component pieces in order to create an app.
- the developer will model the process or workflow of the app in a visual way, in order to make the environment accessible for non-programmers.
- Components should be provided in a ‘toolbox’ to allow them to use specific component types when needed—e.g. to retrieve Sales data from SAP.
- This App Developer interface needs to be browser-based, in order to provide for broad accessibility to a business-user audience.
- the platform is open to programmers and allows them to create components that could subsequently be consumed by app developers.
- These components could be specific app connectors, or an SDK that configures the data source and triggers through a specialized Cloud Action Server interface; for example, a developer could take an API provided to call a Web Service, and put a specific wrapper around this to make it even easier to call the Web Services made available by SAP.
- a calling protocol e.g. login to authenticate the user, make the call you want using a rather obscure and hard to navigate API, then log out again
- a developer could create a component to make it very easy to make a call into SAP to get a specific type of data out—e.g. Sales data—by wrapping the Web
- the component builder defines interfaces to components in the Cloud Action Platform, so that app developers can access them through the App developer interface.
- Streaming data e.g. Twitter, financial data feeds
- a further option would be to consider whether to enable the purchase of data items from within an App as an in-App purchase, in the way that iOS games etc allow for this. This makes it easy for users to try out apps, then convert them to full-feature versions without having to go back and search the app store again.
- This component development approach will use a REST interface that provides access to the platform infrastructure, to allow for the widest possible range of options for languages and platforms in which to write components, and to minimize the coupling between components and the runtime platform.
- a graphical user interface will be provided for component developers to configure specialized access to a full data platform that abstracts the data access and data events away from the Cloud Action Server.
- the system described above may also include (API)/integration routines for allowing BI suites (standalone or tightly integrated) to pass “Insight Parameters” from BI charts, reports or predictive outputs across to the Cloud Action Platform for the automatic creation of Action Apps based on these “Insight Parameters”.
- “Insight Parameters” can include, but are not limited to, the data streams being analysed in the BI suite together with the triggers i.e. thresholds of certain data values, at which important business events occur.
- FIG. 9 is an example of an action app interface 200 that may be implemented using the cloud action platform in FIGS. 1-2B .
- four programming control structures are encoded that together, make-up an Action App.
- the user wants to review Central Europe sales deals that slip from one quarter to the next. To do this, the user can set-up/configure the Action App with the action and the trigger event that triggers the action once the trigger event occurs.
- the user may tap on a “when” portion 202 of the user interface that displays available data sources and the fields associated with the data source. The user selects a field of the data source in which the user has an interest to look at for changes. In this example, a “Forecast Period” field was chosen.
- the user may then tap on a “Changes” portion 204 of the user interface that enables the user to define the change event that the user wants to monitor.
- the user has selected that they want to know when the value of the forecast period changes from “This Quarter” to “Next Quarter” for the “Forecast Period” field.
- the user may then tap on a “Do This” portion 206 that is used to specify an action when the change occurs.
- the Action that was chosen was “Notify Me”, which will send an alert to the user when the condition is true.
- the user may then tap on a “But Only If” portion 208 that allows the user to refine the criteria that an Action App will use to determine if a change event/trigger event has occurred. In this instance, the program will only initiate an Action when the “Forecast Region” field is equal to “Central Europe”. Once the Action App is defined, the Action App will begin executing on the Cloud Action Platform and generating actions when the specified triggering events and filtering criteria are met.
- FIG. 10 illustrates an example a user interface 210 for defining a system action of an Action App.
- the app developer would enter the necessary fields to create a new Salesforce task when defining the application. This would be saved with the application, and when the qualifying criteria is met, this action would be executed.
- the flow of execution 220 of the system action is shown in FIG. 11 .
- the action app platform (and/or one or more units/elements the cloud app platform) performs the processes shown in FIG. 11 .
- the a trigger event is detected and a system action is triggered ( 202 .)
- the triggered system action is then added to a pending action table/queue ( 224 ) and then a job that is part of the cloud action platform picks up the pending action and calls the relevant target system/data source ( 226 .)
- the method determines if the call was successful ( 228 ) and if the call was successful, the method updates the Saleforce task (for the example action app in FIG.
- the method determines if the attempt was within permissible trials ( 232 ) and adds the action to a re-try table/queue ( 236 ) if the attempt was within the permissible trials and then the method monitors the re-try list and re-attempts the action ( 238 ) and loops back to process 228 . If the attempt was not within the permissible trials, the method discards the action ( 234 ), updates the Action App ( 230 ) and the method is completed.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
Claims (35)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/622,882 US9934027B2 (en) | 2011-09-21 | 2012-09-19 | Method and apparatus for the development, delivery and deployment of action-oriented business applications supported by a cloud based action server platform |
PCT/US2012/056424 WO2013043929A1 (en) | 2011-09-21 | 2012-09-20 | Method and apparatus for the development, delivery and deployment of action-oriented business applications supported by a cloud based action server platform |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161537571P | 2011-09-21 | 2011-09-21 | |
US13/622,882 US9934027B2 (en) | 2011-09-21 | 2012-09-19 | Method and apparatus for the development, delivery and deployment of action-oriented business applications supported by a cloud based action server platform |
Publications (2)
Publication Number | Publication Date |
---|---|
US20130073614A1 US20130073614A1 (en) | 2013-03-21 |
US9934027B2 true US9934027B2 (en) | 2018-04-03 |
Family
ID=47881673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/622,882 Active - Reinstated 2035-01-15 US9934027B2 (en) | 2011-09-21 | 2012-09-19 | Method and apparatus for the development, delivery and deployment of action-oriented business applications supported by a cloud based action server platform |
Country Status (2)
Country | Link |
---|---|
US (1) | US9934027B2 (en) |
WO (1) | WO2013043929A1 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10846070B2 (en) | 2018-07-05 | 2020-11-24 | At&T Intellectual Property I, L.P. | Facilitating cloud native edge computing via behavioral intelligence |
US11029936B2 (en) * | 2019-04-11 | 2021-06-08 | Microsoft Technology Licensing, Llc | Deploying packages to devices in a fleet in stages |
US11221837B2 (en) | 2019-04-11 | 2022-01-11 | Microsoft Technology Licensing, Llc | Creating and deploying packages to devices in a fleet based on operations derived from a machine learning model |
US11455200B2 (en) | 2021-02-03 | 2022-09-27 | The Toronto-Dominion Bank | System and method for executing a notification service |
US11461153B2 (en) | 2021-02-03 | 2022-10-04 | The Toronto-Dominion Bank | System and method for monitoring events in process management systems |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8250213B2 (en) | 2009-11-16 | 2012-08-21 | At&T Intellectual Property I, L.P. | Methods and apparatus to allocate resources associated with a distributive computing network |
US8856168B2 (en) * | 2012-04-30 | 2014-10-07 | Hewlett-Packard Development Company, L.P. | Contextual application recommendations |
US10057182B2 (en) * | 2012-05-07 | 2018-08-21 | Infosys Limited | Method for providing development and deployment services using a cloud-based platform and devices thereof |
US9459862B2 (en) * | 2013-01-29 | 2016-10-04 | ArtinSoft Corporation | Automated porting of application to mobile infrastructures |
US9465608B2 (en) | 2013-03-15 | 2016-10-11 | ArtinSoft Corporation | Code separation with semantic guarantees |
US10019259B2 (en) | 2013-01-29 | 2018-07-10 | Mobilize.Net Corporation | Code transformation using extensibility libraries |
US10061573B2 (en) | 2013-01-29 | 2018-08-28 | Mobilize.Net Corporation | User interfaces of application porting software platform |
US9354865B2 (en) * | 2013-02-18 | 2016-05-31 | Software Ag | System and method for controlling the development of a software application |
US9753784B2 (en) | 2013-11-27 | 2017-09-05 | At&T Intellectual Property I, L.P. | Cloud delivery platform |
US20170061339A1 (en) | 2014-01-02 | 2017-03-02 | Jeremy Lynn Littlejohn | Method for facilitating network external computing assistance |
CN106133779B (en) * | 2014-03-12 | 2021-03-02 | 南洋理工大学 | Electronic commerce enterprise order acceptance algorithm control method and device |
US20160373319A1 (en) * | 2014-09-24 | 2016-12-22 | Jeremy Lynn Littlejohn | Method and device for evaluating the system assets of a communication network |
US9456014B2 (en) * | 2014-12-23 | 2016-09-27 | Teradata Us, Inc. | Dynamic workload balancing for real-time stream data analytics |
US10198252B2 (en) * | 2015-07-02 | 2019-02-05 | Microsoft Technology Licensing, Llc | Transformation chain application splitting |
US10261985B2 (en) | 2015-07-02 | 2019-04-16 | Microsoft Technology Licensing, Llc | Output rendering in dynamic redefining application |
US10198405B2 (en) | 2015-07-08 | 2019-02-05 | Microsoft Technology Licensing, Llc | Rule-based layout of changing information |
US10277582B2 (en) | 2015-08-27 | 2019-04-30 | Microsoft Technology Licensing, Llc | Application service architecture |
US10146512B1 (en) | 2015-08-28 | 2018-12-04 | Twitter, Inc. | Feature switching kits |
US9841969B2 (en) | 2015-09-02 | 2017-12-12 | Google Inc. | Software development and distribution platform |
US12081594B2 (en) * | 2015-10-28 | 2024-09-03 | Qomplx Llc | Highly scalable four-dimensional geospatial data system for simulated worlds |
US9696967B2 (en) | 2015-11-09 | 2017-07-04 | Microsoft Technology Licensing, Llc | Generation of an application from data |
US11113640B2 (en) * | 2016-06-29 | 2021-09-07 | Tata Consultancy Services Limited | Knowledge-based decision support systems and method for process lifecycle automation |
US10110955B2 (en) | 2017-03-17 | 2018-10-23 | The Directv Group, Inc. | Method and apparatus for recording advertised media content |
CN108989453A (en) * | 2018-08-08 | 2018-12-11 | 国云科技股份有限公司 | A SaaS-based APP self-service creation management cloud platform system and its implementation method |
CN110932914B (en) * | 2019-12-16 | 2023-04-07 | 深信服科技股份有限公司 | Deployment method, deployment device, hybrid cloud system architecture and computer storage medium |
CN111966755B (en) * | 2020-08-18 | 2023-08-18 | 中国银行股份有限公司 | APP application method, device and system based on block chain |
CN114237826A (en) * | 2021-12-21 | 2022-03-25 | 北京蔚领时代科技有限公司 | High-speed rendering method and device for Android container |
CN114253671A (en) * | 2021-12-21 | 2022-03-29 | 北京蔚领时代科技有限公司 | GPU pooling method of Android container |
CN114356520A (en) * | 2021-12-30 | 2022-04-15 | Oppo广东移动通信有限公司 | Running method, device, equipment, storage medium and program product of micro application |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6343275B1 (en) | 1997-12-22 | 2002-01-29 | Charles Wong | Integrated business-to-business web commerce and business automation system |
US20060200741A1 (en) * | 1999-11-01 | 2006-09-07 | Demesa Jesse G | Modeling system for retrieving and displaying data from multiple sources |
US20060293934A1 (en) * | 2005-04-22 | 2006-12-28 | Igor Tsyganskiy | Methods and systems for providing an integrated business application configuration environment |
US20080066145A1 (en) * | 2006-09-08 | 2008-03-13 | Ibahn General Holdings, Inc. | Monitoring and reporting policy compliance of home networks |
US7448048B1 (en) | 2003-05-27 | 2008-11-04 | International Business Machines Corporation | Method for performing real-time analytics using a business rules engine on real-time heterogeneous materialized data views |
US20090249446A1 (en) * | 2007-10-22 | 2009-10-01 | Paul Thomas Jenkins | Method and system for managing enterprise content |
US20110078243A1 (en) | 2009-09-30 | 2011-03-31 | Boopsie, Inc. | Leveraging Collaborative Cloud Services to Build and Share Apps |
US20110208822A1 (en) | 2010-02-22 | 2011-08-25 | Yogesh Chunilal Rathod | Method and system for customized, contextual, dynamic and unified communication, zero click advertisement and prospective customers search engine |
US20110225232A1 (en) | 2010-03-12 | 2011-09-15 | Salesforce.Com, Inc. | Service Cloud Console |
US20110270711A1 (en) * | 2010-04-28 | 2011-11-03 | Sap Ag | Managing application interactions with enterprise systems |
-
2012
- 2012-09-19 US US13/622,882 patent/US9934027B2/en active Active - Reinstated
- 2012-09-20 WO PCT/US2012/056424 patent/WO2013043929A1/en active Application Filing
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6343275B1 (en) | 1997-12-22 | 2002-01-29 | Charles Wong | Integrated business-to-business web commerce and business automation system |
US20060200741A1 (en) * | 1999-11-01 | 2006-09-07 | Demesa Jesse G | Modeling system for retrieving and displaying data from multiple sources |
US7448048B1 (en) | 2003-05-27 | 2008-11-04 | International Business Machines Corporation | Method for performing real-time analytics using a business rules engine on real-time heterogeneous materialized data views |
US20060293934A1 (en) * | 2005-04-22 | 2006-12-28 | Igor Tsyganskiy | Methods and systems for providing an integrated business application configuration environment |
US20080066145A1 (en) * | 2006-09-08 | 2008-03-13 | Ibahn General Holdings, Inc. | Monitoring and reporting policy compliance of home networks |
US20090249446A1 (en) * | 2007-10-22 | 2009-10-01 | Paul Thomas Jenkins | Method and system for managing enterprise content |
US20110078243A1 (en) | 2009-09-30 | 2011-03-31 | Boopsie, Inc. | Leveraging Collaborative Cloud Services to Build and Share Apps |
US20110208822A1 (en) | 2010-02-22 | 2011-08-25 | Yogesh Chunilal Rathod | Method and system for customized, contextual, dynamic and unified communication, zero click advertisement and prospective customers search engine |
US20110225232A1 (en) | 2010-03-12 | 2011-09-15 | Salesforce.Com, Inc. | Service Cloud Console |
US20110270711A1 (en) * | 2010-04-28 | 2011-11-03 | Sap Ag | Managing application interactions with enterprise systems |
Non-Patent Citations (3)
Title |
---|
PCT International Preliminary Report on Patentability of PCT/US12/56424; dated Mar. 25, 2014 (1 pg.). |
PCT International Search Report of PCT/US12/56424; dated Nov. 30, 2012 (2 pgs.). |
PCT Written Opinion of PCT/US12/56424; dated Nov. 30, 2012 (6 pgs.). |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10846070B2 (en) | 2018-07-05 | 2020-11-24 | At&T Intellectual Property I, L.P. | Facilitating cloud native edge computing via behavioral intelligence |
US11334332B2 (en) | 2018-07-05 | 2022-05-17 | At&T Intellectual Property I, L.P. | Facilitating cloud native edge computing via behavioral intelligence |
US11029936B2 (en) * | 2019-04-11 | 2021-06-08 | Microsoft Technology Licensing, Llc | Deploying packages to devices in a fleet in stages |
US11221837B2 (en) | 2019-04-11 | 2022-01-11 | Microsoft Technology Licensing, Llc | Creating and deploying packages to devices in a fleet based on operations derived from a machine learning model |
US11455200B2 (en) | 2021-02-03 | 2022-09-27 | The Toronto-Dominion Bank | System and method for executing a notification service |
US11461153B2 (en) | 2021-02-03 | 2022-10-04 | The Toronto-Dominion Bank | System and method for monitoring events in process management systems |
US12008419B2 (en) | 2021-02-03 | 2024-06-11 | The Toronto-Dominion Bank | System and method for monitoring events in process management systems |
US12039379B2 (en) | 2021-02-03 | 2024-07-16 | The Toronto-Dominion Bank | System and method for executing a notification service |
Also Published As
Publication number | Publication date |
---|---|
US20130073614A1 (en) | 2013-03-21 |
WO2013043929A1 (en) | 2013-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9934027B2 (en) | Method and apparatus for the development, delivery and deployment of action-oriented business applications supported by a cloud based action server platform | |
Martinez et al. | Blockchain-driven customer order management | |
US11157295B2 (en) | System and method for providing intelligent operant operating interface and intelligent personal assistant as a service on a crypto secure social media and cross bridge service with continuous prosumer validation based on i-operant+198 tags, i-bubble+198 tags, demojis+198 and demoticons+198 | |
US20150302303A1 (en) | System and method for providing unified and intelligent business management applications | |
US11232523B2 (en) | System and method for providing an intelligent operating interface and intelligent personal assistant as a service on a crypto secure social media and cross bridge service with continuous prosumer validation based on i-operant tags, i-bubble tags, demojis and demoticons | |
Briggs et al. | Enterprise Cloud Strategy: Enterprise Cloud epUB _1 | |
CA3046459A1 (en) | Optimized small screen device to display visual elements in a real property dashboard involving predictive analytics | |
AU2021261831A1 (en) | H4Z : Systems to identify, model, certify, verify and authentically counter-balance components of enterprises involving Scope 1, 2 and 3 emissions by direct association with products and processes in defined limited scenarios that will absorb or sink equivalent emissions &/or compensate for the negative climate effects of designated emissions. | |
US20160005090A1 (en) | System and method for providing an online knowledge product | |
US20140278790A1 (en) | System and method for data acquisition, data warehousing, and providing business intelligence in a retail ecosystem | |
US20240428279A1 (en) | Systems and methods for managing agnostic data forms for vendors | |
US20220351237A1 (en) | A computer implemented platform for advertisement campaigns and method thereof | |
US20240211957A1 (en) | Computerized tools to access an enterprise data model for implementing component data objects | |
US20240428167A1 (en) | Systems and methods for supply chain management including erp agnostic realtime data mesh with change data capture | |
EP4492307A1 (en) | Systems and methods for supply chain management including erp agnostic realtime data mesh with change data capture | |
Cardoso et al. | Electronic services | |
US20250021933A1 (en) | Systems and methods for dynamic sku generation in distribution management | |
US20250078145A1 (en) | Systems and methods for end user view b2b/b2c mode | |
US20240428318A1 (en) | Systems and methods for personalizing bundles based on personas | |
US20250029174A1 (en) | Systems and methods for generating ai-driven integrated insights | |
US20250029054A1 (en) | Systems and methods for automated prediction of insights for vendor product roadmaps | |
US20250005504A1 (en) | Systems and methods for alerts and notifications in an advanced distribution platform | |
US20240428181A1 (en) | Systems and methods for distribution management including single pane of glass user interface | |
US20250029157A1 (en) | Systems and methods for performing vendor-agnostic cto/qto (configure to order/quote to order) | |
US20240211958A1 (en) | Computerized tools to implement a permission workbench application to modify sets of permissions that provide access to enterprise data objects |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: ACTIAN CORPORATION, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:SHINE, STEVE;POSTLE, DAVE;MCGRATTAN, EMMA;AND OTHERS;SIGNING DATES FROM 20121025 TO 20130106;REEL/FRAME:029677/0448 |
|
AS | Assignment |
Owner name: TC LENDING, LLC, TEXAS Free format text: GRANT OF A SECURITY INTEREST - PATENTS;ASSIGNORS:ACTIAN CORPORATION;PERVASIVE SOFTWARE INC.;VERSANT CORPORATION;REEL/FRAME:030205/0636 Effective date: 20130411 |
|
AS | Assignment |
Owner name: VERSANT CORPORATION (NKA VERSANT SOFTWARE LLC), CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:TC LENDING, LLC;REEL/FRAME:042880/0155 Effective date: 20170630 Owner name: PARACCEL LLC, CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:TC LENDING, LLC;REEL/FRAME:042880/0155 Effective date: 20170630 Owner name: ACTIAN CORPORATION, CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:TC LENDING, LLC;REEL/FRAME:042880/0155 Effective date: 20170630 Owner name: VERSANT SOFTWARE LLC, CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:TC LENDING, LLC;REEL/FRAME:042880/0155 Effective date: 20170630 Owner name: VERSANT CORPORATION (NKA VERSANT SOFTWARE LLC), CA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:TC LENDING, LLC;REEL/FRAME:042880/0155 Effective date: 20170630 Owner name: ACTIAN INTERNATIONAL, INC., CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:TC LENDING, LLC;REEL/FRAME:042880/0155 Effective date: 20170630 Owner name: PERVASIVE SOFTWARE INC., TEXAS Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:TC LENDING, LLC;REEL/FRAME:042880/0155 Effective date: 20170630 Owner name: POET HOLDINGS, INC., CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:TC LENDING, LLC;REEL/FRAME:042880/0155 Effective date: 20170630 |
|
AS | Assignment |
Owner name: VIRTUS GROUP, LP, TEXAS Free format text: SECURITY INTEREST;ASSIGNORS:ACTIAN CORPORATION;PARACCEL LLC;PERVASIVE SOFTWARE INC.;AND OTHERS;REEL/FRAME:042881/0075 Effective date: 20170630 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: PERVASIVE SOFTWARE INC., CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:VIRTUS GROUP, LP;REEL/FRAME:046621/0033 Effective date: 20180724 Owner name: ACTIAN CORPORATION, CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:VIRTUS GROUP, LP;REEL/FRAME:046621/0033 Effective date: 20180724 Owner name: VERSANT SOFTWARE LLC, CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:VIRTUS GROUP, LP;REEL/FRAME:046621/0033 Effective date: 20180724 Owner name: PARACCEL LLC, CALIFORNIA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:VIRTUS GROUP, LP;REEL/FRAME:046621/0033 Effective date: 20180724 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20220403 |
|
FEPP | Fee payment procedure |
Free format text: SURCHARGE, PETITION TO ACCEPT PYMT AFTER EXP, UNINTENTIONAL. (ORIGINAL EVENT CODE: M2558); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY Free format text: PETITION RELATED TO MAINTENANCE FEES FILED (ORIGINAL EVENT CODE: PMFP); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YR, SMALL ENTITY (ORIGINAL EVENT CODE: M2551); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY Year of fee payment: 4 |
|
PRDP | Patent reinstated due to the acceptance of a late maintenance fee |
Effective date: 20221003 |
|
FEPP | Fee payment procedure |
Free format text: PETITION RELATED TO MAINTENANCE FEES GRANTED (ORIGINAL EVENT CODE: PMFG); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |