Claims
- 1. A method comprising:
receiving a system definition comprising subsystems and binary files within subsystems; determining dependency information about binary files; propagating dependency information to determine subsystem dependency information; propagating subsystem dependency information to determine system dependency information; and providing information about dependency.
- 2. The method of claim 1 wherein the system definition is received as a file.
- 3. The method of claim 1 wherein the system definition is received as an XML file.
- 4. The method of claim 1 wherein the system definition is received from a user via interaction with an on-screen graphical user interface.
- 5. The method of claim 1 wherein determining dependency information about binary files comprises, determining that a binary file has a previous version, and using dependency information determined for the previous version when the binary file is unchanged.
- 6. The method of claim 1 wherein determining dependency information about binary files comprises invoking a file dependency determiner with a binary file input.
- 7. The method of claim 1 wherein determining dependency information about binary files comprises invoking one of plural file dependency determiners with a binary file input.
- 8. The method of claim 7 wherein the one of plural file dependency determiners is invoked based on a type of the binary file input.
- 9. The method of claim 1 wherein determining dependency information about binary files defined in the system definition further comprises running plural binary dependency determiners at the same time.
- 10. The method of claim 9 wherein the plural binary dependency determiners run on multiple processors.
- 11. The method of claim 10 wherein the multiple processors are arranged in a distributed computing environment.
- 12. The method of claim 1 wherein providing information about dependency is provided via an application programming interface.
- 13. The method of claim 1 wherein providing information about dependency comprises indicating that an unchanged block in a first subsystem depends on code changed in another subsystem.
- 14. The method of claim 1 wherein providing information about dependency comprises indicating a chain of dependency spanning plural subsystems.
- 15. The method of claim 1 wherein providing information about dependency comprises indicating a chain of dependency spanning plural subsystems and returning to an original subsystem.
- 16. The method of claim 1 wherein providing information about dependency comprises indicating dependent abstractions.
- 17. The method of claim 16 wherein the dependent abstractions are at least one of a basic block, a procedure, or a binary file.
- 18. The method of claim 1 wherein providing information about dependency comprises indicating for a subsystem, a set of unmarked blocks in the subsystem that depend directly or indirectly on changed basic block in another subsystem.
- 19. The method of claim 1 wherein providing information about dependency comprises indicating for a subsystem, a set comprising unchanged blocks in the subsystem that depend directly or indirectly on changed basic blocks in another subsystem.
- 20. A computer-readable medium comprising instructions for performing the method of claim 1.
- 21. A method comprising:
exposing an application programming interface for receiving dependency service requests; receiving a service request via the application programming interface comprising a system definition including subsystems and binary files; determining binary file dependency information; propagating binary file dependency information to determine subsystem dependency information; and propagating subsystem dependency information to determine system dependency information.
- 22. The method of claim 21 further comprising:
marking changes in a subsystem; and propagating marked changes according to the propagated dependency information.
- 23. The method of claim 22 wherein propagating the marked changes, comprises marking unchanged binaries in a dependency relation with the marked changes.
- 24. The method of claim 23 wherein an application program invoking the received service request is a test management program, and the system definition comprises a test coverage analysis service request.
- 25. The method of claim 21 wherein an application program invoking the received service request is a risk management program, and the system definition comprises a risk evaluation analysis service request.
- 26. A computer-readable medium comprising instructions for performing the method of claim 21.
- 27. A computer-based service comprising:
means for determining binary dependencies; means for propagating binary dependencies to identify binaries dependent on binaries in other subsystems; and means for storing dependency information.
- 28. The service of claim 27 further comprising:
means for determining a system definition input comprising plural subsystems; and means for exposing dependency information.
- 29. The service of claim 27 further comprising:
means for determining changed binaries; means for marking changed binaries; and means for marking unchanged binaries dependent on changed binaries.
- 30. A computer-readable medium having executable instructions for performing a method comprising:
receiving a system definition defining subsystems and binary files; determining dependency information about binary files; propagating dependency information to determine subsystem dependency information; propagating the subsystem dependency information to determine system dependency information; marking changes in a subsystem; propagating marked changes comprising marking unchanged binaries in other subsystems dependent on marked changes in the subsystem.
- 31. A computer system comprising:
a processor coupled to memory; binary files stored in memory; and a dependency framework stored in memory, the dependency framework comprising, a component for determining a system definition, a component for determining binary file dependencies, and a component for propagating binary file dependencies to create subsystem and system dependency information.
- 32. The computer system of claim 31 wherein binary file dependencies and dependency information is stored in memory in XML data structures.
- 33. The computer system of claim 31 wherein determined binary file dependencies are stored in binary dependency abstractions, determined subsystem dependency information is stored in subsystem dependency abstractions, and determined system dependency information is stored in system dependency abstractions.
- 34. The computer system of claim 33 wherein dependency abstractions comprise XML files.
- 35. The computer system of claim 34 wherein XML files comprising binary file dependency abstractions have a same name as an associated binary file, and a .xml file extension.
RELATED APPLICATIONS
[0001] The present application is a continuation-in-part of U.S. patent application Ser. No. 10/608,985 filed Jun. 26, 2003, entitled “Mining Dependencies For Testing and Risk Management,” which is incorporated herein by reference.
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
10608985 |
Jun 2003 |
US |
Child |
10638116 |
Aug 2003 |
US |