Posts Tagged ‘burndown’

New Scrum in Under 10 Minutes Video

February 23, 2012 1 comment

Shane the Videographer

Late last year, I felt it was about time to update the now 3-year old “Scrum in Under 10 Minutes” video. The video has been immensely popular having been viewed over 600,000 times. In that time I have received a tremendous amount of great feedback for improvements to the video. I had a few ideas of my own too, so I wanted to see if we could redo the video and still keep it under 10 minutes.

For nearly a year I’ve also had the pleasure of working with Shane, Axosoft’s resident videographer. Shane is an amazing artist and he helped make the new scrum video visually unbelievable. We’ve been working on the new version of the video for nearly 3 months (actually mostly Shane has been working on it and I just keep bugging him), and it’s finally ready for its debut.

Here it is:

Intro to Scrum Video

A Tour of OnTime V11 Beta

May 31, 2011 34 comments

It’s finally here! The OnTime V11 Beta is now live. If you’re in a hurry, go here to signup now:

Try OnTime V11 Beta Now
(Hosted New Accounts Only – others see timeline below)

If you’re not in a hurry, I think you might like the information in this article:

Top 12 Things You’ll Love About OnTime V11

OnTime V11 is an amazing upgrade. We focused 100% on the web user experience. There is so much new that it’s hard to know where to start. So I’m going to focus on the top 12 new things that I think you’re going to absolutely love about OnTime V11…

#1: A Brilliant and Simple Main Page

You don’t have to sacrifice power to get simplicity. Products such as the iPhone proved that with a disruptive new UI and so much new power in a smartphone that never existed before. Could that be done for a complex bug tracking and project management system? For the past year, we’ve been working on that challenge and this is the result.

Screenshots don’t do it justice, but lets try anyway:

There are a ton of new features here, but some users want nothing more than a spreadsheet-like list of the items they want to work on. No problem. Hide the unwanted sections and now the UI looks like this:

While in this mode, taking the mouse pointer over the hidden section hotspots will cause the sections to re-appear.

#2: Keyboard Shortcuts

If you are a software developer, the last thing you want to do is to spend a bunch of time in the project management software. At Axosoft, as much as we are proud of the work we’ve done to make OnTime great, we recognize that the time a developer spends in OnTime is essentially “project overhead.” So our goal is always to reduce the amount of time it takes to perform common tasks. That’s where keyboard shortcuts come in.

We modeled the keyboard shortcuts of OnTime after the keyboard shortcuts of Gmail. So if you are a Gmail user, you’ll feel right at home. Just hit the [Enter] key to view an item. J and K to move back and forth. U to go back up to the grid. C to create a new item. Shift-C to create a new item in a new window.

Hit the ? key to see the shortcut keys:

Once you get used to the keyboard shortcuts, you’ll never go back!

#3: Light-Speed Detailed View

Wanna view the details of an item? Hit the [Enter] key and before the [Enter] key bounces back, OnTime will be showing you the details of the highlighted item. It is incredibly fast. Trust me, you’ll be surprised at how fast it is. Here is what the new view item looks like:

Just as important as how fast the new Detailed View of an item loads is how fast it will go away and put you back at the main grid. Hit U and you’re back up to the main grid, exactly how you left it.

Another great thing to try while in the detailed view mode is to hit the J and K keys to go to next and previous. Again, each new item will open faster than the keys can bounce back.

#4: Auto Save Details

Ever spend 15 minutes writing up the details on how to reproduce a bug and then your browser crashes? Maybe you have to leave, so you close your laptop lid and two hours later, your session has timed out and you’ve lost all your details. Well, no more!

The new Auto Save feature which is inside the new HTML editor of OnTime V11 is saving your work to a local cache as you type. In the event of a crash, loss of connection or time out, no worries. Just bring back the browser and go back to the item you were editing and click the HTML control’s new “Reload AutoSave” button and voila! Your work is safe and sound:

#5: ScratchPad

The new ScratchPad feature in OnTime is like NotePad, except better in the following ways:

  • Automatically saves your notes as you write them
  • Allows you to create an unlimited number of notes
  • Automatically names them based on date/time, but allows you to rename the note easily
  • It’s a rich HTML editor which allows you to format your notes
And just like NotePad, your notes are private to you:

One great feature of the ScratchPad is that you can open it in its own window. You can even close the main OnTime window and have your ScratchPad always running.

