A program which when executed on a computer causes the computer to execute steps so as to design a coil spring at an uncompressed condition which coil spring shows a necessary compressed profile at the jounce condition and has a predetermined force line position when compressed, the steps comprising: a) determining at least the necessary compressed profile at the jounce condition and the force line position when the coil spring is compressed, as a design compressed profile and a target force line position, respectively; b) choosing an initial uncompressed profile of the coil spring, which is selected based on basic dimensional information; c) compressing the uncompressed profile, by using finite element analysis, to obtain a compressed profile and a force line position; d) comparing the compressed profile with the design compressed profile; e) repeating the steps c) and d) after making adjustments to the previously uncompressed profile until the difference of the compressed profile from the design compressed profile is within acceptable tolerance of the design compressed profile; f) comparing the force line position with the target force line position; g) repeating the steps c) and f), without repeating of steps d) and e), after automatically making adjustments to the previously uncompressed profile until the difference of the force line position from the target force line position is within acceptable tolerance of the target force line position; and h) repeating the steps c) to g) until the difference of the compressed profile from the design compressed profile is within the acceptable tolerance of the design compressed profile and the difference of the force line position from the target force line position is within the acceptable tolerance of the target force line position. a) determining at least the necessary compressed profile at the jounce condition and the force line position when the coil spring is compressed, as a design compressed profile and a target force line position, respectively; b) choosing an initial uncompressed profile of the coil spring, which is selected based on basic dimensional information; c) compressing the uncompressed profile, by using finite element analysis, to obtain a compressed profile and a force line position; d) comparing the compressed profile with the design compressed profile; e) repeating the steps c) and d) after making adjustments to the previously uncompressed profile until the difference of the compressed profile from the design compressed profile is within acceptable tolerance of the design compressed profile; f) comparing the force line position with the target force line position; g) repeating the steps c) and f), without repeating of steps d) and e), after automatically making adjustments to the previously uncompressed profile until the difference of the force line position from the target force line position is within acceptable tolerance of the target force line position; and h) repeating the steps c) to g) until the difference of the compressed profile from the design compressed profile is within the acceptable tolerance of the design compressed profile and the difference of the force line position from the target force line position is within the acceptable tolerance of the target force line position.