Archive

Posts Tagged ‘ontime’

OnTime 11.1: Subitems, GitHub and Drag-and-Drop

November 7, 2011 35 comments

Today, we are announcing the release of OnTime 11.1. Even though this is a .1 release, it contains some of the most important and useful enhancements that we’ve ever added to OnTime. The top new features are:

Subitems

The best way to discuss the new Subitems feature in OnTime 11.1 is using an example. And what better example than showing you what the “Subitems” feature itself looked like in the OnTime instance our own dev team uses:


(screenshot of the new Subitems feature in OnTime as used by the OnTime team)

In the screenshot above, you can see the “Subitems” parent feature.  Below it, indented and marked using a subitem icon, there are 7 subitems listed. These are the subitems that the OnTime team added after they had the ability to add subitems in OnTime. What’s great about subitems is that it lets you easily break down larger features into a number of smaller items, each with its own status, workflow, assignee and work remaining. The parent item consolidates the data, showing the total amount of work done and remaining.

Subitems make managing large features much, much simpler. You can track them as individual units by collapsing all the subitems, or you can expose all the details and still have roll-up information. Once you start using this feature, you’ll wonder how you ever got along without it. Our own teams now heavily rely on Subitems as part of the day-to-day development of OnTime. Even our marketing team uses subitems heavily breaking down larger tasks (such as “Update axosoft.com web site for OnTime 11.1 launch”) into a number of smaller items assigned to different team members.

GitHub Integration

Over the past couple of years, as distributed version control systems (DVCS) such as Git have gained popularity, one particular “Git-in-the-cloud” provider has emerged as the leader: GitHub. When you use GitHub, you immediately realize why: they’ve done an amazing job of simplifying Git. They’re now hosting millions of repositories. Git is the new standard for DVCS systems and GitHub is the new standard of hosting Git in the cloud.

But one area that isn’t a GitHub core strength, is tracking defects and features for software development teams or managing their products from inception to completion. Fortunately, the GitHub folks were smart enough to build integration hooks, which means Axosoft can provide you with seamless integration between GitHub and OnTime.

To set up the integration, you start by going to the OnTime System Options in the GitHub Integration section. There, you will see a screen that looks like this:

Once you enable the GitHub integration, the OnTime APIs that allow for GitHub and OnTime to talk to each other will start to work. The API key, which should be kept secure, will be needed for the API calls. This API key will need to be provided to GitHub in GitHub’s service hooks section (where you’ll need to find the OnTime service hook):

Once the setup has been done, all of your GitHub users will be able to relate code commits to specific items in the OnTime system using a special syntax in the comments of the commit. The special syntax is in the following form:

