Our Blog

where we write about the things we love

08

Aug

Agile: Implications and Complications - a Twilight Recap

Could an agile approach to software development be the silver bullet you’re looking for…? Joe Newton, Intergen’s Enterprise Applications Practice Principal, spoke with Twilight Attendees, filling them in on the implications of adopting an agile approach to software development.

Joe went over the responsibilities it puts on the business team, the discipline it requires from the technical team and common complications that arise.

 

Joe Newton presenting Agile: Complications and Implications Twilight Seminar

 

Business Team

Joe Newton provided his knowledge and experience of implementing such a process and covered the responsibilities it puts on the business team, emphasising it’s all about the customer. As Joe says:

“With any project, it’s important (like any project) to make sure the customer and your team understand how the business domain works, how the software provides business value. They need to be determined to deliver value regularly, and have the ability to make decisions about what’s needed now and later and be willing to accept ultimate responsibility for success or failure of the project.”

It’s also imperative for the business team to come together to collaborate. As Joe says, ‘Shouting across the table is good’ and “being put in boxes across the office” isn’t. Joe gave some tips and advice on how Intergen gets things done collaboratively by using simple, visible tools such as charts and story boards for project plans. Also communication techniques such as the stand-up method can work well, helping to emphasise the importance of keeping everyone’s work updates short and sweet. And lastly, Joe covered the need to keep everyone up-to-date on team leave, project history and days to release. 

Technical Team

Time is fixed in agile development, and if the project isn’t implemented well, you slip with what is delivered. Finding the fastest way of doing things is a must. This requires discipline from the technical team. Joe covers five important things for the technical team to take away:

  • YAGNI – ‘you ain’t gonna need it’ (remembering 60% -70% of features are not used)
  • KISS – Keep it simple stupid
  • Fix broken windows – leap on it and fix it
  • Own the estimates
  • Use the computer to do the repetitive work

Design patterns – Give your technical team time to read and understand the design patterns. It’s rare for someone to know them all; experience of others is important and it’s crucial to keep learning.

Continuous integration – This is extremely important. As Joe says. “This should happen not just weekly, daily or a few times a day. It should be all the time to get the benefits.”

To top it off, Joe explained the importance of running tests: “If you’re going to write it you need to check if it works.” He also raised the importance of source control, emphasising that some New Zealand companies still don’t have a source repository.

Complications

Complications that arise when developing software and adopting an Agile methodology can play a major factor in the success of a project. Below are the areas that need to be jumped on early.

Deployments – These should be worked on in week one and, as Joe states, “They are a BIG deal when planning a project.” The whole point is to deploy the software.

If the team does not gel – Find out where people in the team sit and work accordingly to these characteristics – not everyone is going to come in with the same personality, drive and experience. A tip from Joe: when pair programming it’s better to have developers at similar levels than a junior and a senior developer together. “You just end up with junior developers getting lost trying to keep up with the accelerated pace of an experienced developer. Efficiency is greater when the pairs are closer together in experience”

If the team isn’t fast enough – This only exists if they don’t get done what they were supposed to achieve in a week. Work out the root cause and remember that adding new people doesn’t always work.

Too much refactoring (is redesigning) – Don’t get bogged down by this. You end up with merging vs. making code.

Customer not available – This is the most important part and as a last resort schedule time each week for questions and answers.

Joe’s presentation slides from Agile: Complications and Implications are below.

 

  

To check out other upcoming twilight seminars check them out here.

 

Posted by: Rose Harris, Marketing Assistant | 08 August 2011

Tags: Agile, Twilight recap


Top Rated Posts

Blog archive

Stay up to date with all insights from the Intergen blog