The present invention is directed to a system for managing business
knowledge expressed as statements, preferably sentences using a
vocabulary, where such statements may be automated by the generation of
programming language source code or computer program instructions. As
such, the present invention also manages software design specifications
that define, describe, or constrain the programming code it generates or
programs with which it or the code it generates is to integrate. All
information managed within the present invention is maintained within a
relational database that is encapsulated within an object-oriented model.
Each object in this model is subject to version control and
administration using permissions. Each user of the system is an object
and belongs to one or more groups. Users and groups may be granted
privileges. Objects may be created, examined, used, modified, deleted, or
otherwise operated upon only if corresponding permission or privilege has
been granted. The vocabulary managed by the present invention consists of
the function words commonly used in a language, such as the auxiliary
verbs, prepositions, articles, conjunctions, and other essentially closed
parts of speech in English, as well as open parts of speech, such as
nouns, verbs, adjectives, and adverbs.