Managing Agile Project Cycle, Agile Development and Project Management Tools

By Detector | 29 December 2009



Agile! This is the right word for every software process especially for managing any software project. With simple definition from Wikipedia – Agile methodology is an approach to project management, typically used in software development. It helps teams respond to the unpredictability of building software through incremental, iterative work cadences, known as sprints.

Agile development methodology attempts to provide many opportunities to assess the direction of a project throughout the development lifecycle. This is achieved through regular cadences of work, known as sprints or iterations, at the end of which teams must present a shippable increment of work.

If you are one of the players in Agile methodology process, especially Project manager or, as “Agilists” used to say “Scrum master” for sure you will need some kind of tool of software for running your project, tracking issues, and building new ideas for new features and software improvements. JIRA is that kind of software. If you are running “agile” JIRA is definitely a solution that you need. This product will allow you many benefits in leading and tracking projects/products. System itself is very flexible, modular and customizable. Administration panel allow us very powerful configurable functionalities such as : Managing Users ( users, groups, …), Schemes, Defining issues fields, etc.

From the end user aspect it is also very powerful. Having notification system integrated in it and intuitive dashboard that people will never forgot a task or forgot any issue. Flexibility of the system will allow you creating different types of projects, creating custom workflows, assigning tasks to issues, time tracking, … From developer side you will have direct connection PM tool -> development studio.

But, there is something else which I would like to pointed the most in my short presentation for usability of this system in Agile software development. Below you can find a short case scenario for using this perfect product:

If your are Project Manager of similar projects, you know that Agile projects are run in iterations, these might be 1 week, 2 weeks or perhaps a month (or more :) as it is now in my company). In our department 4 week iterations are a good for a start. Each iteration has a collection of Features and Improvements – in JIRA those issues are called “stories”. A story a single feature that has been defined through analysis of the project needs. As agile project, you don’t have to analyze the project completely up front and have everything mapped out. You just need enough to get you on your way, you will be creating and estimating more “stories” as you go – as we called in the moment – Flexible development.

Workflow of the Agile Projects – using the “Story” type issue.

In Jira you can define a custom issue type – “Story”. You can create new “Story” issue types in Jira, but you don’t have to estimate them straight away and certainly don’t need to assign them to iteration yet. That could be all requests from Product and Business Analysts, Stakeholders, features, and improvements which need to done in specific time frame.

You can estimated them later when you will have a Specification and Documentation (users can attach a files and documentation directly to the “story” issue).
You can put your estimation date is specific field or you can just open custom field for that. Jira lets you add custom fields just to a particular issue type, in our case “Story”.

Estimation is needed because some of the reports we want to generate want to know when new stories came into play. You could do this based on the creation date of the issue, but it may well be that you only want to start counting a story as being available once it is estimated and this allows you to record some data about the story before estimating it.

Stories have a certain workflow. For example:

(1) New story ready for estimation,
(2) Story ready for scheduling,
(3) Story ready for development,
(4) Story in development,
(5)Story ready for testing,
(6) Story tested and complete.

Assignment and reassignment between users and resources of the project is also possible. User can be grouped in specific groups like, PA, Development, QA, Testers, Support, so we will always know which Group/Part of Department need to do something(in the specific moment of the time/plan) with the story/task/issue.

You can make custom filters for each story but I think that this is only for JIRA enterprise version.
Once you are ready to start planning your iterations, you just need to assign the stories you’ve created and estimated to several iterations.

The interesting part of Agile project workflow is reporting. There are a lot of reports which we could use.

My conclusion that JIRA is excellent bugs tracking and project planning tool for keeping track of an agile project development.

I miss something: You could easily match source code repository with JIRA, so it is easy to track changes and releases and match them to stories.

As this is just short (:-) ) review of this tool maybe I could miss something(or a lot), but I hope that I show you the crucial part of the whole image.

Useful link: JIRA DEVELOPMENT STUDIO

Please let me know for any question.

Tags | , , ,

| |

2 Responses to “Managing Agile Project Cycle, Agile Development and Project Management Tools”

  1. Proworkflow says:

    An interesting and well written article. I can understand your points and some of them are excellent such as limit task switching and separate urgent from important. I am not so sure about a couple of the others. Based on my experience in the software industry and now as a time management coach I am not convinced about "don't add a buffer to time estimates" and "defer decisions".

  2. I think agile has it's benefits particularly against more formal methodolgies such as Prince2.






Archives

Add to Technorati Favorites
website stats
TwitterCounter for @ukion