Large organizations typically are not monolithic in structure. For example, commonly large business organization have separate business units that perform different functions. For example, a business organization may have an accounting business unit, a human resources business unit, a sales business unit, etc. Often, each business unit may have systems and tools to support the functions of the unit. This may occur independently of other business units in the organization. Hence, separate software, databases and hardware may be provided for each business unit.
In such business organizations, different business units may have similar needs or may need to access to similar resources. Additionally, some client requirements may require users at the business organizations to access systems and tools from multiple business units to obtain the required resources. Further, some systems or tools may be duplicated in multiple business units. This can often make the task of obtaining the resources necessary for performance of a specific business function cumbersome and inefficient for a user, as the user may be required to access multiple systems or tools multiple places to obtain the support necessary for specific functions. This requires knowledge on the part of the user not only of the specific place or places where the required resources may be found but also requires knowledge of the operation of the systems and tools required to obtain the resources necessary for performing the specific business function.
It also may be desirable, from time to time, to replace or compliment legacy systems or tools (e.g., software or databases) with systems or tools that are better performing, provide more functionality, are accessible organization wide, or eliminate duplicative efforts. However, replacement of legacy systems and tools is often expensive, time consuming and disruptive to the operation of the organization. In addition, replacement of legacy tools requires a steep learning curve for users.
In accordance with an inventive facet, a computing system includes one or more non-transitory computer-readable storage media storing computer programming instructions and data. The computing system also includes one or more processors configured for executing the computer programming instructions to cause the processor to provide a unifying layer that provides common functionality across units of an organization, personalize access to the common functionality for users, and perform one or more workflows for respective units of the organization.
The personalizing of access may entail, for a selected one of the users, personalizing a user interface that enables the selected user to gain access to computing resources of the computing system. The personalizing of access may include determining the selected computing resources that the selected user is allowed to access and personalizing the user interface so that the selected user may only access the selected computing resources. The organization may be a business organization, and the units may be business units. Each workflow may include computer programming instructions for specifying a sequence of operations to be performed in a process. The computing system may include computer programming instructions that are legacy computer programming instructions for a particular unit of the organization. At least one of the workflows may include an application program interface (API) call to some of the legacy computer programming instructions.
In accordance with another inventive aspect, a computing system includes one or more non-transitory computer-readable storage media storing computer programming instructions. The computing system also includes one or more processors configured for executing the computer programming instructions to cause the processor to identify a trade exception for a trade that was attempted on an electronic trading system, to, based on the identified trade exception, determine a party that should be informed to attempt to resolve the trade exception, and to send an electronic communication to the determined party informing the determined party of the trade exception.
The sending of the electronic communication may include causing an indication of a trade exception to appear on a user interface of the determined party. The electronic communication may be one of a electronic mail message, a short message service (SMS) message, or a message from an electronic messaging service. The determined party may be an operations analyst for analyzing the trade exception. The determined party may be a middle office or an oversight team. The determining of the party that should be informed to attempt to resolve the exception may be based on at least one of a size of the trade, an identity of a party of the trade, or a nature of the trade exception. The computer programming instructions may include computer programming instructions for displaying a user interface on a display for the determined party to process the trade exception.
In accordance with an additional inventive facet, a computing system includes one or more non-transitory computer-readable storage media storing computer programming instructions for an onboarding software tool. The computing system also includes one or more processors configured for executing the computer programming instructions to cause the processor to use the onboarding software tool to gather pre-sale information regarding a potential customer, use the onboarding software tool to store contracts relating to onboarding, and use the onboarding software tool to complete a sale with the potential customer.
The computer programming instructions may include computer programming instructions that cause the processor to provide an ability to electronically sign the contracts. The computer programming instructions may include computer programming instructions that cause the processor to transfer data regarding the potential customer in a customer relationship tool or a pre-sale engagement tool to the onboarding software tool. The transfer of the data regarding the potential customer may be programmatically triggered by an indication of a sale being entered into the onboarding software tool. The computer programming instructions may include computer programming instructions that cause the processor to prompt entry of standard settlement instructions. The computer programming instructions may include computer programming instructions that cause the processor to create a portal for interfacing with the potential customer.
Exemplary embodiments may provide a unified computing platform for multiple units of an organization that may interface with different clients, management and other stakeholders. The computing platform may include a unifying layer that provides personalization of access to computing resources across business areas and enables access to legacy computing resources. A unified experience is provided for the clients, management and stakeholders by the unifying layer. Common reusable code may be used across organizational units via the unifying layer.
Exemplary embodiments described herein may be described with reference to the illustrative case of a specific type of business organization, namely a financial services organization, such as an investment holding company or bank. However, as would be realized by one of skill in the art, the invention is applicable to other types of organizations, including, for example, other types of business organizations, medical organizations, government organizations, military organizations, or the like.
Exemplary embodiments may provide an onboarding software tool that improves onboarding of clients to a business organization, including the interfacing of the client with the unified computing platform. The onboarding tool may be of assistance from pre-sale to the opening of an account with a business organization. Thus, the onboarding tool may provide “cradle to grave” assistance for onboarding clients. The onboarding tool may provide for gathering and storage of critical account documents, such as contracts and the like. The onboarding tool may facilitate electronic signing of contracts.
Exemplary embodiments may provide intelligent handling of trade exceptions in the unified computing platform across business lines. The unified computing platform may include logic for identifying trade exceptions, such as in the unifying layer. The unified computing platform may include logic for generating notifications of trade exceptions. For instance, the unified computing platform may include an exception hub that provides tools for viewing and managing the trade exceptions. The unified computing platform may include logic for intelligent escalation of notices of exceptions for investigation by suitable parties in the hierarchy of the business organization. Some exceptions need to be escalated to higher level parties in the organization other than an operations analyst.
The unified computing platform of exemplary embodiments may allow the user to interact with the available resources of a business organization. The unified computing platform may provide a user interface for the user which is personalized on a user-by-user and function-by-function basis. The user interface may be part of a common portal used across business lines and may be customized by users, including both business employees and clients. The unified computing platform may eliminate the need for the user to have knowledge of specific underlying systems or tools necessary to obtain the required resources for performance of the specific business functions.
At the topmost level, the unified computing platform provides a personalized user interface that enables the user to access specific resources necessary for the performance of specific business functions. At a middle level, the unified computing platform may include rules-based functional modules that obtain required resources and provide the obtained resources to the user at the top level. The functional modules may include knowledge of where and how to obtain the required resources necessary for specific business functions, thereby eliminating the need to the user to have this knowledge at the top level. Legacy systems and tools of the organization may reside at the bottom level of the platform and may be accessed on behalf of the user by the functional modules at the middle level.
The unified computing platform may tailor the resources provided to the user based on the specific needs of the user. The platform may eliminate the need for the user to have knowledge of (1) where the required resources are located; and (2) how to interface with the required system and tools necessary to obtain the required resources.
Absent the unifying platform architecture 100, users would be required to directly access legacy systems 112 to perform the required business tasks. Legacy systems 112 may reside on or be executed by one or more servers, which may be, for example, application servers, data servers or combination of application and data servers. The higher layers of architecture 100 shown in
The middle layer of the architecture 100 shown in
The data necessary for performing any of the required business functions of the functional modules may be obtained from or stored into one or more legacy systems 112 by the functional modules via APIs.
At the top layer of architecture 100, unifying layer 102 provides a personalized view for each user, depending upon the user's identity and/or job title. Unifying layer 102 may operate on a remote device and be in communication with lower layer 106 of architecture 100 via a network connection. In some exemplary embodiments, the user, at unifying layer 102 is isolated from legacy systems 112 and only has access to the services and information provided by legacy systems 112 via interaction with the reusable functional modules at levels at 106.
Personalization module 103 may provide a personalized view for each user based on the user's identity and/or the user's job function within the organization. The view may be implemented as a customized user interface. The personalized view may select for access by the user one or more of the functional modules at layer 106. The personalized views may not be limited to internal users and are also designed to unify the experiences and data views for clients and external customers.
Personalization module 103 may be configured manually or may be created by a machine learning model through interaction with the user. That is, the machine learning model may learn which functions are most commonly performed by the user and may customize the user's view via personalization module 103. Additionally, personalization module 103 may provide a basic set of personalized views for users having specific job titles.
The personalized view for each user may include the ability to perform multiple functions, for example, function 102A, 102B, 102C which are necessary for the user to perform as part of the defined job of the user. As is often the case, a required business function 102A, 102B, 102C performed by a user at unifying layer 102 may require access to functional modules from more than one business area 104A, 104B, 104C. In some embodiments, access to the reusable functional modules may be via an API specific to one or a group of functional modules.
In preferred embodiments of the invention, unifying layer 102 may execute on a remote device which may access one or more servers executing reusable functional modules at level 106 via a network connection. The remote device may be any type of computing device including, for example, laptop computers, desktop computers, tablet computing devices, smart phones, etc.
In some exemplary embodiments, such as where the organization is a financial services business, the metrics and risk module 206 in the unifying layer 202 may provide tools for monitoring key metrics and for facilitating risk management across business line. The unifying layer 202 may include common functionality that is applicable across business lines for monitoring key metrics and facilitating risk management. The user interface that displays the metrics and enables risk management by the unified computing platform may be personalized to the user as described above.
When there is an exception with a trade or other transaction executed by the financial services business organization, protocol may dictate that an operations analyst reviews the issue and either resolves the issue or escalates the investigation of the trade exception on to another party who is higher in the internal hierarchy for analysis. For example, a trade exception may need to be reviewed by a middle office or even by a higher level oversight team in some circumstances. The reasons for such escalation may vary but may depend upon the size of the transaction, what parties are involved in a transaction, the nature of the trade exception, etc. As an example, an issue with a large trade like a $100 million trade may require review by a person at a highest level of an internal operations team: the oversight team.
The summary dashboard 402 also depicts an escalation summary 406 having a bar chart of the number of issues that were escalated by the operation analysts, the middle office and the oversight team. The bars in the escalation summary 406 may be color coded to indicate the identities of the offices that escalated the issues.
A non-deliverable foreign exchange forwards (NDFs) volume summary 408 may be provided with bar charts indicative of how many originated from which office for different categories of clients. NDFs are a variety of foreign exchange contract.
A summary 410 of trades without certain remarks fields completed is provided. A bar chart in the summary 410 includes bars indicative of the number of trades lacking certain subsets of remarks that are color coded by office.
An escalation summary 412 is also provided in the summary dashboard 402. The escalation summary 412 includes a row of information for each escalation. The information may include things like an indication of the type of escalation, the office that escalated, a counterparty name for the trade and comments.
The depicted summary dashboard is particular to the foreign exchange business. Similar summary dashboards may be generated by the unifying layer 202 for other business areas, such as the trading of commodities, bonds or equities.
The tolerance monitoring, exceptions and alerts 208 module may generate an alert center user interface 500 like that shown in
As mentioned above, the unifying layer 202 may provide exception handling for trade exception via module 208.
The operations analyst may also display a list of trades that were assigned to the operations analyst.
The exemplary embodiments may provide an onboarding tool that provides assistance for onboarding a client of the unified computing platform from pre-sale to opening of an account.
Referring again to
As was mentioned above, data regarding a client may be imported into the onboarding tool from other tools.
It should be appreciated that the depiction in
The processing unit 1504 can be any of various commercially available processors, including without limitation an AMD® Athlon®, Duron® and Opteron® processors; ARM® application, embedded and secure processors; IBM® and Motorola® DragonBall® and PowerPC® processors; IBM and Sony® Cell processors; Intel® Celeron®, Core (2) Duo®, Itanium®, Pentium®, Xeon®, and XScale® processors; and similar processors. Dual microprocessors, multi-core processors, and other multi-processor architectures may also be employed as the processing unit 1504. The processing unit 1504 may execute computer programming instructions stores in system memory 1506 to perform the functionality described herein.
The system bus 1508 provides an interface for system components including, but not limited to, the system memory 1506 to the processing unit 1504. The system bus 1508 can be any of several types of bus structure that may further interconnect to a memory bus (with or without a memory controller), a peripheral bus, and a local bus using any of a variety of commercially available bus architectures. Interface adapters may connect to the system bus 1508 via a slot architecture. Example slot architectures may include without limitation Accelerated Graphics Port (AGP), Card Bus, (Extended) Industry Standard Architecture ((E)ISA), Micro Channel Architecture (MCA), NuBus, Peripheral Component Interconnect (Extended) (PCI(X)), PCI Express, Personal Computer Memory Card International Association (PCMCIA), and the like.
The computing device architecture 1500 may include or implement various articles of manufacture. An article of manufacture may include a computer-readable storage medium to store logic. Examples of a computer-readable storage medium may include any tangible media capable of storing electronic data, including volatile memory or non-volatile memory, removable or non-removable memory, erasable or non-erasable memory, writeable or re-writeable memory, and so forth. Examples of logic may include executable computer program instructions implemented using any suitable type of code, such as source code, compiled code, interpreted code, executable code, static code, dynamic code, object-oriented code, visual code, and the like. Embodiments may also be at least partly implemented as instructions contained in or on a non-transitory computer-readable storage medium, which may be read and executed by one or more processors to enable performance of the operations described herein.
The system memory 1506 may include various types of computer-readable storage media in the form of one or more higher speed memory units, such as read-only memory (ROM), random-access memory (RAM), dynamic RAM (DRAM), Double-Data-Rate DRAM (DDRAM), synchronous DRAM (SDRAM), static RAM (SRAM), programmable ROM (PROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, polymer memory such as ferroelectric polymer memory, ovonic memory, phase change or ferroelectric memory, silicon-oxide-nitride-oxide-silicon (SONOS) memory, magnetic or optical cards, an array of devices such as Redundant Array of Independent Disks (RAID) drives, solid state memory devices (e.g., USB memory, solid state drives (SSD) and any other type of storage media suitable for storing information. In the illustrated embodiment shown in
The computer 1502 may include various types of computer-readable storage media in the form of one or more lower speed memory units, including an internal (or external) hard disk drive (HDD) 1514, a magnetic floppy disk drive (FDD) 1516 to read from or write to a removable magnetic disk 1518, and an optical disk drive 1520 to read from or write to a removable optical disk 1522 (e.g., a CD-ROM, DVD, or Blu-ray). The HDD 1514, FDD 1516 and optical disk drive 1520 can be connected to the system bus 1508 by a HDD interface 1524, an FDD interface 1526 and an optical drive interface 1528, respectively. The HDD interface 1524 for external drive implementations can include at least one or both of Universal Serial Bus (USB) and IEEE 1394 interface technologies.
The drives and associated computer-readable media provide volatile and/or nonvolatile storage of data, data structures, computer-executable instructions, and so forth. For example, a number of program modules can be stored in the drives and memory 1510, 1512, including an operating system 1530, one or more application programs 1532, other program modules 1534 such as those of the unified computing platform, including the unifying layer, the legacy systems and an electronic trading platform, and program data 1536. In some embodiments, the one or more application programs 1532, other program modules 1534, and program data 1536 can include, for example, the various applications and/or components to implement the disclosed embodiments.
A user can enter commands and information into the computer 1502 through one or more wire/wireless input devices, for example, a keyboard 1538 and a pointing device, such as a mouse 1540. Other input devices may include microphones, infra-red (IR) remote controls, radio-frequency (RF) remote controls, game pads, stylus pens, card readers, dongles, finger print readers, gloves, graphics tablets, joysticks, keyboards, retina readers, touch screens (e.g., capacitive, resistive, etc.), trackballs, trackpads, sensors, styluses, and the like. These and other input devices are often connected to the processing unit 1504 through an input device interface 1542 that is coupled to the system bus 1508, but can be connected by other interfaces such as a parallel port, IEEE 1394 serial port, a game port, a USB port, an IR interface, and so forth.
A display 1544 is also connected to the system bus 1508 via an interface, such as a video adaptor 1546. The display 1544 may be internal or external to the computer 1502. In addition to the display 1544, a computer typically includes other peripheral output devices, such as speakers, printers, and so forth.
The computer 1502 may operate in a networked environment using logical connections via wire and/or wireless communications to one or more remote computers, such as a remote computer 1548. The remote computer 1548 can be a workstation, a server computer, a router, a personal computer, portable computer, microprocessor-based entertainment appliance, a peer device or other common network node, and typically includes many or all of the elements described relative to the computer 1502, although, for purposes of brevity, only a memory/storage device 1550 is illustrated. The logical connections depicted include wire/wireless connectivity to a local area network (LAN) 1552 and/or larger networks, for example, a wide area network (WAN) 1554. Such LAN and WAN networking environments are commonplace in offices and companies, and facilitate enterprise-wide computer networks, such as intranets, all of which may connect to a global communications network, for example, the Internet.
When used in a LAN networking environment, the computer 1502 is connected to the LAN 1552 through a wire and/or wireless communication network interface or adaptor 1556. The adaptor 1556 can facilitate wire and/or wireless communications to the LAN 1552, which may also include a wireless access point disposed thereon for communicating with the wireless functionality of the adaptor 1556.
When used in a WAN networking environment, the computer 1502 can include a modem 1558, or is connected to a communications server on the WAN 1554, or has other means for establishing communications over the WAN 1554, such as by way of the Internet. The modem 1558, which can be internal or external and a wire and/or wireless device, connects to the system bus 908 via the input device interface 1542. In a networked environment, program modules depicted relative to the computer 1502, or portions thereof, can be stored in the remote memory/storage device 1550. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers can be used.
The computer 1502 is operable to communicate with wire and wireless devices or entities using the IEEE 802 family of standards, such as wireless devices operatively disposed in wireless communication (e.g., IEEE 802.11 over-the-air modulation techniques). This includes at least Wi-Fi (or Wireless Fidelity), WiMax, and Bluetooth™ wireless technologies, among others. Thus, the communication can be a predefined structure as with a conventional network or simply an ad hoc communication between at least two devices. Wi-Fi networks use radio technologies called IEEE 802.11x (a, b, g, n, etc.) to provide secure, reliable, fast wireless connectivity. A Wi-Fi network can be used to connect computers to each other, to the Internet, and to wire networks (which use IEEE 802.3-related media and functions).
Software related implementations of the systems and methods described herein may include, but are not limited to, firmware, application specific software, or any other type of computer readable instructions that may be executed by one or more processors. The computer-readable instructions may be provided via non-transitory computer-readable media. In some examples, the systems and methods described herein, and/or any constituent component described herein may be implemented with a processor executing computer-readable instructions stored on one or more memory components.
Implementations provided herein should be considered exemplary only and are not meant to limit the invention in any way. As one of skill in the art would realize, many variations on implementations discussed herein which fall within the scope of the invention are possible. Moreover, it is to be understood that the features of the various embodiments described herein are not mutually exclusive and can exist in various combinations and permutations, even if such combinations or permutations were not made express herein, without departing from the spirit and scope of the invention. Accordingly, the system and method disclosed herein are not to be taken as limitations on the invention but as an illustration thereof. The scope of the invention is defined by the claims which follow.