Next month I'm heading home to Toronto to participate in Social Tech Training, a three-day, hands-on, Web 2.0-oriented learning intensive for people working in the social change sector, presented by members of the Web of Change community in partnership with MaRS.
A whole bunch of people I really admire and respect are going to be there, I get to present on what I'm really, really into at the moment and I expect to meet dozens of people doing amazing and interesting work — it should be awesome :)
Hope to see you there!
importantprojects, MaRS, nptech, socialtechtraining, STT, toronto, webofchange
Last year when I was finishing up my work with Greenpeace UK and about to begin development with Amnesty International I thought "Hey, I should really introduce the Greenpeace UK web team to the Amnesty web team — they're both going to be using Drupal and there are bound to be opportunities for knowledge sharing. Maybe even co-development!"
I'd been talking to Oxfam International at the time as well and now they're moving to Drupal (and there's Comic Relief who I know run at least one Drupal site and Concern Worldwide who I'm working with now) — there are a lot of NGOs in the UK (and nearby) who are using Drupal and who could benefit from meeting up face-to-face on a monthly or bi-monthly basis to share information and experiences.
And I'm happy to report that it now looks like this is definitely going to happen!
Some time in early June, possibly at the Amnesty office on Easton Street but definitely in London, a group of people from a number of the organisations mentioned above and myself will be hosting the first meeting of Drupal for NGOs: an approximately 2 hour get together (followed by drinks at a nearby pub) to talk about Drupal, which contributed modules we're using, what our experiences have been and, I hope, what our plans are for the future.
PLUS: it may be the case that Jeff Robbins of Lullabot will be in town at the same time and will deliver a bit of a keynote to the group following on from his "How Drupal Will Save the World" post last year.
If you're interested in attending, please comment here or send me an email. I'll create an event in Upcoming once the details have been finalised and post an official announcement here and on the Drupal UK users site.
Huzzah!
amnesty, comicrelief, concern, drupal, greenpeaceuk, importantprojects, lullabot, nptech, oxfam, softwaredevelopment
Next week I'm heading to New Orleans! I've been invited to present at NTC 2008 so I'm making the long haul and staying for just under a week. I've invited Jenn Sramek of CivicActions to co-present with me — we're going to talk about how we worked together on amnesty.org last year. Here's a description of our session, Project Management for Techies: Delivering on Time and Budget — hope to see you there!
To deliver nonprofit technology projects in a fixed amount of time and for a fixed amount of money, project scope – the work to be performed by the project team – cannot also be fixed; the product of projects with fixed timelines and budgets must be determined up-front or over the course of the project, given project constraints.
In this session, we’ll take a look at two fundamentally different approaches to managing this challenge – the waterfall method (sometimes referred to as "traditional" software development) and Scrum (an "Agile" method), and talk about the implications of each on project management in a nonprofit context.
08NTC, civicactions, conference, importantprojects, jennsramek, nptech, NTEN, projectmanagement, softwaredevelopment, training
Today I'm heading to New York City to attend Managing Nonprofit Technology Projects, a sold-out, first-of-its-kind, two-day not-for-profit technology project management conference hosted by Aspiration and Idealware. Needless to say I am psyched — I've wanted to participate in a conference like this one for a very long time :)
I get to facilitate three sessions while I'm there as well — one called PM Principles: Values-Based Project Management (where I'll pick up where I left off at Web of Change last fall), another called The Art and Science of Defining Scope (run don't walk) and another called Agile Project Management (where I'll be keen to share some of the things I learned last year managing Project IMPACT for Amnesty using Scrum).
I'm also very excited to meet Laura S. Quinn (who I've spoken to over Skype but never met in person) and Gunner (who I've heard is the single best facilitator in nptech). Thoughts and photos when I return :)
aspiration, aspirationtech, conference, idealware, importantprojects, MNTP, nptech, projectmanagement, softwaredevelopment
A couple weeks back I got to speak with Laura S. Quinn of idealware (w00t!) about an article she was writing for the good people at TechSoup called Six Views of Project Management Software (and thanks, Heather Gardner-Madras, for making the connection there).
The article provides a really nice overview of the kinds of things not-for-profit project managers and teams might need software tools to help them do and is up on TechSoup now — check it out!
article, heathergardnermadras, idealware, importantprojects, laurasquinnnptech, projectmanagement, softwaretechsoup, tools
Next week I get to present at SANGONeT's third annual "ICTs for Civil Society" conference in Johannesburg, South Africa!
I was scheduled to be in Johannesburg to deliver my Project Management for NGOs training for the African members of the APC later the same week, Matthew de Gale of SANGONeT was looking for someone to present on how NGOs can benefit from using RSS, someone from the APC mentioned me and I'm in! And my good friend Katrin Verclas of NTEN will be there as well! Magic. I'll be sure to report back with my photos and learnings :)
africa, apc, ICTs, importantprojects, johannesburg, nptech, rss, sangonet, southafrica, training
Great week for the Greenpeace UK CMS project this week — Cristen Perks, Michael Silberman and Tom Lee of EchoDitto were here in London to take us through 2 intense days of strategic planning meetings which IMHO went really, really well and got all of us excited about the phases of work we're about to begin.
For me, our most interesting discussions were around the idea of trusted networks; that people trust their friends first, experts second and celebrities third. With this in mind, and with Drupal as our platform, how should we redesign the site; what tools can we provide Greenpeace UK supporters that would allow them to leverage their trusted networks to help Greenpeace UK achieve its goals?
We came up with some interesting ideas — more later as things progress :)
drupal, echoditto, greenpeace, importantprojects, nptech, projectmanagement, softwaredevelopment, strategy, tactics, technology
For the last 6 weeks I've been working with a team of 7 Greenpeace UK staff to refine the objectives and prioritise the requirements for a constituent relationship management system GPUK plans to implement (we'd originally planned to spend 5 weeks on this activity but made the decision to spend more time on the requirements definition piece).
This week, we're making the final revisions to our list of prioritised functional requirements and must-have non-functional requirements, at which point I'll post them here and solicit your feedback and recommendations — GPUK already has a centralised (but offline) supporter data warehouse they run reports from using Cognos; what they're looking to do now is implement a CRM system that integrates what they already have with their website, which they'll be migrating to Drupal in parallel.
More later :)
UPDATE: this project is on hold until some resourcing issues can be worked out (and until then, I'm not able to post the requirements list mentioned above).
UPDATE 2: I'm no longer working on this project, although it will be continuing (I believe my friend and colleague Sue Fidler will be working with GPUK to complete the next phase of work).
projectmanagement, softwaredevelopment, nptech, importantprojects, greenpeace, howto, prioritise, requirements, crm, drupal, civicrm, democracyinaction, salesforce.com
As I mentioned a few weeks back, I've been working with the Internet and E-Communications Programme (IEP) team at the International Secretariat of Amnesty International to organise and plan a 2 year work programme for the IEP — one that best meets the objectives they've set for themselves and that gives them better visibility into what is actually achievable given their staff and resource constraints.
Last week I met with the team for the day to do two things: to come up with ways the IEP can better manage its ongoing operations (i.e. those repetitive tasks that must be done but never end like keeping site content up-to-date) and to begin to prioritise its projects (those temporary endeavours undertaken to produce unique results like replacing the CMS used to keep site content up-to-date).
To accomplish the former, we used dotmocracy, an equal opportunity and participatory group decision-making process my colleague and friend Jason Diceman introduced me to a couple of years ago. I'd never facilitated a dotmocracy session before, so I read the most recent version of the handbook, got some last minute instruction and advice from Jason himself, and it ended up working out really well — the group came up with more than a dozen proposals (ideas) for improving the ongoing operations of the IEP, which, once dotted, we were able to sort in order of agreement and begin to develop action plans and next steps around. A highly recommended experience :)
Check out Jason's site/company, Co-op Tools, for more on the process or to get him into your organisation to facilitate a session.
projectmanagement, programme, planning, softwaredevelopment, nptech, importantprojects, amnestyinternational, dotmocracy, facilitation, jasondiceman, cooptools
Two weeks ago I started working with the Internet and E-Communications Programme (IEP) team at the International Secretariat of Amnesty International (and thank you, David Heath, for recommending me; I've wanted to work with Amnesty since starting Important Projects and am extremely excited to be doing so now) — prior to beginning a CMS replacement project very similar to the one I'm currently working on with Greenpeace UK, I'm working with the IEP to organise and plan a 2 year work programme designed to both meet their defined goals and objectives and give them better visibility into what is actually achievable given their staff and resource constraints.
I'll post more as things progress, but in the meantime, thanks, Dan and Helena, for the opportunity to work with you and your team. I'm really looking forward to the work ahead :)
projectmanagement, programme, planning, softwaredevelopment, nptech, importantprojects, amnestyinternational
Today was the first meeting of the Greenpeace UK "E-Business" requirements prioritisation team (pictured above — and thanks for posing for the photo, people).
We met to kick-off a 5 week requirements definition and prioritisation project — really a sub-project of a larger project Greenpeace UK has undertaken to provide supporters with the ability to manage their relationships with Greenpeace online.
We'll be following a requirements definition and prioritisation process really similar to the one the web team and I followed on the Greenpeace UK CMS project (and when I say similar I mean identical but with improvements gleaned from our experience in engaging with the Plone and Drupal communities throughout that process).
Gideon, Joss, Katie and Tracy — thanks for your time today and I look forward to working with you on this very exciting and important project :)
projectmanagement, softwaredevelopment, nptech, greenpeace, importantprojects, howto, prioritise, requirements, open source, community
Today we performed the last two of the three open source product/feature evaluations we're conducting as part the Greenpeace UK CMS project — Jean-Paul Ladage of Zest Software in the Netherlands took us through a presentation and demonstration of Plone this morning, and Dan Robinson of CivicActions in California did likewise with Drupal this afternoon. Thank you, Jean-Paul and Dan, for the time and effort you both put into your presentations — they were fantastic :)
Our next steps now are to review and interpret the results of all three evaluations, consider the "non-functional" requirements we've identified that will also impact our final decision (e.g. cost, time, strength of community, our product roadmap, etc.), and to plan the next phases of the project given all of the above. To do so, we need to work with a number of people from within Greenpeace and beyond...more later as things progress :)
projectmanagement, softwaredevelopment, nptech, importantprojects, greenpeace, productevaluation, plone, drupal, open source, cms
Today the Greenpeace UK web team performed the first of three open source CMS product evaluations we'll be conducting over the next couple of weeks — Greenpeace International took us through a 2 hour presentation/demonstration of Planet 2, the OpenACS-based CMS used by over 20 Greenpeace National Regional Offices. Thank you, Martin and Tom, for putting together your presentation and addressing all of our questions :)
In terms of the process we're following at this point, our top 35 requirements have been dropped into our feature evaluation spreadsheet (see Figure 1, below), where team members will assign numeric scores for each requirement during product presentations/demonstrations. As with our requirements scores, our feature scores will be averaged when they're all in, which will then be translated into an overall letter grade (e.g. B-, C+, A) for each product.

Figure 1 — scoring products by requirement.
Our Drupal/CivicSpace and Plone evaluations are still to come — stay tuned for more!
projectmanagement, softwaredevelopment, nptech, importantprojects, greenpeace, productevaluation, planet2, openacs, open source, cms, open source
About a month ago, I posted the list of six activities the Greenpeace UK web team and I plan to perform by the beginning of June. So far, we've completed the first three:
We've also chosen the 3 open source CMS products we plan to evaluate given our prioritised requirements, and they are (in alphabetical order):
So without further ado, our prioritised requirements:
Prioritised CMS Requirements for Greenpeace UK (741 KB)
If you're an experienced Drupal or Plone shop (we'll work with Greenpeace International on the Planet 2/OpenACS front) and are interested in working with us on this, please comment here or send me an email — rob[at]importantprojects[dot]co[dot]uk.
And thanks!
projectmanagement, softwaredevelopment, nptech, importantprojects, greenpeace, prioritise, open source, cms, requirements
...continued from HOW TO Prioritise Requirements (Part I)
Once you've defined and weighted the organisational objectives your project is being undertaken to address, and you've identified and weighted the user types the project is meant to serve, define the requirements for the software you're planning to implement with your objectives and users in mind. On the Greenpeace UK CMS project, we started by looking at the PMBOK's definition for requirement:
Given this, and looking back on the notes from our away day in February, we developed a list of over 100 conditions and/or capabilities the new Greenpeace UK CMS must meet or possess in order to achieve our organisational objectives and to satisfy our user types.
Each requirement was given an ID, and documented using a technique Martin Lloyd of Greenpeace International suggested we try, which phrases requirements like so: "As a [select user type] I would like to [describe what you would like to do] so that [describe why you would like to do it]" (see Figure 3, below). This worked extremely well for us — it really helped us to define our requirements so that they were easy to understand (and/or to identify the ones that needed to be clarified).