#6: Item Details

The new accordion style for item details allows you to have multiple detailed sections open at the same time. As you select an item, all the details you care about are shown to you in one place. If you like the details at the bottom of the page in tabs (like in V10), you can do that too. Use the new “Throw Down” button to move the side accordion sections to the bottom of the screen. You can have some details at the bottom in tabs while other details are on the side accordions like this:

You can also hide all the sections you don’t use to reduce the clutter.

#7: Drag-and-Drop Attachments

Drag-and-Drop in a browser-based app! That is, unless you are using Internet Explorer. Don’t get me started on Internet Explorer, but for whatever reason, Microsoft doesn’t want to play along with the rest of the browser world. As a result their market share has taken a hammering. It’s gotten so bad that I don’t know very many developers that use IE as their main browser.

Anyway, if you want this cool new drag-and-drop feature, it will work in Google Chrome, FireFox and Safari, but not in IE:

The attachments section also shows you thumbnail previews of the attached files:

#8: Quick Filters

OnTime is all about filters. You can quickly filter the items in the grid by any Project, Release, User or Customer simply by clicking on them in the left accordions:

In the above screenshot, the main grid is filtered by the selected project, release and user. Even more importantly, we’ve added quick filters to all the list, date and user fields in the main grid:

Click on a quick filter button and you can immediately choose how to filter by that column.

#9: A Smart Burndown Chart

The burndown chart in OnTime shows the amount of work remaining for a given sprint or release by day and it looks like this:

In OnTime V11, the Burndown chart is super smart. For example, as you move from release to release, on the left sidebar, it will automatically update the burndown chart to reflect the currently selected release.

Sometimes, work on a given sprint or release might be done before or even after the official start and end dates. In such scenarios, the new burndown chart in OnTime will automatically adjust the start and end dates of the chart so that the work that is outside the start/end dates  of a sprint can still be seen on the chart.

You can also hover over a bar in the chart to get values and trending information. It’s the fastest and best burndown chart we’ve ever had.

#10: All Items Tab

The new “All Items” tab lets users see Defects, Features and Incidents in a single place. The benefit of such a tab is to be able to see all the work that’s assigned to you. You can even group the work by the type of item it is:

You might ask “why have the individual Defects, Features or Help Desk tabs at all if I can view them all from the All Items tab?” The answer is that based on a user’s role or current activity, they might only be interested in a particular type of item. People in Support rarely venture out of the Help Desk items. Likewise, testers might be focused on the Defects in the system.

#11: Open in New Window Button

As you add, edit or view items in OnTime, you can easily throw them into their own dedicated window:

I love this feature because it allows me to continue working in the main grid while allowing me to add, edit and view a bunch of other items at the same time.

#12: Current Settings

So you have your view Grouped, it’s filtered by 2 different fields, it’s sorted and you did a search. How do you know what the current settings of what the grid is showing? Simple, just look at the new “Current Settings” bar. It gives you all that information at a glance:

What’s great about this new bar is that it lets you quickly remove and adjust these settings directly from the settings bar. Try it. You’ll love it!

The OnTime V11 Beta Timeline

We have been using the OnTime V11 Beta here at Axosoft for more than a month. While it has some minor beta-related issues, it’s a very stable and becomes more stable every day (the beauty of a hosted solution). The beta is ready for production use. However, we didn’t want to take any chances, so the rollout of OnTime V11 Beta will be like this:

  • Right Now – As for right now, OnTime V11 Beta is available for new Hosted (OnTime Now) accounts. Initially limiting the beta to new accounts will help us ensure we iron out final issues before upgrading existing customer databases.
  • June 13th – We’ll make the beta available to all customers, both hosted and installed:
    • Existing hosted (OnTime Now) customers will have the option to switch back-and-forth between V10 and V11. Each user will be able to use the new V11 or the old V10 interface during the beta.
    • OnTime V11 download files for  installed customers will also become available on this date.
  • July 12th – Final Release of OnTime V11 for both installed and hosted customers.

For customers who upgrade to OnTime Web V11, to ensure the transition is as smooth as possible, each user has the ability to switch to the V11 interface at a time of their own choosing.

What About OnTime for Windows?

Let me start by saying that I have been a big fan of OnTime for Windows. I also recognize that we have a lot of OnTime Windows users. Historically, most of us at Axosoft have also preferred the OnTime Windows user experience to the OnTime Web user experience. All of that changes with OnTime V11.

