Software development tool for sharing test and deployment assets
First Claim
1. A method for sharing reusable software development assets comprising:
- componentizing a plurality of software components, each software component having a set of well defined interfaces;
cataloging the plurality of software components within different granularity levels, said granularity levels including a building block level and a system level, wherein at least a portion of the software components of the system level are formed using a plurality of software components of the building block level;
identifying a plurality of test assets, each test asset being associated with at least one of the software components, wherein the test assets include assets for functional testing, user acceptance testing, and performance testing; and
storing said software components and said test assets in a searchable asset repository, wherein the asset repository is accessible by a plurality of test teams, wherein the plurality of teams include teams performing different types of testing, wherein the different types of testing include functional testing, user acceptance testing, and performance testing, whereby functional test teams, user acceptance test teams, and performance test teams are able to access test assets of other teams performing tests upon related software components.
1 Assignment
0 Petitions
Accused Products
Abstract
A solution for sharing assets associated with componentized software units (software components) having a set of well defined interfaces. Each software component can be associated with a particular level of granularity and can be formed from one or more other lower-level software components. Each software components can be associated with one or more test assets as well as one or more deployment assets. The software components and associated assets can be stored in one or more shared asset repositories. Solutions and/or solution templates can be rapidly developed using automated tools associated with the shared asset repository, as previous design, test, and deployment efforts are able to be strongly leveraged.
88 Citations
20 Claims
-
1. A method for sharing reusable software development assets comprising:
-
componentizing a plurality of software components, each software component having a set of well defined interfaces;
cataloging the plurality of software components within different granularity levels, said granularity levels including a building block level and a system level, wherein at least a portion of the software components of the system level are formed using a plurality of software components of the building block level;
identifying a plurality of test assets, each test asset being associated with at least one of the software components, wherein the test assets include assets for functional testing, user acceptance testing, and performance testing; and
storing said software components and said test assets in a searchable asset repository, wherein the asset repository is accessible by a plurality of test teams, wherein the plurality of teams include teams performing different types of testing, wherein the different types of testing include functional testing, user acceptance testing, and performance testing, whereby functional test teams, user acceptance test teams, and performance test teams are able to access test assets of other teams performing tests upon related software components. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A software development graphical user interface comprising:
-
a user configurable lab, wherein the lab includes a plurality of graphical objects representing software components, wherein each software component is a componentized software unit having a set of well defined interfaces, and wherein each software component is categorized into one of a plurality of granularity level, said granularity levels including a building block level, a system level, and a solution level, and wherein each software component is associated with a plurality of test assets;
a functional development view of the lab that includes a plurality of graphical objects for functional test assets associated with the software components established for the lab; and
an integration testing view of the lab automatically generated at least in part using previously stored functional test assets and software components specified in the functional development view.
-
-
11. A method used for developing software comprising:
-
storing a plurality of assets within a shared asset repository, said assets comprising software components and test assets associated with the software components;
categorizing said assets by granularity level, wherein the stored software components comprise foundation software components and composite software components, wherein each composite software component comprises a plurality of foundation software components having a granularity level one lower than the composite software component;
identifying criteria for a new software component;
automatically determining at least one stored composite software component having similar criteria as the identified criteria by searching the shared asset repository, wherein the composite software component is categorized at the same level of granularity as the new software component;
utilizing a development interface to construct the new software component from a plurality of foundation software components associated with the at least one composite software components; and
testing the new software component utilizing at least one test asset previously stored within the shared asset repository that is associated with a software component selected from a group consisting of the foundation software components upon which the new software component was constructed and the automatically determined composite software component. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification