Аннотация:В статье делается обзор методов восстановления и визуализации архитектуры программных систем. Понимание архитектуры жизненно важно для эффективного сопровождения и управление большими программными системами. Однако, по мере развития программных систем с течением времени их архитектура неизбежно меняется. Архитекторам необходимо отслеживать изменения на уровне реализации и соответствующим образом обновлять документацию с описанием архитектуры, что занимает много времени и и зачастую приводит к ошибкам в описании. Для облегчения этого процесса было предложено множество методов автоматического восстановления архитектуры. Несмотря на усилия по повышению точности восстановления архитектуры, существующие решения по-прежнему страдают от двух ограничений. Во-первых, большинство из них используют для восстановления только один или два типа информации, игнорируя потенциальную полезность других источников. В данном обзоре рассмотрены и многокритериальные методы. Во-вторых, они склонны использовать информацию грубо, упуская из виду важные детали. Для выявления таких деталей рассмотрены методы визуализации