While we fully intend to continue the support and development of OnTime Windows, we also recognize that the future of business applications is the Web. We had to make sure that the user experience of OnTime Web was as good or better than the OnTime Windows product. It had to be as fast or faster. It had to be as easy or easier. It had to become so good that users would prefer OnTime Web over OnTime Windows.

With V11, all of those goals have been accomplished! If you like OnTime Windows, you’re going to love the V11 Web interface. Plus, web-based apps have the added benefit of being able to access the system from anywhere and not having to install a new version of the product on each and every user’s machine. If you go with the OnTime Now Hosted solution, you are also always on the latest version of the software.

Go Hosted With OnTime Now – It’s Better!

Since OnTime V2.0 was released in 2003, Axosoft customers have had the choice of going with installed or hosted. With 8 years of hosting experience under our belt, we’ve learned a thing or two about building a fantastic hosted environment for OnTime. Specifically we’re proud of the following accomplishments:

  • We are in 9 data centers around the world! As part of our effort to provide maximum performance and uptime, OnTime is hosted out of 9 different data centers around the globe. We have data center locations all over the US plus Canada, the UK and Australia. During the signup process, users are able to choose the data center that has the highest performance to their location. The signup form will automatically choose the data center that is closest to the user’s location based on IP address.
  • We have never  lost customer data! We have been hosting OnTime for hundreds of customers for 8 years now and we have never lost a single bit of customer data. Even though backups are also made on a nightly basis, we have never even had to restore customer data from backups either (although we periodically test this to make sure we’re on top of it in case we ever need to).
  • Availability and Uptime have been exceptional! OnTime Now customers rarely experience downtime outside of maintenance hours. Over the past 8 years, the outages could be counted on the fingers of your hands and have rarely lasted more than a couple of hours.

The best part about going hosted is that you don’t have to worry about anything. Super fast redundant hardware setup, check. RAID redundancy for storage, check. SQL Server Installed and Tuned, check. Nightly backups, check. Active monitoring to ensure uptime, check. Lower cost of software, check. Lower IT costs, check.

Switch From Installed to Hosted – It’s Easy!

If you are currently an OnTime installed customer, regardless of which version you are on, switching to OnTime V11 in our hosted environment is a breeze. All you would need to do is backup your database and send it to our sales team (you’ll use the Axosoft drop box from Transfer Big Files). You’ll be up and running in one of our 9 data centers with all your current data and settings intact, usually the same day!

If you have maintenance, there are usually some incentives for switching from installed to hosted. Contact the Axosoft sales team for details.

Watch the Video

The following video highlights some of the features above and some others that didn’t make my top 12 list. It’s a great overview:

Watch the V11 Beta Video on YouTube

Try it Now

Ready to try OnTime V11 Beta? Signup for a Free 30-day, 10 User account now:

Try OnTime V11 Beta Now

And be sure to let us know what you think. You can discuss the product in the OnTime V11 Beta Forums.

Scrum on Demand – Getting Started with Scrum

October 6, 2009 6 comments

So you are sold on Scrum, but having a hard time getting started, right? There are a lot of questions on your mind:

  • How do I convince the team to use Scrum?
  • How long should our sprints be?
  • How should we handle bugs?
  • What if our estimates are not accurate?
  • How do we handle items with dependencies across sprints?
  • What tool should we use to track everything?
  • How do I get my team trained on Scrum?

We’ll tackle each of these questions in this article.

How do I convince my team to use Scrum?

Remember that “using Scrum” mostly means the following things:

  1. Making a list of things that you need to get done for the project (product backlog)
  2. Prioritizing that list
  3. Estimating how long each item in the list will take
  4. Meeting regularly to see the status of items and make small adjustments
  5. Keep track of how much work remains until the project is finished (burndown chart)

So if you are getting any push-back from your team, management or executives on using Scrum, then don’t refer to it as Scrum. Come in with a plan that says you want to do the 5 things listed above. The resistance will immediately dissipate because there will no longer be a fear of the unknown. It’s hard to argue that “making a list of things we need to get done” is a bad thing. You’ll know it as the product backlog, but who cares if others call it that?

How long should our sprints be?

