Automated regulatory documentation system
The translational system addresses the challenges of software development in regulated industries by translating user input data between knowledge domains and generating regulatory documentation, thereby enhancing collaboration and compliance.
Patent Information
- Application Number
- PCT/US2024/046966
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-09-15
- Filing Date
- 2024-09-16
- Publication Date
- 2025-03-20
AI Technical Summary
Developing software in regulated industries, such as healthcare, is challenging due to the need for convergence of medical, technical, and regulatory expertise, leading to error-prone and resource-intensive processes for generating regulatory documentation.
A translational system that receives user input data from a user interface, translates it between different knowledge domains using natural language processing, and generates software device documentation data that can be output, facilitating collaboration and compliance with regulatory requirements.
The system streamlines software development in regulated industries by enabling effective collaboration among subject-matter experts from different domains, reducing the risk of errors, and automating the generation of comprehensive regulatory documentation.
Smart Images

Figure US2024046966_20032025_PF_FP_ABST
Abstract
Description
AUTOMATED REGULATORY DOCUMENTATION SYSTEMCROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims the benefit of U.S. Provisional Patent Application Serial No. 63 / 583,206, filed on September 15, 2023, and entitled “AUTOMATED REGULATORY DOCUMENTATION SYSTEM,” which is herein incorporated by reference in its entirety.BACKGROUND
[0002] Developing software in a regulated industry, such as healthcare, requires ensuring proper procedures, careful data collection, and generating objective evidence by completing numerous forms for regulatory authorities (e.g., the FDA). It also necessitates monitoring the software throughout its lifetime. The convergence of the medical, technical, and regulatory expertise needed for approval is challenging and error-prone. Moreover, each new project presents unique challenges, as no standardized approach exists for eveiy software development.SUMMARY OF THE DISCLOSURE
[0003] The present disclosure addresses the aforementioned drawbacks by providing a method that includes receiving user input data from a user interface, wherein the user input data describe a software device according to a first knowledge domain. Translated user input data are generated by translating the user input data from the first knowledge domain to a second knowledge domain that is different from the first knowledge domain. Based on the user input data and the translated user input data, software device documentation data that describe the software device in both the first knowledge domain and the second knowledge domain are then generated. The software documentation data may then be output by the computer system.
[0004] It is another aspect of the present disclosure to provide a translational system that includes a user interface to receive user input data, where the user input data correspond to describing a software device, and a processor to receive the user input data from the user interface. The processor generates software device documentation data from the user input data. The processor also implements a translation module to generate translated user input data from the user input data by translating the user input data from a first knowledge domain to a second knowledge domain based on a natural language processing (NLP) model, where the first knowledge domain is different from the second knowledge domain, and to store thetranslated user input data as part of the user input data processed to generate the software documentation data.BRIEF DESCRIPTION OF THE DRAWINGS|0005| FIG. 1 shows a high-level architecture for an example translational system according to some aspects of the present disclosure.
[0006] FIG. 2 shows a deployment architecture for the example translational system shown in FIG. 1.
[0007] FIG. 3 shows a logical architecture for the example translational system shown in FIG. 1.
[0008] FIG. 4 is a flowchart setting forth the steps of an example method for generating software device documentation data using a translational system.
[0009] FIG. 5 is a block diagram of an example translational system.
[0010] FIG. 6 is a block diagram of example components that can implement a translational system.DETAILED DESCRIPTION
[0011] Described here are systems and methods for streamlining artificial intelligence (Al) and / or machine learning (ML) software development, which can manage the entire AI / ML lifecycle: from ideation to deployment. Advantageously, the disclosed systems and methods provide a framework for Al / ML software development in regulated industries, which enables subject-matter experts (SMEs) from different domains to collaborate effectively, follow regulatory processes, and generate appropriate documentation and / or objective evidence for development activities using their own language and expertise. In addition to being used for regulated software in healthcare, the translational system can also be used to help manage the development of regulated software in other industries, or of non-regulated software or other non-AI / ML containing software.
[0012] It is an aspect of the present disclosure to provide a translational system to achieve these goals. The translational system provides a user-friendly interface that simplifies the software development process and provides guidance for meeting regulatory expectations, if necessary. The translational platform can also help teams quickly identify redundant workstreams, share work across teams, and increase communication between disparate groups. In addition, the system is a modular framework that allows SMEs to create and add their ownmodules to collect, display, and share information from their own domains, which can thereby seamlessly interact with all the data in the system and can be easily linked and traced to other elements within the software.
[0013] The translational system provides a framework that can guide the development of a regulated software (e.g., software as a medical device (SAMD)), from ideation, through regulatory approval, to post-deployment maintenance without requiring users to learn or remember knowledge beyond their own domain of expertise. As will be described below in more detail, users answer questions tailored to their domain of expertise. The translational system facilitates a collaborative approach to capture the software’s development history, assurance of following proper procedure, identification and mitigation of safety risks, and other essential records, which can be output by the computer system in the form of documentation that would otherwise require expensive consulting to produce. Advantageously, the translational system includes a translation component that can tailor the level of detail and jargon to the user (e.g., computer scientist versus physician versus research administrator).
[0014] Referring now to FIG. 1, an example high-level architecture of a translational system 10 is shown. FIG. 2 shows a lower-level, deployment architecture of the translational system 10 shown in FIG. 1 . FIG. 3 shows a lower-level, logical architecture of the translational system 10 of FIGS. 1 and 2.
[0015] The translational system 10 generally includes a user interface and / or dashboard by which users can provide user input to the translational system 10. The user input data are received by the translational system and processed by a translational services processor, which in some instances may implement a regulatory services module, to generate software device documentation data. In general, the software documentation data may capture the development history of a software, assurance of following proper procedure, identification and mitigation of safety risks, and other essential records. For instance, the software documentation data may include the safety class of the software device, product-specific standard operating procedures (SOPs) and / or design history elements, risk analysis data, and all required documentation to submit to a regulatory authority. The services processor may send the software device documentation data to a persistent storage device, such as a cloud storage.
[0016] As described below, the translational system 10 may include one or more of a translation module, a compliance management module, and an efficiency module. In addition, the translational system 10 may also include other components or features, including but not limited to a data security or encryption feature that protects sensitive or confidentialinformation from unauthorized access or disclosure; an algorithmic module (e.g., an AI / ML module) that analyzes user behavior and provides personalized recommendations or insights; a data visualization or reporting module that provides real-time analytics or metrics on software product performance; a quality control or assurance module that monitors and verifies the accuracy and completeness of software product design history and / or documentation; a training or onboarding module that provides educational resources or support to users; a user feedback or suggestion module that enables users to submit feedback or suggestions for improvements to the system; an additional or alternative algorithmic and / or AI / ML module that predicts potential issues or risks in the software development process and provides recommendations for mitigation; and / or a module that enables users to create or customize automated workflows or scripts to further optimize the software development process.
[0017] In some implementations, the translational system 10 may include a translation module that enables effective collaboration among SMEs from different domains by allowing different users to use their own language and expertise to define design elements. The translation module can be implemented using an artificial intelligence (Al) model, such as a natural language processing (NLP) algorithm, a large language model (LLM), or other machine learning model that analyzes text inputs received by the translational system 10 and generates outputs in a language that is understandable by the intended recipient. Additionally or alternatively, the translation module can be implemented using a sorting algorithm, a searching algorithm, a graph-based algorithm, or the like. In this way, the translation module can receive user input data and output translated user input data that includes text inputs that have been translated from a first knowledge domain to a second knowledge domain. As a non-limiting example, for terminology translation, a user input may include design inputs that are translated to product requirements (i.e., terminology translation). As another example, for content translation, a user input may include a statement such as “the product needs to show unbiased images to a radiologist,” which may be translated to “as a radiologist, I need to be able to view patient images that have been corrected for a bias, such as racial bias.” The translation feature may include the ability to translate user input data that include spoken inputs, gesture inputs, or other types of inputs in addition to text inputs. The translation module may also include a user-friendly, domain-specific interface that enables SMEs to interact with the translation module in a familiar language and provide nuanced information within their domains.
[0018] The translation module may generate translations in multiple languages or dialects, depending on the needs of the users. Additionally or alternatively, the translationmodule may include the ability to analyze and translate complex technical terms and jargon that are specific to domains or industries. In this way, the user input data can be translated from a first knowledge domain (e.g., complex technical terms specific to a domain or industry) to a second knowledge domain (e.g., simpler terms, terms associated with a different domain or industry). The translation module may therefore include the ability to recognize and translate specialized or technical terminology used in other domains or industries, such as medical jargon, scientific language, regulatory terminology, and / or legal terminology. Accordingly, the translation module can customize translations for different target audiences, such as patients, physicians, regulators, or developers.
[0019] Advantageously, the translation module may include a feedback mechanism that allows users to review and correct translations as needed, improving the accuracy of the translation module over time. As noted above, the translation module may include the ability to generate translations for not just written text, but also for spoken or audio content, such as voice recordings or video recordings.
[0020] Additionally or alternatively, the translational system 10 may include a compliance management module that ensures that the software device documentation data are compliant with regulatory and organizational requirements, including documentation, testing, requirements, risk, and other product development activities. The compliance management module can be implemented using an algorithm that automates compliance checks and generates compliance reports based on inputs from SMEs. As one example, the compliance management algorithm may be implemented using an Al model, an ML model, an expert system, a rules engine, or the like. The compliance management module may include the ability to generate reports that are customized for specific regulatory bodies or organizational requirements. The compliance management module may also include a data management subsystem that tracks data inputs and outputs throughout the AI / ML lifecycle and generates reports that provide insights into the data journey. The data management subsystem may include the ability to track data lineage, data quality, data governance, data security, and other aspects of data management.
[0021] The compliance module may include the ability to generate reports that demonstrate compliance with multiple regulatory bodies or organizational requirements simultaneously. For example, the compliance management module may generate reports that demonstrate compliance with internal or external quality standards, such as ISO, GMP, and / or IEC.
[0022] Additionally or alternatively, the compliance management module may include a risk assessment subsystem that analyzes potential risks associated with the software product and generates risk reports to assist with compliance efforts.
[0023] As another example, the compliance management module may also include the ability to perform automated testing and validation of the software product, providing additional objective evidence of compliance. Additionally or alternatively, the compliance management module may include the ability to provide automatic updates or notifications to users when regulatory or organizational requirements change, ensuring that the software product remains compliant. The compliance management module may also include the ability to track compliance across multiple versions of a software product or across multiple software products simultaneously, providing a comprehensive view of compliance efforts.
[0024] The translational system 10 may also include an efficiency module that enhances the efficiency and accuracy of the software development process by automating the collection and comparison of design control information for multiple software products. The efficiency feature can be implemented using an algorithm that identifies redundant workstreams and consolidates work across teams, leading to significant time and resource savings. The efficiency feature may include the ability to generate reports that provide insights into the efficiency of the software development process, such as the amount of time and resources saved, the number of errors or defects avoided, or other key performance indicators. [0025| The efficiency module may include the ability to identify and recommend process improvements based on data analytics or machine learning algorithms, further optimizing the software development process. Additionally or alternatively, the efficiency module may also include a collaboration feature that enables real-time collaboration among team members, reducing the time and resources needed to share information and complete tasks. The efficiency module may also include the ability to track and monitor the performance of the software product post-deployment, identifying and correcting any performance issues as needed.
[0026] In some implementations, the efficiency module may include the ability to integrate with external data sources, such as electronic health records, patient monitoring devices, or clinical trial data, to provide additional insights and analytics.
[0027] Additionally or alternatively, the efficiency module may include a feature that identifies and prioritizes tasks or activities based on their importance or urgency, ensuring that resources are allocated effectively. The efficiency module may also include the ability toperform automated code testing or validation, reducing the risk of errors or defects in the software product.
[0028] Advantageously, the translational system 10 may be a modular framework that allows SMEs to create and add custom modules to collect, display, and share information from their own domains. Because of the modularity of the translational system 10, these custom modules can seamlessly interact with all of the data in the system and can be easily linked and traced to other elements within the software. The modular feature allows the translational system 10 to adapt to the changing needs of the users and domains, making it a flexible and scalable solution for software development in regulated and non-regulated industries. The modular framework may include the ability to add and remove modules dynamically, to update or modify existing modules, and to specify dependencies or relationships between modules.
[0029] Additionally, the translational system 10 may include various algorithms, data management systems, graphical user interfaces, and other features that enhance the software development process in a compliant and efficient manner. The algorithms may include natural language processing, entity recognition, sentiment analysis, clustering and classification, and data normalization, among others. The data management systems may include databases, data warehouses, data lakes, and other data storage and processing systems. The graphical user interfaces may be domain-specific and designed to be intuitive and easy to use. The translational system 10 may also include a machine learning component that can improve the accuracy and efficiency of the software development process over time.
[0030] In some embodiments, the modular framework of the translational system 10 may include the ability to add third-party modules or components to the system, thereby enhancing the capabilities and flexibility of the translational system 10.
[0031] Additionally or alternatively, the translational system 10 may also include a version control component that tracks changes made to modules or components over time, ensuring that the system remains stable and compliant.
[0032] As an advantage, the modular framework of the translational system 10 may also include the ability to create customized workflows or processes within the system, further optimizing the software development process. Additionally or alternatively, the translational system 10 may include the ability to create or customize user interfaces or dashboards based on user preferences or roles.
[0033] The translational system 10 may include a feature that enables users to collaborate with external partners or stakeholders, such as third-party contractors, contractresearch organizations, regulatory authorities, or patient advocacy groups. Additionally or alternatively, the translational system 10 may include the ability to integrate with external software tools or platforms, such as electronic data capture systems, data analytics software, or project management tools.
[0034] FIG. 4 illustrates a flowchart setting forth the steps of an example method for generating software device documentation data using a translational system, in accordance with some aspects of the present disclosure.
[0035] User input data are received by a computer system, as indicated at step 402. As one example, a user may interact with the system by providing answers to regulatory questions tailored to the user’s domain(s) of expertise. More generally, user inputs are received in the domain of the expert to be translated by the system in a different knowledge domain. Multiple users may input user data to the system, each in their own knowledge domain of expertise. Information may thus be collected across multiple domains of expertise from one or more users. The user input data may be text data or other types of input data, including audio data, voice recording data, video data, and so on.
[0036] Additional data may also be received by the computer system, as indicated at step 404. For example, regulatory data indicating different regulations for one or more industries may also be accessed. Additionally or alternatively, standards and practices data for one or more industries may also be accessed. These regulatory and / or standards and practices data may be used by the system to guide the automated generating of software device documentation for a software device described by the user in the user input data.
[0037] The user input data are processed by the computer system to generate translated user input data, as described above and indicated at step 406. Advantageously, the translation of data may be bidirectional. For example, data from a physician’s domain of expertise can be translated into regulatory domains in addition to data in regulatory domains being translated into the physician’s domain of expertise. As one example, the user input data may be input to a translation module of the system to generate the translated user input data. The translation module may be implemented using an NLP model, an LLM, or the like. Translating the user input data may include translating the user inputs from a first knowledge domain to a second knowledge domain. For example, the first knowledge domain may be a complex, technical knowledge domain, such that the user input data are described in complex technical terms associated with a particular domain or industry. This first knowledge domain may correspond, for example, to an engineering or software development knowledge domain. The secondknowledge domain may then be a non-technical knowledge domain. For example, the second knowledge domain may correspond to layman terminology, medical terminology, or the like. In this way, the complex technical information contained in the user input data may be translated into a different set of terminology that is more readily understood by a different audience (e.g., physicians, regulators).
[0038] The user input data, translated user input data, and optionally additional data are then processed by the computer system to create software device documentation data, as indicated at step 408. For instance, the software device documentation data may include complete documentation representing best practice software development, including state of the art or regulatory requirements as applicable. As an example, the software device documentation data may include complete, compliant, and software-friendly SOPs, risk-based guided templates that are product-specific to comply with applicable SOPs, and / or product documentation ready for regulated and non-regulated submission and audit. The software documentation data may also include queries and descriptions that have been translated into establishing the efforts and / or practices needed for appropriate development (i.e., “following the procedures”), where the documentation is the objective evidence of having followed procedures.
[0039] Done manually, this effort is extremely resource intensive and risks several opportunities for human error; thus, the systems and methods described in the present disclosure provide a significant time saving factor in preparing these documentation data. Moreover, because of the translated user input data, the disclosed systems and methods provide documentation data that are understandable to, or otherwise accessible by, multiple different domains and industries. The translational system can bring together a wide variety of domain experts to answer domain-specific questions that can be automatically processed by the translational system to complete product-specific documents that are traceable to specific regulations and international standards representing state of the art.
[0040] The software device documentation data can be output by the computer system, such as by displaying data to a user, printing data, uploading the data to data storage and / or regulatory authorities, and so on.
[0041] As a non-limiting example, the translational system can be utilized as follows. Through a series of pointed questions, a data scientist, two physicians, and a systems engineer provide the inherent risks and proper safety mitigations for a software product intended for clinical application. These user input data are analyzed by the translational system, whichperforms the following. The translational system determines and outputs a probable safety class for the software device (e.g., a safety class of “B” in this non-limiting example). Additionally, the translational system generates product-specific operating procedures, forms, and templates that meet specific state of the art regulatory requirements for safety class “B” devices. The translational system also fills in the corresponding sections within the forms and templates using context, inputs from work already done in software development tools, and answers provided by the domain experts. In this way, the translational system provides the functionality to review, edit, and produce final documents in a manner suited to purpose. For example, using the same underlying information, the translational system can uniquely display the inputs and outputs of risk management activities or a list of documents needed for an FDA submission. Multiple levels of detail are included to accommodate users with different levels of product development experience based on the translation of the user input data from one knowledge domain (e.g., a complex technical domain) to a second knowledge domain (e.g., a simpler, layman term domain). For example, an experienced engineer may see a detailed breakdown of risk factors and their technical mitigations, while a department administrator may view a summarizes list of safety protocols. Advantageously, the translational system can be operated without formal product development training for the data scientist or physicians, simplifying and streamlining the effort for submission.
[0042] FIG. 5 shows an example of a translational system 500 in accordance with some embodiments of the systems and methods described in the present disclosure. As shown in FIG. 5, a computing device 550 can receive one or more types of data (e.g., user input data) from data source 502. In some embodiments, computing device 550 can execute at least a portion of a translational system 504 to generate software device documentation data from data received from the data source 502.
[0043] Additionally or alternatively, in some embodiments, the computing device 550 can communicate information about data received from the data source 502 to a server 552 over a communication network 554, which can execute at least a portion of the translational system 504. In such embodiments, the server 552 can return information to the computing device 550 (and / or any other suitable computing device) indicative of an output of the translational system 504.
[0044] In some embodiments, computing device 550 and / or server 552 can be any suitable computing device or combination of devices, such as a desktop computer, a laptop computer, a smartphone, a tablet computer, a wearable computer, a server computer, a virtualmachine being executed by a physical computing device, and so on. The computing device 550 and / or server 552 can also reconstruct images from the data.
[0045] In some embodiments, data source 502 can be any suitable source of data (e.g., user input data, regulations data for one or more industries, standards and practices data for one or more industries, etc.), another computing device (e.g., a server storing user input data, regulations data for one or more industries, standards and practices data for one or more industries, etc.), and so on. In some embodiments, data source 502 can be local to computing device 550. For example, data source 502 can be incorporated with computing device 550 (e.g., computing device 550 can be configured as part of a device for measuring, recording, estimating, acquiring, or otherwise collecting or storing data). As another example, data source 502 can be connected to computing device 550 by a cable, a direct wireless link, and so on. Additionally or alternatively, in some embodiments, data source 502 can be located locally and / or remotely from computing device 550, and can communicate data to computing device 550 (and / or server 552) via a communication network (e.g., communication network 554).
[0046] In some embodiments, communication network 554 can be any suitable communication network or combination of communication networks. For example, communication network 554 can include a Wi-Fi network (which can include one or more wireless routers, one or more switches, etc.), a peer-to-peer network (e.g., a Bluetooth network), a cellular network (e.g., a 3G network, a 4G network, etc., complying with any suitable standard, such as CDMA, GSM, LTE, LTE Advanced, WiMAX, etc.), other types of wireless network, a wired network, and so on. In some embodiments, communication network 554 can be a local area network, a wide area network, a public network (e.g., the Internet), a private or semi-private network (e.g., a corporate or university intranet), any other suitable type of network, or any suitable combination of networks. Communications links shown in FIG. 5 can each be any suitable communications link or combination of communications links, such as wired links, fiber optic links, Wi-Fi links, Bluetooth links, cellular links, and so on.
[0047] Referring now to FIG. 6, an example of hardware 600 that can be used to implement data source 502, computing device 550, and server 552 in accordance with some embodiments of the systems and methods described in the present disclosure is shown.
[0048] As shown in FIG. 6, in some embodiments, computing device 550 can include a processor 602, a display 604, one or more inputs 606, one or more communication systems 608, and / or memory 610. In some embodiments, processor 602 can be any suitable hardware processor or combination of processors, such as a central processing unit (CPU), a graphicsprocessing unit (GPU), and so on. In some embodiments, display 604 can include any suitable display devices, such as a liquid crystal display (LCD) screen, a light-emitting diode (LED) display, an organic LED (OLED) display, an electrophoretic display (e.g., an “e-ink” display), a computer monitor, a touchscreen, a television, and so on. In some embodiments, inputs 606 can include any suitable input devices and / or sensors that can be used to receive user input, such as a keyboard, a mouse, a touchscreen, a microphone, and so on.
[0049] In some embodiments, communications systems 608 can include any suitable hardware, firmware, and / or software for communicating information over communication network 554 and / or any other suitable communication networks. For example, communications systems 608 can include one or more transceivers, one or more communication chips and / or chip sets, and so on. In a more particular example, communications systems 608 can include hardware, firmware, and / or software that can be used to establish a Wi-Fi connection, a Bluetooth connection, a cellular connection, an Ethernet connection, and so on.
[0050] In some embodiments, memory 610 can include any suitable storage device or devices that can be used to store instructions, values, data, or the like, that can be used, for example, by processor 602 to present content using display 604, to communicate with server 552 via communications system(s) 608, and so on. Memory 610 can include any suitable volatile memory, non-volatile memory, storage, or any suitable combination thereof. For example, memory 610 can include random-access memory (RAM), read-only memory (ROM), electrically programmable ROM (EPROM), electrically erasable ROM (EEPROM), other forms of volatile memory, other forms of non-volatile memory, one or more forms of semivolatile memory, one or more flash drives, one or more hard disks, one or more solid state drives, one or more optical drives, and so on. In some embodiments, memory 610 can have encoded thereon, or otherwise stored therein, a computer program for controlling operation of computing device 550. In such embodiments, processor 602 can execute at least a portion of the computer program to present content (e.g., images, user interfaces, graphics, tables), receive content from server 552, transmit information to server 552, and so on. For example, the processor 602 and the memory 610 can be configured to perform the methods described herein (e.g., the method of FIG. 4).
[0051] In some embodiments, server 552 can include a processor 612, a display 614, one or more inputs 616, one or more communications systems 618, and / or memory 620. In some embodiments, processor 612 can be any suitable hardware processor or combination of processors, such as a CPU, a GPU, and so on. In some embodiments, display 614 can includeany suitable display devices, such as an LCD screen, LED display, OLED display, electrophoretic display, a computer monitor, a touchscreen, a television, and so on. In some embodiments, inputs 616 can include any suitable input devices and / or sensors that can be used to receive user input, such as a keyboard, a mouse, a touchscreen, a microphone, and so on.
[0052] In some embodiments, communications systems 618 can include any suitable hardware, firmware, and / or software for communicating information over communication network 554 and / or any other suitable communication networks. For example, communications systems 618 can include one or more transceivers, one or more communication chips and / or chip sets, and so on. In a more particular example, communications systems 618 can include hardware, firmware, and / or software that can be used to establish a Wi-Fi connection, a Bluetooth connection, a cellular connection, an Ethernet connection, and so on.
[0053] In some embodiments, memory 620 can include any suitable storage device or devices that can be used to store instructions, values, data, or the like, that can be used, for example, by processor 612 to present content using display 614, to communicate with one or more computing devices 550, and so on. Memory 620 can include any suitable volatile memory, non-volatile memory, storage, or any suitable combination thereof. For example, memory 620 can include RAM, ROM, EPROM, EEPROM, other types of volatile memory, other types of non-volatile memory, one or more types of semi-volatile memory, one or more flash drives, one or more hard disks, one or more solid state drives, one or more optical drives, and so on. In some embodiments, memory 620 can have encoded thereon a server program for controlling operation of server 552. In such embodiments, processor 612 can execute at least a portion of the server program to transmit information and / or content (e.g., data, images, a user interface) to one or more computing devices 550, receive information and / or content from one or more computing devices 550, receive instructions from one or more devices (e.g., a personal computer, a laptop computer, a tablet computer, a smartphone), and so on.
[0054] In some embodiments, the server 552 is configured to perform the methods described in the present disclosure. For example, the processor 612 and memory 620 can be configured to perform the methods described herein (e.g., the method of FIG. 4).
[0055] In some embodiments, data source 502 can include a processor 622, one or more inputs 624, one or more communications systems 626, and / or memory 628. In some embodiments, processor 622 can be any suitable hardware processor or combination of processors, such as a CPU, a GPU, and so on. In some embodiments, the one or more inputs 624 are generally configured to receive user input data from a user and can include a userinterface (e.g., a graphical user interface or otherwise), a web application, a mobile application, or the like. Additionally or alternatively, in some embodiments, the one or more inputs 624 can include any suitable hardware, firmware, and / or software for coupling to and / or controlling operations of a user interface (e.g., a graphical user interface or otherwise), a web application, a mobile application, or the like. In some embodiments, one or more portions of the input(s) 624 can be removable and / or replaceable.
[0056] Note that, although not shown, data source 502 can include any suitable inputs and / or outputs. For example, data source 502 can include input devices and / or sensors that can be used to receive user input, such as a keyboard, a mouse, a touchscreen, a microphone, a trackpad, a trackball, and so on. As another example, data source 502 can include any suitable display devices, such as an LCD screen, an LED display, an OLED display, an electrophoretic display, a computer monitor, a touchscreen, a television, etc., one or more speakers, and so on.
[0057] In some embodiments, communications systems 626 can include any suitable hardware, firmware, and / or software for communicating information to computing device 550 (and, in some embodiments, over communication network 554 and / or any other suitable communication networks). For example, communications systems 626 can include one or more transceivers, one or more communication chips and / or chip sets, and so on. In a more particular example, communications systems 626 can include hardware, firmware, and / or software that can be used to establish a wired connection using any suitable port and / or communication standard (e.g., VGA, DV1 video, USB, RS-232, etc.), Wi-Fi connection, a Bluetooth connection, a cellular connection, an Ethernet connection, and so on.
[0058] In some embodiments, memory 628 can include any suitable storage device or devices that can be used to store instructions, values, data, or the like, that can be used, for example, by processor 622 to control the one or more inputs 624, and / or receive data from the one or more inputs 624; to generate images from data; present content (e.g., data, images, a user interface) using a display; communicate with one or more computing devices 550; and so on. Memoiy 628 can include any suitable volatile memory, non-volatile memory, storage, or any suitable combination thereof. For example, memory 628 can include RAM, ROM, EPROM, EEPROM, other types of volatile memory, other types of non-volatile memory, one or more types of semi-volatile memory, one or more flash drives, one or more hard disks, one or more solid state drives, one or more optical drives, and so on. In some embodiments, memoiy 628 can have encoded thereon, or otherwise stored therein, a program for controlling operation of data source 502. In such embodiments, processor 622 can execute at least a portion of theprogram to generate images, transmit information and / or content (e.g., data, images, a user interface) to one or more computing devices 550, receive information and / or content from one or more computing devices 550, receive instructions from one or more devices (e.g., a personal computer, a laptop computer, a tablet computer, a smartphone, etc.), and so on.
[0059] In some embodiments, any suitable computer-readable media can be used for storing instructions for performing the functions and / or processes described herein. For example, in some embodiments, computer-readable media can be transitory or non-transitory. For example, non-transitory computer-readable media can include media such as magnetic media (e.g., hard disks, floppy disks), optical media (e.g., compact discs, digital video discs, Blu-ray discs), semiconductor media (e.g., RAM, flash memory, EPROM, EEPROM), any suitable media that is not fleeting or devoid of any semblance of permanence during transmission, and / or any suitable tangible media. As another example, transitory computer- readable media can include signals on networks, in wires, conductors, optical fibers, circuits, or any suitable media that is fleeting and devoid of any semblance of permanence during transmission, and / or any suitable intangible media.
[0060] As used herein in the context of computer implementation, unless otherwise specified or limited, the terms “component,” “system,” “module,” “framework,” and the like are intended to encompass part or all of computer-related systems that include hardware, software, a combination of hardware and software, or software in execution. For example, a component may be, but is not limited to being, a processor device, a process being executed (or executable) by a processor device, an object, an executable, a thread of execution, a computer program, or a computer. By way of illustration, both an application running on a computer and the computer can be a component. One or more components (or system, module, and so on) may reside within a process or thread of execution, may be localized on one computer, may be distributed between two or more computers or other processor devices, or may be included within another component (or system, module, and so on).
[0061] In some implementations, devices or systems disclosed herein can be utilized or installed using methods embodying aspects of the disclosure. Correspondingly, description herein of particular features, capabilities, or intended purposes of a device or system is generally intended to inherently include disclosure of a method of using such features for the intended purposes, a method of implementing such capabilities, and a method of installing disclosed (or otherwise known) components to support these purposes or capabilities. Similarly, unless otherwise indicated or limited, discussion herein of any method ofmanufacturing or using a particular device or system, including installing the device or system, is intended to inherently include disclosure, as embodiments of the disclosure, of the utilized features and implemented capabilities of such device or system.
[0062] The present disclosure has described one or more preferred embodiments, and it should be appreciated that many equivalents, alternatives, variations, and modifications, aside from those expressly stated, are possible and within the scope of the invention.
Claims
CLAIMS1. A method, comprising: receiving, by a computer system, user input data from a user interface, wherein the user input data describe a software device according to a first knowledge domain; generating, with the computer system, translated user input data by translating the user input data from the first knowledge domain to a second knowledge domain that is different from the first knowledge domain; generating, with the computer system and based on the user input data and the translated user input data, software device documentation data that describe the software device in both the first knowledge domain and the second knowledge domain; and outputting, by the computer system, the software documentation data.
2. The method of claim 1 , wherein the translated user input data are generated by inputting the user input data to an artificial intelligence (Al) model that has been trained to translate user inputs from the first knowledge domain to the second knowledge domain.
3. The method of claim 2, wherein the Al model comprises a natural language processing model.
4. The method of claim 1, wherein the translated user input data are generated by translating the user input data from the first knowledge domain to the second knowledge domain using at least one of a sorting algorithm, a searching algorithm, or a graph-based algorithm.
5. The method of claim 1, wherein the first knowledge domain and the second knowledge domain are selected from the group comprising: a technical knowledge domain having technical terminology associated with technical details of the software device; a medical knowledge domain having medical terminology associated with patient health features of the software device;a regulatory' knowledge domain having regulatory terminology associated with regulation of the software device according to a set of at least one of regulations or standards and practices; and a legal knowledge domain having legal terminology.
6. The method of claim 5. wherein the first knowledge domain comprises the technical knowledge domain having technical terminology associated with technical details of the software device and the second knowledge domain comprises the medical knowledge domain having medical terminology associated with patient health features of the softw are device.
7. The method of claim 5, wherein the first know ledge domain comprises the technical knowledge domain having technical terminology associated with technical details of the softw are device and the second knowledge domain comprises the regulatory knowledge domain having regulatory terminology associated with regulation of the software device according to a set of at least one of regulations or standards and practices.
8. The method of claim 1, comprising receiving regulatory data with the computer system, wherein the regulatory’ data are indicative of at least one of regulations or standards and practices for an industry associated with the software device, and wherein the softw are documentation data further comprise software device documentation corresponding to at least one of regulated submission to a regulatory’ authority’ for the industry’ or audit by a regulatory authority for the industry.
9. The method of claim 1, wherein the software device documentation comprise at least one of standard operating procedures (SOPs) for developing the software device, a safety' class of the software device, product-specific design history' elements, and risk analysis data.
10. The method of claim 9, wherein the software device documentation further comprise risk-based guided templates that are specific to the software device to comply with applicable SOPs.
11. The method of claim 1. wherein the translated user input data are generated by translating the user input data from the first knowledge domain to a plurality of additional knowledge domains comprising at least the second knowledge domain and at least one additional knowledge domain, wherein the first knowledge domain and each of the plurality of additional knowledge domains are different.
12. A translational system, comprising: a user interface to receive user input data, wherein the user input data correspond to describing a software device; a processor to receive the user input data from the user interface and to generate software device documentation data from the user input data; wherein the processor implements a translation module to: generate translated user input data from the user input data by translating the user input data from a first knowledge domain to a second knowledge domain based on an artificial intelligence (Al) model, wherein the first knowledge domain is different from the second knowledge domain; and store the translated user input data as part of the user input data processed to generate the software documentation data.
13. The translational system of claim 12. wherein the Al model comprises a natural language processing (NLP) model.
14. The translational system of claim 12, wherein the Al model comprises a large language model (LLM).
15. The translational system of claim 12, wherein the processor also implements a compliance management module to: receive regulatory data associated with a regulatory authority for an industry; and processing the regulatory data together with the user input data when generating the software device documentation data, such that the software device documentation data are compliant with regulatory requirements for the regulator ' authority.
16. The translational system of claim 15. wherein the regulatory data comprise regulatory requirements for documentation, testing, risk, and product development activities for the industry7.
17. The translational sy stem of claim 12, wherein the compliance management module implement an artificial intelligence model that automates compliance checks and generates compliance reports based on the user input data and regulatory data.
18. The translational sy stem of claim 12, wherein the translation module translates the user data from the first knowledge domain to a plurality of additional knowledge domains comprising at least the second knowledge domain and at least one additional knowledge domain, wherein the first knowledge domain and each of the plurality' of additional knowledge domains are different.
Citation Information
Patent Citations
System and method for implementing a securities analyzer
US20220019624A1
Industrial virtual assistant platform with robotic process automation for knowledge and insights management
US20230252083A1
Software development environment
US20230266965A1
Documentation generation from a computer readable symbolic representation
US8473911B1
Knowledge process modeling and automation
WO2019094891A1