[otX: # wl:# TIMEUNIT]

 Where “ot” refers to OnTime and “X” is one of:

– d for Defect
– f for Feature
– i for Incident
– t for Task

and # refers to the item number.

Then the optional “wl” tells the system to add a work log entry where # refers to the amount of time and the word “TIMEUNIT” is replaced with whatever time unit you happen to use (hours, days, story points, etc.).

An example of a commit comment would look like:

 This GitHub commit would communicate with OnTime and connect this change set to Defect #98 in the OnTime system. So inside of OnTime, the above commit will show up in the new GitHub tab:

From there, users can see the associated files and open them directly from the OnTime system.

Furthermore, with a single GitHub commit, users can connect a change set to multiple OnTime items, create work log entries on those items (so that OnTime can track the amount of work done and remaining) and even move the items automatically to another workflow step.

We think GitHub users are going to love the new OnTime/GitHub integration. We’ve also built in a system to import your existing GitHub issues as a one-time importer into the OnTime system.

If you’re a startup company using GitHub and don’t yet have an OnTime account, this might be a great time to start using OnTime for your bug tracking and project management needs. We’ve made the OnTime Express product FREE for 1 year for new startups with 10 or fewer employees. Learn more about this here: Free OnTime for Startups.

Drag-and-Drop

You might be thinking, “Really? Drag-and-drop is your big new feature?” Well, yeah! First, it’s rare to see drag-and-drop in web-based applications. But even if you’re used to some drag-and-drop capabilities, what you get in OnTime 11.1 is nothing like you’ve ever seen in a web-based application.

Drag-and-drop is now a core functionality of OnTime’s grid and Organization sections. You can drag-and-drop one or more items on the grid to create parent/child relationships…or to move items to a different project…or to plan out releases and sprints…or to assign items to team members. It’s incredibly powerful, extremely efficient and most of all: a HUGE time saver.

The only way to demonstrate the new power of the drag-and-drop feature is to do so using a video. Take a look at this:

Large Project Tree Performance Improvements

For some of our customers who have been using OnTime for a number of years, the projects (and subprojects) that they have in the OnTime system have exceeded the thousands. If you are one of those customers, you may have also been frustrated with the amount of time that the project tree took to load. For example, if you had 5,000 projects, OnTime might take 10 or more seconds to load the project tree.

Not anymore.

Previously, even if only 20 projects were visible, all 5,000 were being rendered by the system. In OnTime 11.1 we’ve changed the behavior so that only the projects that are visible on the projects tree are the ones that render. As such, loading the project tree is now a sub-second activity that you’ll rarely if ever notice. It just works…and damn fast!

Where is Subitems in OnTime for Windows?

The short answer is: it’s not supported.

Here is a slightly longer answer: While users can add subitems in OnTime for Web, those subitems will show up like any other parent item in OnTime for Windows. They will be shown without any information about the parent/child relationship.

There is no way to sugar coat this, so here it goes: I seriously doubt we will continue to make OnTime for Windows for more than another year. In fact, even a year might be optimistic. You see, we had to make a decision about the future of OnTime and with limited resources, it was slowing us down to continue to make the same enhancements to two different products. So as I was reminded of a quote from Steve Jobs (and Wayne Gretzky), we decided to go where the puck is going, not where the puck has been. Web applications are our future. I believe all desktop applications’ days are numbered. We decided to focus the vast majority of our development efforts on the future. Our goal for OnTime for Windows is to make sure we don’t break it…at least for a while.

If you are an OnTime Windows user, I want to urge you to take a look at OnTime 11.1 for the web. It is absolutely amazing! It’s faster than OnTime for Windows. Yes, it’s faster! It’s better in virtually every way and it doesn’t require an installation on every single user’s machine. Try it and see what you’re missing. I promise you won’t be disappointed. Just to be clear, you can still install OnTime locally and use the web version or run the web version in our hosted environment, which we call OnTime Now.

Here is a walkthrough video of the new OnTime 11.1 features that will show you how powerful the new OnTime 11.1 is especially now that it supports drag-and-drop:

So there you have it. OnTime 11.1 is out. We hope you love it as much as we do.

Categories: Development, Team, Tools Tags: , , ,

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 >>

Project Management on Demand: OnTime Now!

September 24, 2009 3 comments

How do you make an already great project-management on demand system better than ever? How about improving the performance by as much as 500%?

Here is how we did it…

A Little Background

Ever since the introduction of OnTime V2.0, Axosoft has provided a hosted option.  This allows teams that want to get going with OnTime right away the option to do so without having to setup their own installations. We expected this option to be extremely popular, but to our surprise, over the past 6 years, relatively few of our customers have chosen to go the “Software as a Service” route.

Don’t get me wrong, “relatively few” still means hundreds of customers, but we were expecting thousands.

So a few months back, we decided to deep-dive into the numbers and figure out what was going on. What we found was that the closer customers were to Axosoft’s physical data center location, the more likely they were to choose the hosted service.

Hmmm…that seemed odd.

So we did a bit more digging with the help of some external resources to see what the OnTime Hosted user experience was like from different parts of the world.

The results were shocking!

Depending on customers’ locations and bandwidth (with respect to Axosoft’s Tempe, Arizona data center), the performance they experienced could vary by as much as 500% over optimum performance. This was especially true for our European and Australian customers. That meant that an OnTime page that might have taken 1 second to load under normal circumstances might take as much as 5 seconds to load for some customers.

Clearly unacceptable.

The problem, of course, is not an easy problem to solve. Because regardless of how well connected our data center is, we are also bound by customers’ connections — and all of the connections in between. The longer the distance and the more hops between a customer and OnTime Hosted, the worse the performance.

So we focused our entire IT and product engineering team on solving this problem.

Introducing ‘OnTime Now!’

OnTime Now! takes all of the great OnTime features, usability and innovation, and wraps it up in a hosted environment that allows customers to be up and running in no time flat. But it has a unique twist:

YOU get to choose the data center where your OnTime Now is installed from 6 world-wide locations:

OnTime Now! Data Center Locations

The OnTime Now! Data Center locations are:

  • Tempe, Arizona (this is where all OnTime hosted customers were until now)
  • San Jose, California
  • San Antonio, Texas
  • Herndon, Virgina
  • London, United Kingdom
  • Brisbane, Australia

During the OnTime Now! signup process, you now get to choose the data center that will house your hosted account. To make the decision easier, we created a speed test, allowing you to choose the best performing site:

Bandwidth Tests
Bandwidth tests from Axosoft headquarters in Scottsdale, Arizona

Once a data center is selected, OnTime Now! goes to work immediately creating the DNS entries for your chosen URL, a brand new OnTime database, your own OnTime Web Server, Customer Portal Server, Remote Server, iPhone Server, SDK and everything you need for your OnTime installation to go live. The entire process takes only seconds, and then you receive an email with instructions on how to get started. It’s pretty amazing.

So How Much Better is it?

While nearly every customer outside of Arizona will see a performance improvement, the most drastic performance increases will be seen by our East Coast (US), European and Australian customers. The chart below shows the relative performance that a typical European customer would experience. The Blue bars show the relative speed to our Tempe, Arizona data center while the Red bars show the performance those same customers can expect from our London, UK data center (shorter bars are better). As you can see, the difference is incredible:

OnTimeNowEuroPerf2
OnTime Now! Performance from European Countries to Arizona and UK Data Centers

We’ve made a ton of other improvements too, but all of them pale in comparison to this one major improvement with performance.

Existing OnTime Hosted customers can expect to be contacted soon regarding these changes so we can transition existing customers to OnTime Now! and the data centers of their choosing.

Learn More About OnTime Now! >>

Try OnTime Now! Free for 30-Days >>

Unprecedented Innovation

Our multiple data center strategy, which allows customers to choose the best performing data center is unprecedented in our industry. It required an enormous amount of effort to execute, not only in identifying and setting up servers in remote data centers across the globe, but also:

  • engineering new systems to manage these remote installations from a single location
  • allowing customers to seamlessly sign up and choose which data center to use for their OnTime installation
  • tying all this into Axosoft’s unique purchasing system (the Axosoft Online Store)
  • giving customer control of their system through the OnTime Now! Customer Dashboard

This was an awesome challenge!

Axosoft is truly blessed with some of the most incredibly talented people I know in this industry. No matter what challenges I throw at them, they seem to come up with solutions that shine.

Now, we’re back to the drawing board, coming up with the next big set of innovations that will move our industry forward. It’s fun doing unprecedented things. Stay tuned…

Economies of Scale and $5 OnTime Express

January 13, 2009 3 comments

You know when you buy a book from Amazon.com and they want to charge you $10 for shipping and you think “damn, that’s a lot of money for shipping”? Well, today, I ordered some books from a local bookstore that gave me the option to pick up my books at the store or they could ship them to me for $10. The store is about a 20 minute drive from me, so my first thought was, “Ship it!” $10 is soooooooo cheap! Not worth my time to get into my car, waste a bunch of gas and an hour of my time for the round-trip to pickup a few books and save $10.

Then it occurred to me the amount of work that goes into having those books shipped. First, a FedEx truck is sent to the bookstore to pickup my books. Then the truck takes it to a warehouse where it’s then sorted and sent via another truck to another warehouse that’s closer to my location. From there, a 3rd truck then takes it and delivers it right to my door. All of this happens while a computer tracks the location of my books and sends me email notifications of major updates and a delivery notice. They do this for just $10 and somehow manage to make enough money to pay for fuel, warehouses, equipment, computers, internet connectivity and the salaries of everybody involved.

Damn, that’s pretty good.

What’s funny is that when I placed orders from Amazon, the same things were happening, but I never thought about it before. It’s weird that ordering from a local bookstore triggered my “bargain” receptors. In fact, when I order from Amazon the items are generally shipped from Washington, which means the process is even more complicated and requires two or three additional truck trips and most likely at least one or two flights to get the books to me.

That’s economies of scale at work and it has absolutely nothing to do with OnTime or the rest of this article. I just thought it was a cool story.

Anyways, with the slumping global economy, we realize that a lot of software development teams might be tightening their belts and might not have enough budget for tools this year. So with the release of OnTime 2009, we have decided to re-price OnTime 2009 Express edition in the following ways:

  • OnTime 2009 Express for 5-Users: $395 Now Just $5!
  • OnTime 2009 Express Unlimited Users: $2,995 Now Just $995!

The 5-User edition of OnTime Express is practically free! So you might ask, “why not just free?” It’s because we want you to have a tiny bit of skin in the game. When people pay for something, even if the amount paid is nominal, they feel a sense of ownership and commitment. Free means throw-away. If we gave it to you for free, you might let it sit there in your downloads folder and never use it. 60% of our free single-user activation keys never get activated! Paying $5 means you’ll probably be more likely to actually take the time to install and use the product.

In all honesty, the $5 per sale doesn’t even pay for the processing costs of the sale (a human creates an invoice, prints receipts, emails you a key, etc.) and we’ll probably donate the proceeds anyways.

Learn more about OnTime Express and the new $5 Price

Categories: Business, Team, Tools Tags: , ,

Team Wiki for Document Management

September 15, 2008 2 comments

In every software development team, inevitably, there are a number of documents that spring up to help manage various project information. They often include documents like:

  • Project Overview and Goals
  • Project Risks and Concerns
  • High-level Design Overview
  • Coding Guidelines
  • Team Directory
  • and on and on…

And virtually every team I’ve seen stores these documents in some kind of network share. Some even use Microsoft’s SharePoint Server to manage these type of documents.

The problem with the standard network share is that it virtually guarantees that nobody, other than the author, will ever open these documents more than once. It’s rare that these documents stay up to date and maintained. They are hard to find and can be locked because other users are editing them or have left them open.

The ideal solution for managing these documents is something that would allow:

  • All Team Members Easy Access to the Documents
  • Appropriate Team Members Have Edit Rights
  • No File Management Needed
  • Easy Search of All Documents
  • Automatic Table of Contents

The typical network share falls short on all of these requirements, however, a typical Wiki product nails most if not all of these items. Any team that’s not yet utilizing a wiki for document management is wasting their time. A Wiki provides the flexibility of allowing any appropriate team member to create a new document, edit or update an existing document and easily find the information that they might be looking for.

The great thing about Wikis is that you don’t need to manage files on an individual file level. Unlike storing files on a network share, a wiki is easily web-accessible and provides easy read-only capabilities. The right wiki can provide a nice security system to ensure only the right people have access to view and edit files.

Wiki in OnTime 2008

We introduced OnTime’s Wiki functionality in V8.0, released back in December of 2007. In the past 9 months, we have seen OnTime’s wiki become one of the most used features of OnTime and its being used for a great deal more than we had expected. Teams have started using OnTime’s Wiki for everything I listed above, plus:

  • Processes & Procedures – Teams have started to document their processes and procedures allowing new team members to quickly access this vital information in a single, automatically organized location.
  • Methodology Information – Some teams have created wiki pages with both content as well as links to important web sites with information about the methodologies they use. A Scrum team might have Wiki pages that provide an overview of Scrum, descriptions of a backlog, sprint and so on.
  • Team Meetings – Teams have found that summarizing important team meetings in a short Wiki document helps them keep important decisions searchable while easily communicating the information with team members that may have missed the meeting.
  • Database Update Procedures – Updating the database often entails a tricky set of steps that must be carefully coordinated between multiple team members. Documenting those processes in a team Wiki helps everyone stay on the same page.
  • Sales FAQ – Teams have started creating sales-related FAQ pages for their sales team. Setting up a “Sales Project” and creating documents underneath that project ensures that the sales FAQ docs are also maintained in the right branch of the automatically generated Table of Contents, keeping clutter to a minimum.
  • Support FAQ – Similar to the Sales FAQ, the Support FAQ helps OnTime teams manage common support questions.
  • Favorite Lunch List – My personal favorite is the use of the team wiki to maintain a list of favorite lunch places near the office. The importance of using a Wiki for accommodating lunch cannot be emphasized enough :-)

