Method and apparatus for software component analysis
First Claim
1. A method of analyzing a software component that can be visually moved within an application builder tool running on a computer, said software component being a part of a first class, the method comprising:
- obtaining said software component to be analyzed;
determining if said software component has an associated information class; and
querying said information class about information stored within said information class, when it is determined that said software component has said associated information class, wherein said information class is arranged to include details associated with visually displaying the software component.
0 Assignments
0 Petitions
Accused Products
Abstract
Methods, software, and apparatus for analyzing a software component within an application builder tool are disclosed. The present invention relates, in one aspect, to a method for analyzing a software component that can be visually moved within an application builder tool running on a computer. The method involves obtaining the software component to be analyzed and determining if the software component has an associated information class. When it is determined that the software component has an associated information class, the information class is queried about information stored within the information class, otherwise automatic analysis using design patterns is applied to analyze the class. In one embodiment, the information stored within the information class relates to methods, properties, and/or events.
-
Citations
53 Claims
-
1. A method of analyzing a software component that can be visually moved within an application builder tool running on a computer, said software component being a part of a first class, the method comprising:
-
obtaining said software component to be analyzed;
determining if said software component has an associated information class; and
querying said information class about information stored within said information class, when it is determined that said software component has said associated information class, wherein said information class is arranged to include details associated with visually displaying the software component. - View Dependent Claims (2, 3, 4, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
identifying a set of methods associated with said first class;
applying at least one design pattern to identify a first property associated with said software component, said first property being a part of a set of properties associated with said first class; and
identifying said first property associated with said software component.
-
-
4. A method of analyzing a software component as recited in claim 3 wherein said step of applying at least one design pattern to identify said first property associated with said software component includes the sub-step of searching for at least one method which defines said first property.
-
8. A method of analyzing a software component as recited in claim 3 wherein said set of properties is identified using a reflection process.
-
9. A method of analyzing a software component as recited in claim 3 wherein said first property is a public property.
-
10. A method of analyzing a software component as recited in claim 1 wherein when it is determined that said software component does not have an associated information class, the method further includes:
-
identifying a set of methods associated with said first class;
applying at least one design pattern to identify a first event associated with said software component, said first event being a part of said set of events associated with said first class; and
identifying said first event associated with said software component.
-
-
11. A method of analyzing a software component as recited in claim 10 wherein said step of applying at least one design pattern to identify said first event associated with said software component includes the sub-step of searching for at least one method which defines said first event.
-
12. A method of analyzing a software component as recited in claim 10 wherein said set of methods is identified using a reflection process.
-
13. A method of analyzing a software component as recited in claim 1 wherein when it is determined that said software component does not have an associated information class, the method further includes:
-
identifying a set of methods associated with said first class;
applying a least one design pattern to identify a first method associated with said software component, said first method being a part of said set of methods associated with said first class; and
identifying said first method associated with said software component.
-
-
14. A method of analyzing a software component as recited in claim 13 wherein said first method is a public method.
-
15. A method of analyzing a software component as recited in claim 1 wherein said software component and said information class are created using the same computer-related language.
-
16. A method of analyzing a software component as recited in claim 1 wherein said software component is a Java™
- Bean and said information class is a BeanInfo class, said Java™
Bean and said BeanInfo class being created using the Java™
programming language.
- Bean and said information class is a BeanInfo class, said Java™
-
17. A method of analyzing a software component as recited in claim 1 wherein said software component is reusable and configurable.
-
5. A method of analyzing a software component that can be visually moved within an application builder tool running on a computer, the software component being a part of a first class, the method comprising:
-
obtaining the software component to be analyzed;
determining if the software component has an associated information class;
querying the information class about information stored within the information class when it is determined that the software component has the associated information class, the information stored within the information class being related to at least one of methods, properties, and events;
identifying a set of methods associated with the first class when it is determined that the software component does not have the associated information class;
applying at least one design pattern to identify a first property associated with the software component when it is determined that the software component does not have the associated information class, the first property being a part of a set of properties associated with said first class, wherein applying the at least one design pattern includes searching for at least one method which defines the first property, and searching for the at least one method which defines the first property includes determining whether the first property meets the design pattern and adding the first property to a list of properties associated with the software component when it is determined that the first property meets the design pattern; and
identifying the first property associated with the software component when it is determined that the software component does not have the associated information class. - View Dependent Claims (6, 7)
-
-
18. A method of analyzing a software component that can be visually moved within an application builder tool running on a computer, said software component being a part of a first class, the method comprising:
-
obtaining said software component to be analyzed;
identifying a set of methods associated with said first class;
applying at least one design pattern to identify a first property associated with said software component, said first property being a part of a set of properties associated with said first class; and
identifying said first property associated with said software component. - View Dependent Claims (19, 23, 24, 25, 26, 27, 28, 29)
applying at least one design pattern to identify a first event associated with said software component, said first event being a part of a set of events associated with said first class; and
identifying said first event associated with said software component.
-
-
26. A method of analyzing a software component as recited in claim 25 wherein said step of applying at least one design pattern to identify said first event associated with said software component includes the sub-step of searching for at least one method which defines said first event.
-
27. A method of analyzing a software component as recited in claim 26 wherein said set of methods is identified using a reflection process.
-
28. A method of analyzing a software component as recited in claim 18 further including:
-
applying a least one design pattern to identify a first method associated with said software component, said first method being a part of said set of methods associated with said first class; and
identifying said first method associated with said software component.
-
-
29. A method of analyzing a software component as recited in claim 28 wherein said first method is a public method.
-
20. A method of analyzing a software component that can be visually moved within an application builder tool running on a computer, the software component being a part of a first class, the method comprising:
-
obtaining the software component to be analyzed;
identifying a set of methods associated with the first class;
applying at least one design pattern to identify a first property associated with the software component, wherein applying the at least one design pattern to identify the first property includes searching for at least one method which defines the first property, and searching for the at least one method which defines the first property includes determining whether the first property meets the design pattern and adding the first property to a list of properties associated with the software component when it is determined that the first property meets the design pattern, the first property being a part of a set of properties associated with the first class; and
identifying the first property associated with the software component. - View Dependent Claims (21, 22)
-
-
30. A computer system for collecting information associated with a software component comprising:
-
a computer coupled with at least one memory device which holds therein a builder tool, said builder tool running on said computer, said builder tool being arranged to analyze said software component, said computer being arranged to;
(a) obtain said software component to be analyzed by said builder tool, said software component being a part of a first class, said software component being visually manipulatable within said builder tool;
(b) determine if said software component has an associated information class, said information class including at least one of methods, properties, and events; and
(c) query said information class about information stored within said information class when it is determined that said associated information class is in existence, the information stored within said information class being arranged to include details associated with visually displaying said software component. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37)
identify a set of properties associated with said first class when it is determined that said associated information class is not in existence;
apply at least one design pattern to identify a first property associated with said software component, said first property being a part of said set of properties associated with said first class; and
identifying said first property associated with said software component.
-
-
32. A computer system for collecting information associated with a software component according to claim 31 wherein said computer is further arranged to search for at least one method which defines said first property.
-
33. A computer system for collecting information associated with a software component according to claim 30 wherein said computer is further arranged to:
-
identify a set of methods associated with said first class when it is determined that said associated information class is not in existence;
apply at least one design pattern to identify a first event associated with said software component, said first event being a part of said set of events associated with said first class; and
identifying said first event associated with said software component.
-
-
34. A computer system for collecting information associated with a software component according to claim 33 wherein said computer is further arranged to search for at least one method which defines said first event.
-
35. A computer system for collecting information associated with a software component according to claim 30 wherein said software component and said information class are created using the same language.
-
36. A computer system for collecting information associated with a software component according to claim 35 wherein said software component is a Java™
- Bean and said information class is a BeanInfo class, said Java™
Bean and said BeanInfo class being created using the Java™
programming language.
- Bean and said information class is a BeanInfo class, said Java™
-
37. A computer system for collecting information associated with a software component according to claim 35 wherein said software component is reusable and configurable.
-
38. A computer-readable medium comprising computer-readable program code devices configured to cause a computer to:
-
run a software program on said computer, said software program being an application builder tool;
obtain a software component to be analyzed by said software program, said software component being a part of a first class, said software component being visually manipulatable within said software program;
determine if said software component has an associated information class, said information class including at least one of methods, properties, and events; and
query said information class about information stored within said information class when it is determined that aid associated information class is in existence, wherein said information class is arranged to include details associated with visually displaying said software component. - View Dependent Claims (39, 40, 41, 42, 43, 44, 45, 46)
identify a set of methods associated with said first class when it is determined that said associated information class is not in existence;
apply at least one design pattern to identify a first property associated with said software component, said first property being a part of a set of properties associated with said first class; and
identifying said first property associated with said software component.
-
-
40. A computer-readable medium comprising computer-readable program code devices according to claim 39 wherein the program code devices are further arranged to search for at least one method which defines said first property.
-
41. A computer-readable medium comprising computer-readable program code devices according to claim 38 wherein the program code devices are further arranged to:
-
identify a set of methods associated with said first class when it is determined that said associated information class is not in existence;
apply at least one design pattern to identify a first method associated with said software component, said first method being a part of said set of methods associated with said first class; and
identifying said first method associated with said software component.
-
-
42. A computer-readable medium comprising computer-readable program code devices according to claim 38 wherein said software component and said information class are created using the same language.
-
43. A computer-readable medium comprising computer-readable program code devices according to claim 42 wherein said software component is a Java™
- Bean and said information class is a BeanInfo class, said Java™
Bean and said BeanInfo class being created using the Java™
programming language.
- Bean and said information class is a BeanInfo class, said Java™
-
44. A computer-readable medium comprising computer-readable program code devices according to claim 42 wherein said software component is reusable and configurable.
-
45. A computer-readable medium comprising computer-readable program code devices according to claim 38 wherein the program code devices are further arranged to:
-
identify a set of methods associated with said first class when it is determined that said associated information class is not in existence;
apply at least one design pattern to identify a first event associated with said software component, said first event being a part of a set of events associated with said first class; and
identifying said first event associated with said software component.
-
-
46. A computer-readable medium comprising computer-readable program code devices according to claim 45 wherein the program code devices are further arranged to search for at least one method which defines said first event.
-
47. A software component that can be visually moved within a builder tool running on a computer, said software component being a part of a first class, said software component including:
-
computer code that definer an information class, the information class including information used to visually display the software component using the computer, the information further being used to enable the software component to be visually moved within the builder tool; and
computer code that define at least one of methods, properties, and events, said at least one of methods, properties, and events being associated with said information class and supported by said first class. - View Dependent Claims (48, 49, 50, 51, 52, 53)
-
Specification