Few days back our boss focused on how to map the traditional software development term with Agile development term as a result I think it will be a good topic to discus and share our thoughts. We Agile practitioner always use some terms such as sprint, product backlog, burn-down chart etc. But people who are not used to Agile can hardly understand these terms where as these things are similar as traditional SDLC terms.
Today I will try to focus some of this Agile terms and try to make a equivalent SDLC terms, so that people can adopt the Agile practice easily.
In this post I will follow Scrum framework for the Agile development. There are some other Agile framework such as AUP,XP,FDD etc.
Agile Development Process:
In the following picture (it’s an Agile development process) we can see some agile terms such as Product backlog, Sprint Backlog, sprint and there are also some other terms like product owner, scrum master, daily scrum meeting, velocity, retrospective etc.
Product Owner: Product owner is the client. According to their order the software will develop and they will clarify the requirement for the developers so that developers can develop the exact efficient software for the customer.
Scrum Master: Scrum master plays a similar type of role as project manager. But as the Agile team is self organized so scrum master doesn’t involve deeply in a project as traditional project manager. Scrum master takes initiative on the impediments and managing the process working perfectly so that the goal meets in the desired time frame (sprint).
Teams: In general a team means group of self organized developers who will develop the software.
Product backlog: Product backlog is the collection of requirements of a system. This requirements are placed according to the development priority, so that the high priority requirements are develop in the early phases.
Sprint: Sprint is like the time frame of an incremental development process. In a sprint the team fixes what to do in this cycle and deployment. Developers develop a deliverable product in a sprint and deploy it in client end. Once the tasks are fixed for a sprint the developer should not be interrupt with additional requirement and mass requirement change. If it’s necessary, the tasks will add in product backlog with high priority so that they can add in next sprint’s planning.
Sprint backlog: Sprint backlog is the set of high priority tasks taken from the set of product backlog which will develop in the current sprint and deploy in client end.
Scrum meeting: Scrum meeting is a daily short standing meeting where each team member will express what problem(s) s/he has faced last day and what s/he will do today. This meeting is extremely focused.
Retrospective: At the last day the team will discussed what went good what went band and what are the opportunity so that in the next sprint they can take initiative according to the retrospective.
Burndown chart: There are different types of burndown charts. Which represents the development process through graph, so that an Agile team member can get to know what project’s condition in a simple view.
Velocity: An agile team can estimate how much effort they can put in product backlog for one sprint. This velocity is determined from previous sprint’s average data. This velocity can be used to predict the project effort planning and team’s productivity .
That’s all for the day.