软体架构恢复是一种从软件系统程式或原始码中提取软体架构的方法。提取软体架构的流程包括将许多的程式实体（例如档案、类别、函数等）转换为子系统，其转换的准则可能是和应用程式有关的，也可能和应用程式无关。从中恢复软体架构的原因是以往的程式没有架构文件，就算有，也可能已和实际实现的系统有相当的差异，软体架构恢复也可能是为了要进行软体改造，所要求提出的程序。
作法.大部份软体架构恢复的作法会针对系统进行静态程序分析，若是针对物件导向系统，其中有大量的函数多型以及机制，就需要用来理解系统的