IP Library Granted Patent US 10,331,437
Granted Patent B2
US 10,331,437 · App. 15/641,956 · Granted Jun 25, 2019

Providing customized and targeted performance improvement recommendations for software development teams

Inventors: Gregory J. Boss (Saginaw, MI); Nikolay Kadochnikov (Batavia, IL); Peter P. Bradford (Austin, TX)
Assignee: International Business Machines Corporation
G06F8/70G06N20/00G06Q50/01G06F11/34G06Q10/06G06Q10/06398
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,331,437
App. No.
15/641,956
Granted
Jun 25, 2019
Kind
B2
Abstract

A cognitive system, method and computer program product for maximizing a productivity of software development by a software development team. The system and method implement cognitive processes for determining what certain organizational factors and their optimal values which correspond to high performing software development teams. Based on the determinations correlating organization factors with productivity increases, the system prescribes what Key Performance Indicators (KPIs) to improve (e.g., increase and decrease), and determine what are the target improvement values. Use of the systems and methods described herein enable development managers and executives to build maximum performance teams (or transform existing teams, boosting their productivity), by leveraging customized quantitative recommendation provided as output. The system and method overcomes inefficiency of existing measures by enabling global and automated ways of maximizing the development productivity by continuously providing customized and targeted performance improvement.

Claims (44)

1. A computer program product comprising a computer-readable storage medium having a computer-readable program stored therein, wherein the computer-readable program, when executed on a computer including at least one hardware processor, causes the computer to:

for each of a plurality of teams,

receive current activities data representing each team member's productivity relating to a product currently being developed; and

receive further current activities data relating to each team member's collaborative interactions; and

perform a cognitive classification of the activities for each of members of each team, and aggregate classifications of team members of each team to generate a respective individual team profile;

generate a respective productivity index function representing desired performance objectives for the team relating to said product currently being developed; and

run a model that is trained using machine learning to determine a most productive team based on historical data comprising individual team profiles, respective said productivity index functions, and product performance data relating to past products developed by respective individual teams;

input said generated individual team profile data and corresponding team productivity index function to said trained model, said trained model correlating said individual team profile to learned positive attributes associated with the most productive development team of said plurality of teams; and

generate using the trained model an output recommending which performance attributes of an individual team can be improved based on the model's correlating that team's data with the learned positive predicting attributes for increasing productivity of that team.

2. The computer program product of claim 1 , when executed on a computer including at least one processor, further causes the computer to:

determine, using the trained model, a quantitative relationship between individual member profiles of a respective team, and said desired performance objectives of said productivity index function for the corresponding team; and

provide based on an analysis of the quantitative relationships, an output indicating one or more key performance indicators to improve and corresponding target improvement values.

3. The computer program product of claim 1 , when executed on a computer including at least one processor, further causes the computer to:

continuously receive data relating to further activities of team members of the individual team over time as said product is being developed, and

use machine learning to train and update, based on received further activities data of individual team members, said model to update individual team profiles for improving said trained model recommendations over time.

4. The computer program product of claim 1 , wherein the performing of the cognitive classification of activities comprises:

defining using real-time and/or historical activities data, a job role for said team member according; and

determining each productivity index function as a goal for each team member in that member's defined job role based on a business cycle and competitive market landscape.

5. The computer program product of claim 1 , when executed on a computer including at least one processor, further causes the computer to:

receive user defined weights for use in training said model, said weights representing a priority set for a particular business objective or parameter of a product being developed by the team.

6. The computer program product of claim 1 , when executed on a computer including at least one processor, further causes the computer to:

generate a display for actively monitoring performance progress of said team, over time, based on the performance attributes recommended for the individual team to be improved, said generated display indicating relative performance of a performance attribute as compared to other teams.

7. The computer program product of claim 1 , when executed on a computer including at least one processor, further causes the computer to:

receive additional accounting data regarding revenue, amount of sales, and cost per product offering; and

determine, using the trained model, said most productive team based on said individual team profiles, said productivity index function, and said additional accounting data.

8. A system comprising at least one processor and a memory coupled to the at least one processor, wherein the memory comprises instructions which, when executed by the at least one hardware processor, cause the at least one processor to:

for each of a plurality of teams,

receive current activities data representing each team member's productivity relating to a product currently being developed; and

receive further current activities data relating to each team member's collaborative interactions; and

perform a cognitive classification of the activities for each of members of each team, and aggregate classifications of team members of each team to generate a respective individual team profile;

generate a respective productivity index function representing desired performance objectives for the team relating to said product currently being developed;

run a model that is trained using machine learning to determine a most productive team based on historical data comprising individual team profiles, respective said productivity index functions, and product performance data relating to past products developed by respective individual teams;

input said individual team profile data and corresponding team productivity index function data to the trained model, said trained model correlating said individual team profile to learned positive attributes associated with the most productive development team of said plurality of teams; and

generate using the trained model an output recommending which performance attributes of an individual team can be improved based on the model's correlating that team's data with the learned positive predicting attributes for increasing productivity of that team.

9. The system as claimed in claim 8 , wherein the at least one hardware processor is further configured to:

determine, using the trained model, a quantitative relationship between individual member profiles of a respective team, and said desired performance objectives of said productivity index function for the corresponding team; and

provide based on an analysis of the quantitative relationships, an output indicating one or more key performance indicators to improve and corresponding target improvement values.

10. The system as claimed in claim 8 , wherein the at least one hardware processor is further configured to:

continuously receive data relating to further activities of team members of the individual team over time as said product is being developed, and

use machine learning to train and update, based on received further activities data of individual team members, said model to update individual team profiles for improving said trained model recommendations over time.

11. The system as claimed in claim 8 , wherein the at least one hardware processor is further configured to:

receive user defined weights for use in training said model, said weights representing a priority set for a particular business objective or parameter of a product being developed by the team.

12. The system as claimed in claim 8 , wherein the at least one hardware processor is further configured to:

generate a display for actively monitoring performance progress of said team, over time, based on the performance attributes recommended for the individual team to be improved, said generated display indicating relative performance of a performance attribute as compared to other teams.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2021
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: KYNDRYL, INC.
Reel/Frame 057885/0644 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 5, 2017
From: BOSS, GREGORY J.; KADOCHNIKOV, NIKOLAY; BRADFORD, PETER P.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 042910/0353 →
Continuity (1)
Related Publication 20190012166A1 · Jan 10, 2019