1. A computer-implemented method comprising: constructing a control flow of a software component based on a specification model, said specification model comprising at least one input and at least one requirement referencing said at least one input; and generating at least a partial implementation of said software component based on said control flow and said at least one input and said at least one requirement of said specification model.