Between a rock (waterfall) and a hard place (agile)

The reality is, pure agile only exists in simple single team, single product or startup type situations. Most larger organizations have a hybrid approach. With the wider project, or program and portfolio levels resemble waterfall, whereas the software development teams are doing the delivery with e.g. scrum.

Even in delivery, if the teams aren’t deploying to production regularly, their DoD is probably limited to automated tests passing on the test server. Anything after like a UAT happens outside the sprint and therefore in the waterfall part of the process.

The important bit is to develop and describe your delivery model showing clearly what is in the agile world and what is in the waterfall world.

Providing end deliverable dates is the same in waterfall or agile. It’s better to set a deadline in advance and deliver the best possible product in the time than try and guess how long something might take by adding up effort estimates which never works anyway. But if the senior management insist on it, you can do it. Agile actually makes it easier to provide accurate predictions as you regularly re-plan according to latest measurements.

Of course you can be a good scrum master without being a developer.

Can you be a bit more specific about the problems you are facing? It sounds like a typical scenario and you are unsure about something. Did you get scrum training? That might help with the agile part of it but the details of working with hybrid approaches are very context specific.

/r/agile Thread