Eljay’s thoughts on Scrum.

Scrum is an agile management process.

That’s important. In and of itself, Scrum is not a development methodology. It is a way for management to manage the software development team. It is something that the management does, which impacts the software development team. And the software development team is obliged to follow management’s process.

There are a zillion videos and websites that explain what Scrum is all about. But there are very few that discuss how to go about adapting Scrum. One website that does a great job at explaining how to go about implementing Scrum is How To Implement Scrum in 10 Easy Steps by Kelly Waters. Mr. Waters nails it.

Scrum is an fundamental change to the organization.

This is also important. It is not enough to change the management process, if the organization is not also changed to accommodate Scrum.

What is an organizational structure that does not support Scrum?

If there is no scrum master, or there is no product owner, or the developers are not part of a Scrum development team (double-emphasis on team), then the Scrum management process will not work well. Possibly not work at all.

For example, if the PMO (Project Management Organization) still has a project PM (Project Manager) as part of the team, the company probably isn't doing the Scrum process.

If the scrum master is the PM, and the PM is not fulfilling the duties and obligations that a scrum master needs to do (which, alas, is likely since a PM has different and conflict-of-interest duties and responsibilities), the company isn't doing the Scrum process.

(Remember that the scrum master role is more of a facilitator rather than a manager. One who is supposed to champion the Scrum process.)

Scrum entails engineering practices.

Or it was supposed to. Somewhere along the way, the software engineering best practices was divorced from Scrum itself. Which is both good and bad.

It is good, because Scrum as a management process can be applied to other non-development related teams. An entire corporate organization could be structured around Scrum as a management process.

It is bad, because the software engineering best practices are what makes Scrum actually be agile. Without the software engineering best practices, Scrum will fail to be agile. (As well as fail to enbody the agile manifesto set of values and principles.)

The Software Craftsmanship Movement is attempting to put the agile back into Scrum. At least for software development. (But please do not look at Micah Martin's Software Craftsmanship manifesto... it fails to capture the spirit of Software Craftsmanship. Bzzt. Try again.)