Source: https://fac.umc.edu.dz/ista/pdf/cours/cours%20maintenance.pdf