1. A computer readable storage medium storing a program of instructions executable by a machine to perform a method of integrating diverse sources of data and data streams comprising: selecting a scenario based on a topic; creating a multi-relational directed graph based on the scenario; identifying and converting resources in accordance with the scenario and updating the multi-directed graph based on the converted resources; identifying data feeds in accordance with the scenario and updating the multi-directed graph based on the data feeds; identifying analytical routines in accordance with the scenario and updating the multi-directed graph using the analytical routines; and identifying data outputs in accordance with the scenario and defining queries to produce the data outputs from the multi-directed graph.