River engineering is the process of planned human intervention in the course, characteristics, or flow of a river with the intention of producing some defined benefit. People have intervened in the natural course and behaviour of rivers since before recorded history—to manage the water resources, to protect against flooding, or to make passage along or across rivers easier. From Roman times, rivers have been used as a source of hydropower.