Because Wiki pages are easy to create, search, edit and view, team members are more encouraged to create, edit and maintain documents that pertain to some aspect of the development process. In OnTime, Wiki pages are fully integrated into the main interface so you have access to wiki information from the same tool that you use regularly. No need to leave OnTime to look at or search Wiki pages.

Here are a couple of screenshots from Axosoft’s own usage of the OnTime Wiki. In this case we see an automatically generated Table of Contents screenshot and a page describing some best practices for a new OS X user at Axosoft:


The OnTime Table of Contents is Automatically Generated

With the release of OnTime V8.1.2 & V8.1.3 we have added a number of very important features to the OnTime Wiki that makes the Wiki even more powerful than before:

  • Full-Page Wiki Mode (like the screenshots above) – This new feature (added in V8.1.2) allows users to focus on wiki pages without having any other OnTime functionality on-screen. The full-page wiki mode also allows you to easily send the URL of a particular page to another user. When that user logs in, only that particular Wiki page is loaded (no tabs for Defects, Features, etc.). This allows a new type of user in OnTime: Wiki-only user. Editing, searching and navigating wiki pages is also easier in full-page Wiki Mode.
  • Aesthetic Improvements – In V8.1.3, we introduced a few improvements to the look and feel of the Wiki pages. For one thing, fonts tended to be different in edit mode than view mode. That issue was fixed. Additionally, we improved the look (and size) of the page title and re-ordered some toolbar buttons so that it’s even easier to use.
  • Wiki User Settings – Also in V8.1.3, we added some Wiki User Settings that allow users to choose whether or not they want to see the last modified date and user next to each wiki page name in the Table of Contents. Also, when selecting a project, the Wiki User Settings now determines if OnTime should show you the TOC for that project, the Home Page or the page you had last visited for the given project.

