A galera desaconselha utilizar EJB, mas eu diria que evite usar Entity Bean, pois são raros os casos que o mesmo é necesário, quanto o Session pelo menos eu acho muito util, pois como disse, cuida da parte transacional.
Normalmente essas classes chamam classes “menores”, ou seja, toda a parte de programação não ficam nelas e sim em outras classes que a mesma instancia.