| Jun-Jang Jeng and Betty H.C. Cheng. Using Automated Reasoning to Determine Software Reuse. International Journal of Software Engineering and Knowledge Engineering, 2(4):523--546, December 1992. |
....components represented by natural language may hinder the retrieval process due to the problems of ambiguity, incompleteness, and inconsistency inherent to natural languages. All of the above mentioned problems can be minimized by using formal specifications to represent software components [7, 8, 9, 10, 11, 12, 13]. The major objective of a reuse system is to classify the reusable components and to retrieve them from an existing library [14] Formal specifications facilitate the The work is supported in part by NSF grant CCR 9209873 and a Michigan State University All University Research Initiation ....
Jun-Jang Jeng and Betty H.C. Cheng. Using Automated Reasoning to Determine Software Reuse. International Journal of Software Engineering and Knowledge Engineering, 2(4):523--546, December 1992.
....8, 9] The major objectives of a reuse system are to classify the reusable components, to retrieve them from an existing library, and to modify the retrieved components This work is supported in part by funding from the NSF grants CCR 9209873 and CCR 9407318. to satisfy the query specification [10, 11, 12, 13, 14]. This paper presents specification matching as a method for recognizing and retrieving a set of reusable components that address the objectives of a reuse system. Specification matching is useful not only to retrieve components, but it can also be used to construct a software component hierarchy ....
Jun-Jang Jeng and Betty H.C. Cheng. Using Automated Reasoning to Determine Software Reuse. International Journal of Software Engineering and Knowledge Engineering, 2(4):523--546, 1992.
....in order to generate the appropriate code. Figure 1: Overview of Seed Once Seed has successfully synthesized a procedure or a function, the specification and resultant code are stored in a software component library [17] that is indexed by specifications and accessible via a graphical browser [18]. If no application of rules yields a satisfactory program, Seed informs the user, who may then modify the specification and restart the synthesis. The Seed rule base is made up of three components: rules for pre processing a specification for synthesis, rules for synthesizing programming ....
....programming statements) used to verify the correctness of the synthesized programming statements [6, 7] This paper describes the theory supporting the second and third sets of rules, that is, those rules used for the synthesis of programming structures and the verification of the synthesis. See [5, 10, 18, 19] for details concerning the other components of Seed. Examples to illustrate each type of synthesis rule are presented in the respective discussions. Due to space constraints, a large example is not included in this paper, but the interested reader is referred to [5] for the description of the ....
[Article contains additional citation context not shown here]
Jun-jang Jeng and Betty H. C. Cheng. Using Automated Reasoning to Determine Software Reuse. International Journal of Software Engineering and Knowledge Engineering, 2(4):523--546, December 1992.
....library, and to modify the retrieved components to satisfy the query specification. In previous investigations, the processes for classifying software components to form hierarchy of corresponding specifications and retrieving software components have been formally specified and implemented [1, 3, 4]. Analogical reasoning has long been recognized as an important tool to overcome the search complexity of finding solutions to novel problems [2] Retrieved components may not exactly match the query specification. Analogy presents a basic and challenging question: when are two specifications ....
Jun-Jang Jeng and Betty H.C. Cheng. Using Automated Reasoning to Determine Software Reuse. International Journal of Software Engineering and Knowledge Engineering, 2(4):523--546, 1992.
....techniques. The benefits of formal methods in requirementsdriven software development ( forward engineering ) is well documented [7, 8, 9, 10] One advantage to using rigorous approaches to software engineering is that formal notations are precise, verifiable, and facilitate automated processing [11, 12, 13]. We claim that maintenance of critical existing ( legacy ) code also benefits from formal methods. For example, formal specifications can be reverse engineered from existing code. The resulting formal specifications can then be used as the basis for change requests and the foundation for ....
Jun jang Jeng and Betty H.C. Cheng. Using Automated Reasoning to Determine Software Reuse. International Journal of Software Engineering and Knowledge Engineering, 2(4):523-- 546, December 1992.
....AutoSpec to fully support the two phase approach described in this paper. Additional investigations will address the processing and refinement of candidate objects in order to determine true object definitions. In addition, our investigations into the construction of software component libraries [5, 13] will be used to assist in the identification of object instantiations and class hierarchies. Finally, graphical support for Phase 2 will be used to represent message passing between objects identified in systems. A Specifications of Example proc mns : St St in( S : St ) out( S : St ) f pre: ....
Jun jang Jeng and Betty H.C. Cheng. Using Automated Reasoning to Determine Software Reuse. International Journal of Software Engineering and Knowledge Engineering, 2(4):523--546, December 1992.
.... programming paradigm to the object oriented programming paradigm is being developed [9] Directly related to this work is the potential for applying the results to facilitate software reuse, where automated reasoning is applied to the specifications of existing components to determine reusability [14]. Acknowledgments The authors greatly appreciate the comments and suggestions from the anonymous referees. Also, the authors wish to thank Linda Wills for her efforts in organizing this special issue. Finally, the authors would like to thank the participants of the IEEE 1995 Working Conference on ....
Jun-jang Jeng and Betty H. C. Cheng. Using Automated Reasoning to Determine Software Reuse. International Journal of Software Engineering and Knowledge Engineering, 2(4):523-- 546, December 1992.
....are presented and the classes of the Spectacle library are then examined individually, exploring their contribution to the library as a whole. 2. 1 Design Issues Because we have many projects, involving formal methods, that require the construction and manipulation of formal specifications [26, 27, 28, 29, 30, 31, 32], we need a variety of specification editors that can be embedded into systems or act as stand alone systems. As a result, we designed the Spectacle library, whose components will be used to build editors, to be independent of a particular specification language, reusable in a variety of ....
.... Figure 6: A simple LSL trait Figure 7: The beginning of a LSL specs session 4 Concluding Remarks and Future Investigations Formal methods offers a rigorous approach to many tasks of software development [1, 13, 14, 15, 16] including automated program development [26, 28] software reuse [32, 37] and reverse engineering [29] However, due to the need for preciseness and rigor, the use of formal methods can often be difficult and cumbersome at best. Graphical interfaces to software development environments, those that provide the user with concise visual aids suggesting the meaning or ....
Jun-jang Jeng and Betty H. C. Cheng. Using Automated Reasoning to Determine Software Reuse. International Journal of Software Engineering and Knowledge Engineering, 2(4):523--546, December 1992.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC