Blog

Everything you need to know about tinyPM. Everything we want to tell you about agile.

Archive for the ‘tinyPM’ Category

tinyPM 2.3 Released

August 22nd, 2010 by Marcin Niebudek

We’ve just released tinyPM v2.3 which brings completely redesigned timesheet. New timesheet allows the team to look at time spent and time left estimated from the iteration perspective. It also provides the insight into all team members activity during the iteration which is more transparent than it was in the previous tinyPM versions. You can now easily see when the tasks were actually active during the iteration and who was working on them.

Filtering by user and iteration along with the time spent export to CSV format gives everybody the ability to create further reports using the data that already exits in tinyPM.

But wait… there is more. What else tinyPM v2.3 brings you this time?

  • time left can be directly edited on task cards (taskboard view)
  • improved tasks burndowns
  • foldable iterations on backlog view
  • user can choose not to receive e-mail notifications about actions he triggers
  • user own actions excluded from history RSS feed (now he sees what other teammates were doing)
  • user can delete his own comments
  • fixed drag and drop issues on backlog
  • fixed default tasks validation which caused errors when creating stories
  • improved help messages when getting started with tinyPM

If you want to see all this in action, take a look at our DEMO:

http://demo.tinypm.com

tinyPM is going to AgileEE 2010!

July 30th, 2010 by Marcin Niebudek

Once again we are going to Kiev for Agile Eastern Europe Conference which will run this Autumn (8-9th October). Last edition was a great event and we expect this year to be even better. It’s enough to look at the speakers lineup, to be sure that Agile Eastern Europe once again will become a really international event:

  • Mary POPPENDIECK (USA)
  • Henrik KNIBERG (Sweden)
  • Danko KOVATCH (Israel)
  • Marc LOFFLER (Germany)
  • Paul KLIPP (Poland)
  • Anda ABRAMOVICI & Sudhindra RAO (USA)
  • Robert DEMPSEY (USA)
  • Vasco DUARTE (Finland)
  • J.B. (Joe) RAINSBERGER (Canada)
  • Mack ADAMS (Canada/France)
  • Robin DYMOND (Canada/USA)
  • Yves HANOULLE (Belgium/France)
  • Monika KONIECZNY (Poland)
  • Andrea HECK & Tibor VIDA (Germany & Hungary)
  • Allan KELLY (UK)
  • Dr. Johannes MAINUSCH (Germany)
  • Sergey DMITRIEV (Norway)
  • Piotr ZOLNIEREK (Poland)
  • Sergei ANDRZEEVSKI (Russian Federation)
  • Andrea PROVAGLIO (Italy)
  • Pawel LIPINSKI (Poland)
  • Nikita FILLIPOV (Russian Federation)
  • Pavel GABRIEL (Belarus)
  • Artem SERDYUK (Ukraine)
  • Mikalai ALIMENKAU (Ukraine)
  • Timofey YEVGRASHYN (Ukraine)
  • Michael NORTON (USA)
  • Pawel BRODZINSKI (Poland)
  • Francois BACHMANN (Switzerland)
  • Jurgen APPELO (Netherlands)
  • Zsolt ZSUFFA (Hungary)
  • Gwyn MORFEY & Laurie YOUNG (UK)

We are proud to be once again to support the conference as a Bronze Sponsor, so if you use tinyPM, think about using it, want to talk about the tool, it’s capabilities and your need, then Kiev will definitely be a place where you can push us to the wall and ask all the hard questions.

If you haven’t decided yet to come, go on and REGISTER now!

Getting the Most From tinyPM’s Project Tracking

June 28th, 2010 by Marcin Niebudek

tinyPM provides at the moment several ways to track project’s progress using different types of charts:

  • project scope burndown chart (3 types)
  • project budget tracking chart
  • iteration scope burndown chart (based on story estimates)
  • iteration scope burndown chart (based on task estimates)
  • iteration scope burndown chart (based on reported time left on tasks)

