The need for software component survivability is pressing for mission-critical systems in information warfare. In this chapter, we describe how mission-critical distributed systems can survive component failures or compromises with malicious codes in information warfare. We define our definition of survivability, discuss the survivability challenges in a large mission-critical system in information warfare, and identify static, dynamic, and hybrid survivability models. Furthermore, we discuss the trade offs of each model. Technical details and implementation of the models are not described in this chapter because of space limitations.