Thanks for checking out our guide on the keys to managing a successful project. We’ll lay out the fundamental keys to running a successful software project and provide you with the techniques to use in your own work.
Topics covered in this guide:
Part 1: Critical Questions
First, we kick things off by looking at how asking the right questions up-front will get you started on the right foot and avoid some of the common misalignments that plague projects. If you’re not asking the right questions at the beginning of the project, you’re setting yourself up for misinterpreted requirements, misaligned priorities, scope changes and unhappy stakeholders. Or worse, a built and delivered solution that misses the mark and disappoints the users.
Asking these six questions at the start of your project will save yourself that dreaded negative response from your stakeholders.
Always start with why. Why is this project important or necessary?
Here’s where you identify the problem you’re trying to solve. Understanding what the stakeholders want to accomplish and the role this project serves is absolutely critical and will ultimately help you create a better outcome. Take this opportunity to fully unpack the problem and understand what the stakeholders want. Look for opportunities to simplify things or approach the problem differently. Educate the stakeholders on what’s possible and find a way to align your expertise with their needs.
Who are the project stakeholders?
Identify who has a vested interest in this project. That includes you and your stakeholders. Identify all of them. Have they done similar projects in the past–what worked and what didn’t?
Who is the ideal customer you’re helping with this project?
For external-facing projects, you need to know what users are being served. Get a clear understanding of who your project is helping. Oftentimes, we are short-sighted and only see the stakeholder we’re working with and not the users that they’re trying to reach. Aim for the users, and you’ll always have a happy stakeholder.
Who is the key decision maker for the project?
As a project manager, it’s crucial to define who is the key decision maker is. There are two possibilities that are not fun: everyone makes decisions or no one makes decisions. Instead of struggling through this tough situation, try to narrow the stakeholders down to one main contact.
Who are the key players in this project?
If you’re working with others, you’ll need to start building a team early. Decide who’ll work best on this project.
Who’s doing what?
As you’re mapping out your project, you should assign clear tasks to everyone. Doing this early prevents gaps and overlapping of responsibilities.
What are you hoping to accomplish? What is the project’s timeline?
Aim to create a detailed timeline with obtainable goals along the way. Depending on the project, you may want to go daily or weekly, but I would not suggest getting broader than that. You need to describe where you should be each step of the way and how you will get there.
What are the goals?
It’s so important to understand what everyone is hoping to get out of a project. Increased engagement, more sales, an improved website experience, etc.?
What are the expected deliverables for this project?
Pin the client or stakeholder down on what they actually expect from you on this project. While they may be looking for more sales, how will you deliver that? Perhaps you’ll create targeted landing pages. Understanding and agreeing to a set deliverable will put an end to goal shifting.
What will your project look like?
This is specific to design projects, like creating printables or web designs. Make sure that you and your client or stakeholder have a clear agreement on the visual branding of the project.
When will everything happen? When are your expected deliverables due?
Once you know what your project is, you need to map out when your project’s deliverables need to be available to your client. Of course, the client wants everything done yesterday– but you know what’s reasonable for you and your team. Don’t rush the process.
When will your project go live?
Know when your stakeholders need the project to go live– in many cases, this will not be the same time when you send in your deliverables. This information will help you create a realistic timeline.
When will you reach project milestones?
While you have one main end goal, you should also create mini goals and celebrate when you achieve them. Reaching these mini goals will give you and your team a boost.
When will you meet with your team?
You should consider how often you’ll need to meet with your team. You want one major meeting at the start of your project to hash out who will be doing what and field any questions your team may have. But don’t clutter the rest of your project with endless meetings that add no benefit. More on this later…
When will you meet with your client?
You also need to meet with your client. You should define at your initial meeting how involved the client wants to be– some are hands off, and some want daily updates. Go with what works best for you, your team, and the client.
Where will you start? Where do you start?
Successful entrepreneur Ramit Sethi spends 50% of his time before a product launch doing research alone–no product development, no marketing. That’s exactly what you’ll need to do to make your project successful. Spend your client or stakeholder interviews in research mode, and make sure that you have all of the relevant info you need to create your project.
Where will the work appear?
Ask where your work will appear and for permission to refer to the project in your case studies for other clients.
Where will it be worked on?
Here’s where you discuss the logistics of working on the project. Will you use Photoshop, WordPress, Mailchimp, etc? Will it be limited or will the client have access?
Where will you communicate?
As I mentioned earlier, you don’t want to spend all your time in meetings–but you do want to keep a constant stream of communication. That’s where you can use Status Hero to stay in constant (but painless) communication with your team and know everyone’s status.
Where are potential obstacles?
Pinpoint potential problems ahead of time and make an alternate plan in case something falls through.
How will you make it happen? How much is in the budget?
Self-explanatory, but definitely something you should always ask.
How will you review and test the project?
Will you perform a test at each goal interval? What will the process be? Will you allow for client feedback at these intervals? How will you measure success? After your project is completed, what is your target? You should decide that before you start so you have a clear goal.
Part 2: Scheduling
Being successful at managing projects in many ways comes down to one key concept: creating and maintaining a workable schedule. It reduces stress for the team, it improves the quality of work, it enables people to take responsibility, and it opens up lines of honest communication that otherwise wouldn’t exist.
For anyone that has ever managed a project, you know what bad scheduling looks like. Missed deadlines, milestones slipping, scope creep, and before you know it you’re in a conference room explaining to the leadership team why the project that you promised would only take 4 weeks is now going to take three times as long. So begins an inescapable cycle of lost productivity that most teams never overcome.
It doesn’t have to be this way! Whenever it’s time to start scheduling a project, there are a few key concepts to keep in mind that will revitalize the way your team runs and ensure you achieve your goals.
You’re scheduling a project for your team, so don’t be a dictator. Your team will be delivering based on their roles, so creating estimates should be collaborative. You may think that writing the copy for a landing page will take an afternoon, but they might know something you don’t, and they’ll be able to tell you about it ahead of time rather than weeks later.
Second, you need to specifically define the scope of a project and make sure everyone knows what it is. Unless every member of the team is bought in on what the project is about, you’re not going to succeed - it’s as simple as that. This could mean sending an email, or holding a meeting, or talking about the scope in 1-on-1’s. How you communicate can be based on your personality. However, what you communicate is based on your team’s needs.
Third, you need the right tools in place to foster communication. Whether it’s Slack, Basecamp, and/or Status Hero, communication doesn’t matter unless your team knows it’s happening. Whatever the tool, it needs to be lightweight, it needs to be approachable, and it needs to be something everyone is comfortable with. As the project manager, it’s your responsibility to enable quick communication and status updates.
If you start with these three things, you’ll be well on your way to communicating more effectively. This will immediately impact your team, and things will begin to move much faster and with a higher degree of quality.
Scheduling Never Finishes
Many companies approach scheduling like a task: there’s a project coming up, you need to properly allocate resources and time, and so you need a schedule that you can share with people. Once ready, you move to running the project itself, and watch as the schedule slips into irrelevance. Then you repeat the cycle.
The biggest mistake here is that scheduling isn’t a task you check off, it’s a process that’s constantly changing and never stops. You create the first draft, and then the team begins working on delivering results. Then, as things evolve and the work required becomes clearer, you reevaluate the schedule. It’s about constant iterations.
In practice, this means that the schedule is a living document. So, begin incorporating the idea of flexible time. Timelines shift and estimates are often wrong, so it’s smart to insert a day or two of unallocated time to allow flexibility while still hitting your next milestone date. This keeps your team on track, while also allowing you to more accurately predict when the next milestone will be reached.
Best case scenario? You’re ahead of schedule by a day.
Worst case scenario? You just saved yourself a tough conversation where you have to explain why your project was behind.
This sort of mentality is essential when shifting to a new mode of working where schedules are constantly being reevaluated.
Never Rush to the Calendar
So you’ve got a project, and you’ve written down your goals. Congratulations! Now, before you rush directly to the calendar and start guaranteeing release dates: Stop. Think.
If you rush to the calendar, the best you can hope for is that people begrudgingly agree to what you’ve decided. Much more likely, however, is that you’re going to have to talk with your team to get more information, meet with the leadership team again, and end up revisiting the schedule a dozen more times. All before ending up with a calendar that looks nothing like your first draft, and with many hours wasted.
Since we know this is going to happen, let’s try to avoid it. Before even considering the calendar, make sure that you’ve got all your ducks in a row. Do you know the final goal of this project? What about how many team members are available and what else they’re working on?
Have you spoken with Marketing and Sales to ensure that they’re in sync with your project?
There are so many variables to consider and they’re different for every company. The key, though, is that the time you spend actually filling out your team calendar should be a minuscule fraction of the overall time you spend planning for your project.
Team Responsibility Starts with Estimates
If you’re not planning on micromanaging your team at every step of the way, you need to entrust them with responsibility from the beginning. You work with smart people and need to be able to trust them with the schedule you’re creating.
In practice, this simply means that you base estimates off of what your team member is saying, and not about how long you think it should take.
For example, say you need to create a credit card entry form for a website. You think it should take three days (and you might even be right). However, if you go to the engineer that’s going to be working on this, when you tell them that it will take three days, the very best response you can hope for is, “you’ll get it in three days.” What would happen if you went to them with a different attitude, and trusted them with the responsibility of working efficiently? Well, you might just find out that when you bring up the question of a credit card entry form, that your engineer knows of an open source project, and it’ll only take an afternoon.
Two whole days saved!
By being more open to contributions from your team and entrusting them with the responsibility of estimating time, you’ll find yourself with far less to worry about, a more motivated team, and more-often-than-not, quicker turnaround on projects. Your worries about scheduling? A thing of the past.
Scheduling is a dynamic skill that changes depending on the team, the company, and the project. As it’s changing so often, you need to be changing your practices just as often.
To start, at the end of every project, look back at your original schedule and see how closely you matched it. Did one team member’s estimates turn out to be way off? Or did the scope drastically shift? Or perhaps you didn’t account for the new weekly all-hands meeting?
Whatever it is, something always goes wrong. The important thing is to see that truth with eyes wide open, and then change your plans accordingly. Once you begin to critically evaluate your past, you’re going to see what needs changing. And if you do this every week, month after month, you’re going to look back and see unimaginable improvement.
Imagine a team that has open and honest communication every day, that takes responsibility for their tasks, is smartly evolving their plans, and learning from past mistakes. Doesn’t sound like your team? It can.
For your next project, just start testing things. Communicate more openly, focus on learning from your mistakes, and trust your team. Start with one or two of the tips I’ve outlined and see how it goes. Once you begin to move from the mindset that nothing can be fixed to the mindset that things can constantly be improved, you’ll begin to see a whole new world ahead.
Part 3. Tracking Daily Goals
Ever been way off on a software delivery estimate? Wished you could more accurately predict when a project or feature would be ready to ship? Of course, you have.
Most thrashing and trouble that I’ve witnessed in software — that isn’t design or experience related — is the result of missed timelines or misguided project scope. If you’ve managed software projects for any length of time, you’ve experienced it. Executives breathing down your back, lost weekends, post-mortems, and uncomfortable retros.
So what can we do to make it happen less?
Set daily goals. They help team members focus on what’s important. They make it easy to decide where to invest time. And they help everyone estimate delivery dates better, one step at a time.
Goals vs. Tasks
People confuse goals and tasks sometimes, so let’s distinguish between the two. Goals represent meaningful and impactful pieces of work. Goals lead to real change. They’re aspirational. Tasks, on the other hand, are mechanics and tactics. Tasks are the smaller chores that may—or may not—move you toward your goal. On their own, tasks provide little to no value.
An example of a goal is adding the ability for users to attach files to their check-ins. A task related to that goal might be meeting with the PM to review the user story. Having the meeting alone is not valuable. Shipping the feature to customers is the real objective.
So why track goals and not tasks? You may have a goal that’s comprised of several tasks, but completing the goal is really all that matters. By setting goals each day, you hold yourself accountable for achieving something meaningful. It prevents “snacking” on tasks that may look substantial on a to-do list, but don’t actually deliver value.
How Do Goals Help Estimates?
Once your team starts setting daily goals, they’ll learn what’s actually achievable in a single workday. They’ll get better at estimating work, which will lead to a stronger grasp of your team’s overall velocity. Plus, people like meeting goals and checking them off as met. It’s a strong incentive to get stuff done.
And when your team is better at estimation and has a more predictable velocity, your job of scoping and planning projects suddenly becomes easier—and you’re vastly better at it. If you manage software projects or teams, you know this is critical for your success.
At Status Hero, we’ve seen people make big leaps in their estimating skills in just 3–4 weeks.
Daily goals also help us understand what’s really going on with a project. Everyone can better gauge the actual progress being made. Instead of having to figure out, guess, or assume what a list of tasks or JIRA items amount to, you and your team get the big picture, in an easy-to-understand and succinct way. Improved and streamlined communication makes it easier to identify blockers too. You’ll be better equipped to recognize when something—or someone—needs your attention, and removing blockers will keep your project moving forward on schedule.
Setting and achieving daily goals will also make your team feel more productive. They’ll be excited to share their completed goals from the previous day at stand-up. You can celebrate small wins together, even connect over the misses, and that creates a positive reinforcement loop that keeps people communicating.
Avoiding Common Pitfalls
When you embark on a new project, everything seems possible, doesn’t it? The project will be completed on time, maybe even under budget, and you will finally be recognized as the hero that you are.
Except that’s not what happens.
In reality, you’re two weeks past the deadline, you’ve sped over the budget like a race car driver, and you get nervous every time you see an email from your boss.
Let’s take a deep, cleansing breath, shall we? It’s not the end of the world. We’re going to help you figure out why your project failed, and the best way to get it back on track.
Reason #1: A Failure to Communicate
Poor communication doesn’t just affect marriages, it can impact team morale in a big way. When any member of your team lacks a clear understanding of their role in your project, it creates a domino effect on the entire team.
Start off each project with a clear goal and expectation, but don’t just keep it to yourself– communicate your vision with your team. Everyone should understand the goal of the project and how each individual contributes.
It’s not enough to have one pep talk at the beginning of the project. Commit to regular check-ins with each team member where they update you on their status. This allows you to address any problems in the beginning stages before they balloon into major issues.
Reason #2: Inexperience
Whether it’s you, your team, or both that’s inexperienced, this could spell out disaster for your project. A capable worker is often promoted to the position of project manager without receiving leadership training. Now, the new project manager is in a position of authority but lacks the necessary tools to motivate his or her staff, provide a clear vision, and turn actions into results.
The good news about inexperience is that project management can be taught. In fact, everyone from Stanford University to Udemy provides (free) courses in project management that you can enroll in today to get a big dose of education.
Reason #3: Scope Creep
Scope creep is when a project grows bigger than originally planned. Making little changes here and there can eventually derail your train if you’re not cautious. First of all, it can negatively impact your budget. Secondly, it can delay your completion date because you’ve had to adjust your roadmap for the new changes.
Scope creep sneaks its way into a lot of projects, but there is an effective way to manage it. Either:
- Do zero-sum. Remove elements from your project to accommodate the new scope.
- Change the project deadline in writing and charge accordingly. Nothing stops scope creep quite like having to pay in time or money.
Reason #4: Unrealistic Expectations
It’s incredibly easy to underestimate how long a project will take. Clients or other stakeholders have a bad habit of suggesting unrealistic expectations for project deadline.
It’s your responsibility to give yourself enough wiggle room to account for unforeseen delays. It’s the old adage that you ask for extra time and then deliver before the deadline: under promise, over deliver. Your first priority is to set reasonable expectations that give your team time to breathe, put out any fires, and accomplish the project goal.
Reason #5: Not Enough Resources
It happens. You’ve underestimated the budget required to complete your project. This often goes hand in hand with scope creep. Now, you have to borrow from Peter to pay Paul, or worse– you actually have to ask the client for more money. Yikes!
Here’s where good, detailed planning comes in handy. Account for potential budget busters and make sure that you have enough resources to manage them. Go through and meticulously list your budget needs, and make sure that you stay on top of it.
It’s not enough to look at your budget at the beginning of your project. You must also keep an eye on it throughout, and make course corrections as necessary to keep both your budget and your project on track.
Reason #6: Poor Risk Management
Because we often lean towards the optimistic side, few of us really want to think of the what ifs. However, if you’re in charge of overseeing a project, that’s exactly what you have to do. Not only that, you also need to make contingency plans in case something goes wrong. For each project, you should create a list of foreseeable problems and how you’ll respond if you encounter them.
Reason #7: You Aren’t Working with the Right People
Not every team is equipped for every project. Your project may have failed because the team dynamic didn’t work, or because those in key positions were just unable to deliver the goods.
If you have a crashed project that’s burning as we speak, it may not be too late to re-organize your team. Bring in someone new, or shuffle members into new responsibilities (that are still within their range of abilities). You may find that this new arrangement is exactly what your team needed all along.
Part 5. Using Status Hero to Help Project Success
Automating the collection and communication of project status to your team members and stakeholders
A common reason that projects fall off track is the leaders of the project lose touch with how their team is tracking towards their goals. This can happen if team members aren’t communicating enough with each other or their stakeholders. Part of the challenge is that traditionally this type of “check-in” is done with a status meeting. And status meetings are a pain to schedule, disruptive to team members, and generally despised by participants. So how can we stay on top of the project without a bunch of meetings?
That’s where Status Hero comes in. Team members get asked for brief check-ins on a regular, customizable schedule (ex: daily, MWF, weekly). Those updates are collected by Status Hero and shared out to the entire team and (optionally) stakeholders and managers. Integrations with the tools you work in, like Jira, Github, and others allow you to see all of each other’s activity. So you get a plain language summary from the team member coupled with detailed task level information, giving you a complete picture of the status and where your project stands vs. your target schedule.
Visibility of Progress
Status Hero makes it really easy to see if your team is progressing on a project from a daily to a weekly schedule. By tracking the daily goals of the team, you can ensure you are making meaningful progress on what matters. Additionally, you have the ability to broadcast updates to stakeholders and managers - keeping everyone up-to-date as you make progress on your project. Your clients and stakeholders will love the ability to get an automatic report of progress and you’ll be able to make adjustments as needed based on how you’re tracking. For co-located teams, the “kiosk mode”, built for display on large monitors at the office, is a perfect way to display progress to folks in your team area.
Tracking daily goals makes it easier for your team members to realize what they are capable of achieving in a given day. Once they understand this, their ability to break down and estimate work to provide an accurate timeline will be much more precise. Some teams will even break down a project into daily deliverables as a team to more accurately estimate their timelines. If your team is able to break down your work at this level, then tracking progress against it becomes incredibly easy and efficient. Just check your plan vs. the team’s check-ins for the day and see if you’re on track or not. Easy as that.
Fostering Communication and Transparency
By sharing daily progress with team members and stakeholders, it’s easy to see and correct any pitfalls early. People can quickly know if someone is stuck on a deliverable or heading down the wrong path - and then communicate directly to them to offer help or guidance. By spending a few minutes each day to check in and review the project status, everyone gets a complete understanding of progress and can take whatever action is necessary to keep moving towards the goal.
That wraps up our Keys to a Successful Project guide! If you’re ready to start tracking daily goals and running successful projects, be sure to check out our free trial.
Get a monthly digest of helpful articles from around the web for people leading software teams. Absolutely no spam, unsubscribe anytime, and we'll never share your address: