Agile/SCRUM Software Development Life Cycle Methodology.

Some of my own notes for Agile and scrum meetings are :
Agile Model

This methodology follows neither a purely sequential approach nor a purely iterative approach. It is a selective mix of both approaches in addition to quite a few and new developmental methods. Fast and incremental development is one of the key principles of this methodology. The focus is on obtaining quick, practical and visible outputs rather than merely following the theoretical processes. Continuous customer interaction and participation is an integral part of the entire development process. 
What is Agile development?
Agile development is an iterative type of software development life cycle model. Extreme programming (XP) is currently one of the most well-known agile development life cycle models. Some of the important characteristics of XP or extreme programming are: 
1. Demands an onsite customer for continual feedback and to define and carry out functional acceptance testing. 
2. Promotes pair programming and shared code ownership amongst the developers. 
3. States that component test scripts shall be written before the code is written and that those tests should be automated.
4. states that integration and testing of the code shall happen several times a day. With XP there are numerous iterations each requiring testing. XP is not about doing extreme activities during development process, it is about doing known value adding activities in an extreme manner. 

5.8 : SCURM / MEETINGS PROCESS.
 5.8.1 : Product Backlog Meeting :
·         All Stakeholder attends the meeting.
·         Quarter wise product has been defined.
·         Product has explaine]s and  defined by the product team.
·          All the requirement has been defined.
·         Mocks, wireframes, SRS, PRD furnished.
 5.8.2 : Sprint Planning :
·         All Stakeholders attends the meeting.
·         Duration 2-3 weeks.
·         Scope is defined for the current sprint.
·         Sprint with the limited time duration.
·         Takes user stories to complete within the given sprint.
·         Estimates / Suggest how much portion should be covered within the given sprint. 
5.8.3 : Daily Scrum Meeting : 
·         Only Dev and QA attends.
·         Day to day activities discussed.
·         Blockers & Concerns raised.
·         Plan for tomorrow.
·         Status on What’s has been done today.
·         Asked how much time will it take to finish the task. 
5.8.4 : Sprint Retrospective Meeting :
·         Only Dev and QA attends.
·         End of Sprint.
·         Discussion on What went Good and What went wrong.
·         Examples :
o   Good :
§  Product team accepted and filled the gap identified by the QA.
§  Development was ready on time.
§   Requirement was not modified. Not even single time.
§   Dev team accepted the wrong behavior and fixes the issues on time.
§  Environment was smoothly running throughout the phase.

o   BAD :
§   Envt was not ready or not stable. 
§  Requirement was keep changing.
§  Some changes in the requirement at the end moment.
§  Dev team refuse to give complete functionality, said will be done in later release
§  Dev team was not ready for some fixes that was impacting the quality.
§  Suspension of testing at the end on some features which has been tested already. In this case worked become double as we need to test again.

·         Measures:  For wrong things what measures we need to take to avoid future.
§  Formal emails was spreading whenever envt was not responding.
§  Keep asking about the updates on the dev status. 
§  Keep following up with the product team on the queries to get clear picture of the requirement.
§  Immediate alert sent whenever issue finds related to DB missing.
§  Keep all team DEV, Support, Unix, Product, Manager, QA team, whenever find  400 Bad Request, 401 Unauthorized, 403 Forbidden,  404 Not Found, 500 Internal Server Error  ERRORS on Production.

5.8.5 :  SPRINT REVIEW MEETING :
·         DEV managers gives development DEMO at the end dev completion.
·         Whatever is been not done the will move it into next release.
·         QA needs to check and questions ADHOC at the same time.
·         All stakeholders attends this meeting.


5.8.6 : SCRUM OF SCRUM
·         All stakeholders, leaders, managers attends the meeting.
·         Product/ DEV/ QA/ Project Managers attends the meeting.
·         High level project discussion takes place.
·         All the major issues and concerns is raised.
·         Project guidelines mentioned.
·         Vise president will attend the meeting as he don’t attends all the meetings.
·         Meeting held at every week.

1.Scrum teams are small cross functional teams comprising of dev,qa,business analyst or product owner and an architect.
2.Scrum master is a person nominated by scrum team usually between dev or qa.
3.The product owner provides product backlog , means requirements and changes to the product .
4.Each iteration /development cycle is called a Sprint .Usually small duration 2-4 weeks .
5.The changes are done on the existing product and at the end of each sprint , the scrum team delivers a working application.
6.The sprint begins with the sprint planning meeting .
  Sprint planning meeting :
    a.Here all the items in the product backlog are discussed and converted into smaller user stories
    b.Each user story is a functional or non-functional requirement .
    c.Each user story is given story points. Story points are basically given on the complexity of the                          requirement.
     d. If the complexity is too much , then the user story is further divided into smaller workable requirements.
     e.After story points ,estimations are given for each user story . The dev team and QA team give their own            estimates on how much time they require to accomplish each user story. 
     f.The estimation of hours should be agreed by all team members .If there is a disagreement , then the top          three estimations are discussed and team members giving estimates have to justify their estimations.             This is something like a planning poker for estimates.
    g.After all user stories have been estimated , then the sprint backlog is decided. Sprint backlog is taken out        of product backlog and it refers to the items to be accomplished during the sprint.
    h.Definition of Done is also decided in this meeting.
    i.All planning activity takes place in the sprint planning meeting.
7.After the planning , now the actual work starts.
8.Each day dev and qa update the user stories with the amount of time they have spent working on them.
9.At EOD , Daily Scrum meeting takes place.
  Daily Scrum Meeting :
     a.All scrum team members give their status in following manner :
           What I did today ?
           What I will do tomorrow ?
           How much time is required to accomplish the task ?
           Any impediments faced ?
10.All Scrum masters and other stakeholders attend Scrum of Scrums held weekly.
     a.This is done to identify common impediments.
     b.It facilitates all sprints to be on a common platform 
     c.Management provides guidelines and future delivery plans.
11.Once a team member has finished working on a user story , he will update the story hours and mark it as        done .Now the member will pick up another user story from the sprint backlog.
12.The sprint goes on likes this till all the user stories have been accomplished from the sprint backlog or the        sprint time gets exhausted.
13.In case there is time left , then another user story is taken from product backlog and added to sprint               backlog.
14.At the end of sprint , there is a demo called as Sprint Review meeting.
     Sprint review meeting :
     a.It is attended by all stakeholders, scrum team members.
     b.Product owner reviews the work done in the sprint and asks questions to the scrum team .
     c.Product owner gives approval on the user stories . If he is not satisfied with some work or suggests                changes to existing work , a user story is added with comments and it will be worked on in the next                 sprint.
15.After the review meeting is over, the scrum team has a Retrospective meeting.
    Retrospective meeting
     a.It is the last meeting of a sprint.
     b.All scrum team members attend it.
     c.Performance of sprint and scrum team members is discussed.
     d.Team velocity is determined. Velocity is a measure of how much work the scrum team was able to                 accomplish in the sprint in terms of story points and hours.This metric is used in performance                         improvement of the team.
     e.Positives are discussed . Putting it simply , What we did good ?
     f.Negatives are discussed.  Where we failed or what went wrong ?
     g.Points for improvement are discussed.

Now the important question , why we followed agile ?
If you read above points , two things come out clearly .
1.At the end of the sprint , the scrum team delivered a working application . The product owner could see and decide how he wants the system to be in just few weeks of work.Unlike waterfall or V&V where the system is available at a later stage.

2.The changes suggested by the product owner can be accommodated in the upcoming sprints. So this model is very useful for projects with frequent changing requirements.

No comments

Powered by Blogger.