As a general rule of thumb, most dev teams have a typical “release cycle”. My standard recommendation is that make sure you fit at least 4 sprints to as many as 12 sprints into your release cycles. So if your typical release cycle is once every 6 months, it wouldn’t be a bad idea to have 6 sprints of 30-days each. On the other hand, if your release cycle is only 3 months, you still might want 6 sprints, but make them 2 weeks each.

How should we handle bugs?

There are two types of bugs. There are those that A) appear while you’re still working on a given feature PRIOR to the completion of the feature and B) bugs that are identified AFTER a feature is considered feature-complete. Bugs that are identified PRIOR to the feature being completed should be dealt with right away and the feature should never see the light of day without the bugs being addressed. However, the challenging part of bugs is how to deal with the bugs that are identified AFTER the feature is completed and released in the product.

There are two main schools of thought here. Neither is better than the other. Use the one that fits your team best. Here they are:

  1. Log bugs just like any other product backlog item and in each sprint, take a handful of bugs to address in each sprint. In this scenario, bugs and features are thrown into the same product backlog and prioritized, estimated and dealt with just like any other product backlog item.
  2. The other school of thought is to track bugs in a separate “Defects Backlog” and have dedicated sprints that focus on nothing but bugs to help everyone stay focused on creating the most stable product. The idea here is that with everyone in the team focused on fixed bugs, nobody is busy introducing new bugs by coding new features and as a result, the team will produce a more polished product.

How do we create more accurate estimates?

The first thing to remember is that nobody creates accurate estimates. The key is to create an accurate overall target release date that is manageable. So there are some best practice rules on creating better estimates. Here they are:

  1. Involve at least 2-3 of your most experience engineers on creating estimates, along with the person who will ultimately be responsible for coding it. Take the higher estimate value if the group doesn’t agree.
  2. Keep estimates at approximate values that are thrown into larger buckets. For example, your “estimate values” might be:
    • 1 Hour
    • 2 Hours
    • 4 Hours
    • 8 Hours
    • 2 Days
    • 3 Days
    • 5 Days
    • 2 Weeks
    • 3 Weeks
  3. If an item is estimated to take 10 minutes, that falls into the 1-hour bucket. If it’s estimated to take 3 or 4 hours, that probably falls into the 8 hour bucket. Being conservative with estimates will address some of the unavoidable down-time for estimations.
  4. Expect no more than 6 hours of productivity each day from each software engineer. That means the typical software engineer should plow through 30 hours of estimated work per week. Don’t expect more because they have overhead of meetings, checking email and Facebook!
  5. Lastly, be sure to leave room in your overall schedule for unforeseen items, changes that will inevitably be made and other things that you simply can not predict. Generally speaking, you’ll want about 1 week of padding for each month of development. So on a 4 month project, don’t take on more than 3 months worth of work.

How do we handle items with dependencies across sprints?

Dependent and complex items are essentially the high-risk items in software development projects. To minimize the risk, there are two things you can do:

  1. Use Proof-of-Concept prototypes as often as possible. These throw-away projects should help demonstrate the feasibility of high-risk items. These items include anything that the team does not have experience developing, which might include a new cool User Interface design, back end data storage, cool new web interface and so on.
  2. Tackle the tough tasks in your first few sprints. This will help you identify problems early. You don’t want to find out two weeks prior to your ship-date that a task that was expected to take a couple of weeks will in fact take a couple of months. Putting high-risk items first, will help you get project visibility early that will allow you to change things up to address your timeline.

What Scrum tool should we use to track everything?

It’s always surprising when I find software development teams that still use Excel or even sticky notes, paper and white boards to manage the development of a software project. After all, we are all in the business of creating software that makes some manual tasks easier. There are dozens of software applications out there that are far superior to using Excel or an offline solution.

One example of such a tool (my favorite, in fact :-), is my company’s product, Axosoft OnTime. OnTime is designed to stay out of the way of software developers so they can focus on writing code, which is what software developers do best. But it also provides project managers, scrum masters and executives with all of the project visibility tools that are instrumental in helping them make decisions about the direction of the project.

Here is how OnTime helps Scrum teams:

The Product Backlog

