IP Library Granted Patent US 7,114,149
Granted Patent B2
US 7,114,149 · App. 09/838,578 · Granted Sep 26, 2006

Navigation links in generated documentation

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,114,149
App. No.
09/838,578
Granted
Sep 26, 2006
Kind
B2
Abstract

Methods and systems consistent with the present invention provide an improved software development tool that generates HTML documentation for source code in a software project. The HTML documentation includes graphical and textual documentation. The software development tool utilizes the linking capabilities of HTML to provide navigation links between the graphical and textual documentation, thus facilitating navigation through and viewing of the documentation.

Claims (94)

1. A method in a data processing system for generating documentation for a source code file in a software project, the method comprising the steps of:

selecting a source code file from the project;

identifying the language of the source code;

generating a transient meta model for the source code;

determining whether the file is new, and if the file is new,

adding symbols from the file to the transient meta model by,

obtaining a template for the language, and

parsing the source code with the symbols to the transient meta model;

determining whether the file is updated, and if the file is updated,

updating the symbols from the file to the transient meta model by,

obtaining a template for the language, and

parsing the source code with the updated symbols to the transient meta model;

determining whether the file is deleted, and if the file is deleted,

deleting symbols of the file from the transient meta model by,

obtaining a template for the language, and

parsing the source code with the symbols from the transient meta model;

generating a textual documentation that describes the source code, the textual documentation having portions that correspond to portions of the source code;

generating a diagram including at least one diagram element that visually represents the corresponding portion of the source code; and

correlating the diagram elements to the corresponding portions of the textual documentation by providing hyperlinked references in the diagram that link diagram elements to the corresponding portions of the textual documentation.

2. The method of claim 1 , wherein the step of generating a diagram comprises generating a graphics interchange format (GIF) image of each diagram element and generating an image map for an image of the diagram element images.

3. The method of claim 1 , wherein the documentation is hypertext markup language (HTML) documentation displayable by a web browser.

4. The method of claim 1 , wherein the links between the diagram portion and the text portion are hypertext markup language (HTML) links.

5. A data processing system for generating documentation for a source code file in a software project, comprising:

means for selecting a source code file from the project;

means for identifying the language of the source code;

means for generating a transient meta model for the source code;

means for determining whether the file is new, and if the file is new,

means for adding symbols from the file to the transient meta model by,

means for obtaining a template for the language, and

means for parsing the source code with the symbols to the transient meta model;

means for determining whether the file is updated, and if the file is updated,

means for updating the symbols from the file to the transient meta model by,

means for obtaining a template for the language, and

means for parsing the source code with the updated symbols to the transient meta model;

means for determining whether the file is deleted, and if the file is deleted,

means for deleting symbols of the file from the transient meta model by,

means for obtaining a template for the language, and

means for parsing the source code with the symbols from the transient meta model;

means for generating a textual documentation that describes the source code, the textual documentation having portions that correspond to portions of the source code;

means for generating a diagram including at least one diagram elements that visually represents the corresponding portion of the source code; and

means for correlating the diagram elements to the corresponding portions of the textual documentation by providing hyperlink references in the diagram that link diagram elements to the corresponding portions of the textual documentation.

6. The data processing system of claim 5 , wherein the documentation is hypertext markup language (HTML) documentation displayable by a web browser.

7. The data processing system of claim 5 , wherein the links between the diagram portion and the text portion are hypertext markup language (HTML) links.

8. A computer-readable storage medium containing instructions for controlling a data processing system to perform a method for generating documentation for source code in a software project, the method comprising the steps of:

selecting a source code file from the project;

identifying the language of the source code;

generating a transient meta model for the source code;

determining whether the file is new, and if the file is new,

adding symbols from the file to the transient meta model by,

obtaining a template for the language, and

parsing the source code with the symbols to the transient meta model;

determining whether the file is updated, and if the file is updated,

updating the symbols from the file to the transient meta model by,

obtaining a template for the language, and

parsing the source code with the undated symbols to the transient meta model;

determining whether the file is deleted, and if the file is deleted,

deleting symbols of the file from the transient meta model by,

obtaining a template for the language, and

parsing the source code with the symbols from the transient meta model;

generating a textual documentation that describes the source code, the textual documentation having portions that correspond to portions of the source code;

generating a diagram including at least one diagram element that visually represents the corresponding portion of the source code; and

correlating the diagram elements to the corresponding portions of the textual documentation by providing hyperlink references in the diagram that link diagram elements to the corresponding portions of the textual documentation.

9. The computer-readable storage medium of claim 8 , wherein the step of generating a diagram comprises generating a graphics interchange format (GIF) image of each diagram element and generating an image map of the diagram element images.

10. The computer-readable storage medium of claim 8 , wherein the documentation is hypertext markup language (HTML) documentation displayable by a web browser.

