A computer implemented method of generating a design of a blank workpiece, in a computer readable form, based on a target shape of an article to be formed from the blank workpiece in a spin forming process, wherein the target shape extends along an axis between a first end and a second end , the target shape comprising a base portion and a wall portion , wherein the base portion includes a central flat region at the first end of the target shape and a curved region bordering the central flat region , and wherein the wall portion extends from the curved region of the base portion along the axis to the second end of the target shape, characterised in that the method includes: determining a perimeter shape of the blank workpiece based on a planar representation of the base portion defined by a plurality of perimeter points ; wherein each of the plurality of perimeter points has corresponding coordinates in a plane perpendicular to the axis between the first end and the second end ; and wherein determining the perimeter shape of the blank workpiece comprises, for each of the plurality of perimeter points : determining a vector, in the plane of the perimeter points , that is normal to the planar representation at said perimeter point ; scaling the vector based on at least the curvature of the planar representation at said perimeter point and the length of the target shape between the first end and the second end ; and adding the scaled vector to the coordinates of said perimeter point ; and outputting the perimeter shape in the computer readable form. determining a perimeter shape of the blank workpiece based on a planar representation of the base portion defined by a plurality of perimeter points ; wherein each of the plurality of perimeter points has corresponding coordinates in a plane perpendicular to the axis between the first end and the second end ; and wherein determining the perimeter shape of the blank workpiece comprises, for each of the plurality of perimeter points : determining a vector, in the plane of the perimeter points , that is normal to the planar representation at said perimeter point ; scaling the vector based on at least the curvature of the planar representation at said perimeter point and the length of the target shape between the first end and the second end ; and adding the scaled vector to the coordinates of said perimeter point ; and wherein each of the plurality of perimeter points has corresponding coordinates in a plane perpendicular to the axis between the first end and the second end ; and wherein determining the perimeter shape of the blank workpiece comprises, for each of the plurality of perimeter points : determining a vector, in the plane of the perimeter points , that is normal to the planar representation at said perimeter point ; scaling the vector based on at least the curvature of the planar representation at said perimeter point and the length of the target shape between the first end and the second end ; and adding the scaled vector to the coordinates of said perimeter point ; and determining a vector, in the plane of the perimeter points , that is normal to the planar representation at said perimeter point ; scaling the vector based on at least the curvature of the planar representation at said perimeter point and the length of the target shape between the first end and the second end ; and adding the scaled vector to the coordinates of said perimeter point ; and outputting the perimeter shape in the computer readable form. <EOS>