Striving for Continuous Improvement

At Atlassian we know that "doing" Agile is just a step on the journey to "being" Agile. The Kaizen Project provides you insight into the best performing Agile teams around the world so that your own team can continuously improve.

Whatever your methodology, we are all striving towards one common goal, delivering value to our customers.

Agile Practice Guidebook

Easier Branching with DVCS

Distributed Version Control Systems such as Git or Mercurial make branching and merging easy. Pull requests make it simple for contributors to fork a repo, make a change, and request a merge.

Teams using DVCS will often use feature branches to speed development. Making the move to DVCS is not difficult although planning is required

Atlassian SourceTree shows the features branches that the GreenHopper team has open, and the merges between branches
Atlassian Pairon - the perfect tool for XP teams or those conducting pair programming

Write Quality Code

There are a number of practices that developers employ everyday when it comes to coding. You have probably heard of pair programming, perhaps you even have a Pairon?

Velocity is key to delivery so make sure that you Don't Repeat Yourself. And be sure to set aside time for ongoing DevSpeed improvements.

Information Radiators

Information Radiators are an essential tool for every Agile team. JIRA Wallboards allow teams to visualize their build status, work in progress, the days remaining in their sprint and a whole lot more.

For example some teams may want to shame developers into writing higher quality code the first time. They may also want to provide extreme feedback.

JIRA Wallboards give Agile teams insight into their tasks and progress

Continuous Integration

Continuous integration is the process of running automated tests on every commit and on every feature branch to help you develop and maintain high quality code. 

You can conduct automated performance testing, for instance, and be notified via an instant message when a threshold has been exceeded. There are no limits when it comes to build infrastructure and getting feedback to developers fast, so make a start today!

Ensuring Quality Code

Quality is the responsibility of the team, not just an individual within it. For this reason activities such as blitz tests are great at reminding everyone to build quality in.

Code reviews are a great way to get high quality code for co-located and distributed teams. These tips for creating optimal code reviews will ensure you get the most out of code reviews.

Brendan Humphreys of Atlassian shares his tips for creating optimal code reviews
Atlassian developers, architects and technical writers during a documentation sprint, aka doc blitz

Agile Documentation

One of the more challenging aspects of building great software is the preparation of documentation in conjunction with features as they evolve. For an inside look at how we do this at Atlassian see the Technical Writing in Agile Software Development series.

Having developers write the documentation is also a good approach where there is a technical audience. Who better to write documentation for developers than the developers themselves?