An individual, organization, or enterprise may currently use or desire to use reporting data to, for example, gain insights into the status of a process, organization, system, or other entity. The reporting data might be generated based on an analysis of the process, organization, system, or other entity. In some instances, the reporting data might be presented in one or more reports, graphs, charts, and other visualizations that may typically be designed to convey summaries or snapshots of certain aspects (e.g., processes, key performance indicators (KPIs), etc.) of the process, organization, and system related to the reporting data.
In some instances, reporting data (e.g., financial data, organization performance metrics data, etc.) might not be reliable for various reasons. Such reasons might include, for example, financial postings are not yet complete for a given period, postings are not yet approved or verified, data validation rules have not yet been applied, data validation rules show outliers that require manual verification, data validation rules show errors, auditor activities have not yet finished, allocation of cost(s) to business entities are not complete, there pending legal claim(s) that will affect the reporting numbers, technical error(s) have been identified while recording the postings, key subject matter experts have not yet reviewed or verified the reporting data, etc.
In a number of different contexts and instances, reporting data may be used, at least in part, in a decision-making process. Reporting data in the form of, for example, financial data for an organization might be used or referenced by executives, directors, owners, and other individuals in the organization when they make decisions and plan actions related to the operation(s) of the organization. As an example, a chief executive officer of an enterprise might refer to a balance sheet, profit and loss statement (P&L), cash flow statement, other financial reports, as well as other types of reporting data, when making decisions regarding operational and strategic plans and operations for the enterprise. As such, the information in the reporting data may be critically vital to the business. Given the significance of the reporting data, it would be beneficial to know whether the reporting data (e.g., calculated numbers, KPI values, etc.) are worthy of being relied upon. That is, are the reporting data sufficiently complete and accurate to an extent that it is worthy of being relied upon?
Accordingly, it would therefore be desirable to provide an indication of data reliability with the actual reporting data, to be able to directly relate both.
Throughout the drawings and the detailed description, unless otherwise described, the same drawing reference numerals will be understood to refer to the same elements, features, and structures. The relative size and depiction of these elements may be exaggerated or adjusted for clarity, illustration, and convenience.
In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of embodiments. However, it will be understood by those of ordinary skill in the art that the embodiments may be practiced without these specific details. In other instances, well-known methods, procedures, components and circuits have not been described in detail so as not to obscure the embodiments.
One or more specific embodiments of the present invention will be described below. In an effort to provide a concise description of these embodiments, all features of an actual implementation may not be described in the specification. It should be appreciated that in the development of any such actual implementation, as in any engineering or design project, numerous implementation-specific decisions must be made to achieve the developers' specific goals, such as compliance with system-related and business-related constraints, which may vary from one implementation to another. Moreover, it should be appreciated that such a development effort might be complex and time consuming, but would nevertheless be a routine undertaking of design, fabrication, and manufacture for those of ordinary skill having the benefit of this disclosure.
Provided herein are system, method and/or computer program product embodiments, and/or combinations and sub-combinations thereof, to provide and support a generation of a reliability index for a set of reporting data, where the reliability index is determined based on one of more influence factors for the reporting data. For example,
In some embodiments, block diagram 100 in
In some aspects, the reporting data 115 may include a set (or subset) of the data, financial data or other data, that is generated by, accessible to, or otherwise used by an organization or other entity to perform processes related to the subject of a report. In the example of a dashboard or report including KPIs related to sales of a company's products in different regions of the world, the reporting data may include the financial data typically generated and used by the company's accounting department. That is, in some embodiments herein the reporting data 115 may be (financial) data that is generated, accessed by, or otherwise known to the company.
Referring to
Referring again to
Unless otherwise stated, the reliability calculation process(es) techniques that may be used to generate the reliability data herein are not limited to any particular reliability calculation technique, process, or algorithm if otherwise applicable and compatible with other aspects herein.
As shown, reliability index system 205 includes a reliability engine 225 that receives, as inputs thereto, a specification of influence factors received from at least one of user(s) 210 and data sources 215 via input processing module 220. In some embodiments, user(s) 210, acting in their capacity or role with an organization and possessing knowledge or an understanding of the influence factors related to a set of reporting data, may provide a specification of influence factors for the set of reporting data. In some instances, user(s) 210 may receive at least a portion of the influence factors they provide to reliability index system from data sources 215. That is, user(s) 210 might not necessarily have the knowledge to determine the influence factors related to a certain set of reporting data but might receive such information from data sources 215 and provide that information as an input to input processing module 220.
In some embodiments, input processing module 220 might process information received from user(s) 210 and data sources 215 that includes one or more influencer factors for a set or reporting data to, for example, configure the received specification of influence factors into a format and configuration that is compatible with the data requirements of reliability engine 225. For example, in some instances the specification of influence factors received from the user(s) and data sources might be processed by input processing module 220 to correlate the specified influence factors with particular attributes of the set of reporting data, in accordance with one or more rules and processes of input processing module 220, reliability engine 225, and other aspects of reliability index system 205. For example, input processing module 220 might correlate a particular field in a table (or other data structure) representation of a set of reporting data to a specified influence factor received from user(s) 210 and data sources 215.
In some aspects, there may be a variety and number of different data sources 215 that can provide information useful in specifying the influence factors for a set of reporting data since, for example, a set of reporting data might vary depending on a domain of the reporting data (e.g., financial data for a subsidiary of a global company), a use case or reporting event (e.g., end of month financial reporting, end of fiscal year reporting, public disclosure reporting, audit reports, etc.), and other considerations. As such, data sources 215 may include one or more reporting systems, analytical systems, databases, knowledge bases, data repositories, social networks, news feeds, business or organization data generating systems, and the like. Input processing module 220 may receive a specification of the influence factors for a particular set of reporting data, where the specification identifies, for example, the particular influence factors associated or related to the set of reporting data.
In some embodiments, the influence factors received from user(s) 210 and data sources 215 might include influence factors determined to be most relevant to a set of reporting data. In some other embodiments, the influence factors received from user(s) 210 and data sources 215 might include potential influence factors for a set of reporting data, wherein input processing module 220 or reliability engine 225 might determine which of the potential influence factors are relevant for a particular set of reporting data. The relevancy of the influence factors for a particular set of reporting data might, in some instances, depend on a use case or reporting event for the reporting data.
In some instances, influence factors for reporting data might differ from entity to entity. For example, the influence factor(s) for a first company might be different for a second company, even for similar types of reporting data since the two companies might employ different processes to generate the reporting data and/or place a greater importance of the on different attributes of the reporting data (e.g., use different KPIs, etc.). In some embodiments, reliability index system 205 provides a mechanism for a user entity 210 to configure and specify the influence factor(s). In this manner, user(s) 210 may specify influence factors defined for their company, organization, specific use case, etc., whereas influence factors need not be universally defined and applicable to all entities and applications equally. In some aspects, input process module 220 might support a graphical user interface with which user(s) 210 can provide inputs specifying influence factors for a set of reporting data.
In some embodiments, reliability index system 205 provides a mechanism for user(s) 210 to configure and designate a weight (e.g., a relative value) to the influence factors specified for a set of reporting data. As an example, a user 210 might designate a weight to one or more influence factors including GL accounts of the reporting data for a company. In this example, a first GL account might be designated relatively low weight of 2% since it relates to a recently acquired business division and the acquired business division has not, at least yet, impacted the financial status of the company. Accordingly, this particular GL account is not presently particularly relevant regarding the set of reporting data for the company. In some aspects, input process module 220 might support a graphical user interface with which user(s) 210 can provide inputs specifying a weight or other relative value to apply to influence factors specified for a set of reporting data.
Reliability engine 225 may calculate reliability data, including a reliability index or other indices for specific associated attributes or dimensions of reporting data. The reliability engine may use the specified influence factors and a weight designated to each influence factor for a set of reporting data, as received from input processing module 220, in calculating or otherwise determining the reliability index for the attributes of the reporting data. In some aspects, one or more relationships, algorithms, and processes may be used by reliability engine 225 to generate the reliability data that may be stored in a reliability database 230. Given the variety of reporting data, specified influence factors, and potential individuality of weights designated to the specified influence factors, the one or more relationships, algorithms, and processes used by reliability engine 225 to generate the reliability data may also accordingly vary to accommodate and support different types and sets of reporting data and use cases. As such, the relationships, algorithms, and processes used by reliability engine 225 to generate the reliability data in some embodiments herein is not limited to any specific reliability calculation relationship, algorithm, and process.
Reliability index system 205 may operate to combine or otherwise associate the calculated reliability data stored in reliability database 230 and the set of reporting data related to the determined reliability data. As illustrated in
In some embodiments, reliability data (e.g., a reliability index for the at least one attribute for a set of reporting data) might be recalculated or regenerated to update the reliability index. In some instances, the reliability data might be updated in response to at least one of a manual input and a trigger from an autonomous system associated with the set of reporting data. The manual or autonomous inputs may be provided to a reliability index system herein as the reporting data associated with the influence factors used to calculate the reliability data change. For example, as reporting data is continuously (e.g., daily financial numbers) or periodically (e.g., monthly, quarterly, and year end financial numbers) generated, the influence factors and weights associated therewith might also change. The changed values for the influence factors and weights associated therewith may be used to recalculate or regenerate the reliability data (e.g., an updated reliability index for an attribute of a set of reporting data). Accordingly, the reliability data stored in reliability database 225 may be recalculated multiple different times.
Reliability index system 205 may further operate to generate a visualization including a representation of the combination of the set of reporting data and the generated reliability index corresponding to at least one attribute of the reporting data associated therewith. In some embodiments, the generated reliability index corresponding to the at least one reporting attribute is, within the generated visualization, spatially associated with the representation of the value for the at least one attribute for the set of reporting data. In this manner, the generated visualization clearly (i.e., intuitively) conveys which attribute of the set of reporting data is associated with the generated reliability index. As such, a viewer of the generated visualization may readily and directly observe, in one location, the association between the generated reliability index and the attribute for the set of reporting data correlated therewith.
Regarding possible use cases or reporting events (note, these terms are used interchangeably herein) for the reporting data, example use cases might include a scenario where (1) a reliability index is included inside of a report; (2) a reliability index is presented in a dashboard in association with reporting data including, for example, (financial or other) KPIs; (3) a calculated reliability index is used by a notification system or service (e.g., an alert system that generates an alert when a monitored KPI deviates more than a predefined threshold from a set value or range of values); and other reporting events. These examples of use cases possible for reliability data generated in some embodiments herein are not meant to be exhaustive, but instead illustrative.
Another example of a possible use case for reliability data generated in some embodiments herein includes using the generated reliability as a driver or trigger for a process related to a set of reporting data. As an example, consider an accounting process (e.g., an accounting year end closing procedure) that should be 50% complete according to an established timeline. However, reliability data generated in accordance with some embodiments herein states the accounting data generated by the accounting process is only 25% reliable. That is, the timeline for the accounting process is at the 50% point where the reporting data should be expected to be about 50% reliable, but the reliability data generated for this reporting data indicates the reporting data is only 25% reliable (e.g., only 25% of the requisite year data is posted). In this scenario, the reliability data including a reliability index of 25% for the reporting data related to the accounting process may be considered by an entity (e.g., a manager, a business process system, etc.) to, for example, make a decision regarding how to best allocate resources to complete the accounting process in a timely manner (e.g., before the end of the year). For this example scenario, the 25% reliability index might signal there is an issue with the year end closing process and the manager, informed by the calculated reliability index, might allocate more resources to the year end closing process so that it is actually completed before the end of the year. In this manner, reliability data generated in accordance with some embodiments herein might be used by other process (e.g., trigger or invoke manual or autonomous actions).
In some embodiments, reliability data generated herein might be used to navigate to an explanation or display a message describing, for example, how the reliability data was generated or the influence factor(s) considered in determining the reliability factor. For example, selecting a reliability index included in a dashboard in association with a set of particular reporting data might cause (1) the presentation of a pop-up window that includes an explanation or display a message describing the basis for the reliability index calculation, and (2) a navigation to an application or service that explains the calculation of the reliability index. In some embodiments, reliability data generated herein might be used in analytical situations to invoke an alert or message where the reliability data is used by an analytical system, process, or service and an alert or message is transmitted when the reliability data satisfies an alert or messaging condition. The alert or messaging condition may be defined by a rule, algorithm, or other mechanism executed by the analytical system, process, or service.
While the example of reporting data disclosed in
In some embodiments, a visualization might include a presentation of reliability data generated in accordance with other aspects disclosed herein. For example, a visualization might be generated that includes, at least in one instance, generated reliability data in isolation. Such a visualization might simply include reliability data presented in a configuration similar to, for example, the column of reliability data 510 in
Operation 605 includes receiving a specification of one or more influence factors related to a set of reporting data. The set of reporting data may include at least one reporting attribute to which the specified influence factors correspond. The influence factors may be specified by a user, system, or service. In some instances, the specified influence factors might be revised or updated, for example, in response to the associated reporting data evolving or changing, the process(es) generating the reporting data changing, an understanding of what actually impacts or influences a set of reporting data evolving or changing, and other considerations.
At operation 610, a weight or other relative value factor may be designated to each of the one or more influence factors for each of the at least one reporting attribute. In some embodiments, the weight factor might be a percentage value, where the total weight for all influence factors for an attribute of a set of reporting data might not exceed 100%. In some embodiments, the weight factor designated to an influence factor might be revised or updated, for example, in response to a user or system (e.g., machine learning systems and models, etc.) gaining a better understanding and knowledge and reporting data changes. In some regards, the weight designated to an influence factor may be updated or revised to better reflect a true/real-world impact of the influence factor as knowledge of the behavior or performance of the influence factor evolves.
Continuing to operation 615, a reliability index may be generated for the at least one reporting attribute based on the received specification of the one or more influence factors and the weight factor designated to each of the one or more influence factors. Additional factors and considerations may be used in calculating the reliability index. One or more specific equations, relationships, algorithms, and processes might be used to generate the reliability index at operation 615, which rely, at least in part, on the specified influence factors and the weights designated thereto.
In some aspects, the generated reliability index might be a percentage value (i.e., on a scale of 0-100 percent), a color-coded index (e.g., red for low reliability, yellow for moderate reliability, and green for high reliability), a ranked value (e.g., on a scale of 1-5, 1-10, etc.), a positive or negative index, other relative values, and combinations thereof
At operation 620, a record of the generated reliability index may be stored in a data storage device. In some embodiments, the data storage device may include a database. In some instances, the database might include a cloud-based database. In some aspects, the record of the generated reliability index may be accessed by a system, device, or service, or for use in another process (not shown in
Continuing to operation 815, the value for the at least one reporting attribute for the set of reporting data is associated with the generated reliability index corresponding to the at least one reporting attribute for the set of reporting data. The combination of the value for the at least one reporting attribute for the set of reporting data and the associated generated reliability index corresponding to the at least one reporting attribute is stored in a record (or other data structure) at operation 820.
At operation 825, process 800 operates to generate a visualization including a representation of the value for the at least one reporting attribute for the set of reporting data and the generated reliability index corresponding to the at least one reporting attribute associated therewith. In some embodiments, as illustrated in
Various embodiments of a data reliability index system can be implemented, for example, using one or more well-known computer systems, such as computer system 1000 shown in
One or more processors 1005 may each be a Graphics Processing Unit (“GPU”). In an embodiment, a GPU is a processor that is a specialized electronic circuit designed to process mathematically intensive applications. The GPU may have a parallel structure that is efficient for parallel processing of large blocks of data, such as mathematically intensive data common to computer graphics applications, images, videos, etc.
Computer system 1000 also includes user input/output device(s) 1015, such as monitors, keyboards, pointing devices, etc., that communicate with communication infrastructure xx06 through user input/output interface(s) 1020.
Computer system 1000 also includes a main or primary memory 1025, such as Random-Access Memory (“RAM”). Main memory 1025 may include one or more levels of cache. Main memory 1025 has stored therein control logic (i.e., computer software) and/or data.
Computer system 1000 may also include one or more secondary storage devices or memory 1030. Secondary memory 1030 may include, for example, a hard disk drive 1035 and/or a removable storage device or drive 1040. Removable storage drive 1040 may be a floppy disk drive, a magnetic tape drive, a compact disk drive, an optical storage device, tape backup device, and/or any other storage device/drive.
Removable storage drive 1040 may interact with a removable storage unit 1045. Removable storage unit 1045 includes a computer usable or readable storage device having stored thereon computer software (control logic) and/or data. Removable storage unit 1045 may be a floppy disk, magnetic tape, compact disk, DVD, optical storage disk, and/any other computer data storage device. Removable storage drive 1040 reads from and/or writes to removable storage unit 1045 in a well-known manner.
According to an exemplary embodiment, secondary memory 1030 may include other means, instrumentalities or other approaches for allowing computer programs and/or other instructions and/or data to be accessed by computer system 1000. Such means, instrumentalities or other approaches may include, for example, a removable storage unit 1050 and an interface 1055. Examples of the removable storage unit 1050 and the interface 1055 may include a program cartridge and cartridge interface (such as that found in video game devices), a removable memory chip (such as an EPROM or PROM) and associated socket, a memory stick and USB port, a memory card and associated memory card slot, and/or any other removable storage unit and associated interface.
Computer system 1000 may further include a communication or network interface 1060. Communication interface 1060 enables computer system 1000 to communicate and interact with any combination of remote devices, remote networks, remote entities, etc. (individually and collectively referenced by reference number 1065). For example, communication interface 1060 may allow computer system 1000 to communicate with remote devices 1065 over communications path 1070, which may be wired and/or wireless, and which may include any combination of LANs, WANs, the Internet, etc. Control logic and/or data may be transmitted to and from computer system 1000 via communication path 10100.
In an embodiment, a tangible apparatus or article of manufacture comprising a tangible computer useable or readable medium having control logic (software) stored thereon is also referred to herein as a computer program product or program storage device. This includes, but is not limited to, computer system 1000, main memory 1025, secondary memory 1030, and removable storage units 1045 and 1050, as well as tangible articles of manufacture embodying any combination of the foregoing. Such control logic, when executed by one or more data processing devices (such as computer system 1000), causes such data processing devices to operate as described herein.
Based on the present disclosure, it will be apparent to persons skilled in the relevant art(s) how to make and use embodiments of the invention using data processing devices, computer systems and/or computer architectures other than that shown in
Although specific hardware and data configurations have been described herein, note that any number of other configurations may be provided in accordance with some embodiments of the present invention (e.g., some of the information associated with the databases and storage elements described herein may be combined or stored in external systems). Moreover, although some embodiments are focused on particular types of applications and services, any of the embodiments described herein could be applied to other types of applications and services. In addition, the displays shown herein are provided only as examples, and any other type of user interface could be implemented.
The present invention has been described in terms of several embodiments solely for the purpose of illustration. Persons skilled in the art will recognize from this description that the invention is not limited to the embodiments described, but may be practiced with modifications and alterations limited only by the spirit and scope of the appended claims