Scrum Product BacklogsOnTime allows for Scrum teams to manage their product backlog in either of two ways:

  • Single Backlog for Everything – The ability to see everything that relates to a given product, version or sprint in a single product backlog is a nice way to view project information. It allows teams to deal with bugs in the same way they deal with any other requirements.
  • Separate Backlogs for Defects (Bugs) and Features (Requirements) – OnTime also allows teams to separate defects, features and tasks into independent backlogs. This level of flexibility allows for each type of item to have a separate workflow, allowing defects to go through a different process than feature requests. For example, a defect might need to be verified, while a feature requests first needs approval.

Regardless of which way you decide to go with the product backlog, OnTime provides powerful backlog features that are useful for every user, including:

  • Ability to create public and private backlog filters with powerful AND/OR functionality for combining conditions
  • Ability to group backlog items to view them by assignee, status, workflow step or any other built-in or custom field
  • Ability to create saved public or private views which save everything from fields being displayed, the sizes of each column, filter conditions and more
  • Ability to set first, second and even third sort criteria so that you can view your backlog in the way that makes most sense
  • Ability to apply a change (such as status, workflow, date or other changes) to multiple items with the click of just 1 button

These features make OnTime one of the most powerful tools on the market for Scrum teams who need fine controls on their product backlog management.

Sprint Planning

Scrum Sprint PlanningSprint planning is one of the most important activities that Scrum-based teams perform. With OnTime, sprint planning takes form naturally from the product backlog. Assigning items to a sprint is as easy as dragging and dropping (in the OnTime Windows client) any number of items from your product backlog onto a planned sprint. Alternatively, you can use the multi-edit feature to assign a number of product backlog items to any given sprint.

To create the planned sprints, OnTime also makes the Scrum Master’s job easy. The OnTime Releases hierarchy breaks projects in the following way:

  • Products – You can manage any number of products in OnTime
    • Versions – Each Product can have any number of versions
      • Sprints – Each Version has numerous Sprints

OnTime also provide auto-calculators for sprint start and end dates. You simply tell the system how many days your typical sprint is and OnTime will automatically calculate the dates.

Daily Standups

All meetings are overhead. With that in mind, the goal of meetings should be to keep them as short as possible (and as Einstein might say, “but no shorter!”). OnTime facilitates meetings, such as the Scrum Daily Standup, by having all the information that’s needed to make decisions ready at hand. A typical meeting starts in a conference room with the main OnTime screen being projected on a screen with a “Daily Standup” Previously Saved View applied to the system to show only the items of focus for the given sprint.

The team has the ability to go through the items right there, make notes, change status and so on, allowing the meeting’s decisions to be captured in real-time without further work that would typically be assigned to the Scrum Master.

Tracking Progress (Burndown Charts)

OnTime Burndown ChartsIf you don’t track it, there is no way to improve it. Furthermore, project visibility is perhaps the most important factor for project success. That’s where Scrum burn-down charts play a pivotal role to making sure projects are on track and OnTime provides an extensive set of capabilities when it comes to Project Visibility and Burn-down charts, including:

  • View a mini burndown chart on the main OnTime page, giving everybody on the team the same sense of urgency to move the project in the right direction
  • Multiple burndown charts depicting one or more sprints, versions or products in a fully customizable Charts Dashboard
  • View rollups of burndown charts for multiple sprints for a given version of a product
  • Show trend (such as the burndown velocity) and project a ship-date for a given version or completion date of a sprint

The OnTime dashboard provides a number of other useful charts too, like the Treemap, or Trend Reports and even user workloads to make sure you are not overloading a particular team member with too much work.

It’s Scrum On-Demand

Scrum on DemandWith Axosoft’s OnTime Now! Scrum teams can actually signup for and start using a 30-day, 10-user trial of the OnTime system in seconds! Axosoft has done an incredible amount of work to make the OnTime Now! system exceptionally unique with the following features:

  • Choice of 6 Data Centers world-wide for maximum Hosted performance
  • Ability to use either a web client or the rich OnTime Windows client (this is unheard of in a hosted solution)
  • Ability to use OnTime Visual Studio or Eclipse plugins for developers so they never leave the IDE
  • Ability to use OnTime iPhone client, a full-featured app that provides dashboards, access to all items and much more – incredibly useful for every team member, especially the Scrum Master

The best part of the OnTime Now! hosted solution is that there is no compromise and there are no contracts. You get to use both Web, Windows, iPhone, Visual Studio and Eclipse OnTime clients and the entire thing is hosted in any of 6 different secure data centers that Axosoft manages around the globe.

