Teaching Requirements Analysis: A Student Project Framework to Bridge the Gap between Business Analysis and Software Engineering