Agile software development technique-I

Agile software development technique is one of the technique that  many software and information technology companies are adopting. Some of the practices. Scrum and extreme programming are the two approaches of the Agile methodology of software development. Startup and companies can follow different practices under these approaches. Some common approaches are give below:

Agile methodology

Sprint Planning and Meetings:

Scrum development consists of one or more sprints, each lasting exactly thirty calendar days. Sprints starts with a short term planning meeting to determine initial plans for working on the sprint Backlog. These practices help to have a meeting and plan for the sprint task and their priority and divide the task between the members. Certain task is needed to complete first before starting certain task in such situation we can give a higher priority to the task which is needed to complete first.

Daily Stand-up Meeting:

The most important part I like about the scrum is stand up meeting where three questions is asked which are:

a. What sprint task did you do yesterday?
b. Which sprint task will you attempt today?
c. Is there any obstacle limiting your progress?

I also had such experience when I worked as software engineer at Deerwalk. This technique helps developer team leader and manager to track the daily progress of the task from each developer on current sprint. Furthermore, this
motivate developer to complete their task in time with their best effort. For example if developer have to give update on week then he may show laziness in first two day and work overtime in remaining days but if he have to provide a update daily it motivates him to progress daily so that he can know the obstacles in time and get an idea and solution for the obstacle from the other team members.  This approach can be applied in research lab in universities to graduate students more productive.

Stand up meeting

Use of Backlog Graph:

Backlog graph help to track the progress towards completion of the tasks in current sprint. In this graph vertical axis shows the estimated hours of work remaining in the current sprint while horizontal axis shows workdays remaining in current sprint plus all expected future sprints. This helps the manager of the developer to find if there is an any problem and issue based on the nature of graph. Changing slope help to find the progress of the team in sprint if graphs are showing bad signs then developer can talk with team manager on certain issues due to which team are not moving in right direction.

Example of back log graph.

Flexibility in adding a change in sprint:

Extreme programming is flexible to the frequent changes within the iteration periods. If manager wants to add some feature in middle, he/she may add features on certain iteration.

Feedback:

In extreme programming constant feedback is provided to the developer about their previous efforts. Manager can get an update about the project track using some practices on scrum we have discussed. Manager may be doing such projects for first time. Therefore, it helps her to track progress of the projects and he can  made a changes immediately based her feedback. This also helps team to figure out the area of improvement.

We will discuss remaining practices in upcoming article.

 

About sgc908

Graduate Research Assistant at North Dakota State University, Precision Agriculture, Machine Learning, Deep Learning and Big Data.

View all posts by sgc908 →