1. A computer-implemented method comprising: storing information in a datastore, the information corresponding to a plurality of computer applications, wherein the plurality of computer applications have associated annotations, the annotations comprising a verb describing one or more activities performed by an associated application and a noun describing work objects on which the activities are performed, and wherein users access the applications in the datastore; receiving an input from a user; providing a first verb and a first noun corresponding to a user intent based on said input; and specifying one or more of said plurality of applications based on the verb and noun annotations for the plurality of applications and the first verb and first noun corresponding to the user intent.