project modularization