A method for designing, in a system of computer-aided design, a product formed of an assembly of 3D modeled objects comprising screws passing through holes, the designed product being a mechanical system defined for a manufacturing process, the method comprising: - selecting, upon user action, a first object and a second object of the assembly, the first object representing a screw and the second object representing a plate with holes, the first object comprising the publication of an axis and a publication of a face, the second object comprising a publication of an axis for each hole and a publication of a face, each of the first object and the second object having interface information, wherein interface information is a publication enhanced by data to build a fully specified constraint with another compatible interface information; - computing a set of multiple positions of the first object relatively to the second object of the assembly according to the interface information of the first object and the second object; and - displaying simultaneously a representation of the second object and multiple representations of the first object each in one of the computed multiple positions; - choosing, by a user, a position among the displayed representations to complete the assembly; wherein the step of computing a set of positions of the first object relatively to the second object of the assembly comprises, for each combination of interface information of the first object relative to the second object: - computing (50, 52) one matching of the interface information of the first object and the second object; and - if a matching is computed, solving geometric constraints (60, 62), between the first object and the second object with a solver; wherein the simultaneously displayed multiple representations each in one of the computed positions have a level of transparency that is determined according to a ranking, based on predetermined criteria, of the respective one of the computed positions. - selecting, upon user action, a first object and a second object of the assembly, the first object representing a screw and the second object representing a plate with holes, the first object comprising the publication of an axis and a publication of a face, the second object comprising a publication of an axis for each hole and a publication of a face, each of the first object and the second object having interface information, wherein interface information is a publication enhanced by data to build a fully specified constraint with another compatible interface information; - computing a set of multiple positions of the first object relatively to the second object of the assembly according to the interface information of the first object and the second object; and - displaying simultaneously a representation of the second object and multiple representations of the first object each in one of the computed multiple positions; - choosing, by a user, a position among the displayed representations to complete the assembly; wherein the step of computing a set of positions of the first object relatively to the second object of the assembly comprises, for each combination of interface information of the first object relative to the second object: - computing (50, 52) one matching of the interface information of the first object and the second object; and - if a matching is computed, solving geometric constraints (60, 62), between the first object and the second object with a solver;