Since OnTime Wiki pages can also be made available in your OnTime Customer Portal, sharing information with your customers is also very easy. Regardless of whether or not you use OnTime, using some kind of a Wiki system for document management is extremely important to keeping your team efficient.

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.

Axosoft Customer Survey Results

July 21, 2008 9 comments

Last week, we sent out a carefully crafted survey to our customer list hoping that we’d get about 40 or 50 responses to help us better understand what we’re doing right and what areas we could improve.

To our surprise, we received an overwhelming response from over 360 customers who completed a fairly lengthy, 20+ question survey. The results were absolutely awesome — surprising in many areas. They highlight a number of things where Axosoft can clearly do a better job and they also point to a number of things we are doing right. I thought it would be interesting to share some of the numbers visually, so I threw them into Keynote, charting and charted and graphed the responses.

Here are the results:

Q. Rate Axosoft in the Following Areas:

These results were very reassuring. My raw immediate reactions were as follows:

  • Holy cow, we have way too many “Never Used” responses. We need to do a much better job of getting users to know about the existence of the Axosoft Community siteVideo Tutorial Podcasts and OnTime Overview Videos, all of which are excellent resources and free!
  • Although I never want to see a survey result of “Unhelpful” or “Terrible”, it was good to see that we had fewer than 6 such responses total, combined for any question. Not bad when you consider more than 360 people responded. Now that we have a baseline, we’ll have a goal to reduce even further terrible and unhelpful responses.
  • It was great to see the Axosoft Sales Reps, the Axosoft Web site and the overview videos get such awesome responses from customers who used those services.

