The authors consider a system with m modules as components. These modules are composed of parts of finitely many types, and the number of parts of each type that is needed in each of the modules is given, e.g., module i requires nui parts of type u. Parts of the same type may have different reliabilities, but they are functionally interchangeable. A module works if and only if all of its parts work, i.e., the internal composition of the modules has series structure. An assembly of the modules consists of an assignment of each of the ΣuΣinui parts to the modules such that each module meets its specification by getting the required number of parts of each type. Such an assembly is called monotone if the best parts of each type go to one module, the next best parts of each type go to a second module, and so on, until finally the last module gets the worst part of each type. The authors prove that for coherent systems, there always exists a monotone assembly which maximizes the reliability of the system. Furthermore, they obtain sufficient conditions under which every optimal assembly is monotone.