Software developers working in a team should use Agile development methodologies in order to perform better. Let me quickly explain a few terms of Agile development used by Scrum here.
The sprint review meeting is intentionally kept informal, typically with rules forbidding the use of PowerPoint slides and allowing no more than two hours of preparation time for the meeting. A sprint review meeting should not become a distraction or significant detour for the development team; rather. The spring review should be a natural result of the sprint. During the sprint review the project is assessed against the sprint goal determined during the Sprint planning meeting. Ideally the team has completed each product backlog item brought into the sprint, but it is more important that they achieve the overall goal of the sprint. Participants in the sprint review typically include the Product Owner, the Scrum team, the ScrumMaster, management, customers, and engineers from other projects.
The ScrumMaster is responsible for making sure a Scrum team lives by the practices and values of Scrum. The ScrumMaster protects the team by making sure they do not overcommit themselves to what they can achieve during a sprint. The ScrumMaster role is typically filled by a project manager or a technical team leader but can be anyone. The ScrumMaster facilitates the daily scrum and becomes responsible for removing any obstacles that are brought up by the team during those meetings.
Scrum teams do not include any of the traditional software engineering roles such as programmer, designer, tester, or architect. Everyone on the project works together to complete the set of work they have collectively committed to complete within a sprint. Scrum teams develop a deep form of camaraderie and a feeling that “we’re all in this together.”
On each day of a sprint, the team holds daily meetings (short often just called “daily”). Meetings are typically held in the same location and at the same time each day. Ideally the daily scrums are held in the morning as they help set the context for the coming day’s work. Scrum affords special status to those who are committed and many teams enforce a rule in which only those who are committed are allowed to talk during the daily scrum.
All team members are required to attend the daily scrum. Anyone else (for example, a departmental VP, a salesperson, or a developer from another project) is allowed to attend but is there only to listen. This makes the daily scrums an excellent way for a Scrum team to disseminate status information–if you’re interested in hearing where things are at, attend that day’s meeting.
The daily scrum is not used as a problem-solving or issue resolution meeting. Issues that are raised are taken offline and usually dealt with by the relevant sub-group immediately after the daily scrum. During the daily scrum each team member provides answers to the following three questions:
a. What did you do yesterday?
b. What will you do today?
c. Are there any impediments in your way?
The sprint retrospective meeting is time boxed to 3 hours. It is attended only by the team, the scrum master and the product owner. The product owner is optional. Start the meeting by having all team members answer two questions:
1) What went well during the sprint?
2) What could be improved in the next sprint?
a. The scrum master writes down the team’s answers in summary form.
b. The team prioritizes in which order it wants to talk about the potential improvements.
c. The scrum master is not in this meeting to provide answers, but to facilitate the team’s search for better ways for the scrum process to work for it.
Actionable items that can be added to the next sprint should be devised as high-priority non functional product backlog. Retrospectives that do not result in change are sterile and frustrating.