US-12625860-B2 - Data management system for UI transactions
Abstract
Comprehensive systems and methods manage software lifecycle processes in an enterprise environment, and ensures consistent, secure, and efficient handling of software applications, packages, and distribution methods. The system features a web application interface that validates user input, enforces multi-level authentication, and manages user roles and permissions. A directory system dynamically selects stored procedures based on input data and current database structure, executing operations entirely within the database. Stored procedures enforce business logic, manage complex data relationships, support data encryption, and anonymize sensitive information. Hierarchical data structures organize records with multi-level granularity, temporal tracking, and partitioning. The database management system optimizes operations, implements automatic failover, and supports real-time data synchronization. The system also includes advanced error handling, real-time monitoring with predictive alerts, a secure audit trail, and a reporting module integrating with external business intelligence tools. Automated maintenance and disaster recovery ensure scalable, secure software lifecycle management.
Inventors
- Suzan Heine
Assignees
- BANK OF AMERICA CORPORATION
Dates
- Publication Date
- 20260512
- Application Date
- 20240913
Claims (19)
- 1 . A system for managing software lifecycle processes in an enterprise environment, the system comprising one or more processors and memory storing instructions that, when executed by the one or more processors, cause the system to perform the following: a web application interface configured to receive input data from a user, wherein the input data includes parameters related to software applications, software packages, and distribution methods, and wherein the web application interface serves as the primary interaction point for the user to submit requests within the system, the web application interface further configured to validate user input for format, completeness, and compliance with predefined rules before transmitting the input data to a directory system, thereby reducing a likelihood of errors and ensuring that only valid data is processed by the system; a directory system configured to receive validated input data from the web application interface, the directory system further configured to analyze the input data to determine, based on predefined mapping logic, one or more stored procedures to execute within a database, wherein the directory system acts as an intermediary between the web application interface and the database, ensuring correct business logic is applied for each request, and wherein the directory system dynamically selects the most appropriate stored procedures based on a current state of a hierarchical data structure, adapting to changes in the system's configuration or data relationships; a set of stored procedures within the database, each stored procedure corresponding to a specific data operation, including selecting, inserting, and updating data within one or more tables in the database, wherein the stored procedures are standardized to enforce business logic, data validation, and security rules, and wherein all executable code for performing these data operations is contained within the database as part of the stored procedures, with no executable code residing in a front-end application, the stored procedures further configured to handle complex data relationships, perform multi-step transactions, and maintain data integrity by enforcing referential constraints, triggers, and cascading updates within the database; a hierarchical data structure within the database, the hierarchical data structure comprising a plurality of tables, each table storing records associated with a distinct aspect of the software lifecycle, including software families, applications, packages, and distribution methods, wherein each table is linked through relational keys to maintain data integrity and consistency, allowing the system to manage complex data relationships, the hierarchical data structure further configured to support multiple levels of data granularity, enabling detailed tracking of software components from high-level families down to individual distribution instances; a database management system configured to execute the stored procedures identified by the directory system, wherein the execution of the stored procedures performs operations on the data stored within the hierarchical data structure, and wherein the database management system enforces constraints on the data to maintain data integrity and security, the database management system further configured to optimize the execution of stored procedures through query optimization, indexing, and caching mechanisms, thereby enhancing the performance and scalability of data operations: an error-handling module configured to detect, log, and manage errors during the execution of the stored procedures, wherein the error-handling module stores detailed information about the errors in an error log for further analysis, and wherein the error-handling module provides mechanisms for troubleshooting and resolution, including automatic rollback of transactions, retry mechanisms, and escalation of critical errors to system administrators, thereby ensuring system stability and data integrity; a real-time monitoring module configured to track status of data operations and provide feedback to the user through the web application interface, wherein the real-time monitoring module updates the user on progress and outcome of their requests, providing immediate insights into system operations, the real-time monitoring module further configured to generate and display performance metrics, system load indicators, and operational alerts, enabling proactive management of system resources and early detection of potential issues; an audit trail module configured to record a history of all data operations, including the user who performed the operation, the time and date of the operation, the specific data modified, and the stored procedures executed, wherein the audit trail module ensures compliance with regulatory and organizational standards by maintaining a comprehensive, tamper-evident record of all actions taken within the system, the audit trail module further configured to support customizable retention policies and secure archival of audit logs, ensuring that historical data remains accessible and verifiable over long periods; and a reporting and analytics module configured to generate reports based on the data stored within the hierarchical data structure, wherein the reports provide insights into the status of software applications, packages, and distribution methods, as well as historical trends and performance metrics, enabling informed decision-making and strategic planning, the reporting and analytics module further configured to support interactive report generation, allowing users to drill down into specific data points, apply filters, and visualize data through charts and graphs, thereby enhancing usability and impact of the generated reports, the reporting and analytics module further configured to perform multi-dimensional queries utilizing advanced techniques like OLAP (Online Analytical Processing) cubes for sophisticated data analysis, wherein the reporting and analytics module is further configured to integrate with external business intelligence (BI) tools, enabling export of data and reports to these tools for advanced analysis and visualization, thereby extending system analytical capabilities.
- 2 . The system of claim 1 , wherein the web application interface is further configured to enforce multi-level user authentication, requiring users to verify their identity through two-factor authentication (2FA) before accessing the system, thereby enhancing security and preventing unauthorized access to the system's functionalities.
- 3 . The system of claim 2 , wherein the directory system is further configured to log all decisions related to the selection of stored procedures, including rationale for selecting a specific procedure based on input data, thereby providing transparency and traceability in a decision-making process.
- 4 . The system of claim 3 , wherein the set of stored procedures includes procedures specifically designed for handling bulk data operations, allowing the system to process large volumes of data efficiently by batching insert, update, and delete operations within a single transaction, thereby improving system performance and reducing processing time.
- 5 . The system of claim 4 , wherein the hierarchical data structure is further configured to support partitioning of tables based on data attributes, such as date or region, enabling improved query performance and management of large datasets by distributing data across multiple partitions.
- 6 . The system of claim 5 , wherein the database management system is further configured to implement automatic failover and recovery mechanisms, ensuring that the system remains operational and data integrity is preserved in case of hardware or software failures, thereby increasing system reliability and availability.
- 7 . The system of claim 6 , wherein the error-handling module is further configured to categorize errors by severity, with critical errors triggering immediate alerts to system administrators and minor errors logged for later review, thereby prioritizing response efforts and ensuring timely resolution of critical issues.
- 8 . The system of claim 7 , wherein the real-time monitoring module is further configured to provide predictive alerts based on historical system performance data, identifying potential bottlenecks or resource constraints before they impact system operations, thereby enabling proactive management and optimization.
- 9 . The system of claim 8 , wherein the audit trail module is further configured to support digital signatures for each recorded operation, ensuring the authenticity and integrity of audit log entries, thereby providing legally admissible evidence of data operations and compliance.
- 10 . The system of claim 9 , wherein the reporting and analytics module is further configured to integrate with external business intelligence (BI) tools, enabling export of data and reports to these tools for advanced analysis and visualization, thereby extending system analytical capabilities.
- 11 . The system of claim 10 , wherein the web application interface is further configured to allow users to schedule automated data operations, such as periodic updates or batch processing tasks, based on predefined criteria, thereby automating routine processes and reducing manual intervention.
- 12 . The system of claim 11 , wherein the directory system is further configured to support conditional logic, allowing it to select different stored procedures based on complex rules and conditions derived from the input data, thereby increasing flexibility and adaptability of the system's operation.
- 13 . The system of claim 12 , wherein the set of stored procedures is further configured to support data encryption, ensuring that sensitive data is encrypted during both storage and transmission within the database, thereby enhancing data security and compliance with privacy regulations.
- 14 . The system of claim 13 , wherein the hierarchical data structure is further configured to include temporal tables, which store historical versions of data and allow for querying past states of the database, thereby enabling detailed auditing, time-based analysis, and rollback capabilities.
- 15 . The system of claim 14 , wherein the database management system is further configured to distribute data operations across multiple nodes in a clustered environment, thereby improving load balancing, fault tolerance, and overall system performance.
- 16 . The system of claim 15 , wherein the error-handling module is further configured to generate automated corrective actions based on predefined recovery plans, such as reprocessing failed transactions or switching to backup systems, thereby minimizing downtime and data loss in case of errors.
- 17 . The system of claim 16 , wherein the real-time monitoring module is further configured to integrate with third-party monitoring and alerting services, allowing administrators to receive notifications and system status updates through external platforms, thereby extending reach of monitoring capabilities.
- 18 . The system of claim 17 , wherein the audit trail module is further configured to maintain a separate, read-only archive of audit logs in a secure offsite location, ensuring the preservation of audit data even in the event of catastrophic system failure, thereby providing an additional layer of security and compliance.
- 19 . A system for managing software lifecycle processes in an enterprise environment, the system comprising one or more processors and memory storing instructions that, when executed by the one or more processors, cause the system to perform the following: a web application interface configured to receive input data from a user, wherein the input data includes parameters related to software applications, software packages, and distribution methods, and wherein the web application interface serves as the primary interaction point for the user to submit requests within the system, the web application interface further configured to: validate user input for format, completeness, and compliance with predefined rules before transmitting the input data to a directory system; enforce multi-level user authentication, requiring users to verify their identity through two-factor authentication (2FA) before accessing the system; manage user roles and permissions, ensuring that users have access only to functionalities and data relevant to their role within an organization; allow users to schedule automated data operations, such as periodic updates or batch processing tasks, based on predefined criteria, thereby automating routine processes and reducing manual intervention; a directory system configured to receive validated input data from the web application interface, the directory system further configured to: analyze the input data to determine, based on predefined mapping logic, one or more stored procedures to execute within a database; act as an intermediary between the web application interface and the database, ensuring correct business logic is applied for each request; dynamically select the most appropriate stored procedures based on a current state of a hierarchical data structure, adapting to changes in the system's configuration or data relationships; log all decisions related to the selection of stored procedures, including rationale for selecting a specific procedure based on input data, thereby providing transparency and traceability in a decision-making process; support conditional logic, allowing the selection of different stored procedures based on complex rules and conditions derived from the input data; a set of stored procedures within the database, each stored procedure corresponding to a specific data operation, including selecting, inserting, and updating data within one or more tables in the database, wherein the stored procedures are standardized to: enforce business logic, data validation, and security rules; handle complex data relationships, perform multi-step transactions, and maintain data integrity by enforcing referential constraints, triggers, and cascading updates within the database; execute all data operations within the database, with no executable code residing in a front-end application; handle bulk data operations, allowing the system to process large volumes of data efficiently by batching insert, update, and delete operations within a single transaction; support data encryption, ensuring that sensitive data is encrypted during both storage and transmission within the database; anonymize sensitive user data where necessary to comply with privacy regulations; a hierarchical data structure within the database, the hierarchical data structure comprising a plurality of tables, each table storing records associated with a distinct aspect of the software lifecycle, including software families, applications, packages, and distribution methods, wherein each table is linked through relational keys to maintain data integrity and consistency, the hierarchical data structure further configured to: support multiple levels of data granularity, enabling detailed tracking of software components from high-level families down to individual distribution instances; support partitioning of tables based on data attributes, such as date or region, enabling improved query performance and management of large datasets by distributing data across multiple partitions; include temporal tables, which store historical versions of data and allow for querying past states of the database, thereby enabling detailed auditing, time-based analysis, and rollback capabilities; a database management system configured to execute the stored procedures identified by the directory system, wherein the execution of the stored procedures performs operations on the data stored within the hierarchical data structure, and wherein the database management system: enforces constraints on the data to maintain data integrity and security; optimizes the execution of stored procedures through query optimization, indexing, and caching mechanisms, thereby enhancing the performance and scalability of data operations; implements automatic failover and recovery mechanisms, ensuring that the system remains operational and data integrity is preserved in case of hardware or software failures; distributes data operations across multiple nodes in a clustered environment, thereby improving load balancing, fault tolerance, and overall system performance; supports real-time data synchronization across multiple environments, ensuring consistency between development, staging, and production environments; includes automated system maintenance features, such as automatic updates of stored procedures or database schema changes, applied without downtime; an error-handling module configured to detect, log, and manage errors during the execution of the stored procedures, wherein the error-handling module: stores detailed information about the errors in an error log for further analysis; categorizes errors by severity, with critical errors triggering immediate alerts to system administrators and minor errors logged for later review; provides mechanisms for troubleshooting and resolution, including automatic rollback of transactions, retry mechanisms, and escalation of critical errors to system administrators; generates automated corrective actions based on predefined recovery plans, such as reprocessing failed transactions or switching to backup systems, thereby minimizing downtime and data loss in case of errors; a real-time monitoring module configured to track status of data operations and provide feedback to the user through the web application interface, wherein the real-time monitoring module: updates the user on progress and outcome of their requests, providing immediate insights into the system's operations; generates and displays performance metrics, system load indicators, and operational alerts, enabling proactive management of system resources and early detection of potential issues; provides predictive alerts based on historical system performance data, identifying potential bottlenecks or resource constraints before they impact system operations; integrates with third-party monitoring and alerting services, allowing administrators to receive notifications and system status updates through external platforms; an audit trail module configured to record a history of all data operations, including the user who performed the operation, the time and date of the operation, the specific data modified, and the stored procedures executed, wherein the audit trail module: ensures compliance with regulatory and organizational standards by maintaining a comprehensive, tamper-evident record of all actions taken within the system; supports digital signatures for each recorded operation, ensuring the authenticity and integrity of audit log entries; supports customizable retention policies and secure archival of audit logs, ensuring that historical data remains accessible and verifiable over long periods; maintains a separate, read-only archive of audit logs in a secure offsite location, ensuring the preservation of audit data even in case of catastrophic system failure; a reporting and analytics module configured to generate reports based on the data stored within the hierarchical data structure, wherein the reports provide insights into the status of software applications, packages, and distribution methods, as well as historical trends and performance metrics, enabling informed decision-making and strategic planning, the reporting and analytics module further configured to: support interactive report generation, allowing users to drill down into specific data points, apply filters, and visualize data through charts and graphs; integrate with external business intelligence (BI) tools, enabling export of data and reports to these tools for advanced analysis and visualization; and perform multi-dimensional queries utilizing advanced techniques like OLAP (Online Analytical Processing) cubes, allowing for sophisticated data analysis; implements automatic failover and recovery mechanisms to ensure system operation and data integrity during hardware or software failures; distributes data operations across multiple nodes in a clustered environment to improve load balancing and fault tolerance; synchronizes data in real-time across multiple environments to ensure consistency; detecting and logging errors during the execution of stored procedures via an error-handling module, wherein the error-handling module: categorizes errors by severity and triggers immediate alerts for critical errors; provides mechanisms for error resolution, including automatic rollback of transactions, retry mechanisms, and escalation to administrators; generates automated corrective actions based on predefined recovery plans to minimize downtime and data loss; tracking the status of data operations in real-time and providing feedback to the user via a real-time monitoring module, wherein the real-time monitoring module: updates the user on the progress and outcome of their requests; generates and displays performance metrics, system load indicators, and operational alerts; provides predictive alerts based on historical performance data to identify potential bottlenecks or resource constraints; integrates with third-party monitoring and alerting services for extended reach; recording a history of all data operations via an audit trail module, wherein the audit trail module: maintains a comprehensive, tamper-evident record of all actions taken within the system; supports digital signatures for recorded operations to ensure authenticity and integrity; supports customizable retention policies and secure archival of audit logs; maintains a separate, read-only archive of audit logs in a secure offsite location; generating reports based on the data stored within the hierarchical data structure via a reporting and analytics module, wherein the reporting and analytics module: provides insights into the status of software applications, packages, and distribution methods, as well as historical trends and performance metrics; supports interactive report generation with drill-down capabilities, filters, and data visualization; integrates with external business intelligence (BI) tools for advanced analysis and visualization; performs multi-dimensional queries utilizing advanced techniques like OLAP (Online Analytical Processing) cubes for sophisticated data analysis; and performing automated system maintenance, including updates of stored procedures or database schema changes, without downtime, ensuring that the system remains up-to-date with the latest business rules, security patches, and performance enhancements.
Description
TECHNICAL FIELD The inventions disclosed herein pertain to the field of Data Processing-Software Development, Installation, and Management, which encompasses the disclosed inventions herein that facilitate the development, installation, maintenance, and management of software systems. The disclosed inventions are pertinent to this field as they provide comprehensive systems and methods for managing software lifecycle processes, including the development and deployment of software families, applications, packages, and distributions. The inventions ensure that software is managed consistently and securely from development through deployment, using automated tools and processes that streamline software lifecycle management in enterprise environments. DESCRIPTION OF THE RELATED ART In enterprise software systems, managing and maintaining data consistency across different layers of the application architecture is a significant challenge that has persisted for decades. This challenge is particularly pronounced in systems where the responsibilities for web development and database management are divided among separate teams, each with its own specialized tools, languages, and methodologies. The web development team typically focuses on creating user interfaces and handling client-side logic, while the database management team is responsible for the backend processes, including data storage, retrieval, and manipulation. This division of labor, while necessary in large-scale systems, often leads to a fragmentation of business logic, where different parts of the system enforce different rules or handle data in slightly different ways. This fragmentation can result in a variety of issues that compromise the reliability, efficiency, and security of the system. One of the most common problems caused by this fragmentation is the duplication of business logic across the web and database layers. For example, a business rule that governs how data should be validated—such as ensuring that a user's input falls within a certain range or adheres to a specific format—might be implemented in both the web code and the database code. The web code might enforce this rule to provide immediate feedback to users when they interact with the application, while the database code enforces the same rule to ensure that all data stored in the system meets the required standards. However, because these implementations are done by different teams using different tools and languages, they are not always kept in sync. When a change is made to the business rule, it might be updated in the web code but not in the database code, or vice versa. This lack of synchronization can lead to situations where data that is considered valid by the web layer is rejected by the database layer, or where invalid data is inadvertently stored because the database logic was not updated. The resulting inconsistencies can cause significant issues in the system, ranging from minor annoyances for users to critical data integrity problems. Another major issue arising from the separation of web and database development is the difficulty of maintaining synchronization between the two layers. As web applications evolve, they often require changes to both the user interface and the underlying database. For instance, adding a new feature to the application might necessitate the creation of new database tables or the modification of existing ones. However, these changes are not always communicated effectively between the web and database teams. This can lead to situations where the web code expects certain data structures or behaviors from the database that are not actually present, resulting in runtime errors or unexpected behavior. These synchronization issues can be particularly problematic in systems that rely on complex data interactions, where even small discrepancies between the web and database layers can have cascading effects that disrupt the entire application. The debugging and troubleshooting of issues that arise from such inconsistencies can be extremely challenging and time-consuming. When a problem occurs in a system where business logic is fragmented across multiple layers, it is often difficult to determine where the issue lies. The problem could be in the web code, the database code, or in the interaction between the two. This ambiguity forces developers to spend significant amounts of time investigating both layers, trying to trace the flow of data and identify where the breakdown occurred. The lack of a centralized source of business logic exacerbates this difficulty, as there is no single point of reference that developers can consult to understand how data is supposed to be processed. Instead, they must piece together information from various parts of the system, each of which might be implemented differently depending on the team that worked on it. This not only delays the resolution of issues but also increases the likelihood that similar problems will