This thesis presents a solution procedure for allocating redundant components to their corresponding subsystems (component - system) so as to maximize the reliability of a whole series subsystem. The procedure includes a way for finding an initial feasible solution which is then used for deriving the associated lower and upper bounds for the components used at each stage (subsystem). Given these bounds, the original problem is transformed into a knapsack problem for which an integer programming algorithm is applied. The procedure of finding such lower and upper bounds is simple, and requires little computation time, since the bounds are derived to cut the solution space so effectively that the optimum is almost always contained. Furthermore, it is applicable to problems having a number of constraints which need not be linear. The whole solution procedure is illustrated with numerical examples.