Diagramas de classe e de sequência auxiliam na compreensão de sistemas, pois abstraem seu comportamento e arquitetura. Porém, manter tais diagramas atualizados a cada modificação feita no código exige muito esforço, além de ser uma atividade propensa a erros. A engenharia reversa estática permite gerar esses diagramas UML de maneira automatizada a partir da análise do código fonte, porém, ela não é capaz de abranger o comportamento do sistema quando o mesmo é orientado a objetos, devido à alta dinamicidade que ele assume durante a execução. A engenharia reversa em tempo de execução merece, portanto, ser mais aprofundada, de modo a gerar diagramas representando features. Este trabalho propõe a ReverseJ, uma ferramenta que gera os diagramas de classe e de sequência da UML para uma feature, a partir da análise de sua execução. Para isso faz-se uso de engenharia reversa em tempo de execução através da orientação a aspectos, para capturar o comportamento de um software na feature desejada. Tal ferramenta alcançou uma alta precisão na avaliação feita sobre os diagramas gerados.