A Model-driven Approach for Software Product Lines Requirements Engineering