Multi-platform software interface and documentation generator
First Claim
1. A method for maintaining consistency between the human interface of a software program and various forms of documentation on a plurality of computing platforms, the method comprising:
- creating an interface definition that defines the functionality of the humanly accessed software functions within a program; and
automatically converting the interface definition to selected formats, the selected formats comprising a source code format and a plurality of documentation formats.
1 Assignment
0 Petitions
Accused Products
Abstract
An interface definition that specifies the functionality of humanly accessed functions within a software program is parsed into statements by a parser in conjunction with a dictionary. The parsed statements are converted to formatted statements by a plurality of formatters resulting in expression of the interface definition in a plurality of selected formats. The selected formats comprise source code formats and various documentation formats. Files generated from source code formatters, such as “C++” formatters, are included in the software build process and facilitate restricting software development to the specified functionality. Changes to the interface definition are propagated to the selected formats resulting in software functionality that is consistent with the various forms of documentation such as on-line help and printed documentation. The present invention was developed in response to the needs of multi-platform product development and facilitates timely and accurate coordination between software development and documentation efforts.
27 Citations
32 Claims
-
1. A method for maintaining consistency between the human interface of a software program and various forms of documentation on a plurality of computing platforms, the method comprising:
-
creating an interface definition that defines the functionality of the humanly accessed software functions within a program; and
automatically converting the interface definition to selected formats, the selected formats comprising a source code format and a plurality of documentation formats. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. An apparatus for maintaining consistency between the human interface of a software program and various forms of documentation on a plurality of computing platforms, the system comprising:
-
a parser configured to receive an interface definition and automatically parse the interface definition into statements; and
a plurality of formatters configured to automatically convert the statements to selected formats, the plurality of formatters comprising documentation formatters and at least one source code formatter, each source code formatter configured to convert the interface definition to a source code format, the documentation formatters configured to convert the interface definition to a plurality of documentation formats. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A system for maintaining consistency between the human interface of a software program and various forms of documentation on a plurality of computing platforms, the system comprising:
-
an interface definition maintained within a source code control system;
a parser configured to automatically parse the interface definition into statements;
a plurality of formatters configured to automatically convert the statements to selected formats, the plurality of formatters comprising documentation formatters and at least one source code formatter, each source code formatter configured to convert the interface definition to a source code format, the documentation formatters configured to convert the interface definition to various documentation formats;
a build process configured to automatically build a software product; and
a test sequence configured to automatically detect errors in the software product.
-
-
32. A system for maintaining consistency between the human interface of a software program and various forms of documentation on a plurality of computing platforms, the system comprising:
-
means for storing and updating an interface definition;
means for automatically parsing the interface definition into statements;
means for automatically converting the statements to selected formats, the selected formats comprising a source code format and various documentation formats;
means for automatically conducting a software build; and
means for automatically detecting errors in the software product.
-
Specification