| Really? Let's review:
- Once a project is completed, the team must ensure that the “What” and “Why” of each software item are properly documented.
That's essentially a retrospective. - In the cases of parallel development of inter-dependent software modules set up a negotiation table to solve conflict between the development teams.
Role of the scrum master to remove impediments. - Make sure that the development team is aware of the CMMI-ACQ or ISO12207 processes for negotiating with third parties.
Previous bullet point. - Make sure that testers are involved when negotiating with a third party for a potentially vulnerable software component. 
Testers are stakeholders in this, they should be there. - Plan organization-wide process reviews to detect isolated processes and to promote information flows between processes.
Removal of impediments. - Planned special budget items to support long lasting corrections or corrections that are likely to benefit many modules. 
Got me on this one. - Projects with strict deadlines are risky, and should be carefully monitored to avoid last minute unplanned activities.
- Team members should maintain a careful balance between the flows of information within formal development processes and informal human interactions.
- Team members should make sure that knowledge is appropriately distributed amongst them. For example, pair programming is a practice which can promote knowledge sharing.
- Any intrusion into the team dynamics by outsiders should be done very carefully These last four are key elements of Scrum - managing the burn down, be flexible, and ensuring chickens can not interrupt the pigs. Agile does not mean there is no process or formal rules. It's not a free for all, agile is about the ability to quickly respond to change. |