I recently learned about a team which had adopted a proprietary Windows application to do agile (Agile [TM]) project management. Eeek! Wrong at so many levels, but I’m going to focus on the web vs desktop angle.
In an ideal world, there would be multiple UI platforms available for any application. e.g. do your project management on Windows, Macs, the web, and the phone. In practice, there’s usually just one. Which one will depend mostly on the application domain and the usage patterns involved. Each application domain lends itself to a particular UI platform. With an application space like agile project management, the platform is clearly the web.
In my view, enterprises should adopt a “Choose Web” policy. Similar to a preferred vendor policy, this kind of policy states: The web is the default choice for our applications; anytime we make a critical commitment to a desktop application (i.e. a large purchase or a large deployment and training exercise), we are obliged to justify why it is more suitable than web equivalents.
Here are the advantages of the web platform over the desktop in the case of agile platform management.
- You can introduce team members - anyone who needs to access the application - as users a lot faster. Instantaneously, really. With desktop apps, they have to go through the whole download-and-install business, which can be a lot of trouble in the enterprise.
- You will be more popular and contribute to greater staff happiness, which in turn means less turnover and more work done. Enterprise web apps tend to be neat and cleanly designed. Enterprise desktop apps tend to be clinical and grey. For some reason, no-one has yet thought of putting images into enterprise desktop apps, whereas images have appeared on enterprise desktop apps for 10+ years. On the whole, users choose the comfort, familiarity, and "liveness" of the web.
- It's open to everyone, including those who would never download a desktop tool, but might stumble upon the web app. It's useful to have user stories and the like in a place that people from other areas of the business can see it - it might lead to serendipitous collaboration. It sucks to be on a phone call with someone and they ask you for info about the project and you have to spend ages telling them, or print out a screenshot or something, because you know that it will be way too much hassle for them to install it just to find out a one-off piece of information.
- As you have a web server equipped with the data, you can easily serve out data in useful formats, especially RSS. e.g. a feed showing recently created (or completed) tasks.
- You can link to other web-based resources such as the staff directory.
- It's easier to track usage and berate team members if they don't log in. (Don't do this. Be nice.) </ul> There are, of course, arguments in the other direction - reasons to choose desktop over the web. But in the case of agile project management, as with many enterprise apps - the reasons don't stack up against the web.
- You can use desktop apps offline. This is fairly pointless for a modern project management tool, where multiple people are using and contributing to it. In any event, people are generally online in the enterprise.
- You get rich graphics Unnecessary for many enterprise apps. In fact, enterprise web apps tend to have more bling anyway. </ul>