軟體架構恢復

軟體架構恢復是一種從软件系統程式或原始碼中提取軟體架構的方法。提取軟體架構的流程包括將許多的程式實體（例如檔案、類別、函數等）轉換為子系統，其轉換的準則可能是和應用程式有關的，也可能和應用程式無關。從中恢復軟體架構的原因是以往的程式沒有架構文件，就算有，也可能已和實際實現的系統有相當的差異，

軟體架構恢復也可能是為了要進行軟體改造，所要求提出的程序。

作法 
大部份軟體架構恢復的作法會針對系統進行靜態程序分析，若是針對物件導向系統，其中有大量的函數多型以及機制，就需要用來理解系統的行為、物件的交叉作用，以這些資料來重建架構。在恢復架構的過程中，會依系統動態分析的結果來決定將程式實體組合成架構元素的方式，並且考慮在中，出現交叉作用的模式、以及其類型（類別以及介面）。

相關條目 
 逆向工程
 軟體考古學
 软件架构

參考資料 

软件架构
資料恢復