In my previous article i have given you the detailed level idea about the Agile Framework with multiple real life examples. In this article i would like you to give the exact idea about What is Scrum? and will try to explain different phases of scrum. I would like to give the difference between what is scrum? and what is waterfall model.
Difference Between Waterfall model and Agile :
In this section i would like to give difference between the waterfall model and agile model. I will try to give the difference in tabular format so that it will be easy for user to understand. Before that let us see the multiple drawbacks of traditional waterfall model :
Drawback 1 :Late Product Delivery :
The first and important drawback of waterfall model is Late product delivery as compare to Agile model. The product needs to go through all the phases and it will take months or quarters to deliver the product.
Drawback 2 : Cost of Rework
The SDLC cycle for waterfall model is quite high so the cost of rework with waterfall model is very high.
Drawback 3 : Big phase of requirement gathering
In waterfall model the requirement gathering phase is always high and client cant change requirement after its freezing is done.
Difference chart :
Agile Software Development Model | Waterfall Model |
Deployment cycle time for agile development model is Weeks | Deployment cycle for waterfall model is quite high. It is in months or quarters. |
The deployment is done in agile model requirement wise or feature wise. | The deployment needs to be done with all features or product |
You can change the requirement with less rework cost | Difficulty is changing requirement and cost of rework is quite high |
Response to change is very quick | Response to change is very slow |
Let us understand the scrum concepts in detail. There is always question in mind that what exactly the scrum is?The scrum is nothing but the framework where all teams works together to achieve a specific task. We need to understand about scrum cycle.Scrum Cycle is the iteration in Scrum popularly referred to as ‘Sprint’. A sprint consists of Plan-Produce-Inspect-Adapt. Application development, is achieved by sprints in a sequence with no gaps in between them.
- Plan : The planning is first phase of sprint where we require to complete the planning about what kind of work needs to be done and how much of the work can be achievable. We require to include team as well as customer to complete planning.Planning is done for the sprint at hand
- Produce : The second important phase is to produce the work. The production of the work needs to be taken care by the development team.
- Inspect : Inspection of work or detailed level testing of work is another phase of sprint.At the end of the sprint, the customer along with the stakeholders verify the product to see if it meets the requirements as per agreed conditions called definition of done.
- Adapt :The team retrospects on what went well in the current sprint, what can continue and what can be done better in the next sprint. Improvements in the process are discussed here. Doing this would help them to continuously improve the way of working across sprints
Terms used in Scrum :
Sprint : Sprint is nothing but the iteration of multiple small phases in the scrum to deliver the specified functionality or to deliver the specific product.
Cross functional: We require to have multiple skill-sets in the present development teams. In development team we require to include multiple teams like development team which may include development team, ranging from developers,architects,testers,analysts.
Self Organized : This concept is used for the development team about ability to handle the each and every sprint work.
- The ability to take the decision and commit to sprint deliveries.
- Team does have ability to resolve any conflicts coming internally in the sprint deliveries.
- Team needs to take direct ownership for all the tasks given as well as other than task given.
Definition of Done : Definition on done is very important term in scrum which allows the agreement between customer and teams about the sprint work needs to be done.
Example for DOD :
- Code complete
- Code reviewed
- Unit Tested
- Integration Tested
- Acceptance Tested
- System Docs and User Docs updated
- No Priority 1 or Priority 2 defects remaining
Important Roles in Sprint :
The following are important roles which may help us to understand what is scrum? The following 3 important roles and its description in sprint .
- Product Owner : The product owner is the person who is responsible for vision and goals of release, Return On Investment, date and scope of release.
- Scrum Master: The scrum master is a person who is responsible for scrum process, problem solving and protection of development team.
- Development Team : The development team is set of multiple roles team who is responsible for the work done as per sprint goal.
Types of Meetings in Scrum :
- Sprint Planning Meeting : The most important meeting is sprint planning meeting where all the team members and client needs to decide the plan and the actual deliverable for sprints.
- Daily Scrum Meeting :The scrum master is responsible to schedule the daily scrum meeting where team needs to discuss the daily work status and issues and concerns with scrum master.
- Sprint Review :The meeting needs to be schedule at the end of the sprint where product owner needs to review all work done for next release process.
- Sprint Retrospection : This is internal meeting of development team where team needs to plan for the improvement of process.
- Product Backlog Refinement:The scrum master and product owner along with customer needs to schedule this meeting on regular intervals where we require do discuss the product backlog refinement.
Deliverable Produced :
- Product Backlog : Product backlog is Pending list of items to be developed.
- Sprint Backlog : Sprint backlog is list of tasks planned for the current sprint with their effort estimate
- Increment : Increment is nothing but the working version of the software produced in the sprint.
I hope that you got idea about what is scrum? and you understand the concept about what is scrum? If you like this article or if you have any questions with the same kindly comment in comments section.