Software Product Line Languages and Tools