1. A method for executing a task model at runtime, the method comprising: providing a task model comprising a plurality of tasks; executing an application to schedule one or more of the tasks; monitoring a state of one or more of the tasks; detecting a change in the state of one or more of the tasks; and updating, during runtime execution of the application, the task model based on the detected change in the state of one or more of the tasks.