11. The computer-readable storage medium of claim 8 , wherein the links between the diagram portion and the text portion are hypertext markup language (HTML) links.

12. A data processing system, comprising:

a secondary storage device containing a software project, the software project comprising source code;

a memory comprising a software development tool that selects a source code file from the project, identifies the language of the source code, generates a transient meta model for the source code, determines whether the file is new, and if the file is new, acids symbols from the file to the transient meta model by, obtaining a template for the language, and parsing the source code with the symbols to the transient meta model, and determines whether the file is updated, and if the file is updated, updates the symbols from the file to the transient meta model by, obtaining a template for the language, and parsing the source code with the updated symbols to the transient meta model, and determines whether the file is deleted, and if he file is deleted, deletes symbols of the file from the transient meta model by, obtaining a template for the language, and parsing the source code with the symbols from the transient meta model, and generates a documentation that describes the source code, the documentation including a diagram portion and a text portion and having hypertext markup language (HTML) links between the diagram portion and the text portion; and

a processor for running the software development tool.

13. A method for generating a documentation for source code in a software project wherein the documentation includes a diagram portion and a text portion, the method comprising the steps of:

selecting a source code file from the project;

choosing to generate a documentation that describes the source code, the textual documentation having portions that correspond to portions of the source code;

selecting the desired options for the documentation;

identifying the language of the source code;

generating a transient meta model for the source code;

determining whether the file is new, and if the file is new,

adding symbols from the file to the transient meta model by,

obtaining a template for the language, and

parsing the source code with the symbols to the transient meta model;

determining whether the file is undated, and if the file is update,

updating the symbols from the file to the transient meta model by,

obtaining a template for the language, and

parsing the source code with the updated symbols to the transient meta model;

determining whether the file is deleted, and if the file is deleted,

deleting symbols of the file from the transient meta model by,

obtaining a template for the language, and

parsing the source code with the symbols from the transient meta model;

generating the textual portion of the source code documentation;

generating images for diagram elements that correspond to portions of the textual documentation;

mapping the images into regions of the image map according to predefined diagram rules and options selected by the user; and

generating hyperlink references from the regions of the image map of the diagram to the textual documentation.

14. The method of claim 13 , wherein the step of generating textual documentation comprises generating hypertext markup language (HTML) documentation that is displayable by a web browser.

15. The method of claim 13 , wherein the step of generating images comprises generating graphics interchange format (GIF) images that are displayable by a web browser.

16. The method of claim 13 , wherein the step of mapping the images comprises mapping the images into rectangular regions.

Assignments (9)
RELEASE OF SECURITY INTEREST REEL/FRAME 035656/0251 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: BORLAND SOFTWARE CORPORATION; ATTACHMATE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.)
Reel/Frame 062623/0009 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0718 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC); BORLAND SOFTWARE CORPORATION; MICRO FOCUS (US), INC.; SERENA SOFTWARE, INC; ATTACHMATE CORPORATION; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062746/0399 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TO CORRECT TYPO IN APPLICATION NUMBER 10708121 WHICH SHOULD BE 10708021 PREVIOUSLY RECORDED ON REEL 042388 FRAME 0386. ASSIGNOR(S) HEREBY CONFIRMS THE NOTICE OF SUCCESSION OF AGENCY. Recorded Jul 26, 2018
From: BANK OF AMERICA, N.A., AS PRIOR AGENT
To: JPMORGAN CHASE BANK, N.A., AS SUCCESSOR AGENT
Reel/Frame 048793/0832 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ATTACHMATE CORPORATION; BORLAND SOFTWARE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE, INC.; ENTIT SOFTWARE LLC; ARCSIGHT, LLC; SERENA SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0718 →
NOTICE OF SUCCESSION OF AGENCY Recorded May 2, 2017
From: BANK OF AMERICA, N.A., AS PRIOR AGENT
To: JPMORGAN CHASE BANK, N.A., AS SUCCESSOR AGENT
Reel/Frame 042388/0386 →
SECURITY INTEREST Recorded May 13, 2015
From: MICRO FOCUS (US), INC.; BORLAND SOFTWARE CORPORATION; ATTACHMATE CORPORATION; NETIQ CORPORATION; NOVELL, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 035656/0251 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 4, 2008
From: TOGETHERSOFT CORPORATION
To: BORLAND SOFTWARE CORPORATION
Reel/Frame 020317/0308 →
RE-RECORD TO CORRECT THE RECEIVING PARTY'S ADDRESS, PREVIOUSLY RECORDED AT REEL 012051, FRAME 0598. Recorded Oct 24, 2001
From: APTUS, ALEXANDER; CHARISIUS, DIETRICH
To: TOGETHERSOFT CORPORATION
Reel/Frame 012282/0892 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 6, 2001
From: APTUS, ALEXANDER; CHARISIUS, DIETRICH
To: TOGETHERSOFT CORPORATION
Reel/Frame 012051/0598 →