Abstract: A method and tracing system (101) for generating a bi-directional traceability matrix in Software Development Life Cycle (SDLC) is disclosed. The tracing system receives input information related to each of a plurality of SDLC stages for an application under development. Further, the one or more keywords and summary are determined from input information related to each of the plurality of SDLC stage using a Natural Language Processing (NLP) model. Thereafter, the tracing system (101) automatically generates a traceability matrix for the application by identifying a corelation between the one or more keywords and summary related to each of the plurality of SDLC stages using a neural network model. The neural network model is trained based on one or more sentences identified from historic data related to a plurality of previously implemented applications. Fig.1
Claims:1. A method of generating a bi-directional traceability matrix in Software Development Life Cycle (SDLC), the method comprising:
receiving, by a tracing system, input information related to each of a plurality of SDLC stages for an application under development;
determining, by the tracing system, one or more keywords and summary in respective input information related to each of the plurality of SDLC stage using a Natural Language Processing (NLP) model; and
automatically generating, by the tracing system, a traceability matrix for the application by identifying a corelation between each of the one or more keywords and summary corresponding to each of the plurality of SDLC stages using a neural network model, and wherein the neural network model is trained based on one or more sentences identified from historic data related to a plurality of previously implemented applications.
2. The method as claimed in claim 1, wherein the input information related to an application under development comprises one or more components and features related to the application.
3. The method as claimed in claim 1, wherein the neural network model is trained using natural language processing.
4. The method as claimed in claim 1, wherein the historic data related to a plurality of previously implemented applications comprises requirement details, design parameters, test input and test cases.
5. The method as claimed in claim 1, wherein the traceability matrix is one of forward traceability matrix or a background traceability matrix based on the stage of the SDLC.
6. The method as claimed in claim 5, wherein the forward traceability matrix is identified by determining a corelation between the one or more keywords and summary related to a first stage of the plurality of SDLC stages with a second stage of the plurality of SDLC stages.
7. The method as claimed in claim 5, the backward traceability matrix is identified by determining a corelation between the one or more keywords and summary related to a second stage of the plurality of SDLC stages with a first stage of the plurality of SDLC stages.
8. The method as claimed in claim 1, wherein the traceability matrix for the application is generated based on a previous stage of the plurality of SDLC stages.
9. A tracing system for generating a bi-directional traceability matrix in Software Development Life Cycle (SDLC), comprising:
a processor; and
a memory communicatively coupled to the processor, wherein the memory stores processor instructions, which, on execution, causes the processor to:
receive input information related to each of a plurality of SDLC stages for an application under development;
determine one or more keywords and summary in respective input information related to each of the plurality of SDLC stage using a Natural Language Processing (NLP) model; and
automatically generate a traceability matrix for the application by identifying a corelation between the one or more keywords and summary related to each of the plurality of SDLC stages using a neural network model, and wherein the neural network model is trained based on one or more sentences identified from historic data related to a plurality of previously implemented applications.
10. The tracing system as claimed in claim 9, wherein the input information related to an application under development comprises one or more components and features related to the application.
11. The tracing system as claimed in claim 9, wherein the neural network model is trained using natural language processing.
12. The tracing system as claimed in claim 9, wherein the historic data related to a plurality of previously implemented applications comprises requirement details, design parameters, test input and test cases.
13. The tracing system as claimed in claim 9, wherein the traceability matrix is one of forward traceability matrix or a background traceability matrix based on the stage of the SDLC.
14. The tracing system as claimed in claim 13, wherein the forward traceability matrix is identified by determining a corelation between the one or more keywords and summary related to a first stage of the plurality of SDLC stages with a second stage of the plurality of SDLC stages.
15. The tracing system as claimed in claim 13, the backward traceability matrix is identified by determining a corelation between the one or more keywords and summary related to a second stage of the plurality of SDLC stages with a first stage of the plurality of SDLC stages.
16. The tracing system as claimed in claim 9, wherein the traceability matrix for the application is generated based on a previous stage of the plurality of SDLC stages.
, Description:TECHNICAL FIELD
The present subject matter is related in general to management of software development requirements, more particularly, but not exclusively to method and system for generating a bi-directional traceability matrix in Software Development Life Cycle (SDLC).
BACKGROUND
During the lifecycle of large software projects several software design artifacts, such as, but not limited to, requirements specifications, test plans, use-case documents and class descriptions of object-oriented programming languages are generated. Any change in one such artifact could necessitate a change in many of the other software design artifacts as well. The ability to assess the impact of a change, in any one of the software design artifacts, on the rest of the project artifacts is a critical aspect of software engineering. However, as software design artifacts are created and updated their relationship to other artifacts is not always fixed and also not always apparent without the use of some sorts of explicit links established manually by the developers, such as a traceability matrix.
Typically, a traceability matrix is a document that co-relates any two-baseline documents that require a many-to-many relationship to check the completeness of the relationship. It captures all requirements proposed by the client and requirement traceability in a single document, delivered at the conclusion of software development life cycle. The main purpose of traceability matrix is to validate that all requirements are checked via test cases such that no functionality is unchecked during software testing.
The traceability matrix is used with high-level requirements, and the detailed requirements of the software embedded in the technical system to be built for the high-level design, the detailed design, the development of a test plan, and the performance of test cases for the technical system that is to be built. A requirements traceability matrix is currently used to check if the current project requirements are being met, and to help with the creation of requests for proposal, various deliverable documents, and project plan tasks. Requirement traceability is concerned with documenting the life of a requirement and to provide bi-directional traceability between various associated requirements. It enables users to find the origin of each requirement and track every change which was made to this requirement. For this purpose, it may be necessary to document every change made to the requirement. Requirement traceability refers to the ability to describe and follow the life of a requirement, in both forward and backwards direction.
Currently, the traceability matrix documents are written manually. The activity of populating the traceability matrix and maintaining the document proves to be hard to conduct, especially for projects that involve extraction of information from large requirements specifications. As a result, more manpower is invested into manually creating the traceability matrix. Thus, generation of the traceability matrix is a tedious task and involves lots of manual effort and maintenance.
The information disclosed in this background of the disclosure section is only for enhancement of understanding of the general background of the invention and should not be taken as an acknowledgement or any form of suggestion that this information forms the prior art already known to a person skilled in the art.
SUMMARY
In an embodiment, the present disclosure may relate to a method for generating a bi-directional traceability matrix in Software Development Life Cycle (SDLC). The method comprises receiving input information related to each of a plurality of SDLC stages for an application under development. Further, the method includes determining one or more keywords and summary from input information related to each of the plurality of SDLC stages using a Natural Language Processing (NLP) model. Thereafter, the method includes automatically generating a traceability matrix for the application by identifying a corelation between each of the one or more keywords and summary corresponding to each of the plurality of SDLC stages using a neural network model. The neural network model is trained based on one or more sentences identified from historic data related to a plurality of previously implemented applications.
In an embodiment, the present disclosure may relate to a tracing system for generating a bi-directional traceability matrix in Software Development Life Cycle (SDLC). The tracing system may comprise a processor and a memory communicatively coupled to the processor, where the memory stores processor executable instructions, which, on execution, may cause the tracing system to receive input information related to each of a plurality of SDLC stages for an application under development. Further, the tracing system determines one or more keywords and summary from input information related to each of the plurality of SDLC stages using a Natural Language Processing (NLP) model. Thereafter, the tracing system automatically generates a traceability matrix for the application by identifying a corelation between each of the one or more keywords and summary corresponding to each of the plurality of SDLC stages using a neural network model. The neural network model is trained based on one or more sentences identified from historic data related to a plurality of previously implemented applications.
The foregoing summary is illustrative only and is not intended to be in any way limiting. In addition to the illustrative aspects, embodiments, and features described above, further aspects, embodiments, and features will become apparent by reference to the drawings and the following detailed description.
BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS
The accompanying drawings, which are incorporated in and constitute a part of this disclosure, illustrate exemplary embodiments and, together with the description, serve to explain the disclosed principles. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The same numbers are used throughout the figures to reference like features and components. Some embodiments of system and/or methods in accordance with embodiments of the present subject matter are now described, by way of example only, and with reference to the accompanying figures, in which:
Fig.1 illustrates an exemplary environment for generating a bi-directional traceability matrix in Software Development Life Cycle (SDLC) in accordance with some embodiments of the present disclosure;
Fig.2 shows a detailed block diagram of a tracing system in accordance with some embodiments of the present disclosure;
Fig.3 show exemplary traceability matrix in accordance with some embodiments of the present disclosure;
Fig.4 illustrates a flowchart showing a method for generating a bi-directional traceability matrix in Software Development Life Cycle (SDLC) in accordance with some embodiments of present disclosure; and
Fig.5 illustrates a block diagram of an exemplary computer system for implementing embodiments consistent with the present disclosure.
It should be appreciated by those skilled in the art that any block diagrams herein represent conceptual views of illustrative systems embodying the principles of the present subject matter. Similarly, it will be appreciated that any flow charts, flow diagrams, state transition diagrams, pseudo code, and the like represent various processes which may be substantially represented in computer readable medium and executed by a computer or processor, whether or not such computer or processor is explicitly shown.
DETAILED DESCRIPTION
In the present document, the word "exemplary" is used herein to mean "serving as an example, instance, or illustration." Any embodiment or implementation of the present subject matter described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other embodiments.
While the disclosure is susceptible to various modifications and alternative forms, specific embodiment thereof has been shown by way of example in the drawings and will be described in detail below. It should be understood, however that it is not intended to limit the disclosure to the particular forms disclosed, but on the contrary, the disclosure is to cover all modifications, equivalents, and alternative falling within the spirit and the scope of the disclosure.
The terms “comprises”, “comprising”, or any other variations thereof, are intended to cover a non-exclusive inclusion, such that a setup, device, or method that comprises a list of components or steps does not include only those components or steps but may include other components or steps not expressly listed or inherent to such setup or device or method. In other words, one or more elements in a system or apparatus proceeded by “comprises… a” does not, without more constraints, preclude the existence of other elements or additional elements in the system or method.
In the following detailed description of the embodiments of the disclosure, reference is made to the accompanying drawings that form a part hereof, and in which are shown by way of illustration specific embodiments in which the disclosure may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the disclosure, and it is to be understood that other embodiments may be utilized and that changes may be made without departing from the scope of the present disclosure. The following description is, therefore, not to be taken in a limiting sense.
Embodiments of the present disclosure may relate to a method and tracing system for generating a bi-directional traceability matrix in Software Development Life Cycle (SDLC). Currently, the traceability matrix documents are written manually. The activity of populating the traceability matrix and maintaining the document proves to be hard to conduct, especially for projects that involve extraction of information from large requirements specifications. As a result, more manpower is invested into manually creating the traceability matrix. Thus, generation of the traceability matrix is a tedious task and involves lots of manual effort and maintenance.
The present disclosure resolves this problem by generating a traceability matrix automatically by identifying a corelation between one or more keywords and summary related to each of a plurality of Software Development Life Cycle (SDLC) stages of an application using a neural network model. The neural network model is trained based on one or more sentences identified from historic data related to a plurality of previously implemented applications. The one or more keywords and summary is determined from input information received from a user, which is related to each of the plurality of SDLC stage using a Natural Language Processing (NLP) model. Therefore, the present disclosure eliminates the need of manually generating the traceability matrix for software applications and improves overall efficiency of the overall management of the application in the SDLC.
Fig.1 illustrates an exemplary environment for generating a bi-directional traceability matrix in Software Development Life Cycle (SDLC) in accordance with some embodiments of the present disclosure.
As shown in Fig.1, an environment 100 includes a tracing system 101 connected to a user device 1031, a user device 1032, ………………and a user device 103N (collectively referred as plurality of user devices 103) through a communication network 105. In an embodiment, the tracing system 101 may be implemented within the plurality of user devices 103. In an embodiment, the communication network 105 may include, but is not limited to, a direct interconnection, a Peer-to-Peer (P2P) network, Local Area Network (LAN), Wide Area Network (WAN), wireless network (for example, using Wireless Application Protocol), Internet, Wi-Fi, and the like.
The plurality of user devices 103 may be related to a user wherein a software application is implemented. The plurality of user devices 103 may include, but is not limited to, a laptop, a desktop computer, a notebook, a smartphone, a tablet, a server, and any other computing devices. A person skilled in the art would understand that any other devices, not mentioned explicitly, may also be used as the user device in the present disclosure.
The tracing system 101 may be used for generating a bi-directional traceability matrix in Software Development Life Cycle (SDLC) for the software application which is either completed or being implemented in one of a stage of the SDLC. The tracing system 101 may include, but is not limited to, a laptop, a desktop computer, a notebook, a smartphone, a tablet, a server, and any other computing devices. A person skilled in the art would understand that any other devices, not mentioned explicitly, may also be used as the tracing system 101 in the present disclosure.
Further, the tracing system 101 may include an I/O interface 107, a memory 109 and a processor 111. The I/O interface 107 may be configured to receive input information related to each of a plurality of SDLC stages for an application under development from one of a user device of the plurality of user devices 103. The input information from the I/O interface 107 may be stored in the memory 109. The memory 109 may be communicatively coupled to the processor 111 of the tracing system 101. The memory 109 may also store processor instructions which may cause the processor 111 to execute the instructions for generating a bi-directional traceability matrix in Software Development Life Cycle (SDLC).
When the application is in any stage of the SDLC, the tracing system 101 may receive input information related to each of a plurality of SDLC stages for an application under development. The plurality of SDLC stages may indicate the stages for which the implementation is performed. The input information may include complete details such as software requirement details, design information, coding, and the like. In an embodiment, the input information may be in any existing known format. Upon receiving the input information, the tracing system 101 may determine one or more keywords and summary from the input information associated with each stage of SDLC for the application. For example, if the input information is related to requirement stage and design stage, the tracing system 101 may determine the one or more keywords and summary from the input information related to both the requirement stage and the design stage. The input information related to the application comprises one or more components and features related to the application.
The tracing system 101 determines the one or more keywords and summary associated with each input stage of the application using a Natural Language Processing (NLP) model.
Thereafter, the tracing system 101 may automatically generate a traceability matrix for the application by identifying a corelation between the one or more keywords and summary related to each of the plurality of SDLC stages using a neural network model. In an embodiment, the neural network model may be for instance, a Convolution Neural Network (CNN) model. The neural network model is trained based on one or more sentences identified from historic data related to a plurality of previously implemented applications. In an embodiment, the historic data related to a plurality of previously implemented applications comprises requirement details, design parameters, test input and test cases. Further, the traceability matrix is one of forward traceability matrix or a background traceability matrix based on the stage of the SDLC.
For instance, the forward traceability matrix is identified by determining a corelation between the one or more keywords and summary related to a first stage of the plurality of SDLC stages with a second stage of the plurality of SDLC stages. For instance, if the first stage is requirement stage and the second stage is design stage, the one or more keywords and summary are correlated from the requirement stage to the design stage. While the backward traceability matrix is identified by determining a corelation between the one or more keywords and summary related to a second stage of the plurality of SDLC stages with a first stage of the plurality of SDLC stages. For instance, if the first stage is requirement stage and the second stage is design stage, the one or more keywords and summary are correlated from the design stage to the requirement stage. In an embodiment, the traceability matrix for the application is generated based on a previous stage of the plurality of SDLC stages.
Fig.2 shows a detailed block diagram of a tracing system in accordance with some embodiments of the present disclosure.
The tracing system 101 may include data 200 and one or more modules 209 which are described herein in detail. In an embodiment, data 200 may be stored within the memory 109. The data 200 may include, for example, application data 201, neural network model 203, traceability matrix 205 and other data 207.
The application data 201 may include the input information related to each of the plurality of SDLC stages for the application under development. The input information related to the application under development comprises one or more components and features related to the application.
The neural network model 203 is stored which is used for automatically generating the traceability matrix.
The traceability matrix 205 is a matrix generated for the application by corelating between the one or more keywords and summary related to each of the plurality of SDLC stages of the application.
The other data 207 may store data, including temporary data and temporary files, generated by modules 209 for performing the various functions of the tracing system 101.
In an embodiment, the data 200 in the memory 109 are processed by the one or more modules 209 present within the memory 109 of the tracing system 101. In an embodiment, the one or more modules 209 may be implemented as dedicated units. As used herein, the term module refers to an application specific integrated circuit (ASIC), an electronic circuit, a field-programmable gate arrays (FPGA), Programmable System-on-Chip (PSoC), a combinational logic circuit, and/or other suitable components that provide the described functionality. In some implementations, the one or more modules 209 may be communicatively coupled to the processor 111 for performing one or more functions of the tracing system 101. The said modules 209 when configured with the functionality defined in the present disclosure will result in a novel hardware.
In one implementation, the one or more modules 209 may include, but are not limited to a receiving module 213, a keyword and summary determination module 215 and a traceability generation module 217. The one or more modules 209 may also include other modules 219 to perform various miscellaneous functionalities of the tracing system 101. In an embodiment, the other modules 219 may include training module for training the neural network model 203 using the historic data related to a plurality of previously implemented applications.
The receiving module 213 may receive the input information related to each of the plurality of SDLC stages for the application under development from the user device of the plurality of user devices 103. The plurality of SDLC stages may indicate the stages for which the implementation is performed. For instance, the plurality of SDLC stages may be, software requirement, design information, coding, and the like. In an embodiment, the input information may be in any existing known format and includes the input information for each of the SDLC stage.
The keyword and summary determination module 215 may determine the one or more keywords and summary in input information related to each of the plurality of SDLC stage using a Natural Language Processing (NLP) model. In an embodiment, the NLP technique such a, Genism NLP package, are used to perform actions such as topic modelling and statistical modelling for determining the one or more keywords and summary that occur in a collection of input information.
The traceability generation module 217 a traceability matrix for the application by identifying a corelation between the one or more keywords and summary related to each of the plurality of SDLC stages using a neural network model, and wherein the neural network model is trained based on one or more sentences identified from historic data related to a plurality of previously implemented applications.
Fig.3 show exemplary traceability matrix in accordance with some embodiments of the present disclosure.
Fig.3 discloses a traceability matrix performed at different levels in requirements, design, coding and testing phases. Fig.3 concentrates on a first level, i.e., Software Requirements Specification (SRS) and a second level, i.e., Software Design Specification (SDS). In an embodiment, the SRS is written in natural language while the SDS is written in UML. Fig.3 also discloses a third level of design phase, which is test plan.
Further, Fig.3 discloses different traceability modes for tracing the requirements at the different phases of software development cycle. That is, Fig.3 discloses performing requirements traceability in three different modes including – direction-based traceability.
In case of forward traceability, the traceability is performed from requirements, design, coding, and test report. In case of backward traceability, the traceability is performed from test report to requirements. Further, Fig.3 discloses building the traceability matrix implicitly during design phase, when a software designer selects design elements. The design elements automatically link with requirements elements, so that no more efforts are needed to build the traceability matrix. Consequently, Fig.3 enhances the process of building design in a semi-automatic way through different phases of the NLP processing and building rules, and a traceability matrix is generated automatically.
Fig.4 illustrates a flowchart showing a method for generating a bi-directional traceability matrix in Software Development Life Cycle (SDLC) in accordance with some embodiments of
present disclosure.
As illustrated in Fig.4, the method 400 includes one or more blocks for generating a bi-directional traceability matrix in Software Development Life Cycle (SDLC). The method 400 may be described in the general context of computer executable instructions. Generally, computer executable instructions can include routines, programs, objects, components, data structures, procedures, modules, and functions, which perform particular functions or implement particular abstract data types.
The order in which the method 400 is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method. Additionally, individual blocks may be deleted from the methods without departing from the scope of the subject matter described herein. Furthermore, the method can be implemented in any suitable hardware, software, firmware, or combination thereof.
At block 401, the input information is received by the receiving module 213 related to each of a plurality of SDLC stages for an application under development.
At block 403, the one or more keywords and summary are determined by keyword and summary determination module 215 in input information related to each of the plurality of SDLC stage using a Natural Language Processing (NLP) model.
At block 405, the traceability matrix for the application is generated by the traceability generation module 217 by identifying the corelation between the one or more keywords and summary related to each of the plurality of SDLC stages using a neural network model. The neural network model is trained based on one or more sentences identified from historic data related to a plurality of previously implemented applications.
Computing System
Fig.5 illustrates a block diagram of an exemplary computer system 500 for implementing embodiments consistent with the present disclosure. In an embodiment, the computer system 500 may be used to implement the tracing system 101. The computer system 500 may include a central processing unit (“CPU” or “processor”) 502. The processor 502 may include at least one data processor for generating a bi-directional traceability matrix in Software Development Life Cycle (SDLC). The processor 502 may include specialized processing units such as, integrated system (bus) controllers, memory management control units, floating point units, graphics processing units, digital signal processing units, etc.
The processor 502 may be disposed in communication with one or more input/output (I/O) devices (not shown) via I/O interface 501. The I/O interface 501 may employ communication protocols/methods such as, without limitation, audio, analog, digital, monoaural, RCA, stereo, IEEE-1394, serial bus, universal serial bus (USB), infrared, PS/2, BNC, coaxial, component, composite, digital visual interface (DVI), high-definition multimedia interface (HDMI), RF antennas, S-Video, VGA, IEEE 802.n /b/g/n/x, Bluetooth, cellular (e.g., code-division multiple access (CDMA), high-speed packet access (HSPA+), global system for mobile communications (GSM), long-term evolution (LTE), WiMax, or the like), etc.
Using the I/O interface 501, the computer system 500 may communicate with one or more I/O devices such as input devices 512 and output devices 513. For example, the input devices 512 may be an antenna, keyboard, mouse, joystick, (infrared) remote control, camera, card reader, fax machine, dongle, biometric reader, microphone, touch screen, touchpad, trackball, stylus, scanner, storage device, transceiver, video device/source, etc. The output devices 613 may be a printer, fax machine, video display (e.g., Cathode Ray Tube (CRT), Liquid Crystal Display (LCD), Light-Emitting Diode (LED), plasma, Plasma Display Panel (PDP), Organic Light-Emitting Diode display (OLED) or the like), audio speaker, etc.
In some embodiments, the computer system 500 consists of the tracing system 101. The processor 502 may be disposed in communication with the communication network 509 via a network interface 503. The network interface 503 may communicate with the communication network 509. The network interface 503 may employ connection protocols including, without limitation, direct connect, Ethernet (e.g., twisted pair 10/100/1000 Base T), transmission control protocol/internet protocol (TCP/IP), token ring, IEEE 802.11a/b/g/n/x, etc. The communication network 509 may include, without limitation, a direct interconnection, local area network (LAN), wide area network (WAN), wireless network (e.g., using Wireless Application Protocol), the Internet, etc. Using the network interface 503 and the communication network 509, the computer system 500 may communicate with store 514. The network interface 503 may employ connection protocols include, but not limited to, direct connect, Ethernet (e.g., twisted pair 10/100/1000 Base T), transmission control protocol/internet protocol (TCP/IP), token ring, IEEE 802.11a/b/g/n/x, etc.
The communication network 509 includes, but is not limited to, a direct interconnection, an e-commerce network, a peer to peer (P2P) network, local area network (LAN), wide area network (WAN), wireless network (e.g., using Wireless Application Protocol), the Internet, Wi-Fi, and such. The first network and the second network may either be a dedicated network or a shared network, which represents an association of the different types of networks that use a variety of protocols, for example, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), Wireless Application Protocol (WAP), etc., to communicate with each other. Further, the first network and the second network may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, etc.
In some embodiments, the processor 502 may be disposed in communication with a memory 505 (e.g., RAM, ROM, etc. not shown in fig.4) via a storage interface 504. The storage interface 504 may connect to memory 505 including, without limitation, memory drives, removable disc drives, etc., employing connection protocols such as, serial advanced technology attachment (SATA), Integrated Drive Electronics (IDE), IEEE-1394, Universal Serial Bus (USB), fiber channel, Small Computer Systems Interface (SCSI), etc. The memory drives may further include a drum, magnetic disc drive, magneto-optical drive, optical drive, Redundant Array of Independent Discs (RAID), solid-state memory devices, solid-state drives, etc.
The memory 505 may store a collection of program or database components, including, without limitation, user interface 506, an operating system 507 etc. In some embodiments, computer system 500 may store user/application data, such as, the data, variables, records, etc., as described in this disclosure. Such databases may be implemented as fault-tolerant, relational, scalable, secure databases such as Oracle or Sybase.
The operating system 507 may facilitate resource management and operation of the computer system 500. Examples of operating systems include, without limitation, APPLE MACINTOSHR OS X, UNIXR, UNIX-like system distributions (E.G., BERKELEY SOFTWARE DISTRIBUTIONTM (BSD), FREEBSDTM, NETBSDTM, OPENBSDTM, etc.), LINUX DISTRIBUTIONSTM (E.G., RED HATTM, UBUNTUTM, KUBUNTUTM, etc.), IBMTM OS/2, MICROSOFTTM WINDOWSTM (XPTM, VISTATM/7/8, 10 etc.), APPLER IOSTM, GOOGLER ANDROIDTM, BLACKBERRYR OS, or the like.
In some embodiments, the computer system 500 may implement a web browser 508 stored program component. The web browser 508 may be a hypertext viewing application, for example MICROSOFT® INTERNET EXPLORERTM, GOOGLE® CHROMETM, MOZILLA® FIREFOXTM, APPLE® SAFARITM, etc. Secure web browsing may be provided using Secure Hypertext Transport Protocol (HTTPS), Secure Sockets Layer (SSL), Transport Layer Security (TLS), etc. Web browsers 508 may utilize facilities such as AJAXTM, DHTMLTM, ADOBE® FLASHTM, JAVASCRIPTTM, JAVATM, Application Programming Interfaces (APIs), etc. In some embodiments, the computer system 500 may implement a mail server stored program component. The mail server may be an Internet mail server such as Microsoft Exchange, or the like. The mail server may utilize facilities such as ASPTM, ACTIVEXTM, ANSITM C++/C#, MICROSOFT®, NETTM, CGI SCRIPTSTM, JAVATM, JAVASCRIPTTM, PERLTM, PHPTM, PYTHONTM, WEBOBJECTSTM, etc. The mail server may utilize communication protocols such as Internet Message Access Protocol (IMAP), Messaging Application Programming Interface (MAPI), MICROSOFT® exchange, Post Office Protocol (POP), Simple Mail Transfer Protocol (SMTP), or the like. In some embodiments, the computer system 500 may implement a mail client stored program component. The mail client may be a mail viewing application, such as APPLE® MAILTM, MICROSOFT® ENTOURAGETM, MICROSOFT® OUTLOOKTM, MOZILLA® THUNDERBIRDTM, etc.
Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present disclosure. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term “computer-readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e., be non-transitory. Examples include Random Access Memory (RAM), Read-Only Memory (ROM), volatile memory, non-volatile memory, hard drives, CD ROMs, DVDs, flash drives, disks, and any other known physical storage media.
Advantages of the present disclosure:
An embodiment of the present disclosure automatically generates traceability matrix for the software application.
An embodiment of the present disclosure eliminates the need of manually generating the traceability matrix for software applications and improves overall efficiency of the overall management of the application in the SDLC.
The described operations may be implemented as a method, system or article of manufacture using standard programming and/or engineering techniques to produce software, firmware, hardware, or any combination thereof. The described operations may be implemented as code maintained in a “non-transitory computer readable medium”, where a processor may read and execute the code from the computer readable medium. The processor is at least one of a microprocessors and a processor capable of processing and executing the queries. A non-transitory computer readable medium may include media such as magnetic storage medium (e.g., hard disk drives, floppy disks, tape, etc.), optical storage (CD-ROMs, DVDs, optical disks, etc.), volatile and non-volatile memory devices (e.g., EEPROMs, ROMs, PROMs, RAMs, DRAMs, SRAMs, Flash Memory, firmware, programmable logic, etc.), etc. Further, non-transitory computer-readable media include all computer-readable media except for a transitory. The code implementing the described operations may further be implemented in hardware logic (e.g., an integrated circuit chip, Programmable Gate Array (PGA), Application Specific Integrated Circuit (ASIC), etc.).
Still further, the code implementing the described operations may be implemented in “transmission signals”, where transmission signals may propagate through space or through a transmission media, such as, an optical fiber, copper wire, etc. The transmission signals in which the code or logic is encoded may further include a wireless signal, satellite transmission, radio waves, infrared signals, Bluetooth, etc. The transmission signals in which the code or logic is encoded is capable of being transmitted by a transmitting station and received by a receiving station, where the code or logic encoded in the transmission signal may be decoded and stored in hardware or a non-transitory computer readable medium at the receiving and transmitting stations or devices. An “article of manufacture” includes non-transitory computer readable medium, hardware logic, and/or transmission signals in which code may be implemented. A device in which the code implementing the described embodiments of operations is encoded may include a computer readable medium or hardware logic. Of course, those skilled in the art will recognize that many modifications may be made to this configuration without departing from the scope of the invention, and that the article of manufacture may include suitable information bearing medium known in the art.
The terms “an embodiment”, “embodiment”, “embodiments”, “the embodiment”, “the embodiments”, “one or more embodiments”, “some embodiments”, and “one embodiment” mean “one or more (but not all) embodiments of the invention(s)” unless expressly specified otherwise.
The terms “including”, “comprising”, “having” and variations thereof mean “including but not limited to”, unless expressly specified otherwise.
The enumerated listing of items does not imply that any or all of the items are mutually exclusive, unless expressly specified otherwise.
The terms “a”, “an” and “the” mean “one or more”, unless expressly specified otherwise.
A description of an embodiment with several components in communication with each other does not imply that all such components are required. On the contrary, a variety of optional components are described to illustrate the wide variety of possible embodiments of the invention.
When a single device or article is described herein, it will be readily apparent that more than one device/article (whether or not they cooperate) may be used in place of a single device/article. Similarly, where more than one device or article is described herein (whether or not they cooperate), it will be readily apparent that a single device/article may be used in place of the more than one device or article or a different number of devices/articles may be used instead of the shown number of devices or programs. The functionality and/or the features of a device may be alternatively embodied by one or more other devices which are not explicitly described as having such functionality/features. Thus, other embodiments of the invention need not include the device itself.
The illustrated operations of Fig.5 show certain events occurring in a certain order. In alternative embodiments, certain operations may be performed in a different order, modified, or removed. Moreover, steps may be added to the above-described logic and still conform to the described embodiments. Further, operations described herein may occur sequentially or certain operations may be processed in parallel. Yet further, operations may be performed by a single processing unit or by distributed processing units.
Finally, the language used in the specification has been principally selected for readability and instructional purposes, and it may not have been selected to delineate or circumscribe the inventive subject matter. It is therefore intended that the scope of the invention be limited not by this detailed description, but rather by any claims that issue on an application based here on. Accordingly, the disclosure of the embodiments of the invention is intended to be illustrative, but not limiting, of the scope of the invention, which is set forth in the following claims.
While various aspects and embodiments have been disclosed herein, other aspects and embodiments will be apparent to those skilled in the art. The various aspects and embodiments disclosed herein are for purposes of illustration and are not intended to be limiting, with the true scope and spirit being indicated by the following claims.
Referral numerals:
Reference Number Description
100 Environment
101 Tracing system
103 Plurality of user devices
105 Communication network
107 I/O interface
109 Memory
111 Processor
200 Data
201 Application data
203 Neural network data
205 Traceability matrix
207 Other data
209 Modules
213 Receiving module
215 Keyword and summary determination module
217 Traceability generation module
219 Other modules
501 I/O interface
502 Processor
503 Network interface
504 Storage interface
505 Memory
506 User interface
507 Operating system
508 Web browser
509 Communication network
511 Input devices
512 Output devices
514 Plurality of user devices
| # | Name | Date |
|---|---|---|
| 1 | 202241001774-STATEMENT OF UNDERTAKING (FORM 3) [12-01-2022(online)].pdf | 2022-01-12 |
| 2 | 202241001774-POWER OF AUTHORITY [12-01-2022(online)].pdf | 2022-01-12 |
| 3 | 202241001774-FORM 1 [12-01-2022(online)].pdf | 2022-01-12 |
| 4 | 202241001774-DRAWINGS [12-01-2022(online)].pdf | 2022-01-12 |
| 5 | 202241001774-DECLARATION OF INVENTORSHIP (FORM 5) [12-01-2022(online)].pdf | 2022-01-12 |
| 6 | 202241001774-COMPLETE SPECIFICATION [12-01-2022(online)].pdf | 2022-01-12 |
| 7 | 202241001774-Proof of Right [25-01-2022(online)].pdf | 2022-01-25 |
| 8 | 202241001774-FORM 18 [12-09-2023(online)].pdf | 2023-09-12 |
| 9 | 202241001774-FER.pdf | 2025-03-13 |
| 10 | 202241001774-FORM 3 [09-05-2025(online)].pdf | 2025-05-09 |
| 1 | traceeeE_19-02-2024.pdf |