Technical Specification

February 11th, 2007

IntelliParse is implemented using the VS.NET Object Model to parse the C# code modeled by the input software code files. The provided object model allows Avocado to load a FileCodeModel for the selected input files or project and then extract all the CodeElements associated for the generated FileCodeModel. This technique allows for the parsed information to be stored in-memory using a specific object hierarchy, which can then be exported to XML.

Organizing the data in a hierarchy in-memory first makes data manageable and more reliable since the quality of the parsed data can be verified before it is committed to its final form. This allows for optimization as the order in which the data is exported to XML can be strategically placed to enhance the performance of IntelliDraw. XML provides a flexible medium for data collaboration between the two software layers of this application. In turn, there is less overhead required by the system in terms of retaining the code model in a system’s memory. This XML file can be exported and given to another user of Avocado, who might not have access to the software code files, to view the UML diagrams.

Our graphical component, IntelliDraw, will utilize GDI+ to create our representation of the UML diagram using the XML file created by IntelliParse. GDI+ will give us the flexibility to display images and text in whatever fashion we desire; ultimately, giving a better looking UML diagram. The addition of buttons will allow users to hide or show more details of methods in the project. It will also allow users to focus on specific methods. These buttons will be implemented using various form controls, which includes button control.

  1. No comments yet.
  1. No trackbacks yet.