Those charts are driven by four types of data available in tinyPM:

  • effort, on the user story
  • effort, on the task
  • time spent, on the timesheet activity
  • time left, on the timesheet activity

All those elements are optional to use and every user can choose for herself if she wants to use only some of them or all. You will find a cheat sheet with a summary on all tinyPM charts in our documentation at:

http://documentation.tinypm.com/display/DOC/Charts

Entering each one of those elements provides different level of insight into project state, so let’s have a look at what can we see in tinyPM by providing each of that data.

User story estimated effort

You can enter estimated effort for every user story. This is the most important and most commonly used number in tinyPM. Story estimates allow planning, are used to calculate average velocity that tinyPM suggests as capacity for newly created iterations (planned velocity field). Finally story points drive all project scope charts, iteration burndown based on user stories. Story points are also used for drawing scope series on budget tracking chart.

tinyPM Backlog

We’ve been posting some information about types of project scope charts available in tinyPM in the article Burning Down, Climbing Up, but let’s recap some key points from the tinyPM user’s perspective.

Project scope chart based on total effort. This chart start with the value of total estimated effort entered for all stories in the backlog. Every completed story (all tasks completed) burns this chart down (blue line). This type of chart contains also the green line calculated from planned velocity entered for each iteration. This type of chart never goes up.

tinyPM - Project scope chart based on total estimated effort

Project scope chart based on initial effort. This chart starts with the sum of estimated effort entered for stories created before any iteration is created. For each iteration we calculate currently estimated effort for all user stories. This means that if any story is removed during some iteration then the chart will fall down faster, but if some stories are created during such iteration (after the start of the project) then the chart may even go up (if stories added are worth more points than stories completed during that iteration). Effort completed for each iteration on this type of chart is calculated using the following formula:

effort left (real) for iteration N = estimated effort of stories created until iteration N – effort completed by iteration N

tinyPM - Project scope burndown based on initial estimated effort

Project burnup chart. This type of chart is the easiest one to use as it starts with zero and every story completed during each iteration pulls the effort completed line (blue one) up by the number of story estimated effort. All changes in total scope of project (stories added or removed during project) are represented by the additional series of total scope (gray line). If all stories are created before initial planning of iterations then the gray line goes up at the beginning and and stays constant during all iterations. However if any user story is added later in the project (and has estimated effort defined) then this line goes up and the whole point is that both blue and gray lines meet at the top right corner of the chart at the end of the project.

tinyPM - Project burnup chart

Iteration burndown (“User stories”). This chart is similar to the project burndown based on total effort. It starts with the total estimated effort for all stories added to the iteration. On the day when user story is completed (all it’s tasks are completed), the chart is burned down. This means that this chart works well for projects where stories are relatively small within the iteration and are quickly completed. Otherwise this chart may stay unchanged until the very end of the iteration when all the stories are finally completed within one or two days.

tinyPM - Iteration burndown ("User stories")

Effort on the task

You don’t need the tasks estimation if you have small stories that can be completed within one or two days. In this case estimates on stories and iteration burndown based on those estimates are totally enough to track project and iteration progress with a proper level of detail.

tinyPM - Taskboard

However if you stories get bigger and you like to define more tasks for each story, then you may want to start tracking tasks instead of stories. In this case tasks can use different scale of estimates than stories (defined in project settings page). This gives a possibility to:

  • estimate tasks using relative scale like story points
  • estimate tasks using time units

If you only want to escape the trap of big stories completed mostly at the end of iteration then the only thing you need is to have more detailed tasks in those stories. tinyPM is able to present two types of iteration burndown chart based on tasks.

Iteration burndown (“Tasks”). This chart may work with tasks without any estimates. If tasks estimation is turned off then all tasks will be treated as even (assuming they are small enough to be completed within a day). They burn down they chart when they are completed. Additionally each task in progress is presented as the yellow area on the chart so that it’s possible to see if a lot of work is in progress but not completed. If the tasks are estimated, then the estimates are used to calculate the burn rates on the chart and bigger tasks burn it quicker than the small ones.

