AU2015100382A4 - Systems and methods of providing an audit trail - Google Patents

Systems and methods of providing an audit trail Download PDF

Info

Publication number
AU2015100382A4
AU2015100382A4 AU2015100382A AU2015100382A AU2015100382A4 AU 2015100382 A4 AU2015100382 A4 AU 2015100382A4 AU 2015100382 A AU2015100382 A AU 2015100382A AU 2015100382 A AU2015100382 A AU 2015100382A AU 2015100382 A4 AU2015100382 A4 AU 2015100382A4
Authority
AU
Australia
Prior art keywords
data
audit trail
user
accounting
server
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.)
Ceased
Application number
AU2015100382A
Inventor
Rodney Kenneth DRURY
Anthony Jackson
Craig Walker
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xero Ltd
Original Assignee
Xero Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xero Ltd filed Critical Xero Ltd
Application granted granted Critical
Publication of AU2015100382A4 publication Critical patent/AU2015100382A4/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Landscapes

  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

Methods and systems for providing an audit trail are disclosed. A data request within an accounting system is received by a server, an audit trail data associated with said data request is accessed and a visual representation of said audit trail data is provided.

Description

1001047930 SYSTEMS AND METHODS OF PROVIDING AN AUDIT TRAIL TECHNICAL FIELD [0001] The present disclosure generally relates to monetary transactions and, more specifically, to systems and methods for providing an audit trail. SUMMARY [0002] According to a first aspect there is provided a method comprising: receiving, by a server, a data request within an accounting system; accessing audit trail data associated with said data request; and providing a visual representation of said audit trail data. [0003] According to a second aspect there is provided an accounting system comprising: a memory; and a processor coupled to the memory and configured to: receive a data request to view data within the accounting system; access the audit trail data associated with said data request; and provide a visual representation of said audit trail data. [0004] According to yet another aspect there is provided a non-transitory machine readable storage medium storing instructions which, when executed by one or more processors, cause the one or more processors to perform operations comprising: receiving, by a server, a data request within an accounting system; accessing audit trail data associated with said data request; and providing a visual representation of said audit trail data. [0005] As used herein, except where the context requires otherwise, the term "comprise" and variations of the term, such as "comprising", "comprises" and "comprised", are not intended to exclude further additives, components, integers or steps. [0006] Further aspects of the present invention and further embodiments of the aspects described in the preceding paragraphs will become apparent from the following description, given by way of example and with reference to the accompanying drawings. 1 1001047930 BRIEF DESCRIPTION OF THE DRAWINGS [0007] Some embodiments are illustrated by way of example and not of limitation in the figures of the accompanying drawings. [0008] FIG. 1 is a block diagram depicting an example single ledger accounting platform, according to some embodiments. [0009] FIG. 2 is a block diagram depicting an example accounting application framework for the accounting platform, according to some embodiments. [0010] FIG. 3 is a block diagram depicting an example hosting infrastructure for the accounting platform, according to some embodiments. [0011] FIG. 4 is a block diagram depicting an example data center system of the accounting platform, according to some embodiments. [0012] FIGS. 5-12 are interface diagrams depicting example user interfaces displaying a purchase order and information associated with the purchase order, according to some embodiments; [0013] FIG. 13 is a flowchart of an example method for providing an audit trail, according to some embodiments; and [0014] FIG. 14 is a block diagram of a machine in the example form of a computer system within which a set of instructions, for causing the machine to perform any one or more of the methodologies discussed herein, may be executed, according to some embodiments. 2 1001047930 DETAILED DESCRIPTION [0015] Example systems and methods for providing an audit trail are described. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of example embodiments. It will be evident, however, to one skilled in the art that the present technology may be practiced without these specific details. [0016] The technology described herein provides a visual representation of audit trail data associated with a data-processing system. For example, the visual representation may be in the form of a timeline. Audit trail data is a set of information related to a particular record within the system. For example, audit trail data may be associated with a transaction record or a contact record of an accounting system. More particularly, audit trail data could be the history and other notes associated with a given transaction record or contact record. However, the technology described herein is not limited to transaction and contact records. [0017] In some example embodiments, audit trail data is comprised of various subsets of information within an accounting system. A transaction record may be any record associated with a transaction, such as a bill, a sales invoice, a purchase order, a quote, and the like. A contact record may include any records associated with a particular contact, such as an entity or person with whom one transacts, including records associated with a supplier, a partner, a customer, an employee, and the like. The history associated with a transaction or contact record may include any relevant events, including events created, read, updated, deleted, and the like. Notes associated with a transaction or contact record may include comments, reminders, images, reference documents, and the like. In some embodiments, any relevant social media or email conversations with a particular contact may be included. The visual timeline representation may include a summary of audit trail data with visual highlighting of certain status changes or notes within an audit trail. Information regarding the accessing of images and any related documents, map locations, and other information sources relating to a contact, or of interest to the contact, and recent interactions with the contact may be displayed. The information may be obtained from a variety of sources. In some example embodiments, a text 3 1001047930 list view of notes may be viewed at the bottom of the audit trail data. In yet other embodiments, a more visual timeline of the audit trail data (e.g., contact photo images, map address details, etc.) may be displayed. [0018] In some embodiments, audit trail data is stored in a manner designed to maintain efficiency within the system. For example, audit trail data can be stored using metadata storage techniques. In some embodiments, secondary audit trail data is stored. Secondary audit trail data is information that represents prior states of the existing audit trail data. For example, if a transaction record was initially entered with a specific date or invoice amount that was subsequently modified, the system can still store the original entry as secondary audit trail data. The initial visual representation of the audit trail data, in certain embodiments, might not display the secondary audit trail data. Additional visual representations may be available that display the secondary audit trail data. In certain embodiments, secondary audit trail data can be stored using metadata storage techniques. [0019] In some embodiments, the system creates audit trail reports from audit trail data. For example, audit trail reports can consist of a visual representation of an individual transaction record. In some embodiments, the audit trail reports summarize data over various time frames. In yet other embodiments, audit trail reports are generated in response to specific audit requests from a third party. In some example embodiments, the audit trail reports summarize data by a specific dollar value or a specific organization type. The audit trail reports can be any variety of automated visual data representation associated with the audit trail data. [0020] FIG. 1 is a block diagram depicting an example single ledger accounting system 100. A single ledger accounting system 100 may provide accounting tools to a particular entity managing accounting for one or more businesses. The example single ledger accounting system 100 may include a practice studio 110 that allows an entity to manage one or more businesses and an organization access module 150 that provides a business with tools for managing accounting data for that particular business. The practice studio 110 may include a practice profile management module 112, a practice staff management module 114, an online training module 116, a practice management module 118, a partner resources module 120, a report 4 1001047930 packs setup module 122, and a work papers module 124. The practice studio 110 may be in communication with the core features 130. The core features 130 may include an accounting and payroll module 132, a community module 134, a billing/subscription management module 136, a notifications center module 138, a user profile management module 140, and an analytics module 142. The organization access module 150 may be in communication with the core features 130. The practice studio 110 and core features 130 may be accessed by an entity using a login module (not shown). [0021] As shown in FIG. 1, features of the system 100 are divided into three areas based on the target user. The features of the practice studio 110 provide a suite of tools for accountants to interact with their clients and manage their practices. The core features 130 provide the core functionality and user tools common to both accountants and businesses. The organization access module 150 provides a user interface (UIJ) for individual businesses to access their data. [0022] Practice studio 110 is the central login for accountants. For example, an accountant with multiple clients, each of which is a small business, can login using practice studio 110 and gain access to the accounting data for the clients, messages from the clients, and so on. [0023] The practice profile management module 112 allows an accounting practice to manage and view its profile settings. For example, an accounting practice may have a partner level, representing the strength of its relationship with the provider for the accounting platform. The partner level may be based on the number of clients associated with the accounting practice in the accounting platform. For example, a bronze partner level may be assigned to accounting practices with at least 5 clients, a silver partner level assigned to accounting practices with at least 20 clients, and a gold partner level assigned to accounting practices with at least 100 clients. Alternatively or additionally, the accounting practice may have one or more certifications provided by the accounting platform. The certifications may be provided automatically based on the completion of an online test and may expire after the elapse of a predetermined period (e.g., one year). Other profile settings 5 1001047930 may include the name, address, telephone number, email address, and so forth of the accounting practice. [0024] The practice staff management module 114 provides the ability for the manager of an accounting practice to control settings for the staff of the practice. For example, some staff members may have read-only access to data for certain clients, some staff members may have read-write access for certain clients, some staff members may be able to modify the access permissions for other staff members, and so on. [0025] The online training module 116 provides training for accountants and their staff. In some cases, the provided training includes one or more video presentations and one or more online tests. Notification of passing a test at completion of a training may be provided. For example, a staff member may take a training course and, upon successful completion, the accountant supervising the staff member may receive a notification of the successful completion. [0026] The practice management module 118 provides services for accountants. Access to the features provided by the practice management module 118 may be limited to accountants having a predetermined partner level with the accounting platform provider. For example, access to the practice management module 118 may be limited to accountants at silver level or above. The services provided by the practice management module 118 may include workflow tools, customer relationship management (CRM) tools, lead generation tools, job management tools, invoice generation tools, and so forth. [0027] The partner resources module 120 provides information regarding third party partners. For example, a third party may provide tools that interact with the system 100 to provide useful functionality beyond that of the system alone. The user can access the partner resources module 120 to learn about available third-party tools. For example, links to third-party websites, documentation, videos, and search tools may all be provided. [0028] The report packs setup module 122 provides tools to allow accountants to create and generate standardized sets of reports. For example, a profit and loss statement and quarterly report could both be added to a pack. The accountant would 6 1001047930 then be able to easily generate both reports for any selected client or generate the reports for every client. [0029] The work papers module 124 provides tools for accountants to interactively create financial reports. For example, an accountant can enter known data for a client into the work paper and then send the work paper to the client with an indication of data needed from the client. After the client enters the missing data into the work paper, the accountant can complete the report. [0030] The core features 130 includes modules that are used both by accountants and organizations. The accounting and payroll module 132 provides the general ledger for organizations. The general ledger may be integrated with the organization's payroll, bypassing the separate step of entering payroll data into the general ledger each pay period. The accounting and payroll module 132 accesses banking data for each client business. The banking data may be imported either through a bank feed or a user- or accountant-created document. The accounting and payroll module 132 may also communicate with third-party tools via an application protocol interface (API). [0031] The community module 134 provides a forum through which users can communicate. For example, a user with a question may post a topic in the forum and later receive a helpful response from another user. Information taken from the user profile (e.g., the user profile managed via the user profile management module 140) may appear along with forum posts by the user. For example, a user name, an image of the user, and the user's status as an accountant or member of an organization may each be shown. [0032] The billing/subscription management module 136 allows a user to configure one or more billing accounts for each organization using the system 100. The system 100 may periodically charge a subscription fee for access (e.g., a monthly or annual subscription fee). The subscription fee may be automatically deducted from the one or more billing accounts. [0033] The notifications center 138 provides notifications to users. For example, users may send messages to each other, which appear as notifications. Notifications may also be created by the system 100 (e.g., by accounting and payroll module 132) 7 1001047930 based on events. For example, a minimum account balance for a particular bank account may be set by a user via the accounting and payroll module 132. When the balance for that bank account drops below the minimum account balance, a notification can be generated by the system 100 to inform the user. [0034] The user profile management module 140 allows a user to manage the profile of the user's organization and the profiles of others based on permission settings. For example, an accountant may have permission to manage the profiles of the accountant's clients. The profile may include public-facing information such as a business name and address. [0035] The login module verifies the identify of a user logging into the system 100 (e.g., via user name and password). Based on the user's identity, a user interface is presented that includes a list of organizations that a user has access to. For most small business clients, the list will consist of a single organization. [0036] The analytics module 142 analyzes and correlates data from different organizations. For example, a benchmark for a particular key performance indicator can be generated from a set of organizations and compared to the key performance indicator for another organization. Results from the comparison can be presented to a representative of the organization, an accountant for the organization, an auditor of the organization, or other interested parties. [0037] The organization access module 150 accesses the core features 130 for a single organization. The organization access module 150 presents, after user verification by the login module, a user interface with options for a single organization without the additional features used only by the practice studio 110. [0038] FIG. 2 is a block diagram depicting an example accounting application framework 200 for the accounting platform. The accounting application framework 200 may be an end-to-end web development framework enabling a "software as a service" (SaaS) product. The accounting application framework 200 may include a hypertext markup language (HTML) and/or JavaScript layer 210, ASP.Net model view-controller (MVC) 220, extensible stylesheet language transformations (XSLT) 230, construct 240, services 250, object relational model 260, and database 270. 8 1001047930 [0039] The HTML and/or JavaScript layer 210 provides client-side functionality, such as UI generation, receipt of user input, and communication with a server. The client-side code may be created dynamically by the ASP.NET MVC 220 or the XSLT 230. Alternatively, the client-side code may be statically created or dynamically created using another server-side tool. [0040] The ASP.Net MVC 220 and XSLT 230 provide server-side functionality, such as data processing, web page generation, and communication with a client. Other server-side technologies may also be used to interact with the database 270 and create an experience for the user. [0041] The construct 240 provides a conduit through which data is processed and presented to a user. For example, the ASP.Net MVC 220 and XSLT 230 can access the construct 240 to determine the desired format of the data. Based on the construct 240, client-side code for presentation of the data is generated. The generated client-side code and data for presentation is sent to the client, which then presents the data. [0042] The services 250 provide reusable tools that can be used by the ASP.Net MVC 220, the XSLT 230, and the construct 240 to access data stored in the database 270. For example, aggregate data generated by calculations operating on raw data stored in the database 270 may be made accessible by the services 250. [0043] The object relational model 260 provides data structures usable by software to manipulate data stored in the database 270. For example, the database 270 may represent a many-to-one relationship by storing multiple rows in a table, with each row having a value in common. By contrast, the software may prefer to access that data as an array, where the array is a member of an object corresponding to the common value. Accordingly, the object relational model 260 may convert the multiple rows to an array when the software accesses them and perform the reverse conversion when the data is stored. [0044] FIG. 3 is a block diagram depicting an example hosting infrastructure 300 for the accounting platform. The platform may be implemented using one or more pods 310. Each pod 310 includes application server virtual machines (VMs) 320 (shown as application server virtual machines 320a-320c in FIG. 3) that are specific 9 1001047930 to the pod 310 as well as application server virtual machines 320 that are shared between pods 310 (e.g., the internal services VM 330 and the application protocol interface VM 340). The application server virtual machines 320-340 communicate with clients and third-party applications via a web interface or an API. The application server virtual machines 320-340 are monitored by application hypervisors 350. In some example embodiments, the application server virtual machines 320a-320c and the API VM 340 are publicly-accessible while the internal services VM 330 is not accessible by machines outside of the hosting infrastructure 300. The app server VMs 320a-320c may provide end-user services via an application or web interface. The internal services VM 330 may provide back-end tools to the app server VMs 320a-320c, monitoring tools to the application hypervisors 350, or other internal services. The API VM 340 may provide a programmatic interface to third parties. Using the programmatic interface, the third parties can build additional tools that rely on the features provided by the pod 310. [0045] The internal firewall 360 ensures that only approved communications are allowed between the database hypervisor 370 and the publicly accessible virtual machines 320-340. The database hypervisor 370 monitors the primary structured query language (SQL) servers 380a and 380b. The primary SQL servers 380a and 380b access the shared storage layer 450a or 450b (shown in FIG. 4) to read and write data generated by or used by the application server virtual machines 320-340. The redundant SQL servers 390a and 390b provide backup functionality for the primary SQL servers 380a and 380b, respectively. [0046] The virtual machines 320-340 can be implemented using Windows 2008 R2, Windows 2012, or another operating system. The application and support servers supporting the virtual machines 320-340 can be built using spares for redundancy. The support servers can be shared across multiple pods 310. The application hypervisors 350, internal firewall 360, and database hypervisor 370 may span multiple pods 310 within a data center. In some example embodiments, each primary SQL server 380 and redundant SQL server 390 is configured to support 30,000-45,000 organizations. Accordingly, in embodiments using two such server pairs per pod 310, the pod capacity is 60,000-90,000 organizations. The redundant 10 1001047930 SQL servers 390 may take advantage of the "always on" resilience feature of SQL 2012. [0047] FIG. 4 is a block diagram depicting an example data center system 400 of the accounting platform interacting with other systems over a network. The primary data center 410 services customer requests and is replicated to the secondary data center 420. The secondary data center 420 may be brought online to serve customer requests in case of a fault in the primary data center 410. The primary data center 410 communicates over a network 455 with bank server 460, third party server 470, client device 480, and client device 490. The bank server 460 provides banking data (e.g., via the banking application 465). The third party server 470 is running third party application 475. Client devices 480 and 490 interact with the primary data center 410 using web client 485 and programmatic client 495, respectively. [0048] Within each data center 410 and 420, a plurality of pods, such as the pod 310 of FIG. 3, are shown. The primary data center 410 is shown containing pods 440a 440d. The secondary data center 420 is shown containing pods 440e-440h. The applications running on the pods of the primary data center 410 are replicated to the pods of the secondary data center 420. For example, EMC replication (provided by EMC Corporation) in combination with VMWare site recovery manager (SRM) may be used for the application layer replication. The database layer handles replication between the storage layer 450a of the primary data center 410 and the storage 450b of the secondary data center 420. Database replication provides database consistency and the ability to ensure that all databases 270 are at the same point in time. [0049] The data centers 410 and 420 use load balancers 430a and 430b, respectively, to balance the load on the pods within each data center. The data centers 410 and 420 can be created using identical hardware to ensure that the performance of the secondary data center 420 is the same as the performance of the primary data center 410. The storage 450 may be implemented using one or more EMC VNX storage area networks. [0050] The bank server 460 interacts with the primary data center 410 to provide bank records for bank accounts of the client. For example, the client may provide 11 1001047930 account credentials to the primary data center 410, which the primary data center 410 uses to gain access to the account information of the client. The bank server 460 can provide the banking records to the primary data center 410 for later reconciliation by the client using the client device 480 or 490. [0051] The third party server 470 may interact with the primary data center 410 and the client device 480 or 490 to provide additional features to a user of the client device 480 or 490. For example, a user may authorize the third party server 470 to access the user's data stored in the primary data center 410. The third party application 475 of the third party server 470 may use the user's data to generate reports, provide macros, or otherwise improve the user's ability to access or manipulate the user's data. The third party application 475 may communicate with the primary data center 410 via the network 455 using an API. The third party application 475 may communicate with the client device 480 or 490 using a web or programmatic interface. [0052] FIGS. 5-13 are interface diagrams depicting example user interfaces displaying a audit trail data. In the example of FIGS. 5-13, the audit trail data is in the form of a purchase order and information associated with the purchase order. [0053] In FIG. 5, the example user interface 500 may allow a user to create and/or edit a purchase order and customize a purchase order by adding information such as a delivery address, delivery instructions, notes, and the like. The top of the UI 500 shows two items in the purchase order, followed by a subtotal, a tax amount, and a total amount. The UI 500 includes options, marked with "x," to remove corresponding items from the purchase order. The UI 500 also includes options to add additional items, to set a delivery address, to set a delivery telephone number, to provide delivery instructions, to approve or cancel the purchase order, and to add history and notes in the form of text input or file upload. As shown in the UI 500, five history or note items are available, of which one is displayed. The displayed item shows the date on which the purchase order was created and the name of the creator. 12 1001047930 [0054] In FIG. 6, the example user interface 600 allows the user to click on the "add a note" button 602, which allows a user to add a note associated with the purchase order. The UI 600 is another view of the UI 500. [0055] In FIG. 7, the example user interface 700 displays a note 702 added by a user. The UI 700 may be displayed after activation of the button 602. The UI 700 shows a text entry field containing the note 702 and buttons operable to save or discard the note. [0056] In FIG. 8, the example user interface 800 displays that the note 802 may be saved by clicking the save button 804. The UI 800 is another view of the UI 700. [0057] In FIG. 9, the example user interface 900 displays button 902 that may be clicked to show any notes associated with the purchase order. The UI 900 may be shown after operation of the button 804. As can be seen in the UI 900, the note 802 has been added. A portion of the note 802 is shown, along with the name of the user that added the note and a timestamp for the note. [0058] In FIG. 10, the example user interface 1000 displays the notes associated with the purchase order. The UI 1000 may be shown after operation of the button 902. The notes are shown in a table with a date, an action, a user, and a note for each entry. The notes may be automatically generated descriptions of actions that were taken (e.g., "sent," "approved," or "saved as draft"), manually created, or any suitable combination thereof (e.g., "Note added - Spoke again to Barry at Pro Trade... "). [0059] In FIG. 11, the example user interface 1100 displays a history of events associated with the purchase order. The events may include events associated with modifications to the purchase order, whether the purchase order has been sent, and other events. For example, the UI 1100 shows events for creation of the purchase order, saving a draft of the purchase order, adding a new delivery address for the purchase order, deleting a delivery address, adding a note, sending the purchase order, and acceptance of the purchase order by the customer. The UI 1100 shows additional notes and tasks in the right-hand column. 13 1001047930 [0060] FIG. 12 depicts another example user interface 1200 displaying a history of events, as well as other relevant information such as recent activity, photos, maps, and the like. [0061] FIG. 13 is a flowchart of an example method 1300 for providing an audit trail. In operation 1302, a request to view a purchase order may be received at a server from a client device of a user. In some example embodiments, the request is a data request received by an accounting system. In operation 1304, audit trail data (e.g., the purchase order and data associated with the purchase order) are accessed in response to the request. The audit trail data may include any available data, such as a photo, a map, a history of events, a note, recent activity, social media information, a task, and the like. In operation 1306, the audit trail data (e.g., the purchase order and the data associated with the purchase order) are provided to the client device of the user. The audit trail data or a portion thereof (e.g., a history of events) may be displayed as a timeline. [0062] Certain embodiments are described herein as including logic or a number of components, modules, or mechanisms. Modules may constitute either software modules (e.g., code embodied on a machine-readable medium or in a transmission signal) or hardware modules. A hardware module is a tangible unit capable of performing certain operations and may be configured or arranged in a certain manner. In example embodiments, one or more computer systems (e.g., a standalone, client, or server computer system) or one or more hardware modules of a computer system (e.g., a processor or a group of processors) may be configured by software (e.g., an application or application portion) as a hardware module that operates to perform certain operations as described herein. [0063] In various embodiments, a hardware module may be implemented mechanically or electronically. For example, a hardware module may comprise dedicated circuitry or logic that is permanently configured (e.g., as a special-purpose processor, such as a field programmable gate array (FPGA) or an application specific integrated circuit (ASIC)) to perform certain operations. A hardware module may also comprise programmable logic or circuitry (e.g., as encompassed within a general-purpose processor or other programmable processor) that is 14 1001047930 temporarily configured by software to perform certain operations. It will be appreciated that the decision to implement a hardware module mechanically, in dedicated and permanently configured circuitry, or in temporarily configured circuitry (e.g., configured by software) may be driven by cost and time considerations. [0064] Accordingly, the term "hardware module" should be understood to encompass a tangible entity, be that an entity that is physically constructed, permanently configured (e.g., hardwired) or temporarily configured (e.g., programmed) to operate in a certain manner and/or to perform certain operations described herein. Considering embodiments in which hardware modules are temporarily configured (e.g., programmed), each of the hardware modules need not be configured or instantiated at any one instance in time. For example, where the hardware modules comprise a general-purpose processor configured using software, the general-purpose processor may be configured as respective different hardware modules at different times. Software may accordingly configure a processor, for example, to constitute a particular hardware module at one instance of time and to constitute a different hardware module at a different instance of time. [0065] Hardware modules can provide information to, and receive information from, other hardware modules. Accordingly, the described hardware modules may be regarded as being communicatively coupled. Where multiple of such hardware modules exist contemporaneously, communications may be achieved through signal transmission (e.g., over appropriate circuits and buses) that connect the hardware modules. In embodiments in which multiple hardware modules are configured or instantiated at different times, communications between such hardware modules may be achieved, for example, through the storage and retrieval of information in memory structures to which the multiple hardware modules have access. For example, one hardware module may perform an operation, and store the output of that operation in a memory device to which it is communicatively coupled. A further hardware module may then, at a later time, access the memory device to retrieve and process the stored output. Hardware modules may also initiate 15 1001047930 communications with input or output devices, and can operate on a resource (e.g., a collection of information). [0066] The various operations of example methods described herein may be performed, at least partially, by one or more processors that are temporarily configured (e.g., by software) or permanently configured to perform the relevant operations. Whether temporarily or permanently configured, such processors may constitute processor-implemented modules that operate to perform one or more operations or functions. The modules referred to herein may, in some example embodiments, comprise processor-implemented modules. [0067] Similarly, the methods described herein may be at least partially processor implemented. For example, at least some of the operations of a method may be performed by one or more processors or processor-implemented modules. The performance of certain of the operations may be distributed among the one or more processors, not only residing within a single machine, but deployed across a number of machines. In some example embodiments, the processor or processors may be located in a single location (e.g., within a home environment, an office environment or as a server farm), while in other embodiments the processors may be distributed across a number of locations. [0068] The one or more processors may also operate to support performance of the relevant operations in a "cloud computing" environment or as a "software as a service" (SaaS). For example, at least some of the operations may be performed by a group of computers (as examples of machines including processors), these operations being accessible via a network (e.g., the Internet) and via one or more appropriate interfaces (e.g., Application Program Interfaces (APIs)). [0069] Example embodiments may be implemented in digital electronic circuitry, or in computer hardware, firmware, software, or in combinations of them. Example embodiments may be implemented using a computer program product, e.g., a computer program tangibly embodied in an information carrier, e.g., in a machine readable medium for execution by, or to control the operation of, data processing apparatus, e.g., a programmable processor, a computer, or multiple computers. 16 1001047930 [0070] A computer program can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, subroutine, or other unit suitable for use in a computing environment. A computer program can be deployed to be executed on one computer or on multiple computers at one site or distributed across multiple sites and interconnected by a communication network. [0071] In example embodiments, operations may be performed by one or more programmable processors executing a computer program to perform functions by operating on input data and generating output. Method operations can also be performed by, and apparatus of example embodiments may be implemented as, special purpose logic circuitry (e.g., a FPGA or an ASIC). [0072] The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. In embodiments deploying a programmable computing system, it will be appreciated that that both hardware and software architectures require consideration. Specifically, it will be appreciated that the choice of whether to implement certain functionality in permanently configured hardware (e.g., an ASIC), in temporarily configured hardware (e.g., a combination of software and a programmable processor), or a combination of permanently and temporarily configured hardware may be a design choice. Below are set out hardware (e.g., machine) and software architectures that may be deployed, in various example embodiments. [0073] FIG. 14 is a block diagram of a machine in the example form of a computer system 1400 within which instructions, for causing the machine to perform any one or more of the methodologies discussed herein, may be executed. In alternative embodiments, the machine operates as a standalone device or may be connected (e.g., networked) to other machines. In a networked deployment, the machine may operate in the capacity of a server or a client machine in server-client network environment, or as a peer machine in a peer-to-peer (or distributed) network 17 1001047930 environment. The machine may be a personal computer (PC), a tablet PC, a set-top box (STB), a Personal Digital Assistant (PDA), a cellular telephone, a web appliance, a network router, switch or bridge, or any machine capable of executing instructions (sequential or otherwise) that specify actions to be taken by that machine. Further, while only a single machine is illustrated, the term "machine" shall also be taken to include any collection of machines that individually or jointly execute a set (or multiple sets) of instructions to perform any one or more of the methodologies discussed herein. [0074] Example computer system 1400 includes a processor 1402 (e.g., a central processing unit (CPU), a graphics processing unit (GPU) or both), a main memory 1404, and a static memory 1406, which communicate with each other via a bus 1408. Computer system 1400 may further include a video display device 1410 (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)). Computer system 1400 also includes an alphanumeric input device 1412 (e.g., a keyboard), a user interface (UI) navigation device 1414 (e.g., a mouse or touch sensitive display), a disk drive unit 1416, a signal generation device 1418 (e.g., a speaker) and a network interface device 1420. [0075] Disk drive unit 1416 includes a machine-readable medium 1422 on which is stored one or more sets of instructions and data structures (e.g., software) 1424 embodying or utilized by any one or more of the methodologies or functions described herein. Instructions 1424 may also reside, completely or at least partially, within main memory 1404, within static memory 1406, and/or within processor 1402 during execution thereof by computer system 1400, main memory 1404 and processor 1402 also constituting machine-readable media. [0076] While machine-readable medium 1422 is shown in an example embodiment to be a single medium, the term "machine-readable medium" may include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches and servers) that store the one or more instructions or data structures. The term "machine-readable medium" shall also be taken to include any tangible medium that is capable of storing, encoding or carrying instructions for execution by the machine and that cause the machine to perform any one or more of 18 1001047930 the methodologies of the present technology, or that is capable of storing, encoding or carrying data structures utilized by or associated with such instructions. The term "machine-readable medium" shall accordingly be taken to include, but not be limited to, solid-state memories, and optical and magnetic media. Specific examples of machine-readable media include non-volatile memory, including by way of example semiconductor memory devices, e.g., Erasable Programmable Read-Only Memory (EPROM), Electrically Erasable Programmable Read-Only Memory (EEPROM), and flash memory devices; magnetic disks such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM and DVD ROM disks. [0077] Instructions 1424 may further be transmitted or received over a communications network 1426 using a transmission medium. Instructions 1424 may be transmitted using network interface device 1420 and any one of a number of well-known transfer protocols (e.g., HTTP). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), the Internet, mobile telephone networks, Plain Old Telephone (POTS) networks, and wireless data networks (e.g., WiFi and WiMAX networks). The term "transmission medium" shall be taken to include any intangible medium that is capable of storing, encoding or carrying instructions for execution by the machine, and includes digital or analog communications signals or other intangible media to facilitate communication of such software. [0078] Although an embodiment has been described with reference to specific example embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the technology. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense. The accompanying drawings that form a part hereof, show by way of illustration, and not of limitation, specific embodiments in which the subject matter may be practiced. The embodiments illustrated are described in sufficient detail to enable those skilled in the art to practice the teachings disclosed herein. Other embodiments may be utilized and derived therefrom, such that structural and logical substitutions and 19 1001047930 changes may be made without departing from the scope of this disclosure. This Detailed Description, therefore, is not to be taken in a limiting sense, and the scope of various embodiments is defined only by the appended claims, along with the full range of equivalents to which such claims are entitled. [00791 Such embodiments of the inventive subject matter may be referred to herein, individually and/or collectively, by the term "invention" merely for convenience and without intending to voluntarily limit the scope of this application to any single invention or inventive concept if more than one is in fact disclosed. Thus, although specific embodiments have been illustrated and described herein, it should be appreciated that any arrangement calculated to achieve the same purpose may be substituted for the specific embodiments shown. This disclosure is intended to cover any and all adaptations or variations of various embodiments. Combinations of the above embodiments, and other embodiments not specifically described herein, will be apparent to those of skill in the art upon reviewing the above description. [00801 Reference to any prior art in the specification is not an acknowledgment or suggestion that this prior art forms part of the common general knowledge in any jurisdiction or that this prior art could reasonably be expected to be understood, regarded as relevant, and/or combined with other pieces of prior art by a skilled person in the art. 20

