jprogrammer, sem lazy loading e com métodos genéricos, você vai ter alguns problemas em aplicações grandes.
Por exemplo, imagina que eu tenho um método
public Usuario buscar(int id)
Que faz o que aprece fazer, traz objetos da base de dados.
Agora imagina que você precisa de uma lista de usuários para o administrador. Se você usar esse me´todo genérico, vai ter que chamá-lo várias vezes. Se o método retornar uma lsita de usuários, você vai ter que retornar toda a lista e filtrar o resultado baseado nos parâmetros que o administrador passar.
Isso pode ser resolvido com um método especializado em recuperar objetos segundo um critério X.
Imagine que o adminsitrador vai poder ver uma ficha resumida dos usuários. Se seu método genérico trouxer todo o grafo de objetos, você vai ter centenas de objetos inúteis em memória.
Se seu método genérico não trouxer os relacionamentos, você vai rpecisar de algo do tipo:
Usuario a = daoUsuarios.buscar(codigo);
GrupodeUsuarios g = daoGrupos.buscar(a.getCodigoGrupo());
...
E acabar piorando.
Sem lazy-loading, fica difícil trabalhar com relacionamentos de maneira genérica.
DAOs devem ser usados em aplicações simples, para casos complexos, tente um framework de verdade, onde você não rpecisa se preocupar com a profundidade ou inutilidade do seu grafo de objetos.
Quanto aos métodos “de negócio”, acredito que esses DAOs citados não estão no que falei sobre métodos específicos. Métodos de pesquisa especializados e não genéricos não processam nada (até podem, por conveniência, mas sem abusos), eles apenas fazem pesquisas no SGBD de acordo com um processo específico.
Estamos lidando com a limitação do modelo relacional e principalmente com o impedance mismatch aqui, não encotnrei até hoje uma solução simples para relacionamentos complexos passados para um SGBD que não envolvesse frameworks, métodos especializados em um DAO, código chamando DAOs o tempo todo ou implementações grosseiras de proxies 
Se tiver que usar DAO com SQL puro, uso métodos especializados. Se o seu número de objetos for muito simples, você pode se virar com DAOs CRUD, mas quando você tem coisas muito complexas, não vai adiantar muito…