Q. Which version of OnTime do you use:

We were pleasantly surprised with the results of this question as we did not expect nearly 80% of our survey respondents to be using OnTime 2008. This told us we’ve done a couple of things right: a) OnTime 2008 was a compelling upgrade for the vast majority of users and b) We’ve done a better job of making upgrades easier than previous versions.

Q. Which OnTime Products Do You Use?

Here we got confirmation that OnTime Windows is by far the most popular client type we offer. The high use of the OnTime Customer Portal (41%) was a bit of a surprise as was the 13% usage of the OnTime SDK. If 13% of our customers use the SDK, it deserves to get a bump in priority for continued enhancements.

Q. Which OnTime Functionality Do You Use?

The findings to this question were in-line with our expectations. It was great to see adoption of OnTime as a HelpDesk tool has already reached 50% of survey respondents. HelpDesk functionality was introduced in V7, so having 50% of our customers using OnTime as a helpdesk solution was great to see. Similarly, Wiki usage is growing rapidly. Having just introduced Wiki functionality in V8 only a few months ago, it’s great to see more than 20% of our survey respondents using the team Wiki.

Q. What are Your Favorite OnTime Features?

OnTime’s ability to automate workflow and to enforce team processes was listed by the most people as one of their favorite features. We’ve spent a considerable amount of time making sure the workflow functionality in OnTime is extremely flexible and it was good to see that its being used and loved by such a large group of people.

