Saturday, February 25, 2012

Agile Adoption must come from the top down in a business

Agile software development requires a mind-shift in how to approach software solutions in any business. It must be understood by all and accepted by everyone in an organization. This is the hardest part of any organization which would like to adopt agile/scrum.

Any mind shift must come from top down. It must be understood by the executive levels so that it trickles down and can be properly adopted by everyone in the business.

Throughout my experiences, I found out that many organizations keep trying to adopt agile for a very long time. In 2009, I researched one company in Canada that has been trying to adopt agile for over 10 years. The problem as to why it took (taking) too long is that the mind-shift was not coming from top down. It was being "conveyed and suggested" to the business from the team out. In other words, this team had to convince everyone in the organization that this is a good thing. You can picture the obstacles and politics that will come along with this.

 In 2010, there is a Toronto based company that recognized it was falling behind the other competitors and it was narrowed down to the fact that competitors are applying agile while they did not. The execs in this company decided to apply agile as a solution to meeting up with the business needs. This came from top down. The organization adopted and promoted agile within 1.5 years. Execs understood the need for change and are providing the right tools and structural changes to accommodate for this adoption.

In Summary, If you are a team member that think agile needs to be adopted. then convince the main exec/president/ceo/... etc, and the company will follow through with the adoption.

Thursday, February 23, 2012

Simple is probably right, but may not be easy!

The simplest solution is most likely the most proper solution. But the simplest solution might not be the easiest.

Does the business really know what it needs?

So we work day in and day out; when it comes to software, does the business really knows what it needs?

Throughout my experience, no. They might think they know the problem and solution, but the problem is never clear until we are dealing with the nitty-gritty details.

Picture waterfall model. Odds are you wont experience and know the answers until late in the game. You do all the analysis, which in most cases is still business focused, design, and then implementation. You will find you answer somewhere in there.... But again a bit late

Picture agile now. You brake the problem into sub problems. It is an approach to divide and conquer of a project. Answers will start popping up early on because iterations are short and once you are finished with an iteration, it's done. All questioned answered and you jump to the next problem.