Understanding "Crack" and "Patch" in Software Context