Agile can be used effectively in Non-IT Development Environments
When engaging Vendors, communicate how you work (ie iterative approach), Vendors have been receptive and then understand the context of timeframes set. Get them in face to face to discuss work you want done.
People / Environment
When Team members are first introduced to Scrum it is a big change to get used to a Team based approach, not Project manager lead and the changes of ring fenced time for the Scrum, co-location and choosing tasks to work on. As Scrum Master you need to help team members thru this period.
Team Norms, such as the daily stand up and using fines to foster a team culture work well.
Planning sessions can become loathed, especially when planning 4 weeks work in a day. The Scrum Master needs to try and keep people engaged as the session determines the direction for the sprint.
Reporting / Transparency
PMO want to know more than just progress (burn down) for the sprint. They want to know what you are planning to spend and when (ie further out than just current sprint), tracking against budget, when you plan to start and finish work and when pieces of work will need to come up for approval to build etc.
The Scrum Master needs to work with the PMO to get reporting sufficient for the PMO but not create overhead for the Team. The benefit of an agile approach is the ability to rapidly change and adapt.
When it starts to go wrong:
Agile team got too big, we found 5 +/- 2 people works, though over 5 people and communication between all Team members becomes challenging.
The Retrospective when used objectively at the end of a sprint, is a very effective tool to change the team & how it’s functioning.