Claims (5)

1. A method comprising: receiving, by a server, a data request within an accounting system; accessing audit trail data associated with said data request; and providing a visual representation of said audit trail data.
2. The method of claim 1, wherein the audit trail data includes at least one of: a photo, a map, a history of events, a note, recent activity, social media information, and a task.
3. The method of claim 1, wherein the audit trail data is provided as a timeline.
4. An accounting system comprising: a memory; and a processor coupled to the memory and configured to: receive a data request to view data within the accounting system; access the audit trail data associated with said data request; and provide a visual representation of said audit trail data.
5. A non-transitory machine-readable storage medium storing instructions which, when executed by one or more processors, cause the one or more processors to perform operations comprising: receiving, by a server, a data request within an accounting system; accessing audit trail data associated with said data request; and providing a visual representation of said audit trail data. 21
AU2015100382A 2015-03-06 2015-03-25 Systems and methods of providing an audit trail Ceased AU2015100382A4 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201562129181P 2015-03-06 2015-03-06
US62/129,181 2015-03-06

Publications (1)

Publication Number Publication Date
AU2015100382A4 true AU2015100382A4 (en) 2015-04-30

Family

ID=53002860

Family Applications (1)

Application Number Title Priority Date Filing Date
AU2015100382A Ceased AU2015100382A4 (en) 2015-03-06 2015-03-25 Systems and methods of providing an audit trail

