A term as far as I know coined by TomGilb to point out the difference between what usually happens in SoftwareDevelopment (software is "crafted") and in engineering. See SoftwareEngineering