Apparatus with accompanying subsystems and methods for developing conversational computer applications. As a user interface, the apparatus allows for a user to initiate the conversation. The apparatus also answers simple and complex questions, understands complex requests, pursues the user for further information when the request is incomplete, and in general provides customer support with a human like conversation while, at the same time, it is capable to interact with a company's proprietary database. As a development tool, the apparatus allows a software developer to implement a conversational system much faster than takes, with current commercial systems to implement basic dialog flows. The apparatus contains three major subsystems: a state transition inference engine, a heuristic answer engine and a parser generator with semantic augmentations. A main process broker controls the flow and the interaction between the different subsystems. The state transition inference engine handles requests that require processing a transaction or retrieving exact information. The heuristic answer engine answers questions that do not require exact answers but enough information to fulfill the user's request. The parser generator processes the user's natural language request, that is, it processes the syntactical structure of the natural language requests and it builds a conceptual structure of the request. After the parser generator processes the user's request, a main process broker feeds the conceptual structure to either the heuristic answer engine or to the state transition inference engine. The interaction between the main process broker and the subsystems creates a conversational environment between the user and the apparatus, while the apparatus uses information from proprietary databases to provide information, or process information, during the course of the conversation. The apparatus is equipped with a programming interface that allows implementers to declare and specify transactions based requests and answers to a multiplicity of questions. The apparatus may be used with a speech recognition interface, in which case, the apparatus improves the recognition results through the context implicitly created by the apparatus.