software development capstone project ideas research paper empirical study