erramentas de Dependência para Ja

Sei que muitas perguntas relacionadas foram feitas no SO, mas não consegui encontrar nada totalmente satisfatório - provavelmente porque meu requisito é um pouco diferente de cada uma dessas pergunta

Tenho uma base de código gigantesca que gostaria de dividir em unidades lógicas menores. Para fazer isso, preciso encontrar todas as dependências emaranhadas / circulares e resolvê-las. Devido ao tamanho do espaguete existente, a única estratégia viável parece ser dividir e conquistar, então eu preciso dividir o grande projeto em pedaços menores primeiro ou descascar as partes independentes e lidar com as partes menores separadamente.

A maioria das ferramentas que posso descobrir por lá parece funcionar apenas no nível de classe ou pacote, mas elas não parecem suportar o conceito de subpacotes. Por exemplo, se eu tiver um pacote raiz, 3 pacotes abaixo desse e 5 subpacotes abaixo de cada um dos 3, receberei 1 + 3 + 15 = 19 pacotes, o que me dará um gráfico extremamente complicado. Agora, o que espero poder fazer é analisar primeiro o relacionamento de dependência entre os três pacotes de nível superior (número de pacotes de entrada / saída e quais classes originam essas dependências), limpá-lo nesse nível antes de mergulhar nesses pacotes de nível para trabalhar no próximo níve

Agora, eu usei a Estrutura 101 para esse fim, e funciona muito bem, mas quando o teste termina, o preço do produto é um pouco alto para o meu orçamento. Existe uma solução de código aberto / gratuito disponível por aí?

Desde já, obrigado

questionAnswers(7)

yourAnswerToTheQuestion