Ideally in cellular manufacturing systems, a family of parts will be processed in its entirety within a machine cell that consists of one or more machine types. In most practical problems a non-ideal situation prevails, in that the individual part and machine groupings are usually connected. A part might require processing in a cell other than its own (called a bottleneck part). Similarly, a machine can process a part assigned to a cell other than its own (called a bottleneck machine). Research investigations have been reported to attain economies of production, either by duplicating bottleneck machines or by subcontracting bottleneck parts. The research takes an integrated approach to develop a linear binary programming model for a cellular manufacturing system which simultaneously utilizes machine duplication and part subcontracting to maximize net savings in costs. As the linear model representation has been proven to be NP-hard, a heuristic solution algorithm will be developed. Suitable measures of performance have been established to determine the accuracy of the solution and the effectiveness of the algorithm. Given the budgetary restriction a parts manufacturing company has to work with, the solution algorithm for the model, and the subsequent development of hosts of computer programs, will determine the bottleneck machines that need to be duplicated and the bottleneck parts that need to be subcontracted.