Learn More About OnTime Now! >>

It’s Inside of Your IDE (Visual Studio & Eclipse)

OnTime Eclipse and Visual Studio PluginsDesigned to stay out of the way, OnTime provides the ability for developers to stay in the environment where they are most productive: The development IDE. OnTime supports both Visual Studio and Eclipse and allows developers to access the information they need right at their fingertips. The Visual Studio and Eclipse plugins allow users to:

  • Add, Edit and modify the workflow or status of items directly in the Eclipse and VS IDEs
  • Filter, sort and view items in a variety of ways
  • Add notes, attachments and work log entries for items
  • View items associated to a product, version or sprint

For developers, nothing is more productive than being able to stay in the IDE while modifying project management related tasks.

It’s Even in Your iPhone

Data was meant to be shared and viewed from everywhere. That’s why OnTime provides every team member with the ability to access their OnTime system from the convenience of their iPhone. The OnTime iPhone client provides some powerful features, including:

  • View and edit all item types (defects, features, tasks and incidents)
  • Filter and sort the product backlog(s)
  • View items by project, product, version or sprint
  • Add attachments, notes and comments to items
  • Log work done on a given item
  • View a number of built-in charts or create custom charts meeting any filter criteria

The OnTime iPhone client is intuitive and powerful. Exactly the type of features

How do I get my team trained on Scrum tools?

The last piece of the puzzle is how do you get your team trained on the tool that you select? Axosoft has a solution for that too. In fact, Axosoft offers a number of FREE Web-Based, Instructor-Lead classes on the following subjects:

  • Implementing Agile / Scrum Methods with OnTime (Class code OT-302) – This hour-long class walks you through how to setup an OnTime database to use Agile or Scrum terminology, setup product backlogs and get going with burndown charts.
  • OnTime End-User Essentials (Class Code OT-101) – This hour-long class walks typical users through the main OnTime interface covering the day-to-day operations of users, such as creating and applying filters and views, creating new items, comments, attachments and more.
  • OnTime Administrative Essentials (Class Code OT-102) – This hour-long class walks your OnTime administrator through the setup process, new user creation, customization of fields and field templates and other administrative tasks.

Did I mention these web classes are free? But they are only available on a first-come-first served basis as class attendance is limited to ensure each person has an opportunity to ask questions. Learn More >>

OnTime V9: New Super Dashboard

November 21, 2008 1 comment

In OnTime V9, one of the most exciting features we are adding is a totally re-written customizable project dashboard that is extremely powerful and flexible.

OnTime Project Dashboard

The new dashboard features include:

  • Savable Dashboard Views – As you configure your project dashboard graphs, you can define the number of rows and columns on your dashboard and configure each graph or table that it contains.  Then, you can save the configuration as a view, which can be shared with other users or kept private. This feature makes it extremely easy for project managers to create one or two common dashboard views for their teams.
  • New Burn-Down Charts – The new project dashboard now supports burn-down charts. You can add any number of burn-down charts to your dashboard for any product, release or sprint. Burndown charts can be based on hours, days, weeks or even story points.

Burndown Chart

  • New Treemap Charts – The new treemap chart is a unique way of seeing the really big items in a given milestone, release, product or project. In a treemap graph, the size of each item is represented on the chart based on the estimated amount of work that is required for completion. The color of the item indicates how much of that work has already been completed.

Treemap Chart

  • New Chart Customization – Each of the charts in the project dashboard can now be filtered and grouped to show different types of information. So now you can view trend information or user workloads as a pie chart or bar chart. You can group by assignee, status, priority or other fields too.

Chart Customization

I simply can’t do the new project dashboard justice with this article. The best way to see the new project dashboard is to watch it in action in this Fear The Bug episode (our weekly OnTime series of Video Tutorials) that covers the new Work Log feature and the Project Dashboard coming in OnTime V9.0:

By the way, these features will be included in OnTime V9 Beta 2, which will be released in about a week.

Project Management with Scrum

August 28, 2008 10 comments

Scrum burn-down chartSuccessful project management is easy. Successfully executed projects have at least these 3 common elements:

  1. Somebody (or everybody) maintains a list of everything that needs to get done, broken down into manageable chunks, with time estimates for completing each chunk;
  2. Every team member has a prioritized list of those chunks, which they are responsible for completing;
  3. There’s at least one person who monitors the progress to make sure things are on track.

