1. A computer-implemented method, comprising: receiving, from a user via a user interface, a task specification in natural language form; parsing, by a processor, the task specification into a plurality of components by performing a grammatical analysis to identify the plurality of components and relationships among the plurality of components, wherein the plurality of components comprise a primary term, a verb, a subject, and a modifier; creating, by the processor, a search query from the plurality of components and the relationships among the plurality of components, wherein the search query comprises selectable options for determining the relationships; searching, by the processor and using the search query, a database for an existing concept having a pattern that approximates at least a portion of the plurality of components, the concept including semantic meanings that are representable by textual patterns; identifying, by the processor, any components of the plurality of components that are not included in the existing concept; building, by the processor, a new concept that combines the existing concept and the components of the plurality of components that are not included in the existing concept; and displaying, via the user interface, the new concept in natural language form, decomposed components of the new concept, and corresponding relationships between the new concept and the decomposed components of the new concept, wherein the corresponding relationships are displayed through a connective line between the new concept and the decomposed components of the new concept.