tinyPM - Iteration burndown ("Tasks")

Iteration burndown (“Effort left”). This chart (apart of task estimates) requires entering time left on tinyPM’s timesheet. However if you don’t do that and provide only estimates for tasks you will notice that it will look like the one based on “Tasks”.

Time left on the timesheet activity

Time left comes from Scrum methodology when it’s declared every day for each tasks in Sprint. Iteration burndown (“Effort left”) starts with total estimated effort of tasks. Thats why, if you plan to use time left from timesheet, then task estimations should be also done using time units. After that, for each iteration day, all time left values are added up to calculate total time left to complete iteration.

tinyPM - Iteration burndown ("Effort left")

This type of chart may go up if some day during the iteration we find out something that makes completing the task impossible withing the initially estimated time. At that point we enter higher value of time left for such task in the timesheet. So this chart to work properly requires both – task estimation and timesheet entries with time left for those tasks.

Time spent on the timesheet activity

Time spent entered in the tinyPM’s timesheet is used only on the budget tracking chart. Also the story estimated effort is used in this type of chart to calculate the scope line (blue one). Total effort entered for all stories becomes 100% of scope on this chart, while budget (in man-hours) entered for project (on project settings form) is used as 100% of budget (red line).

Each story completed burns down the scope line while, each hour entered as time spent (on timesheet) burns down budget line. More on budget tracking idea you can read in the article “We’re in the Right Truck!“.

tinyPM - Budget tracking chart

tinyPM - Project settings form

tinyPM v2.2.2 More Personal

April 21st, 2010 by Marcin Niebudek

We’ve just released tinyPM v2.2.2 which makes user accounts more personal. Now you can add a profile photo, contact information and personal description. This is most important when working with distributed teams. Now your teammates from other locations will be able to know better real people behind user initials from the task cards on their taskboards.

tinyPM User Profile

tinyPM 2.2.2 comes also with improved connector for JIRA which now supports connecting to JIRA instances using self-signed SSL certificates. Among other fixes delivered with this release you will find:

  • improved story status presentation (combined tasks status and acceptance status into one indicator)
  • fixed tabindex on userstory and task forms
  • fixed default task for newly created projects
  • fixed problem with backlog rendering when user has no permissions to edit stories
  • fixed calculating task progress status by date (tasks burndown refreshing problem)

Last but not least starting from this release we provide standalone tinyPM version for Linux and OpenSolaris platforms. You can download new tinypm-2.2.2-install.jar installer from:

http://www.tinypm.com/download

UserVoice suggestions become tinyPM user stories

March 26th, 2010 by Marcin Niebudek

We’ve just release tinyPM 2.2.1 which adds new tinyPM connector for UserVoice. This plugin allows you to integrate your UserVoice forum with tinyPM sandbox and automatically import posted suggestions. When you’re ready you may convert them into stories.

Right now connector does not update suggestion statuses back in UserVoice forum, but we hope to handle that soon. So let’s take a look at how to configure new connector in tinyPM.

Connecting to your UserVoice forum with tinyPM

First thing you need to find is your forum URL. So simply go to your UserVoice page and go into your forum (if you have more of them). What you get in the address bar is the required forum URL.

tinyPM UserVoice feedback forum

After that choose Connector for UserVoice in tinyPM data source settings (projects list -> Project data sources) and set your forum URL.

Configuring tinyPM conenctor for UserVoice

That’s all you have to define. Now tinyPM will pool all new suggestions whenever they are posted to your UserVoice forum.

What else did we add in tinyPM 2.2.1?

  • defining more than one default task for your stories
  • defining estimated “time left” in the timesheet
  • Scrum-like iteration burndown chart based on “time left”
  • deleting more stories at once on backlog (new menu “Actions” for each iteration)
  • iterations are now always ordered by start and end dates
  • fixed “close iteration” problem when iteration positions are messed up
  • default iteration name pattern is now configurable in project settings
  • iteration number is editable again to be able to make “Iteration 0″ the first one and keep proper naming of subsequent iterations
  • added “Actions” menu for stories and sandbox items
  • editable user initials (no need to hack user names anymore)