To balance out the favorite features question, we also asked which features users felt were missing or needed more work. The information there was extremely interesting, but publishing those results publicly would be handing a little too much ammo to our competitors (sorry guys).

Q. Which Smart Phone Do You Use?

The results here were predictable. But far more interesting was which smart phone users planned to purchase:

In my opinion, this puts the iPhone debate to rest. More people plan to purchase iPhones (even this early in the game) than all other smart phones combined. iPhone has already won the mobile platform wars.

Q. Which Browser Version Do You Use?

Two things are very interesting here: 1) FireFox’s adoption rate is growing unbelievably fast with nearly 34% of our survey respondents using FireFox and 2) FireFox does a much better job than Microsoft in getting new version adoption as FF V3 has just barely been out for a few weeks and already more than half of the FF users are on the new version.

Q. Which Version of SQL Server Do You Use?

It was good to confirm that the vast majority of customers are on SQL Server 2005. However, due to a still large number using SQL 2000 (~24%), we need to continue backwards compatibility for these users.

Q. Do You Have Any Mac OS X OnTime Users?

Considering Axosoft’s focus has traditionally been on Microsoft development teams, having a 12% response that yes, there are OS X users of OnTime was a bit surprising to some, but confirms the trend that users are migrating away from Windows at alarming rates. Note: the exact wording of this question was not about Apple hardware, but specifically Mac OS X.

Q. How Do Your Mac OS X Users Run OnTime?

As suspected, the majority use browsers. But still, the number of users utilizing a local Windows virtual machine was interesting.

Q. What Development Methodology Do You Use?

This question confirmed that the majority of software development teams don’t follow a development methodology. But it also shows that of those who do, Scrum is one of the top methodologies getting adopted by teams. At Axosoft, we’ve been very intrigued with Scrum and the philosophy behind it. Scrum is very much inline with our own development philosophy, and we hope to improve OnTime even more so it addresses the needs of Scrum teams even better in the future.

Q. Would You Be Interested in an OnTime User Conference in Scottsdale, AZ?

We weren’t sure what to expect with this question. But it was nice to see that nearly 1/3 of survey respondents would be interested in an OnTime User Conference. Looks like our Marketing and Training Team have their work cut out for them. Stay tuned.

Q. Does OnTime Truly Help You Ship Software OnTime?

At first, I was a bit disappointed with the results to this question. Sure, OnTime is helping about 6 out of 7 teams that use it ship their software on-time, but what about the other 1 out of 7? Why are they even using OnTime, if it doesn’t help them ship software on-time?

Fortunately, we had a follow-up open ended question that asked users why OnTime isn’t helping them ship software on-time. The results were more reassuring. Some of the respondents indicated that they were relatively new to OnTime and hadn’t yet shipped a project since they started using OnTime. Some felt that OnTime did a great job, but their project completion issues were unrelated to OnTime (management, executives, customers – you know the drill). A small fraction of the 16% for whom OnTime was not yet hitting the mark gave the indication that OnTime is missing some important project visibility information that they find important to shipping software on-time.

Improved project visibility will be a major focus of the next major release of OnTime.

Countries of Origin:

We had users from more than 30 countries fill out the survey. With about 44% of survey respondents from abroad, this was an exceptionally balanced survey that represented a good sliver of our customer base.

Even More Information to Analyze

We have a lot more information to analyze. Several of our questions were open-ended questions where users could write their thoughts about Axosoft, OnTime and other related items. The responses to those questions were and will continue to be extremely useful to us as we plan for future versions of OnTime.

I wanted to also thank all of our customers and especially those who took the time to fill out the survey. The feedback we have received is instrumental to the continued success of Axosoft as a company and the  OnTime product line.

Now, let me know if this poll was helpful:

 

%d bloggers like this: