A computer program product for controlling a device for machining a workpiece, wherein the device comprises a workpiece spindle mounted rotatably about a first axis (A) for receiving the workpiece, and a first and a second machining head, wherein the first machining head has a first tool spindle mounted rotatably about a first tool axis for receiving a first machining tool, wherein the second machining head is configured for receiving a second machining tool, and wherein the computer program product comprises commands that when executed on a computer or a controller of the device for machining a workpiece causes the computer or controller:
- to bring the first machining head with the machining tool arranged thereon into skiving engagement with a first portion of the workpiece and to carry out a first power skiving process;
- and
- at the same time or temporally overlapping therewith, to machine a second portion of the workpiece by means of the second machining tool, and in so doing, to variably position and/or variably orient the second machining head relative to the first machining head and independently of the first machining head.