Perform the above 3 tasks, and your project will have the highest probability of success. Sounds simple and it really is that simple! Even if you did the above 3 tasks on paper, without the use of any fancy tools, your chances of succeeding would be greatly enhanced. Project management is not rocket science, but rocket scientists performed the above 3 tasks to land a man on the moon in 1969 with less collective computing power than the iPhone strapped to my belt.

Over time, however, best practices for how exactly to perform the above 3 tasks have emerged into hundreds (if not thousands) of project management books. Numerous methodologies have emerged, many from NASA. Most of these process-driven methodologies detail exactly how teams should perform every nitty-gritty task. Yet, with all these awesome project management methods and years and years of experience, NASA, perhaps the icon of organized project management, cancels and/or delivers more late and over-budget projects than it did back in the 60s.

Why is that? Why is it that NASA, with all of its project management wisdom, couldn’t dream of doing what a few engineers did with the leadership of Burt Rutan — building a spaceship for under $30 million and winning the X-Prize? Rutan and his team built a rocket that can carry 3 people into space and an airplane that carries the rocket to launch to a high launch altitude.  And, they successfully launched it into space twice in two weeks.

The world is full of examples where “regular” amateurs with far fewer resources and a lot less project management structure end up beating out larger, well-established companies that have relatively unlmited budget and their process methodology down to a science.

What all of these amateurs have in common is that none of them use a heavyweight, well established process to manage their projects. There are no examples I know of where a new company or team used a six-sigma process to unseat a leader in the field, but there are plenty of examples of a couple of 20-year old kids who worked using the “fly by the seat of your pants” method on a computer, search engine, operating system, web site or some other gadget that ended up changing the world.

Corporate America is also taking note. Some companies have recognized that the biggest risk to their well-established business is the “fly by the seat of your pants” methodology and they’ve decided to embrace it, although most are doing so reluctantly, without enough urgency, and half-heartedly.

Adoption of agile software development techniques, such as Scrum, are rapidly growing as a result of the flexibility they provide in managing projects the way a team sees fit.  Google is a great example of a company who has whole-heartedly embraced the fly by the seat of your pants, entrepreneurial techniques. They have built their success as a company who employs little process, manages through chaos and has little structure in anything they do. The result is a company that is nimble, quick and surprises the industry and competitors with both its hits and misses.

Axosoft’s own customer base, as illustrated by a recent survey, is also of the belief that rigid project management techniques don’t pay. More than 60% of Axosoft customers don’t use any particular software development methodology.  But, of those who do, Scrum, a relatively new agile development technique, is the one that’s gaining the most popularity. That’s no accident.

A Quick Look at Scrum

Scrum’s popularity is rooted in its back-to-basics philosophy; its simplicity and flexibility in execution. If you are new to Scrum, you might want to start with this presentation that Ken Schwaber (co-founder of Scurm) delivered for Google:

Ken Schwaber Introducing Scrum at Google

When I watched this video, one thing that stuck with me was the fact that Google engineers were getting introduced to and encouraged to use Scrum. If Google, a company that thrives on chaos, is embracing Scrum to some level, then it’s worth investigating more. So I set out to learn as much as I could about Scrum.

There are a number of great resources on the web. The Wikipedia page on Scrum is a good starting place. After reading a ton of material on the subject, I started to truly appreciate Scrum’s simplicity.

Scrum can be summarized as follows:

  1. Projects have a list of things that need to be accomplished. Since these items are not yet done, we’ll call this list the “Product Backlog“. It contains everything we’d like to have in the product.
  2. To keep things manageable, we’ll select a handful of items from the product backlog, assign them to team members and focus on getting just those items to a ship-ready state. We’ll call this the “Sprint.” We’ll keep sprints relatively short so that in a particular product release, we have at least several sprints. The shorter our product release cycle, the shorter the sprint duration.
  3. To keep track of where things are, we’ll add up all the estimated hours of work currently remaining and compare the total to previous days to make sure it is consistently going down at a rate that is in line with our expectations and will meet our goals. We’ll call this the “Burn Down.” Charting the burn down information is an effective way to visualize the progress.