Country Status (1)

Country Link
AU (1) AU2015100382A4 (en)

Similar Documents

Publication Publication Date Title
AU2020102487A4 (en) Benchmarking through data mining
US11645710B2 (en) Systems and methods of mobile banking reconciliation
US8065327B2 (en) Management of collections of websites
AU2019204672B2 (en) Multiple server automation for secure cloud reconciliation
US20210383370A1 (en) Enhanced multi-party user data deletion
US20150332287A1 (en) Social customer relationship management opportunity templating
AU2015100382A4 (en) Systems and methods of providing an audit trail
AU2015100777A4 (en) Smart lists
Bahri Becoming a Salesforce Certified Technical Architect: Prepare for the review board by practicing example-led architectural strategies and best practices
US20210342478A1 (en) Consent receipt management systems and related methods
Wilson et al. SharePoint 2010 Enterprise Architect's Guidebook
Ho et al. Effect of Information System Co-construction Policy on Cultural Propaganda Oriented Government Website-The National Taiwan Symphony Orchestra as a Case Study
Wendt A Framework for Monitoring Backups and Their Properties for a Vast Number of Heterogeneous Systems in a Business Cloud Computing Environment

Legal Events

Date Code Title Description
FGI Letters patent sealed or granted (innovation patent)
MK21 Patent ceased section 101c(b)/section 143a(c)/reg. 9a.4 - examination under section 101b had not been carried out within the period prescribed