I think with embedded systems that has no physical constraint can be mutable and I think this is why software can get so complicated to put a simple process through. Rather it seems like a collection of developer experiences and practices that are mutually beneficial to the stability of their jobs, if a developer's experience and views negatively impacts their stability or enjoyability of their development job, it is incorrect by whoever is paid the most. Rather when software fail, it's actually because the social dynamics have failed in that environment.