1. A method for performing a software tutoring application distributed between an Internet client node and an Internet server node comprising: providing, on an Internet client node, a model-based user interface generating module for generating direct manipulation graphical user interfaces displayable at said Internet client node; sending a first specification corresponding with a software tutoring application from an Internet server node to said model-based user interface generating module on said Internet client node, wherein said first specification is received at said Internet client node using an Internet browser, and wherein said first specification includes a collection of entity representations of said software tutoring application, each said entity representation having an associated predetermined entity definition for defining a structure and semantics corresponding with said entity representation; transforming said collection of entity representations of said first specification, at said Internet client node, into a corresponding set of tutoring application programming entity data types having direct manipulation graphical representations, wherein: (A1) for at least some of said tutoring application subject matter programming entity data types, said user interface generating module on said Internet client node determines a display characteristic not provided in said first specification; and (A2) for at least a portion of said entity representations of said collection, prior to receipt of said first specification at said model-based user interface generating module on the Internet client node, said associated predetermined entity definitions are undefined for said user interface generating module, and wherein at least some of said associated predetermined entity definitions for said portion of the entity representations are utilized-in the transformation step; displaying on said Internet client node a first user interface generated by said user interface generating module using said first specification; activating said user interface generating module for responding to each of a plurality of user inputs to said first user interface on said Internet client node, each said input resulting in one of: creating and deleting instantiations of said tutoring application subject matter programming entity data types, wherein each response to each of the user inputs is independent of communication with said Internet server node; and receiving at the Internet server node selected information entered or created at the Internet client node by a user, performing an analysis of the selected information, automatically generating performance information relating to the user, and transmitting the performance information from the Internet server node to the Internet client node and said user interface generating module.