We hope you will find all those changes helpful.

Connecting to JIRA and POP3 mailboxes with tinyPM connectors

March 19th, 2010 by Marcin Niebudek

So you know already that tinyPM 2.2 have Sandbox with connectors that allow you to import items, issues, messages and ideas from different places. For a good start we equipped tinyPM with two connectors. One for getting issues from JIRA and one for importing e-mail messages sent to any POP3 mailbox. Now let’s have a look at how to configure them and use to populate your new Sandbox.

Connecting to JIRA

tinyPM uses JIRA API to import issues, but the API requires you to create a filter. So the first thing you need to do is to create one in your JIRA.

Creating JIRA filter for tinyPM

tinyPM will monitor any defined data source periodically so any newly reported issue. Data source are defined separately for each tinyPM project, so you will probably filter only issues from a particular project in JIRA too. To do that go to issue navigator and set filter for the issues that you want to have in tinyPM. Let’s say we want to import all open issues from project DEMO.

Saving JIRA filter

After filtering issues JIRA gives you the option to save the current filter. This is exactly what you want to do. After saving the filter under any selected name the important thing to get from JIRA is the requestId=10010 parameter which is your filter ID.

Defining tinyPM data source connected to JIRA

Now it’s time to create a data source in tinyPM. Go to projects and click on project data sources icon Project data sources. After that select “Connector for JIRA” and enter your JIRA URL, user name and password for the user that has access to JIRA and to created filter (unless you shared the filter with all JIRA users).

tinyPM sandbox with JIRA issues imported

That’s it! After few minutes you should see the currently open issues from JIRA imported into your sandbox. New onse will get there as soon as they are created in JIRA. You can create stories based on the imported issues or you can reject them them without flooding your backlog. They will get a proper comment in JIRA.

Connecting to POP3 mailbox

You can connect to any POP3 mailbox and tinyPM will import all e-mail messages sent to that address into the Sandbox. How can that be valuable? You can create a special sandbox like demo-stories@example.com where you can sent any of your ideas which you may later on upgrade to a user story in tinyPM. You clients can sent any project suggestion in a simple and convenient way directly from they favorite e-mail clients.

tinyPM data source connected to POP3 mailbox

To setup POP3 data source simply configure the mailbox just like you do that in your e-mail client software. After that tinyPM will pool that mailbox every few minutes looking for new e-mails.

You can limit the list of users that are allowed to send e-mails that will be imported by tinyPM using the allowedSenders property. This property accepts comma separated list of addresses and also accepts simple * wildcard in any part of the address. On the picture above we’ve limited allowed senders to the e-mail addresses in the domain example.com

That’s all you need to do to user the power of new tinyPM sandbox. But stay tuned as new cool connectors are coming soon! If you have any suggestions for the connectors that we should provide next please don’t hesitate to post them on http://feedback.tinypm.com

tinyPM 2.2 Released

March 16th, 2010 by Marcin Niebudek

We’ve just released the new tinyPM 2.2 version which comes with cool new features. This version introduces tinyPM plugins for new product management section called Sandbox and ships with two initial integrations for JIRA and POP3 mailboxes.

tinyPM Sandbox with JIRA and POP3 intergration

What’s new in tinyPM 2.2:

  • Sandbox with connectors for JIRA and POP3 mailboxes (plugins)
  • printing user story cards from taskboard
  • tinyPM now speaks French

Sandbox will enable product owners to buffer all ideas, early concepts and bugs coming from all the places like bug trackers, support mailboxes, forums, company CRM systems and more. Those items, before they actually hit the product backlog can be gathered in the Sandbox which provides helpful states: NEW, UNDER REVIEW, ACCEPTED, IN PROGRESS, COMPLETED, REJECTED.