Figure 3 — defining requirements.
Next comes the fun part. Once you have a set of requirements your team members have all had a hand in developing, ask each member of the team to score them based on how well they help achieve the organisational objectives you've defined and how well they help meet the needs of the user types you've identified (see Figure 4, below). We had a list of 90 requirements (pared down over time through discussion), and each member of the team scored each requirement using the following system:
Scoring
2 = Requirement helps meet objective/satisfy user
1 = Requirement partially helps meet objective/satisfy user
0 = Requirement does not help meet objective/satisfy user

Figure 4 — scoring requirements.
It pays to take your time through this exercise — the more precise you can be when using this scoring system (e.g. "1.8" vs. "2.0"), the more useful the end results will be. Once all scores have been given, average them for each requirement and sort the results from highest to lowest. The spreadsheet we used also assigns a priority category to bands of requirements (C for critical, H, M and L for high, medium and low), which is very useful as well — because we want to stay focused on the system features and capabilities that are most important to the web team, to our end users and to Greenpeace, we'll focus our product evaluation on how well each CMS meets our most critical, highest priority requirements.
Endnotes:
1Project Management Institute. A Guide to the Project Management Body of Knowledge: PMBOK Guide - 3rd Edition. Pennsylvania: Project Management Institute, 2004. pp 371-372.
Download the spreadsheet discussed in this article:
Requirements Prioritisation template (200 KB)
projectmanagement, softwaredevelopment, nptech, importantprojects, greenpeace, howto prioritise, requirements
When you're planning to implement a new piece of software, prioritising your requirements is really important because a) it helps you focus on the things that matter most and b) it makes selecting the right product way less of a crap shoot. But unless you follow a logically sound prioritisation process — one that all project stakeholders understand and buy into — prioritising requirements can become an arbitrary and unnecessarily emotional exercise (i.e. the exact opposite of what you want).
On the Greenpeace UK CMS project, we're currently defining the requirements for a new content management system (the existing system was developed in ColdFusion over 4 years ago and simply no longer meets its users' needs). Our plan is to evaluate 3 open source products and make a selection based on how well each product meets our top priority requirements — to do so, we're following a step-by-step process designed to keep us focused on the system features and capabilities that are most important to the web team, to our end users and to Greenpeace.
Step 1. Define and weight organizational objectives
Like I've said before, projects are undertaken to achieve strategic objectives. Greenpeace has a number of strategic objectives, one very important one being to win campaigns. At our away day meeting in February, we brainstormed on how the web team could help Greenpeace achieve this objective, performed a SWOT analysis, came up with a number of project ideas and decided that replacing the existing Greenpeace UK CMS with something better was the most important project for the web team to undertake at this time.
Having made the decision to take on a project (i.e. a temporary endeavour involving risk), teams should write down and distribute the organisational/team objectives the project is being undertaken to address. This will help ensure project stakeholders are on the same page, can help determine whether the project really should be undertaken at all and will factor into both requirements definition and prioritisation later on.
We defined 3 organisational objectives for the Greenpeace UK CMS project, and assigned weightings to each, according to how well we thought they could help us help Greenpeace win campaigns (see Figure 1, below):

