The problem faced by many of today's software engineers is to build and maintain broad families of large systems in a cost-effective and timely manner. Because the market demands rapid creation and modification of systems in response to evolving requirements, extensive flexibility is needed. This situation has two implications: first, basic system demands have to be met quickly; second, responses to requested variations have to be rapid and effective. One approach to cycle-time improvement that has been studied extensively is software reuse. Current reuse techniques include system synthesis using application-generator technologies and component-based development techniques. On the basis of some experimental systems work, we suggest that a new approach might merit increased attention from the research community. The approach is based on the integration of large, application-scale, binary components, such as shrink-wrapped software packages. We have demonstrated the aggressive application of this idea in the development of a fault-tree analysis tool that supports new analysis techniques developed by Dugan at the University of Virginia.