In software engineering is the modification of a software product after delivery to correct faults, to improve performance or other attributes.