Figure 1 — defining and weighting organisational objectives.
Step 2. Identify and weight user types
Once organisational objectives have been defined and prioritised, identify and assign weightings to the types of users that will interact with the system you've decided to implement. Again, you want to do this because you want stakeholders to come to agreement on who the project is being undertaken to serve, and because you need to think about (and, where possible, directly involve) the users of the system in the requirements definition and prioritisation process.
Users are people/machines who/that interact with a given system — in the case of the Greenpeace UK CMS project, we identified 4 different user types, and weighted them according to their relative importance in achieving our overarching project objective of helping Greenpeace winning campaigns through the implementation of a better content management system (see Figure 2, below):

To be continued Continued in HOW TO Prioritise Requirements (Part II)!
projectmanagement, softwaredevelopment, nptech, importantprojects, greenpeace, howto prioritise, requirements
Since my last entry, I've been retained by the Greenpeace UK web team to continue working with them on the project we started planning at our away day three weeks ago (also since my last entry, I've learned that "away day" is the term used for "offsite" over here). The project involves replacing the http://greenpeace.org.uk CMS — so far we've scheduled the following activities to take place between now and the beginning of June:
To prioritise our CMS requirements we'll be using a technique I've used before — if time permits, I may publish it here in steps as part of another HOW TO :)
projectmanagement, softwaredevelopment, nptech, open source, cms, greenpeace, importantprojects, ecampaigning
I spent the day on Friday of last week co-facilitating an offsite meeting of the Greenpeace UK web team with team manager (and fellow Canadian), Tracy Frauzel. Great day, fantastic group of people, and in my books, a really good meeting — we met to define the objectives, high-level requirements, and critical success factors for a web project the team plans to undertake, but made sure to spend some time talking about (and mapping what we came up with onto) the strategic objectives of Greenpeace as an organization as well. This is an often skipped but important step in the project planning process given the fact that organizations always and only undertake projects in order to achieve strategic objectives (and that, in this sense, strategic planning is always done for project management — see Kerzner's Strategic Planning for Project Management for more on this).
Tracy — thanks again for the opportunity to work with you and your team, and Andrew, Bex, Jamie and Joss — it was great meeting you and I look forward to seeing you again soon :)
strategicplanning, projectmanagement, nptech, haroldkerzner, greenpeace, importantprojects, ecampaigning
Some time ago, I was commissioned by Katrin Verclas of Aspiration to write an article on collaborative software projects, using two (partially) failed projects as examples of what not to do. It's been a long time coming, and in the end, involved collaborating with Important Projects ally Phil Dwyer to complete, but here it is, what I hope will be the first in a series of HOW TO articles published on this site under a Creative Commons license:
HOW TO Manage Collaborative Software Projects (148 KB)
Recommendations made in the article for the successful management of collaborative software projects:
Enjoy! Very interested in any feedback you might have as well :)
projectmanagement, softwaredevelopment, collaboration, nptech, howto, importantprojects
So I made it to the Future of Web Apps Summit last week, and although my question for the panel wasn't asked (which isn't surprising given what turned out to be the focus of the conference — not "how Web 2.0 applications are changing the way people interact online," but rather, "how to build a business around the fact that they are"), I did get the chance to speak briefly with David Hansson of 37signals about software project management (and whether they plan to build scheduling functionality into Basecamp, which they don't). It's interesting — despite feeling excluded by his definition of the open source "community" (i.e. that it is only "solutions to problems of contributors"), and although some of the slides from his presentation reminded me of 1984, I agree with a lot of what he has to say (e.g. constraints are liberating — they allow us to focus on what is to/can be done), even if he doesn't believe project baselines are necessary :)
In terms of writing up notes from the conference, Simon Willison has done an amazing job here, and rumour has it podcasts of the presentations given will be made are available on the summit site in the near future.
P.S. 37signals has announced the launch of Campfire today, their "real-time web-based group chat tool for business." I participated in some load testing of the product last week, and it's pretty awesome.
furtureofwebapps, davidhansson, 37signals, schedulingfunctionality, basecamp, 1984, constraints, baselines, open source, community, campfire, importantprojects
Just a quick note to let people know I've posted the set of project management templates I use most often under /resources/project management for all to download and enjoy. They're organized by process group, and can generally be applied to projects in the order in which they're listed — initiating processes, where planned outcomes are described, followed by planning processes, where scope, time and cost are defined, followed by executing processes, where the plan is put into action, followed by monitoring & controlling processes, where progress is tracked and lessons learned are documented. I'll post again when I've added templates for use during the closing processes :)
And as always, if you have any questions when using these tools please don't hesitate to send me an email. I'll do my best to respond within a day or so — maybe a bit longer over the holidays ;)
Enjoy!
I spent some quality time on Friday afternoon at the Bryght offices in Vancouver, chatting with Boris Mann, Kris Krug and André Charland about the current state of web-based project management tools and the as-of-yet unmet needs of the not-for-profit sector. Web-based tools like Basecamp, Tasks Pro, Airset and even Remember the Milk all provide decent task management functionality, but where do not-for-profit project managers go when they need actual project scheduling functionality on the web? Or are we simply not building realistically achievable (i.e. resource- leveled) schedules, because tools like Microsoft Project are too difficult to use, too expensive, and don't run on Macs?
Do you currently build resource-leveled schedules, save baselines and track progress against them? If so, are you using a web-based tool to do this? And if so, which tool are you using? What's working well for you and what isn't (and why)?
Rolf, Shannon and I delivered our workshop to a roomful of amazing Web of Changers yesterday afternoon here on Cortes. One of the interesting things we learned in developing the content for the workshop was that the debate I think Phillip Smith thought would be created by pairing a couple of project managers with a community development facilitation expert didn't actually happen. Instead, we agreed with each other — for Rolf, Shannon and I, project management tools and techniques, "traditional" or otherwise, can be applied to community development and/or open source projects because project management is about just that — the appropriate application of skills, knowledge, tools and techniques :)
Phillip — care to argue otherwise?