Presentation is loading. Please wait.

Presentation is loading. Please wait.

Agents for Case-based software reuse Stein Inge Morisbak Web:

Similar presentations


Presentation on theme: "Agents for Case-based software reuse Stein Inge Morisbak Web:"— Presentation transcript:

1 Agents for Case-based software reuse Stein Inge Morisbak E-mail: stein@bdc.nostein@bdc.no Web: http://www.ifi.uib.no/staff/steinhttp://www.ifi.uib.no/staff/stein Consultant Cand. Polit. DEPARTMENT OF INFORMATION SCIENCE EDBBC ROOTS 2001

2 References Case-based support for rapid application development, Bjørnar Tessem, R. Alan Whitehurst, and Christopher L. Powell. In SEKE’99 Proceedings of the 11 th International Conference on Software Engineering and Knowledge Engineering, pages 192– 196, Skokie, Illinois, 1999. Knowledge Systems Institute. The road to ASCRARAD, The development of Agent Support for a Case-based Reuse Application for Rapid Application Development, Stein Inge Morisbak, Master Thesis (Hovedoppgave), Department of Information Science, University of Bergen, 2000. Agents for software reuse, Stein Inge Morisbak and Bjørnar Tessem, Applied Artificial Intelligence, Vol: 15, No: 3, Page: 297- 332, Taylor and Francis Ltd, London, March 2001.

3 Domain Activity: Reuse of previously engineered components (OO software development). Problem: Actual retrieval and understanding of the class library in, e.g., Java. Solution: Intelligent agents in a case-based tool for software reuse.

4 Solution How: The cooperating agents assist the user in retrieval of code for potential reuse in an automated way and in the background. Why: Makes it possible for the developer to concentrate fully on her task. What: A tool that aids in program understanding and adaptation. It allows an exploratory approach to program development and increases reuse efficiency.

5 Enhancing reusability Java: Encapsulation Inheritance Polymorphism Write once - run anywhere Java Reflection A case-based retrieval and reuse tool: Helps the developer to locate reusable code. Aids in program understanding and adaptation.

6 Environment I Case-based support for Rapid Application Development The tool matches Java classes from the class repository (base cases) to the target case (the class under construction) and then suggests similarities between them.

7 Case-based RAD

8 Environment II Agent Supported Case-based Retrieval Agent support is added to the retrieval mechanism of the tool. The cooperating agents assist the user in retrieval of code for potential reuse in an automated way and in the background.

9 ASCRARAD

10 The Manager Agent Interacts with the user Controls retrieval process Monitors coding Interprets code Creates Target Case Passes a message to the Coordinators

11 The Coordinator Agents Are "package cases". Estimates the probability of a good match in its package, based on similarities in target and package (types and class name). Passes a message to its "Workforce" if it believes that a good match may be found.

12 The Workforce Agents Possesses a case description. Matches target with base (itself). If the match is good it passes a message to the Manager The Manager collects all retrieved cases and sorts them by match value.

13 Example Run

14 Conclusions The set of features that can be automatically extracted utilizing the Java reflective capabilities can be effectively used to retrieve appropriate components for subsequent reuse.

15 Conclusions (continued) Successful introduction of agents. Provide their tasks in time and more efficiently than if the user were controlling the process. Frees the users` hands and mind.

16 Conclusions (continued) The tool helps the developer to locate code for potential reuse in an automated way, and the tool aids in program understanding and adaptation. It allows an exploratory approach to program development and optimizes reuse efficiency.


Download ppt "Agents for Case-based software reuse Stein Inge Morisbak Web:"

Similar presentations


Ads by Google