Simplifying maintenance of large software systems
AssigneeOracle International Corporation
InventorAnuj Kumar
Life of this patent
Estimating the term…
Abstract
An aspect of the present invention simplifies maintenance of a software system by indicating the additional bug fixes that are to be tested when a bug is indicated to be fixed. In an embodiment, a user is required to indicate a list of software units and a first bug to indicate that the list of software units have been modified to fix the first bug. An analysis tool identifies a list of use cases, with each use case requiring execution of at least one of the list of software units. The analysis tool then determines a set of dependent bugs fixed earlier in the software system, where each of the set of dependent bugs affects at least one of the list of use cases. The set of dependent bugs are displayed as requiring further testing in view of fixing of the first bug.
Claims20
A method of simplifying maintenance of a software system organized as a plurality of software units, said software system operable to provide a plurality of use cases to users of said software system, said method comprising:
- receiving a list of software units and a first bug, to indicate that said list of software units have been modified to fix said first bug;
- identifying a list of use cases, with each use case requiring execution of at least one of said list of software units, said list of use cases being contained in said plurality of use cases;
- determining, at a time instant, a set of dependent bugs of a plurality of bugs, wherein said plurality of bugs are fixed earlier than said time instant in said software system, wherein a bug of said plurality of bugs is included in said set of dependent bugs only if said bug affects at least one of said list of use cases,
- wherein said set of dependent bugs is a subset of said plurality of bugs such that the number of bugs in said set of dependent bugs is less than the number of bugs in said plurality of dependent bugs;
- and
- displaying said set of dependent bugs as requiring further testing in view of fixing of said first bug.
A non-transitory machine readable medium storing one or more sequences of instructions for causing a system to facilitate simplifying maintenance of a software system organized as a plurality of software units, said software system operable to provide a plurality of use cases to users of said software system, wherein execution of said one or more sequences of instructions by one or more processors contained in said system causes said system to perform the actions of:
- receiving a list of software units and a first bug, to indicate that said list of software units have been modified to fix said first bug;
- identifying a list of use cases, with each use case requiring execution of at least one of said list of software units, said list of use cases being contained in said plurality of use cases;
- determining, at a time instant, a set of dependent bugs of a plurality of bugs, wherein said plurality of bugs are fixed earlier than said time instant in said software system, wherein a bug of said plurality of bugs is included in said set of dependent bugs only if said bug affects at least one of said list of use cases,
- wherein said set of dependent bugs is a subset of said plurality of bugs such that the number of bugs in said set of dependent bugs is less than the number of bugs in said plurality of dependent bugs;
- and
- displaying said set of dependent bugs as requiring further testing in view of fixing of said first bug.
A computing system comprising:
- a plurality of server systems executing a software system organized as a plurality of software units, said software system operable to provide a plurality of use cases to users of said software system;
- a client system operable by a user to invoke any of said plurality of use cases in said software system;
- and
- a maintenance system comprising at least one processor and a memory, wherein said at least one processor retrieves instructions from said memory and executes the retrieved instructions, wherein execution of the retrieved instructions causes said maintenance system to perform the actions of:
- receiving a list of software units and a first bug, to indicate that said list of software units have been modified to fix said first bug, said list of software units being contained in said plurality of software units;
- identifying a list of use cases, with each use case requiring execution of at least one of said list of software units, said list of use cases being contained in said plurality of use cases;
- determining, at a time instant, a set of dependent bugs of a plurality of bugs, wherein said plurality of bugs are fixed earlier than said time instant in said software system, wherein a bug of said plurality of bugs is included in said set of dependent bugs only if said bug affects at least one of said list of use cases,
- wherein said set of dependent bugs is a subset of said plurality of bugs such that the number of bugs in said set of dependent bugs is less than the number of bugs in said plurality of dependent bugs;
- and
- displaying said set of dependent bugs as requiring further testing in view of fixing of said first bug.
Dependencies are inferred from the claim text.