separating module development