Tag Archives: Agile

Application of Locke’s Goal Setting Theory in Agile Methodology

A theory I came across recently looked to adhere to some concepts of the Agile methodology. And I felt it seems to fill some kind of a black hole in the Agile methodology. The theory is called be Locke’s Goal Setting Theory.

Locke’s Goal setting theory is about setting up goals in a way, that when they are achieved they will also turn into a great motivator to the person/team who follows it accordingly.

In my working place we follow Agile methodology to develop software. I know some of the basic Agile process. So the basic concept of Agile according to my understanding is a recursive process of software development which goes under many changes and iterations to provide what the clients really wants. Also the process is transparent to the client so the client is always updated. This methodology is developed to create a better understanding between the client and the developers so that they will come up with the exact product that the client wants, including the changes through up to the final product release.

When you try to compare the 5 key factors of the Locke’s Goal Setting Theory with Agile process, you will see that some are very much similar to each other.

Will see how much are they related to each other

Setting Goals and trying to achieving them, does not always works well for everyone. Some people achieve it and some people get stressed out or stuck and instead of getting motivated they get demotivated due to many reasons. In Agile we can consider it to the user stories created by clients , which we add into sprints as tasks and try to implement them withing that sprint time.

The 5 Factors that are need to affect the motivations according to Locke’s Goal setting theory are

Clear and Specific Goals

Challenging Goals

Handling Complex Problems

Commitment

Feedback

1 – The Goal has to be clear and specific, so in Agile we meet the client and their work environment and understand it and then we gather user stories which are then explained by the client to the developing team. This ensure that the requirement we have gathered are clear and specific.

2 – The next one is Challenge, we create sprints with user stories provided by the client, which we think we can achieve within the next sprint and we define our self a deadline. Easy challenges won’t be motivating, because they won’t feel important. So we select a set of challenging stories to achieve within the sprint. Achieving them gives us(developers) a big motivation.

3 – Handling complex problems, often there is chances of estimations made by the developers go wrong. So some times developers tend to get stuck on a problem that blocks the whole process, which leads to stress and the developers get demotivated. At times like this in Agile we split the complex task in to many sub tasks to visualize the problem in a better way so that we can handle them individually and solve them.

4 – Commitment is next, it is really important when it comes to team, we have to work together to achieve the goals. Software modules normally will be developed by different developers, which will at the end works together to provide a solution. So being committed to the goals that’s assigned to you will pave way to the ultimate team goal. Commitment is also affected by various kinds of internal and external causes. But keeping the developers committed is something that has to be handled by  the management or the team lead.

5 – Feedback is an important element. As a team lead, it’s important to give feed backs on the goals achieved by the team members and in which area they can improve. Not only the Team Lead, the client must be also trained in a way so that they give positive feedback about  the developers when they are present in a meeting or a scrum. This will enable the team members to work more efficiently and happily in future. Developers often consider positive feedback as another hidden goal. So it is the responsibility of the leads not to spoil it for the developers.

Even though the companies following Agile methodology these days does motivate the employees/developers by giving the team a lunch out or a pay increase/bonus. The motivation part is not mentioned theoretically any where. So I think if we can apply the Locke’s Goal setting theory into the Agile, we can get a better performance from the developer team with Good customer satisfaction.

Advertisements

Google Glass in Colombo Agile Meetup…!

1st of October 2013 at Voice Lounge, Burgher Recreation Club, Colombo Agile Meetup hosted one of their most wanted meetups featuring the famous Google Glass. So the topic is “A real life case study of a Google glass project.”

20130912_143933

Shamira Dias (Delivery Manager, Exilesoft), started the talk, with the Subject “Unfamiliar territory and uncertain outcomes: The Google Glass Project”. So he elaborated the types of projects that Exilesoft do, and how the developers here at office and onsite, deal with it. Sometimes they are not familiar with the business domain, but holding back is not the prudent thing to do. Therefore, to add to it, when a project appears with an unfamiliar object he explained using the Google Glass project which they are currently working on in Exilesoft, how agile practice helped them, and how they co op-ed and won, in the end.

1381930_10151585171006710_1273619941_n

Next the talk was passed onto Sanath Nandasiri (Software Engineer, Exilesoft) one of the two developers, directly connected with the ongoing Google Glass project (the other one is Me ). He explained what Google Glass is, what it has, what it can do and available features on it.  So the session went with some live Google Glass Demo, which really entertained the audience. One of the important features I thought was, it runs Android 4.0.4 and it got a wonderful natural voice recognition which has a high accuracy rate.

556621_10151585171726710_2012012341_n

Further on Sanath moved into Google Glass development. There are 2 ways that we can approach the GLASS development. They are the native way (Android) and the Glassware development (Server Side using Mirror API). Then he explained how the glassware works, what the role of the Mirror API is and the technologies used to develop a glassware. Native development is similar to the traditional android development but with some restriction of functionality and libraries. One of the reason for the restriction is caused by the lack of sensors in Google GLASS unlike normal Android phone. Those functions can be achieved by pairing to your Android phone through Bluetooth. Also explained how the glassware authentication take place under the hood.

Then another round of demo session took place explaining the Google GLASS Time line. And a cool thing happened for developers, there has been a code review on Glassware and the code has been open sourced. The source can be downloaded here. Also as a bonus, Sanath explained and showed how you can bring in Google Glass in your Android phone that is running Android 4.0.4 or later, this will be a great emulator to test your Glassware apps (It cannot be used to test native apps though).

Finally Dulan Bandara (Software Engineer, Exilesoft), explained about unit testing and its importance in the Glass Project. Then he compared unit test on Android and unit testing on Google Glass. There was a hands on coding demo for the unit testing. It’s important to mention that a bunch of visitors got a chance to try out the Google Glass. They were awed at the experience they got.

63626_10151585172331710_1821980851_n

The talk came to an end with the Introduction of a new meet up group “Colombo Mobile Meetup”, and an Announcement of the upcoming DevDay 2013.

For the complete collection of research and development article on Google Glass explore my Blog.

Meetup Organized by Exilesoft (Pvt) Ltd.