A case-based approach to software reuse |
| |
Authors: | Gilles Fouqué Stan Matwin |
| |
Affiliation: | (1) Ottawa Machine Learning Group, Department of Computer Science, University of Ottawa, KIN 6N5 Ottawa, Ontario, Canada;(2) Present address: Department of Computer Science, University of California @ Los Angeles, 90024 Los Angeles, CA |
| |
Abstract: | This software reuse system helps a user build programs by reusing modules stored in an existing library. The system, dubbed caesar (Case-basEd SoftwAre Reuse), is conceived in the case-based reasoning framework, where cases consist of program specifications and the corresponding C language code. The case base is initially seeded by decomposing relevant programs into functional slices using algorithms from dataflow analysis. caesar retrieves stored specifications from this base and specializes and/or generalizes them to match the user specification. Testing techniques are applied to the construct assembled by caesar through sequential composition to generate test data which exhibits the behavior of the code. For efficiency, inductive logic programming techniques are used to capture combinations of functions that frequently occur together in specifications. Such combinations may be stored as new functional slices. |
| |
Keywords: | case-based reasoning compositional software reuse dataflow analysis program slicing program specification case base improvement inductive logic programming software testing |
本文献已被 SpringerLink 等数据库收录! |
|