https://blog.kasraeian.com/2010/06/university-project-part-1/
University project - part 1