Relacionamento Associativo como implementar?

Pessoal eu to desenvolvendo um sistema de controle de laboratorios datashow e outros utilitarios.
Eu cheguei numa etapa que nao sei oque fazer, eu estou usando o padrao CMV e fazendo as conexoes ao BD na mao sem Hibeernate
eu tenho uma classe programa e outra laboratorio, aonde um laboratorio pode conter varios programas, a duvida e
na cama de controle eu tenho os DAOs de laboratorio e programa, e eu criei um metodo no laboratorioDAO assim

public List getListaPrograma(Laboratorio lab);

o objetivo dele seria pegar um laboratorio e fazer uma verificaçao no bando de dados aonde ele compara os dados do codigo do laboratorio com
a chave estrangeira da tabela programa codigoLab.
As duvidas sao o metodo public List<Programa< getListaPrograma(Laboratorio lab); ele esta na classe certa? ou si teria que criar uma outra tabela e talz
como eu posso implementa-lo?Acho que isso e ralacionamento associativo nao é? meu uml ta meio fraco

Desde ja agradeço a todos ^^