WO2002046977A2 - Knowledge based business processes and systems for implementation of same - Google Patents
Knowledge based business processes and systems for implementation of sameInfo
- Publication number
- WO2002046977A2 WO2002046977A2 PCT/CA2001/001712 CA0101712W WO0246977A2 WO 2002046977 A2 WO2002046977 A2 WO 2002046977A2 CA 0101712 W CA0101712 W CA 0101712W WO 0246977 A2 WO0246977 A2 WO 0246977A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- business
- careabout
- processes
- message
- role
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
Definitions
- the present invention is directed to knowledge based business processes and systems to implement the processes .
- the present invention is directed to knowledge based processes and systems to enable business to operate in an efficient manner to allow the business to react quickly to changes in parameters that are necessary for the business to monitor in order to operate efficiently.
- a business process system for management of a business comprising a plurality of business processes for management of specific parameters of the business; a plurality of careabouts, each careabout being a measurable parameter of the business of importance to the business and being associated with one or more roles of the business; a plurality of roles, each role being a person or entity within the business who is the owner of one or more processes, and responsible for the execution of owned processes; and a plurality of scripts being methods of describing the business ' processes .
- Each of the business processes may be implemented by the role owning the process by executing the script associated with the process in response to an event to cause the state of a careabout to be adjusted, the adjusted state of the careabout being reported to each role with whom the careabout is associated.
- a business processing system to enable a business to rapidly and easily access information of importance to the business.
- the system comprises a plurality of business processes for management of specific parameters of the business; a plurality of careabouts, each careabout being a measurable parameter of the business of importance to the business and being associated with one or more roles of the business; a plurality of roles, each role being a person or entity within the business who is the owner of one or more processes, and responsible for the execution of owned processes; a plurality of scripts being methods of describing the business processes; a database-containing indications of the roles and careabouts associated with the roles; and a message broker which routes messages between the business process and the roles .
- Each of the business processes may be implemented by the role owning the process by executing the script associated with the process in response to an event to cause the state of a careabout to be adjusted.
- the message broker receives an indication of the altered careabout from the business process and after comparing the altered careabout with the database, notifies each role who has the careabout associated with it of the change in the state of the careabout by a message sent or forwarded by the message broker
- FIG. 1 is a block diagram of the basic process of the present invention
- Figure 2 is a schematic view of a preferred embodiment of the system according to the present invention.
- Figure 3 is a flow diagram illustrating a business process according to the present invention.
- Figure 4 is a block diagram of a preferred embodiment of the structure of the personal manager; and Figure 5 is a block diagram of a preferred embodiment of a message structure utilized in the processes of the present invention;
- Figure 6 is flow diagram illustrating the interaction of the Event Manager components
- Figure 7 is a diagram of a preferred embodiment of the Knowledge Broker and message flow in the system of the present invention.
- the present invention provides a knowledge based business process for management of a business to enable the business to operate in an efficient manner. This allows the business to react quickly to changes in parameters that are necessary for the business to monitor in order to operate efficiently.
- the present invention allows the business to be kept informed of the changes in the parameters by timely notification of the changes to those roles, being persons or entities within the business, who have a need to know of the changes.
- the present invention provides intelligent network-based processes and systems that enable various suppliers, vendors and consumers to interact effortlessly, sharing information and conducting business regardless of the variety of software applications or hardware that they use in house. Specialized interpreters working with the system ensure that users' business models integrate seamlessly with the user's existing systems. Costs are thus dramatically reduced, while future compatibility and scalability issues are eliminated.
- the processes and systems of the present invention provide architecture for business value networks technology infrastructure based on the concepts of "simpler work" and effective value networks.
- the processes and systems of the present invention represent technology beyond the web- browsing, kiosk mentality of existing e-commerce.
- At the core of the present invention is the ability to interpret, execute and disseminate the results of pre-defined and ad- hoc business processes .
- the present invention significantly reduces work complexity.
- the customizable interfaces utilized in the processes and systems of the present invention allow a business to operate in the way that best fits with their business context.
- the present invention adds value by "modeling" the user's own business practices, creating a valuable resource for corporate training and strategic planning.
- the present invention provides a means to enable a consistent architecture for exchanging electronic information and business process knowledge that integrates seamlessly with the user's existing information systems.
- the processes and systems of the present invention function as a customized portal to the Internet, enabling individual users, whether they be part of large corporations or individual consumers, to do business over the Internet in the manner that best suits their unique requirements and preferences. It serves as a filter to help process the deluge of information transmitted over the Internet into a manageable stream organized to suit the user, in their context.
- a key feature of the present invention is its ability to lever business value networks by enabling computing technology to interpret and execute business processes and facilitate electronic exchange in a true e-business environment. Augmenting today's architecture of web sites, kiosks, and storefronts, the processes and systems of the present invention positions an individual participant in a business value network as a center of network services . Value to business will, consequently, be realized from access to such fully enabled individual knowledge workers, participants, employees, customers, etc.
- the processes and systems of the present invention overcome significant technological uncertainties .
- the present invention digitizes a variety of different business processes using a limited number of parameters defined by the processes and systems - Careabouts, Roles and Events.
- the present invention creates Visual Modeling-Tools abstracting business processes to the processes and systems of the present invention. It defines an efficient, open Application Programming Interface (API) facilitating wide acceptance of the processes and systems by others .
- API Application Programming Interface
- the present invention provides a robust, distributed, scaleable, peer-to-peer system implementation capable of handling both single user oriented interactions, as well as very high volumes of transactions between users .
- the business processes used by a business are modeled and implemented in a 'generic' way, creating sets of customizable, user-selectable interfaces.
- the systems of the present invention provide a robust, flexible, component-based system architecture facilitating modularization of software, well-defined external and internal interfaces and re-use of standard components .
- the present invention also achieves integration and leveraging of commercially available third party software technologies and tools .
- the knowledge based business processes and systems of the present invention provide a framework for interpretation, execution and distribution of the results of models, describing processes of participants in a business value network.
- a business process is an activity that uses careabouts, which are anything of importance to the business, to perform a task, defined by a script/formula, is triggered by an event, and executed by a role, within a finite period of time.
- Business processes can be combined into agreements - higher-levei hierarchies, and scenarios - groupings of processes and careabouts put together for simulation purposes .
- the present invention provides, a platform, providing the underlying architecture, conventions ("standards"), and an environment for formalization, distribution and execution of business content.
- the Platform is packaged into many different business computing environments for -its competency and ability to bring business content to the rightful owner faster, cheaper and simpler than anything else presently available.
- the present invention provides a simple, inexpensive, reliable way to automate predictable and repeatable business functions and reduces complexity by allowing business process participants to conduct business on their own terms .
- the knowledge based business processes and systems of the present invention is a distributed system preferably based on Message Oriented Middleware - an asynchronous, loosely coupled communication, providing a highly reliable delivery method. It offers reduced complexity and superior performance, as compared to client/server systems, which are based on synchronous, tightly coupled communication methods, and are 'vulnerable to network problems and slowdowns .
- Java programming language provides an entire programming environment, including libraries for networking, database access, XML and many other domains .
- the system of the present invention requires control over the Java Virtual Machine (JVM) in which the application is running.
- JVM Java Virtual Machine
- the first way of deployment is preferable at present, while-second will be preferred as Browser capabilities are enhanced in the future developments .
- the knowledge based system of the present invention includes three main components - a personal manager, a message or Knowledge broker and the business models describing the business processes .
- a key feature of the present invention is the concept of the personal manager, a piece of software capable of executing as well as being taught how to execute business processes.
- the personal manager enables an individual participant in a business value network, through all his roles (e.g. customer, employee, manager, distributor, investor, etc.), to execute all required business processes and to transparently communicate the results to all other parties in- the business value network.
- Legacy software applications and internet-enabled e-services e.g. security verification
- the Personal Manager can be taught how to execute business processes.
- the personal manager is implemented in software preferably residing in a device accessible to the business process participant.
- the device may be any device which is capable of connecting to the network on which -the knowledge based system of the present invention resides and is also capable of executing the business processes as described below.
- the device is a computing device such as a personal computer, a personal digital assistant, or a cellphone having email and web browsing capabilities .
- the personal manager is the cornerstone of the processes and systems of the present invention. It acts as a storage and handler (processor) for different types of objects, defined by the business process model properties, and communicates the results to other participants in a business value network.
- the Personal Manager creates an outgoing message for each shared topic (careabout) affected/changed by the execution of the process.
- specialized and/or scaled up versions of the personal manager may be provided for deployment in situations requiring enhanced functionality with high performance and capacity.
- the client or personal manager provides for the interaction of the user with the processes and systems of the present invention.
- the client or personal manager connects to a central router or message broker (in the preferred embodiment being the Knowledge Broker) to allow for the exchange of messages between the client and the message broker.
- This exchange of messages between the client and message broker utilizes a suitable messaging system which allows for rapid and accurate transfer of the messages between the client and the message broker.
- the messaging system allows for the implementation of the processes of the present invention by allowing for efficient storage, handling and routing of the messages to the intended recipients .
- the messaging system allows for embedded objects and executable scripts associated with the objects to be executed upon receipt of the message by the recipient.
- the client or personal manager has a built in functionality to interface with one or more message brokers and to store and handle messages from such message brokers based upon the user's profile.
- the Message Broker facilitates the interactions between the users of the systems and process of the present invention.
- the Message Broker acts to route messages between the users as well as to other Message Brokers based upon the topics to which the message relates and the topics to which the user has subscribed or the other Message Broker relates .
- the systems of the present invention utilize hierarchical messaging systems operating in a Publish/Subscribe mode.
- the Message Broker maintains a database of all subscribed users and topics, such that as a message is received, its topic is compared to the subscribed topic of the user and a message is forward to each user who has subscribed to the topic.
- the message sent to the user may be a copy of the original message, or it may be a message generated by the Message Broker based upon the content of the original message.
- the Message Broker is preferably implemented in software hosted at the business process owner's server.
- a central server broker may be hosted by a central server broker, as part of a service provided to the process owner.
- Message Broker provides structured message routing between participants, as well as a billing engine and back-up and logging functionality.
- the Knowledge Broker consists of a Message Broker and a set of adapters.
- the Message Broker provides structured message routing between participants, while the adapters extend the Message Broker and provide the administrative services such as distribution of the business processes, billing, storage back up and message broker administration.
- the Knowledge Broker is aware of the Roles being managed, process participants and their mapping to the Roles, as well as who else cares about the change caused by the execution of the process. It understands the role-participant relationship and, consequently Careabouts of each Role. The totality of Roles and Careabouts defines the scope of business covered by the Knowledge Broker.
- the Knowledge Broker In addition to its ability to manage the flow of messages, the Knowledge Broker has the ability to measure the traffic in terms of number of delivered messages to the community of shared business interest (e.g. company, value network, etc.).
- Content Generator is a set of software tools used for Content creation. It provides an environment to describe, and to simulate and promote business process models.
- the resulting Content (businessprocess model) is distributed to the business process participants.
- Interpreter is a-software product used to executeContent interpretation and visual representation. In addition, interpreters will allow for different visual presentations of the same Content. Interpreter APIs will be published to enable third-party development of additional interpreters .
- Content is a collection of objects, interpretable and actionable by The Personal Manager. Content is stored locally on each Personal Manager and is distributed by the Knowledge Broker.
- the business models simulate and describe the business processes utilized in the business and are specialized tools developed for that purpose. The models are distributed to business process participants through the message broker.
- the knowledge based system of the present invention is based on a star (hub) topography. All "Clients” (Personal Manager) are connected to a central Router (Knowledge Broker) , through which they are exchanging messages, utilizing a Publish/Subscribe model.
- the 'Client' definition includes the personal manager, as well as other legacy systems connected and exchanging messages through the hub.
- the message broker may be connected to other message brokers having their own clients as well as to other systems running particular business applications .
- the connections between the Personal Manager and Message Broker as well as the between the Message Brokers may be accomplished utilizing any of the commonly employed network architectures.
- LAN local area networks
- intranets running a suitable networking protocol over a suitable physical network.
- the physical network may be wired or wireless depending upon the particular location. Persons within the same organization but located at a different physical location may connect to the Message Broker using a wide area network (WAN) which can be accomplished by any of the commonly used methods such as Remote Access Services, Virtual Private Networks, etc. This may involve a dial-up connection or tunneling via the Internet.
- Secure Internet sites may also be made available for remote users of the Message Broker. For other entities located external to the organization but which require interaction with the business, such as suppliers, an extranet may be utilized similar to the situation with remote workers. Preferably, those external to the organization would interact with the Message Broker- using a Secure Internet Site.
- the message format and exchange functionalities are implemented in a manner to facilitate the communications required in the processes of the present invention.
- the message format and exchange functionalities utilize a hierarchical message addressing.
- Hierarchical message addressing starts at a ' broad level and each additional sub-level of addressing further defines the addressing more specifically.
- the Publish/Subscribe method used for exchanging messages in the present invention is based on a Topic entity, which is defined as a common point of interest.
- Topic entity which is defined as a common point of interest.
- users can exchange messages based on common points of interest, without a need to know each other.
- Selectors are other elements that further refine message exchange and act as a filter for messages in a particular message queue.
- the personal manager is a storage and handler (processor) for different types of objects including the business processes which are defined as an activity that uses careabouts (something of value to a business) to perform a task (which can be defined by a script /formula) , is triggered by an event and executed by a role within a finite period of time. Each business process is executed within the context of one role at a time.
- any business process can be defined as including four essential properties: • Careabout : anything a business "cares about”. Fundamental careabouts can be subdivided into sub- careabouts . E.g., a fundamental careabout could be a corporation's net worth. A sub-careabout may be defined as the interest rate payable on a line of credit. The status of any given careabout can be measured, and statistics displayed in various forms and configurations.
- Event anything triggering a business process, e.g. month end; request email; change in an account balance, etc.
- each business process is carried out by a person or entity within the context of a given role, which owns the process.
- the business processes may be further defined as an Agreement which is a high level hierarchy of business processes made up of three essential properties :
- the Personal Manager product architecture provides a framework for formalization, interpretation, execut-ion and distribution of business processes (content) .
- a business process is a natural continuing chain of tasks/functions that targets the net result (outcome) of the process intent; it is responsible for delivering the initial requested value.
- Function - within a business process is a group of related tasks contributing to the fulfillment of the business process (e.g. - solicitations for a sale) .
- Task - within a function is an activity that . is part of the function (e.g. - creating a list of leads for solicitations for a sale) .
- Careabout anything of value to a business a business (what the business "cares about") .
- the status of any given careabout can be measured, and statistics displayed in various forms and configurations.
- Careabout represents a static state of data before and after execution of the task.
- Event - anything causing a change in state of the careabout, triggering a task e.g. triggering a business process, e.g. month end; request email; change in an account balance, etc.
- Script - a method of describing a business process, allowing appropriate adjustments to be made in statistics describing state of careabouts .
- Role an entity -authorized to execute a task. carrying out a business process within the context of a given role, which owns the process.
- ⁇ Subscription an area of interest that the user has been registered for on the Knowledge Broker.
- the present invention preferrably provides three different types of subscriptions .
- Careabout centric where subscriber is looking at all information associated with a careabout.
- An example would be a bank customer is tracking all account balance changes by having a subscription to SavingAccount .AccountBalance.
- Role centric where subscriber is tracking all information related to a role.
- An example would be a user subscribing to all information relevant to a role called Manager.
- the publish/subscribe hierarchical message system utilized in the present invention is Topic-centered and requires a central point of interest, where exchange of information occurs .
- the processes and systems of the present invention are careabout-centered, which results in a large number of points of interest (number of users x careabouts) . This problem is easily addressed in a hierarchical message system.
- the personal manager includes the following major components :
- the Core which includes all managers, bootstrap module and environment handlers.
- the Persistence which is an Object Oriented Database (OODB) containing all user data.
- OODB Object Oriented Database
- the Services which provide system capabilities that can be extended or replaced. Applets/Interpreters/Applications which contain business logic and different methods for displaying and processing data stored in the Persistence.
- the major functions supported by the personal manager components include: Core
- Basic Core Module Bootstraps the whole system, starts all threads and initiates all managers.
- the core module provides handlers into the native environment.
- the core module manages user properties and authentication.
- An authentication module may also include encryption and decryption.
- Event Manager Manages scheduled tasks and threads of processes including business processes. Provides Process Factory and executes scripts using Scripting Engine Service.
- Subscription Manager Manages subscriptions and connections to different message brokers and topics.
- Service Manager Initiates services and manages threads of executions for all services . Handles addition of new services. Maintains a list of all services and their status .
- Interpreter Manager Manages threads of content , , executions, additions, and current status for all applets, interpreters, or applications.
- Profile Manager Manages different user profiles.
- the personal manager can work with multiple user profiles.
- Unique user profiles are stored in user specific property files and persistence (OODB) .
- Persistence is set as an observable component, while all other elements of the processes of the present invention act as an observer on it.
- a service or manager gets notified when a relevant change in persistence causes an action (i.e. Addition of message object to persistent class Inbox triggers a notification to a Messaging Service where an appropriate receive Message method will be initiated) .
- Object Oriented Database Provides storage for all users' data mirroring structure of information in a better fashion then a relational dB. Access to the database is defined through dB specific API. Use of OODB is preferable, since it handles the data structure much easier and faster, than a relational database (RDB) . RDB requires an extra layer to translate a table structure to a complex tree structure used internally. Further details on the database structure are given below.
- Persistence Provides access to the database used as storage for persistence.
- Scripting Engine Provides a language interpreter for the scripting language. Also provides listeners for applets .
- GUI Graphical User Interface
- GUI Hyperbolic Tree
- the Hyperbolic Tree is based on a principle of Focus & Context. Any part of the data may be put into focus (viewed in detail) , leaving the rest of the data as context (unfocused) . Items in context are very small, and cannot be seen in detail. Rather, they form patterns which can be used in two ways: to gain a better understanding or presentation of the dataset as a whole, and to show relationships which help identify items of interest to be focused on.
- another component can replace the hyperbolic tree (as hierarchical tree or some type of virtual reality tree)
- ZRE Runtime Environment
- Interpreter - is a software product for content interpretation and visual presentation.
- An interpreter interprets process script and presents it in its own defined format. Different interpreters will present the same process differently (i.e. Chinese or French presentation based on the same business logic with Swing or HTML visual controls) . With selection of the preferred interpreters, users will always have familiar environment to work with. Interpreter APIs will be published for third- party development of additional interpreters.
- Application - a program built on top of the Open Interface. While Content and Interpreters are specialized to execute a business process, application is an entity built to add functionality or to provide administrative features to the environment of the present invention. Certain applications work together with core managers and services . The corresponding manager or service is enclosed within the round brackets following the application name.
- Subscription Manager Manages list of subscriptions for different message brokers; keeps record of userld/password pair for each subscription, extra information about subscription and information about last session.
- a Web page is described by HTML, rendered and displayed by a browser rendering engine.
- the rendering engine creates objects representing elements on the graphical screen (document, link, and form) and exposed them to the JavaScript engine. This way JavaScript can manipulate the objects in the browser window. It should be noted that JavaScript can only manipulate objects in the browser window. -If a new object is needed, the JavaScript engine must go through the browser rendering engine to create the object.
- the Swing form is defined in XML.
- XwingML is used as a rendering engine to generate Swing forms.
- Objects in form are exposed to the scripting language that can control all exposed objects using standard Java syntax.
- the present system operates as a Swing Browser. Using this approach any Swing form (and potentially some other GUI library- forms) may be implemented using XML. Defining separate name space for each session (session starts when new instance of applet is started) allows multiple applets to be running at the same time.
- the present system works closely with the Scripting Engine. Since the Scripting Engine has access to the Open Interface through which it can control public core functionality, all content also has the same access to the core. Combining this with the capability to control GUI makes the present system a platform for development of various applications. These applications are .limited in size and scope, but since their functionality will be highly focused, such limitations will not present a problem.
- Each description file contains two sections. The first section defines scripts (processes) while the other section defines GUI and events that will be calling different scripts.
- XwingML is based on Swing GUI library
- features available for the processes and systems of the present invention will include Java Plugable Look and Feel (LaF) . This feature is supported by Swing and will allow the definition of completely different Look and Feel layers over the Swing core, providing completely different GUIs. Users of the processes and systems of the present invention will be able to develop any look and feel layer desired, as needed.
- LaF Java Plugable Look and Feel
- ZUI The User Interface of the present invention
- Users perform tasks by interacting with graphical control elements presented through ZUI.
- Visually, ZUI is a frame containing GUI controls, dashboards and images. To eliminate the complexity of typical software application user interface and to achieve ease of use, ZUI has an appliance "look & feel".
- ZUI is highly customizable through the use of skins and dashboards. Through the ZUI Visual Tool, the user can link the invocation of any function to GUI control elements . New dashboards can be constructed using a library of control components and function components .
- the personal manager structure can be presented as two modules connected via the Open Interface.
- the bottom module provides complete functionality for personal manager, handling Persistency, Messaging, Scripting engine, Presentation, as well as management of all tasks and components .
- This module looks as a small personal server (portal) to the Core capabilities .
- the top module provides handling of applets/interpreters, acting effectively as a browser.
- This module can be viewed as Client for the bottom module (Core) .
- a visual modeling tool is used to create business process models .
- Visual models of these defined processes contain process script blocks, process flow, business rules (constraints) , process roles and messages (information) passing through the system.
- a business process consists of a structure defined by distributed data (careabouts) , distributed process scripts, roles, and communication (messages) . It acts as a container of many parts in the communication network.
- a distribution tool is used to create the configuration of. a business process. It shows the paths of how messages are flowing around and defines communication as a part of the model. Once a business process is defined, the distribution tool is used to distribute the process scripts and careabouts to the corresponding roles.
- the preferred message type is basically a collection of XML elements and provides the flexibility to freely define the internal message structure. As shown in Figure 5, In the preferred embodiment the message of the present invention is wrapped within JMS message.
- the JMS specification defines several different messages.
- ObjectMessage is the most suitable type for our purposes. It is basically a collection of serializable object elements and provides the flexibility to freely define the internal message structure.
- a message is comprised of three sections: Header, Properties and Body. The Header is carrying basic information about origin, destination, time, and relations.
- the Property is carrying extra information specified in the JMS, as well as all other custom properties defined and used by a specific implementation.
- the Body in the architecture, carries a collection that is the actual message (ObjectMessage type) .
- the body message can contain multiple objects.
- each Object has a corresponding Persistence Location.
- the Messaging Service uses the Persistence Location (path) information for the placement of the Object in the persistence.
- Object can be a careabout, a process or an event.
- the body in the processes and system of the present invention, carries a collection that is the actual message which will generally include one or more objects and their associated scripts .
- JMS Java Messaging System
- MQ Message Queuing
- a hierarchical -name space extends topic management in a way that adds virtually no overhead when publishing, yet provides faster access, easier filtering and flexible subscriptions.
- Hierarchical name spaces use a parent-child subordinated folder.
- a topic named SavingAccount.AccountBalance.JohnSmith denotes a careabout node in a hierarchical structure able to participate in selection mechanisms that refer to its depth in the structure (third-level) , the name of the user (JohnSmith) , and its careabout class (a type of a careabout) AccountBalance, which is member of a higher careabout class SavingAccount
- Topic hierarchies enable unique multiple topic subscriptions, allowing users to subscribe to many topics quickly, subscribe to topics whose complete name is unknown and traverse topic structures efficiently
- a suitable delimiter such as a . (period) is used to separate each level of the topic.
- Template characters such as the * (asterisk) and the # (pound) may be utilized to expand the flexibility of the subscription of the user to the topics containing the careabouts of interest to the user. Using these characters avoids having to subscribe to multiple topics, and offers benefits to subscribers who might need to see information or events across several areas .
- Client applications may use template characters when subscribing to a set of topics or binding a set of topics to a message handler.
- the template characters may be used to specify any value at a particular class or sub-class or may be used to specify any value at a particular class and its subordinate hierarchy.
- SonicMQ there are two template characters:
- the intent of the template characters is to allow a set of managed topics to exist in a message system in a way that lets subscribers choose broad subscription parameters that will include preferred topics and avoid irrelevant topics .
- the message broker delivers a message to more than one message handler, if the message's topic matches bindings from multiple handlers.
- message selectors-an inherently slow and recurring process- can often be eliminated.
- the systems and processes of the present invention allow users the capability to look at information from two different points of view.
- Careabout class centric where the subscriber is looking at all information associated with a careabout class
- type An example would be a bank account manager having subscription to SavingAccount.AccountBalance. # where this manager is tracking all account balance changes regardless who the user is. • User centric, where the subscriber is tracking all information related to user ' s name . An example would be a user subscribing to all information relevant to user's name regardless of careabout type (#.JohnSmith) .
- the message broker utilizes a defined Topic Name Space, in which each topic is uniquely identified and can be directly accessed or returned in a query set, constructed by using template characters. Different levels of topics and subtopics are divided by period (dot) . Since careabouts directly correspond to topics, the same applies to them.
- composition of.unique careabout naming would be: [reverse domain name] . [message broker name] . [careabout class] . [careabout subclass (unlimited number of levels) ] . [user unique id]
- careabouts that are public and used for a wide distribution information, the last element ( [user unique id] ) is not needed - these careabouts are distributed to all users subscribed to this topic (careabout) .
- the database used in the present invention is an OODB built as a hierarchical tree.
- a composite design pattern is used to construct the data representation of the tree.
- a composite is a collection of objects, any one of which may be either composite or a primitive object.
- Composite lets clients treat individual objects and composition of objects uniformly.
- the persistence is a hierarchical tree, some of the objects are nodes with additional branches (containers) and some are leaves (elements) .
- the container and element extend the generic properties of the objects (main structure of data in persistence) which contain: Objectld (unique identifier for a object within personal manager space) DisplayName Name
- Containers include Inbox, Outbox, Subscription, Dashboard,
- Containers are position aware (role) or non-position aware
- Elements include Message, Decimal, Integer, Currency, String, Date, Applet, Event and Careabout Reference.
- RelationshipType (parent, association, history, ProtectedLink (link cannot be broken)
- Subtype or extended classes describe specific properties of object types. Every object type has additional properties:
- BrokerCareaboutClassld (unique identifier for a careabout instance is comprised of BrokerCareaboutClassld and userld) Careabout specific fields
- Agreement specific fields (agreementtext, Objects are position aware (role) or non-position aware (careabout)
- An example of a database structure as used in a banking environment could be: +Root
- the Event Manager is an event-action system. This type of system detects the occurrence of events and reacts to those events by invoking the pre-defined actions .
- events are either time-based or status-based (changes in the value of careabouts) .
- Action corresponds to an event and results in the invocation of any function defined in the present invention.
- the Event Manager is made up of the following modules: • Source (or Event Source) .
- An event is a state change that occurs independently of the Event Manager.
- the event sources provide information about these events to the event dispatcher.
- Event Dispatcher The event dispatcher is the link between the source and the consumer of the event. It receives and dispatches information on events of interest .
- Context Builder Its responsibility is to collect all the information the evaluation service requires to evaluate a specific expression. This set of information is called context. The context builder determines what events to be observed.
- • Evaluation Service This component evaluates an expression according a specific context and calls the registered action, if needed.
- Action System The action system provides the. access to the functions defined in the present invention..
- Figure 6 illustrates the interaction of the various Event Manager components during the Activation Phase (when an event occurs) .
- the Knowledge Broker (KB) layers on top of the MB, providing additional functionalities that enhance the architecture.
- These functionalities are implemented with Adapters and applications.
- An adapter is a JMS client that performs certain functions based on specific incoming messages.
- the Adapters reside on the same sever as the MB.
- Applications are not physically part of the MB server and can be located on any client.
- the KB consists of these modules:
- this module Since billing is based on the traffic volume, this module will analyze traffic log and generate billing information (per delivered message or subscription or model size) , as needed.
- the primary mechanism in collecting the billing information is by means of a Billing Queue. Once a message arrives at the recipient's Personal Manager, the Messaging Service sends a Billing Information Message to the Billing Queue through point-to-point messaging model .
- This Billing Information Message contains the necessary billing information pertaining to the original message.
- the Billing Module implemented as an Adapter, listens for incoming messages in the Billing Queue and processes the messages. Depending on the billing requirements, the Billing Module periodically issues the billing/invoicing information to the customers. Using the publish/subscribe messaging model, the authorized ZOX clients retrieve this information from the Billing Summary Topic.
- the concept of a role is central to the architecture of the present invention.
- Each process is executed by a role and the resulting actions, if any, become messages to be consumed by other roles .
- Each role corresponds to one or more users . Since the Message Broker has no facility to handle roles, this mapping between role and users is defined within the Knowledge Broker. More specifically, the Role Resolution Adapter provides this service by utilizing the role-user map information that is stored in the KB database. For each message received by the MB, the Role Resolution Adapter determines the recipients (users) based on the process being executed and the sender's role, and directs the message to the corresponding user queues. Point-to-point messaging model is used for both the incoming and outgoing messages.
- the Content Administration module is responsible for the prerequisite tasks of content execution on a message, namely promotion and distribution.
- promotion refers to the process of transferring content from the Content Generator to the KB.
- Distribution sends the appropriate process scripts and careabouts to the participating users, according to the predefined roles.
- This module is implemented as an application that can be installed on any client.
- This module provides the administrative facilities for the Message Broker and the KB adapters. The major functions include the creation and maintenance of users, groups and queues/topics on the MB, the initiation and maintenance of the adapters and the clustering of MBs.
- Figure 7 graphically illustrates the flow of a message - from the message originator (sender ZOX) to the message consumer (recipient ZOX) ; and the generation of a secondary message for message tracking and billing purposes .
- the Message Flow Sequence is as follows:
- the Role Resolution Adapter retrieves the message from the incoming message queue.
- the Role Resolution Adapter determines the actual recipient (s) for this message, by utilizing the Role-User Mapping information defined in the KB database.
- the recipient unpacks the message and stores the careabouts (and process, if any) into the database. Note, other events may be triggered by the modification and/or addition of careabouts 8)
- a special, compact message containing the relevant billing information is sent to the Billing Queue (inside the Message Broker) .
- the Billing Adapter retrieves the incoming billing message.
- the Billing Adapter unpacks the message and stores the billing information into the KB database.
- the system of the present invention preferrably includes a number of security features.
- the following is a list of the preferred security features followed by the strategy preferrably utilized to address the issue.
- Definition The process of granting the user access to a function or feature based on the user's identity.
- Privacy or Confidentiality Definition The ability to conceal the message/object contents from other than the intended recipients .
- Persistence files are encrypted and password protected.
- Definition The ability to restrict the copying and distribution of content by the users.
- the business processes involve a triggering event to cause the script to be executed by a role or owner of the script to thereby adjust the state of a careabout.
- This adjusted state of the careabout is reported to the role, who caused the execution of the script, as well as other roles within the organization with whom the careabout is associated.
- the scripts or business processes are owned by the role and used to adjust the state of the careabout, the adjusted state being reported to the roles, to whom the careabout is of importance.
- the careabouts could include the businesses' Net Worth, a sub-careabout could be Revenue and Expenses.
- Roles within the business can include a sales rep, president and administrative assistant.
- the processes could include such processes as business management- processes, such as recording new revenue and declaring profit.
- business management- processes such as recording new revenue and declaring profit.
- new revenue is recorded using a script executed by a role, i.e. the sales rep
- the state of the careabout, Revenue is adjusted.
- This adjusted state of the careabout, Revenue would be reported to roles within the organization to whom the careabout, Revenue, is associated, for example, to the president of the corporation.
- Another business management process could include declaring profit, this would involve the role, in this case being the president, triggering execution of the script to declare profit.
- This script would use Revenue and Expense careabouts and would generate a new careabout, Net Worth, the altered state of which would be reported to the roles associated with the careabout, such as the president.
- the personal manager upon execution of the script by the role to alter the state of a careabout, sends a message to the message broker advising the message broker of the careabout which has been altered and the altered state of the careabout.
- the message broker compares the careabout to the database containing the indication of the careabouts and roles associated with each careabout.
- Each role who has the altered careabout associated with it is then sent a message from the message broker to their personal manager of the altered state of the careabout.
- the message may merely be an indication of the altered state of the careabout or the message may be an instruction to the personal manager to in turn trigger an event based upon the altered state of the careabout or the message sent by the message broker.
- the message received in the personal manager is recorded in the inbox of the personal manager.
- Any script associated with a message may be executed upon the role opening the message in their personal manager.
- the message may be automatically executed without the person having to open the message.
- the message broker can impose automatic triggering of events and execution of the scripts.
- Another example of a process and system according to the present invention would be that related to a hiring process within the organization.
- the hiring process requires definition of a skill profile for a vacant position within the organization and a matching of the skill profile to resumes which are maintained on file.
- the skills set forth in the resume is matched to the profile and if a match is found, then the person would be interviewed and possibly hired.
- a new resume being received would be a triggering event which would require the recording of the data from the resume in a manner to allow comparison with skill profiles for open positions within the organization.
- a message could be sent to cause a comparison between the data from the resume and a skill profile of an open position. If there is a match between the two, then a careabout, being an acceptable candidate, is altered and the state of this altered careabout would be reported to the business manager responsible for the portion of the business in which the open position is located. The business manager could then arrange the interview, check references and if the candidate is acceptable, make the offer.
- the altered state of careabouts such as, the number of open positions, the number of resumes received, the number of matches or non-matches would be updated and reported to roles associated with those careabouts.
- the president of the company may be interested only in the number of open positions and the number of new hires .
- the state of these careabouts could be reported to the president as they change during the hiring process.
- Other roles within the organization may have the same careabouts associated with them but may require more detailed information on the states of those careabouts.
- the manager of the personnel department may, in addition to requiring information about the vacant position and the new hire, also require information about the number of candidates for the vacant positions being considered as well as their progress through the hiring process .
- the information on these careabouts would also be reported to the business managers for the sections in which the vacant . positions are located with respect to those positions but not to other vacant positions within the organization.
- the business processes and systems of the present invention allow business to operate in an efficient manner by keeping persons and entities within the business aware of changes in parameters of the business which as a result of their role within the business they need to be made aware of .
- this is accomplished by notifying the persons or entities by a message received in the inbox of their personal manager whenever the status of a parameter of the business or careabout changes.
- the message sent to the person or entity may contain objects and scripts which can be executed to act upon other parameters of the business.
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Educational Administration (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
Claims
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU2002216852A AU2002216852A1 (en) | 2000-12-06 | 2001-12-06 | Knowledge based business processes and systems for implementation of same |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CA2,327,840 | 2000-12-06 | ||
CA002327840A CA2327840A1 (en) | 2000-12-06 | 2000-12-06 | Knowledge based business processes and systems for implementation of same |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2002046977A2 true WO2002046977A2 (en) | 2002-06-13 |
WO2002046977A8 WO2002046977A8 (en) | 2002-11-14 |
Family
ID=4167850
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CA2001/001712 WO2002046977A2 (en) | 2000-12-06 | 2001-12-06 | Knowledge based business processes and systems for implementation of same |
Country Status (3)
Country | Link |
---|---|
AU (1) | AU2002216852A1 (en) |
CA (1) | CA2327840A1 (en) |
WO (1) | WO2002046977A2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9135227B2 (en) | 2002-09-10 | 2015-09-15 | SQGo, LLC | Methods and systems for enabling the provisioning and execution of a platform-independent application |
CN112418599A (en) * | 2020-10-15 | 2021-02-26 | 重庆市科学技术研究院 | Enterprise growth path planning method and system based on index set |
-
2000
- 2000-12-06 CA CA002327840A patent/CA2327840A1/en not_active Abandoned
-
2001
- 2001-12-06 AU AU2002216852A patent/AU2002216852A1/en not_active Abandoned
- 2001-12-06 WO PCT/CA2001/001712 patent/WO2002046977A2/en not_active Application Discontinuation
Non-Patent Citations (1)
Title |
---|
No Search * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9135227B2 (en) | 2002-09-10 | 2015-09-15 | SQGo, LLC | Methods and systems for enabling the provisioning and execution of a platform-independent application |
US9311284B2 (en) | 2002-09-10 | 2016-04-12 | SQGo, LLC | Methods and systems for enabling the provisioning and execution of a platform-independent application |
US9342492B1 (en) | 2002-09-10 | 2016-05-17 | SQGo, LLC | Methods and systems for the provisioning and execution of a mobile software application |
US9390191B2 (en) | 2002-09-10 | 2016-07-12 | SQGo, LLC | Methods and systems for the provisioning and execution of a mobile software application |
US10372796B2 (en) | 2002-09-10 | 2019-08-06 | Sqgo Innovations, Llc | Methods and systems for the provisioning and execution of a mobile software application |
US10552520B2 (en) | 2002-09-10 | 2020-02-04 | Sqgo Innovations, Llc | System and method for provisioning a mobile software application to a mobile device |
US10810359B2 (en) | 2002-09-10 | 2020-10-20 | Sqgo Innovations, Llc | System and method for provisioning a mobile software application to a mobile device |
US10831987B2 (en) | 2002-09-10 | 2020-11-10 | Sqgo Innovations, Llc | Computer program product provisioned to non-transitory computer storage of a wireless mobile device |
US10839141B2 (en) | 2002-09-10 | 2020-11-17 | Sqgo Innovations, Llc | System and method for provisioning a mobile software application to a mobile device |
CN112418599A (en) * | 2020-10-15 | 2021-02-26 | 重庆市科学技术研究院 | Enterprise growth path planning method and system based on index set |
CN112418599B (en) * | 2020-10-15 | 2023-02-10 | 重庆市科学技术研究院 | Enterprise growth path planning method and system based on index set |
Also Published As
Publication number | Publication date |
---|---|
WO2002046977A8 (en) | 2002-11-14 |
CA2327840A1 (en) | 2002-06-06 |
AU2002216852A1 (en) | 2002-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ruh et al. | Enterprise application integration: a Wiley tech brief | |
CA2395498C (en) | A virtual token | |
US6574628B1 (en) | System for distributed task execution | |
US7403948B2 (en) | Workflow system and method | |
CN100456277C (en) | Exposing process flows and choreography controllers as web services | |
US7996850B2 (en) | Dynamic business object properties for SOA architectures | |
CN1231039B (en) | Personal information security and exchange tool | |
US20020111922A1 (en) | Electronic markets business interchange system and method | |
US20060136923A1 (en) | System for distributed task execution | |
US20050187953A1 (en) | Method and system for creating and administering entitlements in a wealth management system | |
EP1198756A1 (en) | Data management system | |
US20090133100A1 (en) | Access control on dynamically instantiated portal applications | |
Katzan Jr | Cloud software service: concepts, technology, economics | |
Banotra et al. | Asset security in data of Internet of Things using blockchain technology | |
Merz et al. | Agents, services, and electronic markets: How do they integrate? | |
Chen | Developing Application Frameworks in. NET | |
WO2002046977A2 (en) | Knowledge based business processes and systems for implementation of same | |
CA2222594C (en) | System for distributed task execution | |
Lindgren | Application servers for e-business | |
Portillo et al. | Design methodology for secure distributed transactions in electronic commerce | |
Shen et al. | Enhancing e-Commerce with Intelligent Agents in Collaborative e-Communities | |
Hu | Software Design Patterns | |
Singer et al. | Embodying Business Rules in S-BPM | |
Swaby et al. | Model-based Construction of collaborative systems | |
CA2266977A1 (en) | A system for distributed task execution |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
AK | Designated states |
Kind code of ref document: C1 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: C1 Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: "NOTING OF LOSS OF RIGHTS" PURSUANT TO RULE 69(1), FORM 1205A OF 29.09.03 |
|
122 | Ep: pct application non-entry in european phase | ||
NENP | Non-entry into the national phase in: |
Ref country code: JP |
|
WWW | Wipo information: withdrawn in national office |
Country of ref document: JP |