- PowerPoint PPT Presentation

About This Presentation
Title:

Description:

Current aspects in Aspect Browser (AB) are generated exclusively ... Ghi.java::13. 7/5/09. CSE 218. 8. Uses [ continued ] (2) RCS (CVS) repository file parser ... – PowerPoint PPT presentation

Number of Views:24
Avg rating:3.0/5.0
Slides: 12
Provided by: vbor8
Learn more at: https://cseweb.ucsd.edu
Category:
Tags: ghi

less

Transcript and Presenter's Notes

Title:


1
Plug-In Aspect enabled Aspect Browser
  • Vadim BokinJonathan Neddenriep

2
Motivation / Problem
  • Current aspects in Aspect Browser (AB) are
    generated exclusively through text search.
  • Programmers would like other means of identifying
    and creating aspects to visualize code.

3
Claim
  • AB can be modified / extended to allow outside
    aspects to be viewed through the existing
    graphical user interface leveraging the map
    metaphor.

4
Proposed Solution
  • Create means to add plug-in aspects to AB which
    are based on the file and line number, instead of
    textual mapping.
  • Add additional menu items to the AB interface to
    allow outside aspect imports.

5
Solution
  • Defined an interface, where the plug-in is to
    return the name of the new aspects and all file
    lines associated with it.
  • Integrated our PluginManager with ABs Menu class
    to generate new Menu items.
  • PluginManager is a ClassLoader that searches
    through specific directories for classes that
    implement our Plug-In Aspect interface.

6
Current Uses
  • We created 2 Plug-ins
  • (1) A flat-file reader where each file is a
  • single aspect and has the format
  • ltAspectNamegtltcolorgt
  • ltFileNamegtltLineNumbergt
  • ltFileNamegtltLineNumbergt
  • ltFileNamegtltLineNumbergt

7
Uses continued
  • EXAMPLE
  • MainMethodsff00ff
  • Abc.java14
  • Def.java17
  • Ghi.java13

8
Uses continued
  • (2) RCS (CVS) repository file parser
  • As parameter takes in a number of filenames
    and processes their respective repository files
    (that have the name filename,v
  • We used CVS during a previous project in cse210
    and now can visually see who actually did all the
    work ? Demo

9
Possible Uses
  • Current CVS parser replicates basic SeeSoft
    functionality.
  • Can be used with Lackwit (types by use)
  • Dynamic code profiling output (can show visually
    what code is being executed). Eg jProf

10
Lessons learned
  • Jumping into the middle of someone elses code
    (AB code) is very difficult.
  • We needed to refine the interface between our
    components before we were able to divide up the
    work.
  • and most important
  • The Map Metaphor is applicable to the information
    extracted from CVS repository
  • This shows that there are many applications for
    AB besides text-based search.

11
Questions?
Write a Comment
User Comments (0)
About PowerShow.com