Separar Camadas

Bom dia pessoal,

Meu projeto tem uma classe Analise, essa classe analise, tem metodos para abrir um arquivo e pegar frases de 150 caracteres, metodo para iniciar buscas dessas frases usando o motor google, e o processamento do retorno que seria os links, pois bem, pensando em padroes de projeto, em separação de camadas alguem tem alguma sugestão nesse caso? por estar tudo dentro de Analise acredito que tenha como separar

Abço

Camadas é um padrão de projeto arquitetural para separação de componentes por responsabilidade, favorecendo o princípio da coesão. As camadas básicas são apresentação, negócios e persistência. Porém, pense primeiramente na responsabilidade de cada componente individual. Por exemplo, faz sentido a classe Analise prover o serviço de abrir um arquivo? isso tem a ver com análise? À medida que vc decompor seu sistema em componentes coesos, ficará mais claro como agrupá-los em camadas.

abraços

REGRA DE TELA = ACTION
REGRA DE NEGOCIO = MANAGER
CONSULTAS BANCO = DAO