: In distributed and mobile environments, the connections among the hosts on which a software system is running are often unstable. As a result of connectivity losses, the overall availability of the system decreases. The distribution of software components onto hardware nodes (i.e., deployment architecture) may be ill-suited for the given target hardware environment and may need to be altered to improve the software system’s availability. The critical difficulty in achieving this task lies in the fact that determining a software system’s deployment that will maximize its availability is an exponentially complex problem. In this paper, we present an automated, flexible, software architecturebased solution for disconnected operation that increases the availability of the system during disconnection. We provide a fast approximative solution for the exponentially complex redeployment problem, and assess its performance.