Field Guide: Feature Development
Communication is one of the most important aspects when developing a new feature for your product or service. Whether it's internally with the folks at your company or externally with your customers, Basecamp can help.
In this guide, we'll show you an example of how a software company can use Basecamp to keep their team informed and on track during the entire feature development process.
π₯ Hot Tip: This is guide shows one way to approach product management and feature development. Check out Shape Up for all the details on how we create Basecamp features from pitch to ship at 37signals.
Jump to:
- Projects
- Adding people
- Project tools
- Communicating with your team
- Keeping yourself and the team updated
Projects
Projects are at the heart of Basecamp. For feature development, you could consider having three separate projects: one for the company-wide announcements, one for the team building the feature, and another for customer feedback and feature requests.
In this example, we use a Project stack for all the new features that we work on. This helps things stay nice and tidy. Home screen organization, like stacks and pinned projects, is personal to each user, so your Home screen won't be seen by anyone else in your team. A truly custom experience π
Let's take a quick peak at the Script Happens HQ and Product Feedback project setup π
The Script Happens HQ project is a where you can announce upcoming features to all the folks in your company/organization so they know what's to come, what's being worked on, and what has already launched.
The Product Feedback project:
Now, let's open that New Features 2024 stack to see the projects within:
Here's how we've got that Time Tracking project set up:
We'll dive deeper into the project tools used in these examples, but first, we should go over how you add people to your projects!
π‘TIP: If you find that you use a similar set up for your feature development projects, create a template for them to save you time!
Adding people
In the examples above, the projects are all set to "All-access." This setting will allow anyone from your team to join at their discretion. But sometimes, you'll want your team in the projects right away. When that's the case, you'll want to manually add all the folks like we did in the Script Happens HQ and Product Feedback projects.
Any project that's "All-access" will have a label on the upper-left corner:
Here's how it looks when folks join from the project directory:
They can also join by accessing any link from the project:
π NOTE: If you're working with clients, they won't be able to join All-access projects like this. They'll need to be manually added to the project instead.
Now, we can learn a bit more on the project tools used in each of these project examples π€
Project Tools
Each project in Basecamp has a variety of tools to choose from: Message Board, To-dos, Chat, Card Tables, Schedule, Docs & Files, Doors, Email Forwards, and Automatic Check-ins. Some projects won't need all tools, and some will need multiple instances of the same tool β for example, two Card Tables.
Here's the tool setup for the Script Happens HQ project:
Since this project's goal is to keep everyone in the company/organization updated on new features, only the Message Board and Chat tools are turned on.
The Message Board is where the new features are announced internally and you'll notice that the title of the Messages are updated to communicate the status of the feature (e.g. from Soon to Launched):
The numbers located to the right of each message indicate how many comments were made on a post β they change only when someone adds or deletes a comment. At a glance, you can see that the Time tracking feature had the company talking!
π‘ TIP: Not looking to write an entire comment? Use a Boost instead!
Curious to know all the changes that happened in a Message Board post? You can always check its change log in the more options menu "β’β’β’" located on the top right of the post:
The Chat tool allows folks to chat casually on anything feature-related. Users won't receive a notification for every chat line, only when:
- They're are @mentioned
- There is a new message after chat has been idle for 6+ hours
Not interested in receiving notifications for those new messages? Click the "Notifying" button located on the top-right to turn those off:
π NOTE: If you send a chat line after you've turned off the Chat notifications, your notification setting will change back to "Notifying."
Now, let's check out the Product Feedback project setup:
The Message Board here has just one Message letting people know what and how to use the project. And for clarity, the Chat tool was renamed to "Customer comments."
This project is also making good use of the Docs and files tool:
There are two different folders β one for customer feedback and another for feature requests. The setup here is account-wide so everyone will see the same layout (unless they're clients).
π‘ TIP: Looking for a way to view your documents or folders in a carousel? You can do so like this π
And lastly, here's how the Time Tracking project looks:
The Message Board here also has just one message β to announce the feature's pitch. And because we mentioned the Message Board post from the Script Happens HQ project, we see it referenced under the that Time Tracking Message like this:
This project also uses two Doors β one that redirects you to Github where all coding happens, and another redirects folks to the company announcement:
π‘ TIP: If a Door leads to a service that requires a password, you'll want to get that information to your team β you could even add it in the Door's description!
Next, you'll see that the project uses both the To-do and Card Table tools:
Both To-dos and Card Table are for tasks, but the types of tasks will determine which tool to use.
To-dos are generally best suited for tasks that are more binary, e.g. here's 12 individual items to get done. When those items are done, you can check them off. There isn't a need to track the progress of the work being done β it's similar to any to-do/reminder app.
Card Tables are generally best suited for work that moves through stages or phases, e.g. here's a request that comes in, let's consider it, then move it through a pre-determined workflow, and track it at every step.
For this project example, it makes sense to use both, but not all projects will use both and some may not use either (as seen in the other two projects discussed here).
π‘ TIP: Visualize your to-dos with Hill Charts π
Communicating with your team
As previously mentioned, communication is so important when developing a new feature. Especially, when it's time to rope the folks that will share the new feature announcement with the world β updating the marketing website, writing blog posts, creating social media posts, adding help documentation, and so on.
Basecamp makes it easy to communicate in a way that works best for you and your team. It's always a balance of not too much where its overwhelming and not too quiet where things fall through the cracks.
- Chat Tool: This one is key to ensure all (at least most) communication is related to the project β it's turned on in every project example in this guide for a reason π
- Pings: These are private conversations that aren't necessarily tied to a project or it's a conversation that isn't pertinent to the whole team. You can create a Ping with one person or with a group of folks. Now, it's not possible to edit the folks in a Ping so if you'd like to have the flexibility to add (or remove) users to a conversation, you'll want to use a Project's Chat tool instead. Feel free to create a project and just have the Chat tool turned on π‘.
- @Mentions: This is the feature you'll want to use when you want to draw someone's attention to a specific discussion, message, or any project item in your projects.
- Groups: Similar to @mentions, but you'll use this when you want the attention of a group of folks, like @designers, @support, @programmers, etc.
Keeping yourself and the team updated
Just about everyone has their own preference on how they want to stay looped in on a project. Because of this, Basecamp allows you decide on how you stay updated.
- Notifications: Users can customize their notification preferences to fit their individual workflows. Some want to be notified about everything, while others prefer minimal notifications β do what works best for you!
- My Stuff: This is the a place for everything that pertains to you. You'll find links to your assignments, bookmarks, schedule, drafts, recent activity, boosts, and recently visited pages in this section.
- Participation types: On all projects, users will either be "On the project" or "Just following" (except for Clients as they'll always be "On the project"). These participation types determine the notifications users will automatically receive, so those who are "On the project" will generally get notified more than those who are "Just following".
- Activity: Folks can quickly catch up on the latest activity in each of your projects here and even set it up so you get a daily activity email (on by default) for a summary of everything that happened since 7am on the previous day. You also have the option to run the following reports in the Activity section: Latest activity, Someone's Activity, Someone's Assignments, Mission Control, To-dos Added & Completed, Overdue To-dos, Unassigned Work, Upcoming Dates, and Timesheets (if your account has that add-on).
We hope this guide helps you use Basecamp get your new features from pitch to ship. And if you need any help along the way, you can check our learning center and help pages, join our Community, or reach out to us at Support.