Snook.ca

Project Management via Email

Hearing the news that Basecamp now supports the ability to reply to messages and comments via email reminded me of an idea for a project I had once.

This was a few years ago now but, at the place I used to work, I tried to think of how most of the office worked with clients and with each other. A project would be set in the web-based project management app, people would get assigned to the project and then some initial emails would go out letting us know that we could track our time against this project.

But then what happens after that? The client sends an email to the project manager who then emails the designer so they have the files to put the design together. Then the designer is done and emails the developer. The developer looks for content in the project folder on the server but stuff is missing or outdated. "Oh, yeah, I received this email from the client; here's the latest files."

Inevitably, the emails bouncing around from client to PM to employees would cause confusion and mayhem. That's never fun.

Looking over this process, I realized that email was the primary way that information was being shared. How could we take advantage of that instead of trying to force people to a workflow that was obviously broken.

This is what I came up with: an email address for the project. All correspondence went through this email address. Not to individual members or to a project manager but to the project email address. This meant that every correspondence regarding a project was stored and archived in a central location.

Having a central repository for everything is especially handy when somebody jumps on a project mid-way. They can read up on everything that has happened so far. Things would be less likely to get missed when a project goes long.

What happens when a project email is received? First of all, anybody assigned to the project would receive a copy of that email. But the part I thought was key was that file attachments would be stripped from the email and placed in a project folder on the server. No longer would you have to track down where those missing files are, you'd know exactly where to find them. Within the email, a link would be provided to the files that were stripped.

I envisioned this as more than just a project email address. There would be a web-based tool as well to set up new projects, manage existing ones, look at all the content received, review all email (threaded by subject line), plus search capabilities.

Other potential features

I can think of some other really nice things to have:

The application could send out reminders and calendar requests.

A search engine allowing the project repository to be search based on keywords, dates, or other relevant information.

Reports. People are visual and it'd be great to see a project based on how many emails were received when, including which had attachments. If you had an idea of when an email was received, you could find it quicker if presented visually.

Trigger actions based on specific email types. Off the top of my head, I'm not sure exactly

No solution is perfect

Ultimately, no solution is perfect and I can predict a couple ways a system like this might fail.

The biggest reason would be that project participants simply failed to use the project email address, choosing to email individual people directly.

Similarly, there's no way to specifically direct email to subgroups such as internal emails. Stuff like this is still important to capture but it's easy to break out of the routine, especially when you have multiple groups coming together on a project. I could see getting around this using email aliases like "projectemail+internal@example.com". That way, these emails could still get captured and even viewed separately within the web admin.

Build it

So, why am I telling you all this? Somebody asked me what I do with all my ideas and while I'd like to eventually build the ideas myself, I just don't have time to build everything I think of. Therefore, I put this out into the world in hopes that it'll inspire somebody — directly or indirectly. As it stands, this is probably not a very original idea and I've been told that JumpNote is basically what I've described, although I haven't tried it myself. Does such a thing already exist? If so, let me know, I'd be interested in trying it out.

Conversation

This is a wonderful idea -- and certainly something that would be very useful. However, as of now you've only solved the problem of catching and organizing communication threads between all people involved in the project. It's a pretty catch-all approach to the problem and it probably wouldn't scale well with many projects and many people -- some of whom would only be on the mailing list to inactively follow progress. (My guess is that people would start sending private email and the organizing aspect would break down if you had more than, say, five people on a project.)

Also, the email distribution is pretty much what you've got with Basecamp's new feature (I guess. Haven't tested, tried it, or read about it. Hmm). One would have to find ways of handling todos, calendars, and possibly time tracking in a quick way through email as well.

Look at me. Here I am tearing down a potentially wonderful idea. One solution, obviously, would be to use advanced keywords with the mail to handle those different object types, but that'd make everything geeky. (In any case, I'm sorry that this comment end on a higher note ;-))

I developed something similar to this a number of years ago in a Lotus Domino environment; since the email and application architectures are directly integrated, it was relatively straightforward. Within the project management application, each team member could associate one or more folders in their email account with a given project. A background task would periodically scan each team member's account looking for new messages filed within the associated folders and copy the content as "response" documents to the project. In Domino, a sent message from one individual to another will have the same message ID in both mailboxes, so that allowed us to avoid duplication. The primary limitation was that this could only scan mail within a single enterprise environment, so it wouldn't work as well for inter-organizational projects. However, Domino applications can also be assigned one or more email addresses, so the process could be adapted to determine which project to "attach" the content to based on which email address was used to send a message to the application.

I don't know if it can solve all this problems, but I am sure you could archieve something similar using Microsoft Sharepoint Services on a Windows bases server, as it has some pm functionality built in. And SharePoint can receive eMails and archieve them into projects.

Amazing idea!
Actually we suffer from email chaos too: when project is set in project management system people (mostly clients) continue to send direct emails...

Jonathan, what if people involved in project will send a carbon copy to project email address? In this case everybody will be able to communicate directly by email, but system will keep a track of all communications. Even more, it will be possible to store internal communication apart from rest correspondence by checking number of recipients of each letter.

@Eugene: being able to CC: the project email does sound like a good idea. I did feel it was important that the project email be considered the primary email, otherwise, people are more likely to forget about it. I know I constantly forget to hit Reply All and miss all the people originally CC'd. On a related note, maybe a BCC to the project email can archive the email but not distribute it, and a CC may distribute to everybody but who was in the original email. Just some thoughts... :)

Well I think this is a very useful idea especially in teams in which lots of people have to work together for a single client. In such cases it's necessary to transfer all the relevant informations to each person of that team to get an optimal output. Regarding this I think your idea would be very useful.

There's a startup in the Seattle area that's in stealth mode right now, but from what I've heard, it's a platform much like basecamp, except with extended features like you mentioned -- especially the ability to send files into it via email.

An interesting idea would be to intelligently classify and categorize emails in the system. Let's assume, for example, that the designer sent some PSDs, and then did some updates, and sent another version of the PSDs. The application should intelligently know that these PSDs should be grouped together (versioning) with little or no work from the designer (the designer doesn't have to do anything to tell the application that this is just another version of the previous PSD).

This is but a small example. I think what such applications lack at the moment is intelligence, and you can easily apply intelligence to every single aspect of any application.

Sorry, comments are closed for this post. If you have any further questions or
comments, feel free to send them to me directly.

Want to learn about scaling CSS for large projects?

I'm available for full and half-day workshops on scalable CSS architecture. I can provide on-site training for your team. Interested? Get in touch.