It is also a 1-click operation to create a user story from Sandbox item.

Connectors for JIRA and POP3 mailboxes provide you a way to easy get your bugs and ideas from specially created e-mail accounts directly into tinyPM, where they can be managed on their way to becoming a product features.

You can read more about configuring connectors in tinyPM in the upcoming post. In the meantime take a look at our demo at:

http://demo.tinypm.com

Or download your own tinyPM Community Edition for FREE at:

http://www.tinypm.com/download

Agile Central Europe 2010

February 2nd, 2010 by Marcin Niebudek

We were happy last year to take part in the first agile conference in the Central/Eastern Europe region in Kiev. That’s why we are even more excited that this year will bring two interesting agile events in this part of the world, with the first to be Agile Central Europe 2010 in Krakow.

Agile Central Europe 2010As we’re always interested in supporting agile initiatives emerging in our region, we are happy to announce that tinyPM became a Bronze Sponsor of AgileCE.

The conference will take place in Krakow, Poland, 8-9th April 2010. By the February 15th you have a chance to get an early bird ticket for only 85 EUR for a 2 day conference.

 

During those 2 days you will be able to hear many interesting talks:

  • Systemic Software Development for Agile Teams
  • Distributed Agile in a Multicultural World
  • Iteration Management – unclogging your development process
  • The Sword And Other Tales
  • The Agile Influencer’s Mantra

You can read more at the official conference site. So don’t wait!
REGISTER NOW and meet as in Krakow this spring.

Burning down, climbing up…

November 10th, 2009 by Marcin Niebudek

tinyPM 2.1 introduced three types of project scope charts. We would like to write few words about differences, advantages and disadvantages of using each of them. We will use all three types of charts on the same project data, this way we can better compare the information that can be read from them.

Burndown chart

(with initial project estimation as a starting point)

Burndown (type I)

As you can see, the project started with a backlog containing stories worth about 50 story points in total. When we use the initial estimation as a staring point we simply put the total backlog effort on the chart and each following iteration we mark how much effort there is still to be burned (blue line) and what is the expectation (the green line).

The green line never goes up because this would mean that we expect negative velocity. However the blue line may go up in one case, which is a feature creep.  In other words, the line goes up when at some point of time (T10) more new stories get into our backlog than we can actually complete. This way at the end of the iteration we have more effort left than we had at the beginning.

So we can instantly see the feature creep effect using this type of burndown. But what can we say about our team’s activity between T10 and T14 or even T20? Did they do anything? Iterations where passing by (green line continuously heading down to the level zero) but we cannot see any significant move on the blue line. Does it mean that the team did not do anything, or that the backlog got as many user stories each iteration as we could complete. Actually it may be each one of those explanations. So the point is, that with this type of burndown we don’t know that exactly.

Finally when the green line hits the zero level we can see how late we are.  In our scenario the project was supposed to be finished by the T14, but at that point the team was still missing over 30 points (new stories not included in the initial scope) and the distance kept growing.

You may say this project was in a deep trouble, but we intentionally chosen such data, because when everything goes well and the lines dance close to each other, there is nothing interesting to observe and the devil is in the details. What is so valuable about burndown charts, is that they can quickly warn us when some bad things start to happen. This project could have actually be rescued somewhere between those T10 and T14 points.

Advantages:

  • simple to draw even on the white board
  • can show a feature creep
  • can show the point where the team loses the ability to actually complete the project

Disadvantages:

  • doing nothing and doing only enough to balance a feature creep looks the same on this kind of chart
  • cannot read the velocity out of this chart
  • your backlog needs to be estimated at the beginning, otherwise you will soon cross the zero level (which will look odd)

What types of projects is it good for:

  • good for projects with some initial vision represented in the backlog and estimated at the beginning (at least as the epic stories)
  • good for projects with fixed-price contract as then we usually have an initial estimation and we want to watch it burned according to a planned velocity

Burndown chart

(with total estimated effort as a starting point)

Burndown (type II)

This type of chart is recalculated each time it is viewed and the burndown always starts with the total currently estimated effort for all backlog items. So even if the project stars with about 50 story points, when we take a look at it after few iterations it shows current total which may be for example 80 points.

Here we can only observe the relationship between plan and execution. We assume that stories may be added to the backlog at any point of time. We may even start with few stories. Until the blue line stays under the green one, everything is fine. If we accept all those new stories (by simply extending the budget or by working based on T&M contract) then at the point T10 there is no trouble in our project – we’re still doing fine having velocity higher than expected.

At T14 we can see that the development stopped for some time. Probably at the point of T14 it reached zero (and maybe has been released), but later the velocity started to decrease (blue line above the green one).

On this type of chart both lines always go down. It does not tell anything about the feature creep in the project, but only about the changes in the team’s velocity.

The last observation that we can make with this chart is that at T29 planned effort reaches zero while there is still some real work to be done. This means that even with all those new stories we should have finished at that point and now we’re getting late.

Advantages:

  • you may actually see the changes in team’s velocity in the project
  • does not require any initial estimation, nor the fully populated backlog

Disadvantages:

  • hard to maintain on the white board (requires recalculations for the past iterations)
  • feature creep may not be seen
  • treats all stories as “must haves”

What types of projects is it good for:

  • as it does not require any initial estimation it’s best for some research projects or exploratory work where stories are invented based on the results from the recent iterations

Burnup chart

Burnup (type III)

This type of chart actually climbs up. It also introduces the third series (gray line) which is the “current total effort”. It combines advantages from the both previous burndows and at the same time does not have their disadvantages.

We start the project with zero completed and planned effort. Total effort may start also with zero or it may start with some initial backlog stories estimation. The goal is to reach the “total” gray line with the blue one, so actually build all those planned features.

Here we can clearly see both – the velocity of our team (on the blue line) as well as any feature creep by looking at total effort line (gray one). If the gray line goes up, then stories are being added to the backlog (or re-estimated with some higher values) . When it goes down, it means the scope to reach gets smaller.

At the T10 we’re doing fine in terms of team’s velocity but at the same time our project scope gets larger. It’s time to decide if it’s something wrong or if we accept those new ideas. At T14 we’re done with some part of our product, and it looks like we’re are done just in time. However there is still lot to do (for example for release 2.0). T28 is the point when we actually planned to reach the goal (green line meets the gray one), but somewhere between T14 and T28 our team has lost it’s initial velocity and now we are still missing about 20 points (blue line still not there).

Advantages:

  • shows most of the interesting patterns in all kinds of projects
  • easy to maintain even on the white board

Disadvantages:

  • none that we know of unless you find this chart being painted upside-down ;-)

What types of projects is it good for:

  • all types of projects

We hope that those examples will let you better choose the best type of chart for your project. We are waiting for you suggestions or any other ideas on how to visualize the project status even better.

Agile Team Meets a Fixed Price Contract

October 20th, 2009 by Marcin Niebudek

Recently we gathered some of our thoughts and practices about fixed price into a longer article which starts the series for agile techniques that work (don’t know yet how often we will be able to publish one of these).

Agile Team Meets a Fixed Price ContractWe like to say that fixed price contracts are evil, but they are reality which many agile teams have to face. So what if we try to tame it instead of fighting against it?

The main point in the “Agile Team Meets a Fixed Price Contract” is that what actually bothers us in the iron triangle is not a fixed price nor the time but the scope which is defined upfront. So what actually the agile team needs to try, is to change the explicitly defined requirements into scope defined as the amount of work which has to be done.

In other words, exchange a “what” into “how much” value we need to deliver because “what” is about to change and we want that change to happen. How the company can execute this kind of contract using agile practices to achieve better results with lower risk?

Take a look at the full article in the white papers section:

http://www.tinypm.com/whitepapers

As always we are waiting for your comments. What works for us may not work for you, so we are always happy to hear about new ideas that worked in your context.