software lab assignments