WO2021133160A1 - System and method for assessing project risk using artifical neural networks - Google Patents
System and method for assessing project risk using artifical neural networks Download PDFInfo
- Publication number
- WO2021133160A1 WO2021133160A1 PCT/MY2020/050139 MY2020050139W WO2021133160A1 WO 2021133160 A1 WO2021133160 A1 WO 2021133160A1 MY 2020050139 W MY2020050139 W MY 2020050139W WO 2021133160 A1 WO2021133160 A1 WO 2021133160A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- software application
- application project
- resources
- project
- resource
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0635—Risk analysis of enterprise or organisation activities
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Prevention of errors by analysis, debugging or testing of software
- G06F11/3668—Testing of software
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/77—Software metrics
Definitions
- the present invention relates to the field of project risk estimation. Particularly, the present invention relates to use of artificial neural networks for assessing risk for software application testing projects.
- Software testing is one of the essential stages in the software development lifecycle to ensure that the software application or software application upgrades developed are of high- quality and function as per requirements requested by an end user.
- United States Patent 8375364B2 discloses a computer enabled method of estimating testing effort in a testing project by identifying a set of testing parameters and taking into account time needed for completion of a project as well as familiarity of a software tester with the application area and familiarity with the domain of the project.
- none of the conventional systems provide risk assessment for future software application testing projects based on conditions and progress of one or more current projects or provide a cost versus risk analysis for potential projects.
- a system for analyzing and providing risk assessment regarding a software application project comprises at least one database to store resource information and one or more on-going software application project related information; at least one input device; a processing unit and a risk assessment module.
- the risk assessment module when executed by the processing unit is configured to: receive one or more resource related information and/or one or more software application project related information from the database and the input device; and generate a risk score for one or more resources and/or the software application project.
- the system also comprises at least one graphical user interface communicably coupled to the input device.
- the graphical user interface when executed by the processing unit is configured to: accept attributes related to a new software application project; provide the parameters to the risk assessment module to generate a risk score for the one or more resources; display the risk score associated with one or more resources to be utilized for completion of the new software application project; prompt a user to iteratively select one or more resources for the new software application project based on the risk score generated for the one or more resources, using the at least one input device; provide the information on the selected resources to the risk assessment module to analyze and provide risk assessment for the new software application project; and display the risk assessment associated with the new software application project.
- a computer-implemented method for analyzing and providing risk assessment regarding a software application project comprises the following steps: accepting attributes related to a new software application project through a graphical user interface; processing the accepted attributes to generate a risk score for the one or more resources using an risk assessment module; displaying the risk score associated with one or more resources to be utilized for completion of the new software application project on the graphical user interface; accepting selection of one or more resources for the new software application project based on the risk score generated for the one or more resources using at least one input device and analyzing and providing risk assessment for the new software application project based on the selected one or more resources using the risk assessment module.
- the present invention provides an artificial neural network assisted Human-Computer Interaction, HCI tool which when used typically during early project stage, where information is sparser and less concrete, can enable a project manager to derive a potential project configuration with least risks and subsequently make an informed decision on whether to take or reject a project at this early stage.
- HCI tool when used typically during early project stage, where information is sparser and less concrete, can enable a project manager to derive a potential project configuration with least risks and subsequently make an informed decision on whether to take or reject a project at this early stage.
- FIGURE 1 illustrates components for a system for project risk assessment, in accordance with an embodiment of the present invention.
- FIGURE 2 illustrates an artificial neural network implementation for project risk assessment, in accordance with an embodiment of the present invention.
- FIGURE 3 is a flowchart showing steps for analyzing and providing risk assessment for a software application project, in accordance with an embodiment of the present invention.
- FIGURE 4 illustrates an exemplary graphical user interface showing risk scores generated for each resource, in accordance with an embodiment of the present invention.
- FIGURE 5 illustrates an exemplary graphical user interface showing risk assessment generated for a new software application project, in accordance with an embodiment of the present invention.
- the present invention may be embodied as a system, method or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware or programmable instructions) or an embodiment combining software and hardware aspects that may all generally be referred to herein as an “unit,” “module,” or “system.”
- FIGURE 1 illustrates an exemplary architecture in which or with which proposed system (100) analyzes and provides risk assessment for a software application testing project.
- proposed system 100
- FIGURE 1 illustrates an exemplary architecture in which or with which proposed system (100) analyzes and provides risk assessment for a software application testing project.
- the system (100) comprises at least one database (102) to store resource related information and information on current condition and progress of one or more on-going software testing application projects.
- the resource related information and information on current condition and progress of one or more on-going software testing application projects may be manually updated into the database (102). Alternatively, this information may be derived from other sources such as existing project management databases, testers personnel management database, or software defect management database.
- the term “resource” refers to individuals or workforce which are assigned to carry out designed tasks in the software application project.
- the term resource may also be extended to non-human assets such as machines, servers or workstations.
- the resources are software application project testers and the resource related information stored in the database (102) includes the following parameters for each one of the software testers: rate of test issues generated per five testing days, number of words per issue per five testing days, number of pictures per issue per five testing days, tester’s mobility rate, tester’s working experience and tester’s distance from one or more future projects.
- the software application project related information includes project’s potential workload demand.
- the “per five testing days” typically are the last five days a tester has raised issues in a defect management system hosted by an organization. These five days may be consecutive days or any five days selected for the testers in any random order.
- the parameter ‘the number of words per issue per five testing days’ is a count of textual description provided by a tester for different stakeholders. For instance, feedback for management stakeholder may be how the defects impact management bottom line Key Performance Index (KPIs) like cost to fix the defects, time taken to fix the defects, recommendation of a subject matter expert, in an emerging field such as deep learning algorithm, artificial intelligence, big data analytics or space exploration. Further, the parameter ‘number of pictures per issue per five testing days’ is a numerical value which captures a count of the pictures captured during testing to provide visualization or visual cues to supplement the issues generated by the tester.
- KPIs Key Performance Index
- tester s working experience’ is a numerical value based on either number of years of experience in testing or number of professional certifications or number of academic qualifications obtained by the tester.
- the parameter tester’s distance from one or more future projects is a numerical value measured in miles, kilometers, hours or even days of travel.
- mobility rate is a rating, given based on kind of transportation that the tester is using to get to testing site including but not limited to car, motorcycle and public transport. For instance, for travel within a city, mobility rate of motorcycle may exceed that of a car. However, for out-of-city travel, a car would have better mobility than the motorcycle. Also, depending on location of the testing site, better public transport availability would yield a higher score.
- the score for the mobility rate is generated based on the following factors including: 1) the tester could drive a car 2) the tester could drive a motorcycle and 3) the track record of punctuality.
- the underlying data for the score for mobility rate may be captured automatically either in the form of a mobile application or a tester radio frequency identification (RFID) tag or manually in the form of a score card.
- RFID radio frequency identification
- the scoring may be in a form of employee productivity metrics which would assign higher points given for willingness and capability of driving a car, motorcycle or being resourceful in carpooling or using public transportation. Likewise, higher points will be assigned to a tester based on punctuality recorded in arriving for client meetings. Conversely, points may be deducted for tester’s with lack of mobility or unavailability to work at a remote site. Points may also be deducted for missing or not being punctual for meetings.
- the system (100) also includes at least one input device (104) and at least one graphical user interface (112) which are communicably coupled to facilitate Human Computer Interaction (HCI) and enable project managers to analyze and asses risk associated with a potential software application project.
- HCI Human Computer Interaction
- the system (100) includes a processing unit (106).
- the at least one processing unit (106) may be implemented as one or more computing device including microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate digital signals based on operational instructions.
- the at least one processing unit (106) is configured to fetch and execute computer-readable instructions stored in at least one memory unit (108) to analyzing and providing risk assessment regarding a software application project.
- the processing unit (106) includes one or more interfaces which enables the processing unit (106) to communicate with external devices as well as the input device (104) and the graphical user interface (112) to accept attributes related to a new software application project and facilitate analysis and risk assessment for the new software application project.
- the interface also facilitates optical, wired or wireless communication with external communication networks and hardware devices to enable the processing unit (106) and the graphical user interface (112) to be hosted in the same premises, disturbed over geographical remote premises or hosted over a virtual appliance such as the cloud.
- the at least one memory unit (108) may include any computer-readable medium known in the art including, for example, volatile memory, such as static random access memory (SRAM) and dynamic random access memory (DRAM), and/or non-volatile memory, such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, magnetic tapes, compact disc read-only memories (CD-ROMs), and magneto-optical disks, or other type of media/machine-readable medium suitable for storing electronic instructions (e.g., computer programming code, such as software or firmware).
- the memory unit (108) may include modules and data.
- the modules include routines, programs, objects, components, data structures and the like, which perform particular tasks or implement particular abstract data types.
- the module may include a risk assessment module (110).
- the memory unit (108) may not be limited with the aforementioned module (110) but may include other programs or coded instructions that supplement applications and functions of the system (100).
- the risk assessment module (110) provided in the memory (108) when executed by the processing unit (106) is configured to receive one or more resource related information and/or one or more software application project related information from the database (102) and the input device (104) and generate a risk score for one or more resources and/or the software application project.
- the risk assessment module (110) employs an artificial neural network (ANN) which includes at least seven inputs nodes, one hidden layer, and one output, which is the risk score as seen in FIGURE 2.
- the inputs provided to the ANN are retrieved from the database (102) and include rate of test issues generated per five testing days, number of words per issue per five testing days, number of pictures per issue per five testing days, tester’s mobility rate, tester’s working experience, tester’s distance from a future project, and project’s potential workload demand.
- the inputs provided to the ANN are entered manually by the project manager using the input device (104). All the ANN inputs and output values are normalized to a value between 0 and 1 .
- the ANN uses a three-layer back propagation (BP) network, wherein the output value of 0 or 1 is iteratively generated until a robustness goal is met. For instance, the robustness goal may be having an error of less than 5%.
- BP back propagation
- the system (100) includes at least one graphical user interface (112) communicably coupled to the input device (104).
- the graphical user interface (112) when executed by the processing unit (106) is configured to accept attributes related to a new software application project via one or more input devices (104).
- the attributes related to a new software application project include rate of test issues generated per five testing days by each resource, number of words per issue per five testing days by each resource, number of pictures per issue per five testing days, tester’s mobility rate, tester’s working experience, tester’s distance from a future project and potential workload demand of the new software application project.
- These attributes received via the input device (104) are provided to the processing unit (106) which further provides it to the risk assessment module (110) to generate a risk score for the one or more resources.
- the generated risk score associated with one or more resources to be utilized for completion of the new software application project is then received and displayed on the graphical user interface (112).
- the graphical user interface (112) prompts a user (or project manager) to iteratively select one or more resources for the new software application project based on the risk score generated for the one or more resources, using the at least one input device (104).
- the input device (104) may take the form of a touchscreen-based input, a keyboard-based input or a pointing device-based input such that a project manager is capable of having a drag and drop interaction for selection of one or more resources for the new software application project.
- the graphical user interface (112) is further configured to provide the information on the selected resources to the risk assessment module (110) to analyze and provide risk assessment for the new software application project; and display the risk assessment associated with the new software application project.
- the project manager may iteratively select different combinations of resources based on their scores to assess the risk score generated for the new software application project.
- FIGURE 1 represents the major components of the system (100) for analyzing and providing risk assessment for a software application project, but these components may be combined or divided depending on the particular design without limiting the scope of the present disclosure.
- FIGURE 3 represents a method for analyzing and providing risk assessment for a software application project.
- the method comprises the steps of maintaining a database for storing information regarding software testers as well as one or more on-going software application project related information.
- the method is initiated by accepting the attributes related to a new software application project through an input device communicably coupled to a graphical user interface.
- These attributes include rate of test issues generated per five testing days by each resource, number of words per issue per five testing days by each resource, number of pictures per issue per five testing days by each resource, resource’s mobility rate, resources’ working experience, resource’s distance from a future project and potential workload demand of the new software application project.
- the value of these attributes may be derived from other sources such existing project management databases, testers personnel management database, or software defect management database.
- step (1002) the attributes received for the new software application project as well as existing resource related information and on-going software application project(s) related information are provided to a risk assessment module to generate a risk score for each one of the resources or software testers.
- the risk score for the resources is then displayed on the graphical user interface (step 1004), as seen in FIGURE 4.
- the graphical user interface prompts the user (or project manager) to select one or more resources to be utilized for completion of the new software application project.
- the user is allowed to perform a drag-and-drop interaction in order to assign the testers to the new project.
- the selected one or more resources are provided to the risk assessment module to calculate a risk score for the new software application project. This time the input comprises the average value of all testers within the same project. The risk score is then displayed to the user as seen in FIGURE 5.
- an exemplary graphical user interface (112) is presented.
- Line 305 separates the graphical user interface (112) into two parts: a left side for current events and a right side for new events.
- step (1002) is completed, on the left side there are five testers (301) displayed in two ongoing project projects (302). Meanwhile there are two testers (303) that are not involved in any projects.
- Each tester (301 , 303) has been provided a space to display the tester risk score as calculated in step (1002).
- the graphical user interface (112) also has space to display additional information to identify the testers (301 , 302, 303) such as by their name and profile picture.
- On the right side there is one new project (304).
- the new project (304) has empty space at the moment as the risk assessment for the new software application project is pending.
- the graphical user interface (112) is presented as seen in FIGURE 4, one skilled in the art would appreciate that the present layout is not limiting and other layouts of the graphical user interface (112) can be achieved to display the outcome as per the teachings of the present invention.
- FIGURE 5 shows a layout of the graphical user interface (112) after the step (1008) is completed.
- two tester user interface objects (311 , 312) have been dragged and dropped from 301 and 303 into the new project window (304).
- Window labelled by reference numeral (310) as seen in Figure 5 shows the new state of the graphical user interface (112).
- the tester user interface objects moved are testers (311) and (312).
- the new software application project (304) changes to a new project (313) where a risk score is displayed based on the testers dropped into this new software application project (304). For instance, a 70% risk score would indicate that if the new project is accepted then there are 70% chances that the project timelines and workload demands can be met.
- the graphical user interface (112) also has the option of saving various scores generated for the resources and the projects for future reference or comparison.
- the graphical user interface (112) further enables the user (or project manager) to hide tester user interface objects or on-going projects from the graphical user interface (112) so that they may be not available for selection.
- the user is given the opportunity to iteratively drag and drop resources (or testers) to the project window (304) to generate a new risk score for assessing the risk of undertaking a new software application project (step 1010).
- the selection of testers can be done to check for various combinations to decide on whether to undertake the new project. Flence, the steps (1006 to 1010) can be repeated until the user (or project manager) decides to undertake the project based on the latest resource selection or declines the new project (step 1012).
- the present invention can take the form of a computer program product accessible from a machine-readable media providing programming code for use by the system (100).
- the software and/or computer program product can be hosted in the environment of FIGURE 1 to implement the teachings of the present invention.
- An apparatus for practicing various embodiments of the present invention may involve one or more computers (or one or more processors within a single computer) and storage systems containing or having network access to computer program(s) coded in accordance with various methods described herein, and the method steps of the invention could be accomplished by modules, routines, subroutines, or subparts of a computer program product.
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Operations Research (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Educational Administration (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
A system (100) and a method for analyzing and providing risk assessment regarding a software application project is disclosed. The system (100) comprises at least one database (102) to store resource related information and one or more on-going software application project related information; at least one input device (104); a processing unit (106); a risk assessment module (110) to receive one or more resource related information and/or one or more software application project related information from the database (102) and the input device (104) to generate a risk score for one or more resources and/or the software application project; and at least one graphical user interface (112) to accept attributes related to a new software application project and display a risk score for the one or more resources and provide risk assessment for the new software application project based on the risk scores.
Description
SYSTEM AND METHOD FOR ASSESSING PROJECT RISK USING ARTIFICAL NEURAL
NETWORKS
FIELD OF THE INVENTION
The present invention relates to the field of project risk estimation. Particularly, the present invention relates to use of artificial neural networks for assessing risk for software application testing projects.
BACKGROUND
Software testing is one of the essential stages in the software development lifecycle to ensure that the software application or software application upgrades developed are of high- quality and function as per requirements requested by an end user.
Typically, multiple software testing projects are handled by software testers during the software testing stage. When a new software testing project arrives then the project managers are required to assess the risk of undertaking a new project by re-assigning current software testers. The assessment requires testing dates for current and future potential projects to be adjusted based on tester availability and also by estimating the effort required to meet demands on on-going and potential projects.
There is currently dearth of tools that would assist the project managers to assess the aforementioned risk and conduct a cost versus risk analysis. There were attempts in the art to overcome the aforementioned challenges, for instance, United States Patent 8375364B2 discloses a computer enabled method of estimating testing effort in a testing project by identifying a set of testing parameters and taking into account time needed for completion of a project as well as familiarity of a software tester with the application area and familiarity with the domain of the project.
However, none of the conventional systems provide risk assessment for future software application testing projects based on conditions and progress of one or more current projects or provide a cost versus risk analysis for potential projects.
Thus, conventional systems do not aid the project managers to assess the risk of undertaking a new project and/or in real-time monitor quality of testing and utilization of current resources namely, the software testers.
SUMMARY
According to a first aspect of the present invention a system for analyzing and providing risk assessment regarding a software application project is disclosed. The system comprises at least one database to store resource information and one or more on-going software application project related information; at least one input device; a processing unit and a risk assessment module. The risk assessment module when executed by the processing unit is configured to: receive one or more resource related information and/or one or more software application project related information from the database and the input device; and generate a risk score for one or more resources and/or the software application project.
The system also comprises at least one graphical user interface communicably coupled to the input device. The graphical user interface when executed by the processing unit is configured to: accept attributes related to a new software application project; provide the parameters to the risk assessment module to generate a risk score for the one or more resources; display the risk score associated with one or more resources to be utilized for completion of the new software application project; prompt a user to iteratively select one or more resources for the new software application project based on the risk score generated for the one or more resources, using the at least one input device; provide the information on the selected resources to the risk assessment module to analyze and provide risk assessment for the new software application project; and display the risk assessment associated with the new software application project.
According to a second aspect of the present invention, a computer-implemented method for analyzing and providing risk assessment regarding a software application project is disclosed. The method comprises the following steps: accepting attributes related to a new software application project through a graphical user interface; processing the accepted attributes to generate a risk score for the one or more resources using an risk assessment module; displaying the risk score associated with one or more resources to be utilized for completion of the new software application project on the graphical user interface; accepting selection of one or more resources for the new software application project based on the risk score generated for the one or more resources using at least one input device and analyzing and providing risk assessment for the new software application project based on the selected one or more resources using the risk assessment module.
According to aspects disclosed herein above, the present invention provides an artificial neural network assisted Human-Computer Interaction, HCI tool which when used typically during early project stage, where information is sparser and less concrete, can enable a
project manager to derive a potential project configuration with least risks and subsequently make an informed decision on whether to take or reject a project at this early stage.
Various objects, features, aspects and advantages of the inventive subject matter will become more apparent from the following detailed description of preferred embodiments, along with the accompanying drawing figures in which like numerals represent like components.
BRIEF DESCRIPTION OF THE ACCOMPANYING DRAWINGS
The present invention will be fully understood from the detailed description given herein below and the accompanying drawings which are given by way of illustration only, and thus are not limitative of the present invention, wherein:
In the appended drawings:
FIGURE 1 illustrates components for a system for project risk assessment, in accordance with an embodiment of the present invention.
FIGURE 2 illustrates an artificial neural network implementation for project risk assessment, in accordance with an embodiment of the present invention.
FIGURE 3 is a flowchart showing steps for analyzing and providing risk assessment for a software application project, in accordance with an embodiment of the present invention.
FIGURE 4 illustrates an exemplary graphical user interface showing risk scores generated for each resource, in accordance with an embodiment of the present invention.
FIGURE 5 illustrates an exemplary graphical user interface showing risk assessment generated for a new software application project, in accordance with an embodiment of the present invention.
DETAILED DESCRIPTION
In accordance with the present invention, there is provided a system and a method for analyzing and providing risk assessment for a software application project, which will now be described with reference to the embodiment shown in the accompanying drawings. The embodiment does not limit the scope and ambit of the invention. The description relates purely to the exemplary embodiment and its suggested applications.
The embodiment herein and the various features and advantageous details thereof are explained with reference to the non-limiting embodiment in the following description. Descriptions of well-known components and processing techniques are omitted so as to not unnecessarily obscure the embodiments herein. The examples used herein are intended merely to facilitate an understanding of ways in which the embodiment herein may be practiced and to further enable those of skill in the art to practice the embodiment herein. Accordingly, the description should not be construed as limiting the scope of the embodiment herein.
The description hereinafter, of the specific embodiment will so fully reveal the general nature of the embodiments herein that others can, by applying current knowledge, readily modify or adapt or perform both for various applications such specific embodiment without departing from the generic concept, and, therefore, such adaptations and modifications should and are intended to be comprehended within the meaning and range of equivalents of the disclosed embodiments. It is to be understood that the phraseology or terminology employed herein is for the purpose of description and not of limitation.
As will be appreciated by one skilled in the art, the present invention may be embodied as a system, method or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware or programmable instructions) or an embodiment combining software and hardware aspects that may all generally be referred to herein as an “unit,” “module,” or “system.”
Referring to the accompanying drawings, FIGURE 1 illustrates an exemplary architecture in which or with which proposed system (100) analyzes and provides risk assessment for a software application testing project. Although the present invention will be explained with reference to software application testing related projects, those skilled in the art would appreciate that the teachings of this invention can be applied to any project which requires resource planning and/or risk estimation.
The system (100) comprises at least one database (102) to store resource related information and information on current condition and progress of one or more on-going software testing application projects. The resource related information and information on current condition and progress of one or more on-going software testing application projects may be manually updated into the database (102). Alternatively, this information may be
derived from other sources such as existing project management databases, testers personnel management database, or software defect management database.
The term “resource” refers to individuals or workforce which are assigned to carry out designed tasks in the software application project. The term resource may also be extended to non-human assets such as machines, servers or workstations. According to one embodiment of the present invention, the resources are software application project testers and the resource related information stored in the database (102) includes the following parameters for each one of the software testers: rate of test issues generated per five testing days, number of words per issue per five testing days, number of pictures per issue per five testing days, tester’s mobility rate, tester’s working experience and tester’s distance from one or more future projects. And, the software application project related information includes project’s potential workload demand.
According to the invention the “per five testing days” typically are the last five days a tester has raised issues in a defect management system hosted by an organization. These five days may be consecutive days or any five days selected for the testers in any random order.
The parameter ‘the number of words per issue per five testing days’ is a count of textual description provided by a tester for different stakeholders. For instance, feedback for management stakeholder may be how the defects impact management bottom line Key Performance Index (KPIs) like cost to fix the defects, time taken to fix the defects, recommendation of a subject matter expert, in an emerging field such as deep learning algorithm, artificial intelligence, big data analytics or space exploration. Further, the parameter ‘number of pictures per issue per five testing days’ is a numerical value which captures a count of the pictures captured during testing to provide visualization or visual cues to supplement the issues generated by the tester.
The parameter ‘tester’s working experience’ is a numerical value based on either number of years of experience in testing or number of professional certifications or number of academic qualifications obtained by the tester.
The parameter tester’s distance from one or more future projects is a numerical value measured in miles, kilometers, hours or even days of travel.
Further, mobility rate is a rating, given based on kind of transportation that the tester is using to get to testing site including but not limited to car, motorcycle and public transport. For instance, for travel within a city, mobility rate of motorcycle may exceed that of a car. However, for out-of-city travel, a car would have better mobility than the motorcycle. Also,
depending on location of the testing site, better public transport availability would yield a higher score. The score for the mobility rate is generated based on the following factors including: 1) the tester could drive a car 2) the tester could drive a motorcycle and 3) the track record of punctuality. The underlying data for the score for mobility rate may be captured automatically either in the form of a mobile application or a tester radio frequency identification (RFID) tag or manually in the form of a score card.
Furthermore, the scoring may be in a form of employee productivity metrics which would assign higher points given for willingness and capability of driving a car, motorcycle or being resourceful in carpooling or using public transportation. Likewise, higher points will be assigned to a tester based on punctuality recorded in arriving for client meetings. Conversely, points may be deducted for tester’s with lack of mobility or unavailability to work at a remote site. Points may also be deducted for missing or not being punctual for meetings.
The system (100) also includes at least one input device (104) and at least one graphical user interface (112) which are communicably coupled to facilitate Human Computer Interaction (HCI) and enable project managers to analyze and asses risk associated with a potential software application project.
Further, the system (100) includes a processing unit (106). The at least one processing unit (106) may be implemented as one or more computing device including microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate digital signals based on operational instructions. Among other capabilities, the at least one processing unit (106) is configured to fetch and execute computer-readable instructions stored in at least one memory unit (108) to analyzing and providing risk assessment regarding a software application project.
The processing unit (106) includes one or more interfaces which enables the processing unit (106) to communicate with external devices as well as the input device (104) and the graphical user interface (112) to accept attributes related to a new software application project and facilitate analysis and risk assessment for the new software application project. The interface also facilitates optical, wired or wireless communication with external communication networks and hardware devices to enable the processing unit (106) and the graphical user interface (112) to be hosted in the same premises, disturbed over geographical remote premises or hosted over a virtual appliance such as the cloud.
The at least one memory unit (108) may include any computer-readable medium known in the art including, for example, volatile memory, such as static random access memory (SRAM) and dynamic random access memory (DRAM), and/or non-volatile memory, such as read only memory (ROM), erasable programmable ROM, flash memories, hard disks, optical disks, magnetic tapes, compact disc read-only memories (CD-ROMs), and magneto-optical disks, or other type of media/machine-readable medium suitable for storing electronic instructions (e.g., computer programming code, such as software or firmware). The memory unit (108) may include modules and data.
The modules include routines, programs, objects, components, data structures and the like, which perform particular tasks or implement particular abstract data types. In one implementation, the module may include a risk assessment module (110). The memory unit (108) may not be limited with the aforementioned module (110) but may include other programs or coded instructions that supplement applications and functions of the system (100).
The risk assessment module (110) provided in the memory (108) when executed by the processing unit (106) is configured to receive one or more resource related information and/or one or more software application project related information from the database (102) and the input device (104) and generate a risk score for one or more resources and/or the software application project.
According to the first aspect of the invention, the risk assessment module (110) employs an artificial neural network (ANN) which includes at least seven inputs nodes, one hidden layer, and one output, which is the risk score as seen in FIGURE 2. The inputs provided to the ANN are retrieved from the database (102) and include rate of test issues generated per five testing days, number of words per issue per five testing days, number of pictures per issue per five testing days, tester’s mobility rate, tester’s working experience, tester’s distance from a future project, and project’s potential workload demand. Alternatively, the inputs provided to the ANN are entered manually by the project manager using the input device (104). All the ANN inputs and output values are normalized to a value between 0 and 1 . The ANN uses a three-layer back propagation (BP) network, wherein the output value of 0 or 1 is iteratively generated until a robustness goal is met. For instance, the robustness goal may be having an error of less than 5%.
The system (100) includes at least one graphical user interface (112) communicably coupled to the input device (104). The graphical user interface (112) when executed by the processing unit (106) is configured to accept attributes related to a new software application
project via one or more input devices (104). The attributes related to a new software application project include rate of test issues generated per five testing days by each resource, number of words per issue per five testing days by each resource, number of pictures per issue per five testing days, tester’s mobility rate, tester’s working experience, tester’s distance from a future project and potential workload demand of the new software application project.
These attributes received via the input device (104) are provided to the processing unit (106) which further provides it to the risk assessment module (110) to generate a risk score for the one or more resources. The generated risk score associated with one or more resources to be utilized for completion of the new software application project is then received and displayed on the graphical user interface (112).
Further, the graphical user interface (112) prompts a user (or project manager) to iteratively select one or more resources for the new software application project based on the risk score generated for the one or more resources, using the at least one input device (104). According to the invention, the input device (104) may take the form of a touchscreen-based input, a keyboard-based input or a pointing device-based input such that a project manager is capable of having a drag and drop interaction for selection of one or more resources for the new software application project.
The graphical user interface (112) is further configured to provide the information on the selected resources to the risk assessment module (110) to analyze and provide risk assessment for the new software application project; and display the risk assessment associated with the new software application project.
The project manager may iteratively select different combinations of resources based on their scores to assess the risk score generated for the new software application project.
Those skilled in the art would appreciate that, although the system (100) includes a number of distinct units and modules, as illustrated in FIGURE 1 , it should be recognized that some units and modules may be combined, and/or some functions may be performed by one or more units or modules. Therefore, the embodiment of FIGURE 1 represents the major components of the system (100) for analyzing and providing risk assessment for a software application project, but these components may be combined or divided depending on the particular design without limiting the scope of the present disclosure.
The working of the system (100) may be explained in conjunction with FIGURES 3-5 explained below.
FIGURE 3 represents a method for analyzing and providing risk assessment for a software application project. The method comprises the steps of maintaining a database for storing information regarding software testers as well as one or more on-going software application project related information. At step (1000) the method is initiated by accepting the attributes related to a new software application project through an input device communicably coupled to a graphical user interface. These attributes include rate of test issues generated per five testing days by each resource, number of words per issue per five testing days by each resource, number of pictures per issue per five testing days by each resource, resource’s mobility rate, resources’ working experience, resource’s distance from a future project and potential workload demand of the new software application project. Alternatively, the value of these attributes may be derived from other sources such existing project management databases, testers personnel management database, or software defect management database.
At step (1002) the attributes received for the new software application project as well as existing resource related information and on-going software application project(s) related information are provided to a risk assessment module to generate a risk score for each one of the resources or software testers. The risk score for the resources is then displayed on the graphical user interface (step 1004), as seen in FIGURE 4.
At step (1006) the graphical user interface prompts the user (or project manager) to select one or more resources to be utilized for completion of the new software application project. The user is allowed to perform a drag-and-drop interaction in order to assign the testers to the new project. Then, at step (1008), the selected one or more resources are provided to the risk assessment module to calculate a risk score for the new software application project. This time the input comprises the average value of all testers within the same project. The risk score is then displayed to the user as seen in FIGURE 5.
As seen in FIGURE 4, an exemplary graphical user interface (112) is presented. Line 305 separates the graphical user interface (112) into two parts: a left side for current events and a right side for new events. After step (1002) is completed, on the left side there are five testers (301) displayed in two ongoing project projects (302). Meanwhile there are two testers (303) that are not involved in any projects. Each tester (301 , 303) has been provided a space to display the tester risk score as calculated in step (1002). The graphical user interface (112) also has space to display additional information to identify the testers (301 , 302, 303) such as by their name and profile picture. On the right side, there is one new project (304). The new project (304) has empty space at the moment as the risk assessment for the new software application project is pending. Although, the graphical user
interface (112) is presented as seen in FIGURE 4, one skilled in the art would appreciate that the present layout is not limiting and other layouts of the graphical user interface (112) can be achieved to display the outcome as per the teachings of the present invention.
FIGURE 5 shows a layout of the graphical user interface (112) after the step (1008) is completed. Referring to FIGURES 4 and 5, two tester user interface objects (311 , 312) have been dragged and dropped from 301 and 303 into the new project window (304). Window labelled by reference numeral (310) as seen in Figure 5 shows the new state of the graphical user interface (112). The tester user interface objects moved are testers (311) and (312). The new software application project (304) changes to a new project (313) where a risk score is displayed based on the testers dropped into this new software application project (304). For instance, a 70% risk score would indicate that if the new project is accepted then there are 70% chances that the project timelines and workload demands can be met.
According to the invention, the graphical user interface (112) also has the option of saving various scores generated for the resources and the projects for future reference or comparison. The graphical user interface (112) further enables the user (or project manager) to hide tester user interface objects or on-going projects from the graphical user interface (112) so that they may be not available for selection.
If the risk score generated based on the tester selection is not acceptable, then the user (or project manager) is given the opportunity to iteratively drag and drop resources (or testers) to the project window (304) to generate a new risk score for assessing the risk of undertaking a new software application project (step 1010). The selection of testers can be done to check for various combinations to decide on whether to undertake the new project. Flence, the steps (1006 to 1010) can be repeated until the user (or project manager) decides to undertake the project based on the latest resource selection or declines the new project (step 1012).
In accordance with an additional aspect, the present invention can take the form of a computer program product accessible from a machine-readable media providing programming code for use by the system (100). The software and/or computer program product can be hosted in the environment of FIGURE 1 to implement the teachings of the present invention.
The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting. As used herein, the singular forms "a",
"an" and "the" may be intended to include the plural forms as well, unless the context clearly indicates otherwise.
The terms "comprises," "comprising," “including,” and “having,” are inclusive and therefore specify the presence of stated features, integers, steps, operations, elements, or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or groups thereof. The method steps, processes, and operations described herein are not to be construed as necessarily requiring their performance in the particular order discussed or illustrated, unless specifically identified as an order of performance. It is also to be understood that additional or alternative steps may be employed.
The use of the expression “at least” or “at least one” suggests the use of one or more elements, as the use may be in one of the embodiments to achieve one or more of the desired objects or results.
The process steps, method steps, algorithms or the like may be described in a sequential order, such processes, methods and algorithms may be configured to work in alternate orders. In other words, any sequence or order of steps that may be described does not necessarily indicate a requirement that the steps be performed in that order. The steps of processes described herein may be performed in any order practical. Further, some steps may be performed simultaneously, in parallel, or concurrently.
Various methods described herein may be practiced by combining one or more machine- readable storage media containing the code according to the present invention with appropriate standard computer hardware to execute the code contained therein. An apparatus for practicing various embodiments of the present invention may involve one or more computers (or one or more processors within a single computer) and storage systems containing or having network access to computer program(s) coded in accordance with various methods described herein, and the method steps of the invention could be accomplished by modules, routines, subroutines, or subparts of a computer program product.
While the foregoing describes various embodiments of the invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof. The scope of the invention is determined by the claims that follow. The invention is not limited to the described embodiments, versions or examples, which are included to
enable a person having ordinary skill in the art to make and use the invention when combined with information and knowledge available to the person having ordinary skill in the art.
Claims
1. A system (100) for analyzing and providing risk assessment regarding a software application project, the system (100) comprising: at least one database (102) to store resource related information and one or more on going software application project related information; at least one input device (104); a processing unit (106); a risk assessment module (110), when executed by the processing unit (106), configured to: receive one or more resource related information and/or one or more software application project related information from the database (102) and the input device (104); and generate a risk score for one or more resources and/or the software application project; and at least one graphical user interface (112) communicably coupled to the input device (104), when executed by the processing unit (106) configured to: accept attributes related to a new software application project; provide parameters to the risk assessment module (110) to generate a risk score for the one or more resources; display the risk score associated with one or more resources to be utilized for completion of the new software application project; prompt a user to iteratively select one or more resources for the new software application project based on the risk score generated for the one or more resources, using the at least one input device (104); provide the information on the selected resources to the risk assessment module (110) to analyze and provide risk assessment for the new software application project; and display the risk assessment associated with the new software application project.
2. The system (100) as claimed in claim 1 , wherein the resource is a software application project tester and the resource related information stored in the database (102) includes the following parameters for each one of the software testers: rate of test issues generated per five testing days, number of words per issue per five testing days, number of pictures per issue per five testing days, tester’s mobility rate, tester’s working experience and tester’s distance from a future project.
3. The system (100) as claimed in claim 1 , wherein the software application project related information includes project’s potential workload demand.
4. The system (100) as claimed in claim 1 , wherein the attributes related to a new software application project include rate of test issues generated per five testing days by each resource, number of words per issue per five testing days by each resource, number of pictures per issue per five testing days, resource’s mobility rate, resource’s working experience, resource’s distance from a future project and potential workload demand of the new software application project.
5. The system as claimed in claim 1 , wherein the risk assessment module (110) comprises an artificial neural network which includes at least seven inputs nodes, one hidden layer and a risk score as an output.
6. The system as claimed in claim 1 , wherein the input device (104) facilitates a drag and drop interaction on the graphical user interface (112), wherein the input device (104) is any device selected from a touchscreen, a pointing device or a combination thereof.
7. The system as claimed in claim 1 , wherein the graphical user interface (112) provides features configured to:
(i) save risk scores generated for the new software application project and corresponding resources selected; and
(ii) hide one or more resources and on-going projects from being displayed to prevent selection for use in risk assessment for the new software application project.
8. A computer-implemented method for analyzing and providing risk assessment regarding a software application project, comprising the following steps:
(i) accepting attributes related to a new software application project through a graphical user interface (1000);
(ii) processing the accepted attributes to generate a risk score for one or more resources using a risk assessment module (1002);
(iii) displaying the risk score associated with one or more resources to be utilized for completion of a new software application project on the graphical user interface (1004);
(iv) accepting selection of one or more resources for the new software application project based on the risk score generated for the one or more resources using at least one input device (1006); and
(v) analyzing and providing risk assessment for the new software application project based on the selected one or more resources using the risk assessment module (1008).
9. The computer-implemented method as claimed in claim 8, wherein the attributes related to a new software application project including rate of test issues generated per five testing days by each resource, number of words per issue per five testing days by each resource, number of pictures per issue per five testing days by each resource, resource’s mobility rate, resources’ working experience, resource’s distance from a future project and potential workload demand of the new software application project.
10. The computer-implemented method as claimed in claim 8, wherein the step of processing the accepted attributes to generate a risk score (1002) includes retrieving resource related information and one or more on-going software application project related information from a database; and processing the retrieved resource related information and on-going software application project(s) related information with the accepted attributes to generate a risk score.
11 . The computer-implemented method as claimed in claim 8, wherein the step of accepting selection of one or more resources for the new software application project (1006) comprises enabling iterative acceptance of one or more resources for risk assessment (1010).
12. The computer-implemented method as claimed in claim 8, wherein the step of accepting selection of one or more resources for the new software application project (1006) comprises providing a drag and drop based interaction with the graphical user interface to facilitate the selection of one or more resources.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
MYPI2019007769 | 2019-12-24 | ||
MYPI2019007769 | 2019-12-24 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021133160A1 true WO2021133160A1 (en) | 2021-07-01 |
Family
ID=76574594
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/MY2020/050139 WO2021133160A1 (en) | 2019-12-24 | 2020-11-09 | System and method for assessing project risk using artifical neural networks |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2021133160A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115600819A (en) * | 2022-10-28 | 2023-01-13 | 中国农业银行股份有限公司(Cn) | Risk assessment method, device, electronic equipment and storage medium |
CN118941091A (en) * | 2024-08-13 | 2024-11-12 | 启东芳景生物科技有限公司 | Biological project risk assessment prediction method and system based on big data analysis |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140282354A1 (en) * | 2013-03-15 | 2014-09-18 | International Business Machines Corporation | Automated team assembly system and method |
US20160224896A1 (en) * | 2015-02-03 | 2016-08-04 | International Business Machines Corporation | Group generation using sets of metrics and predicted success values |
CN107274071A (en) * | 2017-05-24 | 2017-10-20 | 华为技术有限公司 | Set up the method and device of team |
-
2020
- 2020-11-09 WO PCT/MY2020/050139 patent/WO2021133160A1/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140282354A1 (en) * | 2013-03-15 | 2014-09-18 | International Business Machines Corporation | Automated team assembly system and method |
US20160224896A1 (en) * | 2015-02-03 | 2016-08-04 | International Business Machines Corporation | Group generation using sets of metrics and predicted success values |
CN107274071A (en) * | 2017-05-24 | 2017-10-20 | 华为技术有限公司 | Set up the method and device of team |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115600819A (en) * | 2022-10-28 | 2023-01-13 | 中国农业银行股份有限公司(Cn) | Risk assessment method, device, electronic equipment and storage medium |
CN118941091A (en) * | 2024-08-13 | 2024-11-12 | 启东芳景生物科技有限公司 | Biological project risk assessment prediction method and system based on big data analysis |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chinta | The impact of AI-powered automation on agile project management: transforming traditional practices | |
US10826776B2 (en) | Integrated continual improvement management | |
US20190042999A1 (en) | Systems and methods for optimizing parallel task completion | |
US10574539B2 (en) | System compliance assessment utilizing service tiers | |
US20220019959A1 (en) | System, Method, and Computer Program Product for Dynamically Interpreting, Learning, and Synchronizing Information to Help Users with Intelligent Management of Work | |
US8065177B2 (en) | Project management system and method | |
US11550308B2 (en) | Dynamic value stream management | |
US20210174274A1 (en) | Systems and methods for modeling organizational entities | |
US20160098666A1 (en) | Transferring Employees in Operational Workforce Planning | |
US20180096274A1 (en) | Data management system and methods of managing resources, projects, financials, analytics and dashboard data | |
CN117196530A (en) | Digital intelligent scheduling method and system for software project set and human resource pool | |
WO2021133160A1 (en) | System and method for assessing project risk using artifical neural networks | |
US7689529B2 (en) | System and method for application balanced scorecard optimizer | |
US20160098653A1 (en) | Risk Analysis to Improve Operational Workforce Planning | |
Erdoğan et al. | More effective sprint retrospective with statistical analysis | |
US20230289729A1 (en) | Systems and methods for visualizing and managing project flows in a megaproject | |
US20210334753A1 (en) | System for managing enterprise dataflows | |
US20160098668A1 (en) | Operational Workforce Planning | |
US20150073873A1 (en) | Automated, self-learning tool for identifying impacted business parameters for a business change-event | |
US10789559B2 (en) | Virtually assisted task generation | |
Swarnakar et al. | Unveiling the path to sustainable quality 4.0 implementation in organisations: insights from an exploratory qualitative study | |
Ferreira et al. | The Hidden Link between Quality Management and Digital Success: A Fortune 500 Case Study | |
US20220180259A1 (en) | System and Method for Dynamic Project Forecasting and Real-Time Visualization | |
US20210334718A1 (en) | System for managing enterprise dataflows | |
US8275646B2 (en) | Intellectual property assessments based on component business models |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20906133 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20906133 Country of ref document: EP Kind code of ref document: A1 |