A method and system for generating one or more Computer-executable procedures simultaneously learns from a collection of procedure instances recorded by different users on a variety of computers aligning multiple traces and using the aligned traces to generalize.