With just the above 3 concepts, any team can successfully implement Scrum. To make sure I had the basic concepts down, I picked up the phone and had a conversation with Ken Schwaber (co-founder of Scrum, founder of Control Chaos and author of a few books on the subject). Ken and I hit it off right from the start. Scrum is about common sense. It doesn’t define a rigid process, but rather a flexible one. It focuses on project visibility while everything else is about the basics (making a list, prioritizing and checking them off one-by-one).

Flexibility is the key to success with Scrum. Some teams, especially those who come from a high-process background expect Scrum to have definitive bounds for everything, to explicitly define every detail. A sprint is exactly 30 days (it’s not!). A must-have stand-up meeting that’s precisely 4 minutes 30 seconds long. You get the idea. But Scrum is about allowing teams to define the ideal practices for their situation based on team size, project size, release cycles, etc. A 2-man team working in the same room on a new web product might have weekly release cycles and no need for meetings, while a 100-person team working on a 10-year old, mature accounting package will have vastly different needs. Scrum’s flexibility is what allows it to work for both teams.

To be sure, Ken Schwaber and Jeff Sutherland (the other co-founder of Scrum) have done a lot of work to define Scrum in far more detail. They define common terminology for roles, best practices for conducting meetings and other project management events that are generally required for a successful project. But the basic concepts, much like the basic concepts of boolean algebra, are simple.

Scrum and OnTime

If you are an OnTime user, you’re probably wondering how OnTime handles the needs of Scrum teams. Looking at the above 3 fundamentals of Scrum, OnTime manages them in the following ways:

  • Product Backlogs – The default OnTime “Features” tab is an ideal place to store product backlog items. In fact, many OnTime customers who use Scrum rename the “Features” tab to “Product Backlog” or “User Stories” in order to use the Scrum terminology. You can do that from the Tools -> System Options menu.
  • Sprints – The ideal way to manage sprints in current versions of OnTime is by creating a custom field called “Sprint”. The field could be a picklist populated with potential sprints. You can then assign items to these sprints.  And, since OnTime’s main list of items can be filtered, sorted or grouped by  sprint at this point, you can easily look at the items for a given sprint.
  • Burn Down – Current remaining workload for a given sprint, release, project, or any other filtered list can be obtained by simply looking at the status bar in OnTime’s main window. However, OnTime falls short in providing historic burn down information in the form of a burn down chart.

Here are some screenshots of OnTime being used in a Scrum environment:

OnTime Used in a Scrum Environment

In the above screenshot (click to enlarge), the following areas are highlighted:

  1. As you can see, the “Features” tab has been renamed to Product Backlog (this is done from Tools menu -> System Options -> Item Types). To illustrate a focus on Product Backlog, I’ve also removed all other tabs from the view.
  2. I’ve renamed “Feature” (the singular reference to the item type) to “User Story” which is more inline with the terminology used in Scrum. So in scrum, you add a new “user story” to your product backlog.
  3. I’ve grouped my view by Sprint. In this case, I’m looking at all the sprints for the currently selected project and I’ve created a custom picklist with my sprint names.
  4. In the taskbar area, you can see the highlighted section identifies the current workload for the items in our current view. Since our view can be filtered to a project, a sprint or by a user, you can quickly see the workload by a number of different criteria and you can see how much work remains.

It’s also worth illustrating how easy it is to assign a bunch of items to a particular sprint:

Assigning Groups of Items to a Sprint in OnTime

In the above screenshot, you can see how a group of items are being assigned to a particular sprint using the multi-edit menu. In the above screenshot, the view is grouped by the custom Picklist field I’ve created called Sprint and since items not assigned to a sprint are shown in the “[None]” group, it’s easy to quickly identify those items in our product backlog and assign them to a sprint.

Future of Scrum in OnTime

OnTime is an extremely effective tool for managing Scrum projects, but I think we can do a far better job in future versions of OnTime. To make sure we fully embrace Scrum for future releases of OnTime, I had our entire team learn about Scrum. I also made sure we had multiple team members attend a two-day workshop with Ken Schwaber to become certified “Scrum Masters.”

Axosoft has embraced Scrum in a big way and we have made Scrum one of the main focuses of the next major release of OnTime. More generally, OnTime 2009’s focus will be on Project Visibility, which will help every single OnTime customer, not just those using Scrum. But for Scrum teams in particular, especially those hungry for some burn down charts and other visualization tools, you won’t be disappointed.

I can’t wait to talk more about the upcoming features, but that’s for another blog and another time.

%d bloggers like this: