1. A computer implemented method of developing a system architecture, performed by at least one processor of at least one computing device, comprising: defining, by the at least one processor, a plurality of resources constraints max N R1 ,. .. max N Rn , for a plurality of kinds of resources R 1. .. Rn, wherein each resource constraint maxN Ri is a maximum number of a kind of resource Ri available to construct the system architecture, wherein 1≦i≦n and n is an integer greater than 1; defining, by the at least one processor, a plurality of constraint values comprising a constraint value for each optimization parameter of at least three optimization parameters for the system architecture, wherein the at least three optimization parameters comprise a final optimization parameter; defining, by the at least one processor, a design space as a plurality of variants representing different combinations of a number of each kind of resource R 1 , Rn available to construct the system architecture, wherein each variant is a vector of the form: 
 V n =( N R1 ,. .. N Rn ) wherein N Ri 1≦i≦n represents the number of the kind of resource Ri, wherein based on the resource constraints, 1≦N Ri ≦max N Ri ; determining, by the at least one processor, a plurality of satisfying sets of variants by, for each of the optimization parameters except for the final optimization parameter: generating a universe of discourse set by sorting the plurality of variants of the design space; assigning a membership value to each variant of the universe of discourse set, wherein each membership value is within an interval [0,1], wherein, for each respective variant of the universe of discourse set, the membership value assigned to said each respective variant indicates a position of said each respective variant in the universe of discourse set; determining a satisfying set of variants from the universe of discourse set by determining a border variant of the universe of discourse set, wherein each variant of the satisfying set substantially satisfies the constraint value for the optimization parameter, wherein the border variant is the last variant of the universe of discourse set to satisfy the constraint value for the optimization parameter such that all variants to one side of the border variant in the universe of discourse set satisfy the constraint value for the optimization parameter and all variants to the other side of the border variant in the universe of discourse set do not satisfy the constraint value for the optimization parameter, and wherein the border variant is determined by performing a fuzzy search of the universe of discourse set using the corresponding membership values; determining, by the at least one processor, a set of variants based on an intersection of the plurality of satisfying sets of variants for the optimization parameters except the final optimization parameter; for the final optimization parameter: generating an ordered list of variants by sorting the set of variants; selecting a variant from the set of variants based on a position of the variant in the ordered list of variants; and developing, using at least one of the at least one processor and at least one other computer hardware, the system architecture using the selected variant.