SCRUM in general
SCRUM was created in early 90s last century. The precursors idea was to build software in structured and iterational way. Main goal was to respond to business change quickly.
SCRUM in theory
SCRUM by it’s definition in an agile software creating methodology. For the customer it mean that he can react to a business change, not after the software product is finished and deployed, but during it’s development process. Short iternations and continous validation is the biggest power of SCRUM. That’s why it’s better then old school methodologies like Waterfall.
SCRUM vs code quality
Because of it’s nature SCRUM forces development team to deliver in predictable manner. Every sprint start with planning ceremory, where developers commit how much can they deliver. After that sprint goes on and there is no space for mistakes during implementation. Every hour spend on unexpected issues result in overdue. Usually team want to deliver what they commited to. Because of that everything else has lower priority. Including code quality.. Target is to deliver sprint.
SCRUM by it’s own is a great software development methodology – especially when ordering software from vendors. It allows to have a clear overview and development progress tracking. The problem is that SCRUM is interpreted by software vendors only partially. SCRUM is sold as a business tool only. Key terms like “Definition of Done” are skipped. Which later result in outgoing projects and rising costs.