With Spotlight, it’s easy to get your team communicating, see what everyone’s doing at any given time, and deliver faster with Agile. The key to success is great communication, and Spotlight delivers with system-wide integrated communication and messaging. By leveraging the best of social networking, you stay in touch with what everyone’s working on in real-time.
Many of our clients had experienced success with their projects using Spotlight. Here’s what some have to say.
My startup, tripchi, has been using Spotlight for the past few months… It is a streamlined and easy-to-use agile project management sprint tool… I think it will continue to grow in user base, as it has a unique niche in a market that is typically represented by software that is either over-featured and too expensive, or so basic that you can’t easily roll up information (Excel, etc.). Keep up the good work Spotlight!
– Chandra Jacobs, Founder/CEO
With offshore, near-shore and home-sourced development teams, the need to quickly collaborate and insure productivity and utilization for these resources is crucial. This product is combining proven project management practices along with social media tools. The result – greater productivity.
– Stephen Booze, CIO
Center for Entrepreneurial Innovation
I recently had the opportunity to see a demo of Spotlight and I can truly say this software just blew me away. I’m always looking for that easy to use, but very useful project management software and Spotlight is just that. As a business incubator manager, I suggest that all our clients in the program use Spotlight… Best on the market in my opinion.
– Jeff Saville, Executive Director
Building up Leaders
There are no easy or clean ways to manage project resources and people around the world, until now! Spotlight Software gets to the social side of resource management using a fabulous tool. I recommend this software to anyone who is managing a project resource in another country, especially when there is a time difference in play.
– Eric Walton, President
Spotlight Software was designed by an experienced software developer and manager to answer needs not addressed by other project management offerings. As such, it has critical, helpful functionality for managing virtual teams that no other PM tool features…. That added functionality allows for stronger, more efficient management of virtual teams, with accountability of project members at its core. Regardless of what online project management tool you may presently be using, I am confident you will find Spotlight to be superior and worthy of your use.
– Alan Lobock, Founder
SMART Business Systems LLC
Spotlight is a straight-forward way to setup the sprint backlog, assign, track, post, and review performance criteria all through a shared online service. Managing a distributed Agile team used to be a challenge. Not any more!. SerpicoDEV provides it as a service to software development clients. They use it themselves to manage their own projects so it must be good!
– Kevin Pugh, Founder/Owner/Developer
We love using this application at SEED SPOT and with select ventures in our program. It has helped us stay organized and plan appropriately.”
– Chris Petroff, Co-Founder
To compete, collaborate and create today you have to embrace a distributed/non-centralized “creation engine”. To harness that engine we must have the tools to properly manage and apply its power. Spotlight is one of those few tools and, with their current product roadmap, it promises to be THE tool.
In a project management sprint, multiple activities are happening all at once – new features are being added, improvements are being made to existing features, bugs are getting fixed – tasks run the gamut. Managing this process and keeping up to date on progress is, at once, both imperative and daunting.
Because so much happens within a sprint, Spotlight’s functionality allows users to accurately track progress every step of the way. In the initial stage of planning, specific tasks will be laid out and assigned to distributed employees, appearing in a list in the Message Center. There are no QA flags on tasks that are not started, tasks that are in progress, or tasks that are paused. When a task has been marked as completed in the Status column, the QA flags become visible. There are three different QA flags:
Red indicates that the task is completed and ready for QA
Yellow indicates that the task in being tested, and automatically tracks time for that tester
Green indicates that the task has been approved
Alternatively, if the task is not approved, the tester can choose the “Re-opened” option in the drop-down box in the Status column, alerting the developer of the task’s changed status. The tester also has the option to open the task and comment on the changed status. When a task is re-opened, the QA flags disappear once again.
QA flags clearly display the progress of all the tasks, allowing users to see which tasks need to be QA’d, which are in progress, and which have been tested and approved.
Vincent Serpico: Good morning, everybody, and welcome to the webinar. We are going to go over the new QA flags and the bug tracking in Spotlight, a new feature that we are very, very excited about.
First thing, I need to change my status. I’m going to change my status to “in a webinar.” I am busy, and will be into this webinar until, let’s say, 11 AM. We’ll call this a meeting. Fantastic.
Let’s go over the new QA flags and bug tracking in Spotlight. Let me just give you a bit of history about on how we arrived at our above tracking and our QA flags.
First of all, during a sprint, you’re going to be adding new features. You’re going to be adding improvements to existing features. You’re going to be fixing bugs, and you’re going to adding other tasks, as well.
Everything happens within a sprint. When a task is set to completed, QA flags will display. Notice that there are no QA flags on tasks that are not started, tasks that are in progress, and any tasks that are paused, don’t have any QA flags.
QA flags are only on display on tasks, bugs, features, or improvements that are marked completed. They display as red, signifying that the task, bug, feature, or improvement is ready for QA.
Once it’s ready for QA, the QA tester, in this case it’s Kristen Simmons, will come in and mark the QA flag yellow. Yellow means that it’s currently being QAed.
Also, this is very important, this system will begin recording time for Kristen testing this task. It is 10:11 AM, where I am right now. This system is currently recording the time for Kristen QAing this task over here.
Once completed, once it passed QA, Kristen can then mark the task as approved and green, or if the task is not approved, she can flip it back open to reopen.
Notice the QA flags will go away, and the task is not reopened. Norman will get an alert that his task has been reopened. Presumably, Kristen will go into the task, and leave a comment as to why it’s reopened.
Actually, let’s go ahead and mark this as completed again. We feel that the QA flags are a very easy way to quickly see the progress of all the tasks. Let’s say, I want to do a filter on everything that has been completed. After all, that’s where the QA flags are set on.
Out of all the completed tasks, I can see that there are still several that need to be QAed, and still several that are in progress, and several that are already tested and approved. I can quickly scan down and get an idea of where we are with all of the QA testing. We feel that’s a very, very efficient way to manage QA, keep QA as a first class citizen, and stay involved with everything going on at the development level.
I like to keep these webinars short. I like to keep them to the point. Everybody has very, very busy days. As always, the webinar will be posted on our website for further review. Again, we try to keep them very short, 10, 15 minutes, and followed by a round of Q and A.
I’m going to open it up to Q and A right now. If you have any questions, please go ahead and type it in the questions area. I’ll go ahead and get them answered. Other than that…
OK, I see a question right now about marking a QA flag as yellow. Yes, it does track time. The time tracking works exactly the same as a time tracking on a status update.
If you mark a QA flag as yellow and your status is away or offline, it will not track the time. If you mark a QA flag as yellow and your status is busy or available, then yes, it will track the time.
Of course, it will track the time for the person who is assigned as a tester to the task.
Another question, no, a comment. Yes. Thank you. Thank you very much.
We feel that the integrated approach is quick, easy, to the point, and just gets the job done. Thank you very much for attending the webinar. We’ll see you next week. Bye‑bye.
Distributed teams need to maintain accountability and productivity in task management, and Spotlight is the most trusted way to ensure accurate task timing. Spotlight’s time tracker lets clients accurately forecast projects, as well as balancing contractors’ invoices against the actual amount of timed work recorded in the Spotlight system.
Spotlight’s task timing is integrated into a world-class task manager and social networking dashboard. With this integrated functionality, members don’t need to think about timing tasks – it automatically happens when team members select and update their current tasks in the Spotlight status control.
Progress is manually set to provide an indication to others how they are progressing on the task. When the team member chooses an online status of “available” or “busy,” Spotlight times the actual hours spent on the selected task.
When the team member chooses an online status of “away” or “offline,” Spotlight ceases the timing of the actual hours spent on the task, and pauses the task status.
Spotlight also accommodates QA testing. When a task is ready for testing, Spotlight logs testing time while status is flagged as “yellow, in progress.” Timing ceases when the QA status changes to “green, approved,” or “reopened.”
Vincent Serpico: Spotlight is the most trusted way to ensure accurate task timing. We understand the need to accurately time task. That is why we built the world’s best time tracker. Spotlight’s time tracker lets you accurately forecast your projects, and even balance your contractors’ invoices against actual timed work.
Spotlight’s task timing is integrated into our world class task manager and social networking dashboard. That means team members don’t need to think about timing tasks. It automatically happens. Team members select the tasks they are working on in Spotlight status control.
Progress is manually set to provide an indication to others how they are progressing on the task. When the team member chooses an online status of available or busy, Spotlight times the actual hours spent on the selected task.
When the team member chooses an online status of “away” or “offline”, Spotlight ceases the timing of the actual hours spent on the task, and places the task status in a paused state.
QA members can time their tasks similar to developers. QA testers simply select a task that is ready for testing. Spotlight will log the amount of time testing while the QA status is flagged as “yellow, in progress.” When a tester sets the QA status to “green, approved,” or “reopened,” timing ceases. You can always check the timing progression of any task in the task detail history section.
Note here that the developer started and paused the task three times for cumulative of four hours of development, and QA tested for 30 minutes. You can even balance invoices received against actual hours in Spotlight’s project report.
Here, we can see that the developer spent 90 percent of his time working on tasks. Each task he worked is represented below with actual time worked.
Accurate task timing is vital to good project management. That’s why task timing is integrated into Spotlight at the deepest levels. Spotlight makes it easy for team members to time their tasks and powerful for you to analyze. When it comes to world‑class task timing, Spotlight shines.
It’s a horrible, but true fact: 50 to 90 percent of software development projects fail – and the more distributed or remote your team, the higher the rate of failure. Fortunately, this fate is far from inevitable! With a bit of planning and an organized process of communication and accountability, your project can succeed.
There’s no magic formula. Rather, there’s a simple process to follow which is teachable and easily integrated into your team’s framework. There are three major phases in this process:
Hire good developers:
Engage the right developers from the project outset
Expand the talent pool by hiring virtual developers
Plan a framework for your project:
Determine your vision with a requirements analysis
Set a clear goal with wireframes and use cases
Execute the project using Spotlight or other media:
Instill accountability and follow-through with Daily Scrums, Status Updates, and Daily Progress Report
When your project is ready for the execution phase, Spotlight is your go-to for managing the distributed team.
Vincent Serpico: Good morning, everybody. Welcome to this week’s webinar. We have a very special webinar, by popular demand, “How to Hire and Manage a Team of Virtual Software Developers.” We’re going to go over the process of hiring, the process of planning, and the process of executing a distributed team.
Before we get started, as usual, let’s go ahead and update our Spotlight status. I’m going to update “In a webinar. I am currently busy. I will be busy until 11:00 AM. I am currently in client relations.” I will update my status, and everybody knows that I am currently busy.
Let’s go ahead and get started with the webinar. Again, thank you for joining. This is going to be “How to Hire and Manage a Team of Distributed Software Developers.”
My name is Vincent Serpico. I am Founder and CEO of Spotlight Software. I’ve been building and developing software for over 15 years, serving a variety of roles in various capacities, from software developer to VP of Dev in several companies.
I own a software development service company, and I serve as CEO of Spotlight Software. Dan Schulz is Co‑Founder, President, and COO of Spotlight Software, and has been in technology for over 30 years. Seth Weedin is Director of Marketing for Spotlight and heads up all marketing efforts.
Horrible fact, 50 to 90 percent of software development projects fail. What’s worse is that the more your team is distributed, that is, the more your team is remote, not working in the same office, the higher the rate of failure is.
Take heed. Your project can succeed with a bit of planning and an organized process of communication and accountability.
I’ve been working with distributed teams for many, many years. My success rate is actually inverse of the failure rate. I have a success rate of way over 90 percent.
I’m not some kind of genius or anything. I don’t have some sort of magic formula. I simply follow a process, a process that is very, very teachable. By having a teachable process, anybody can learn it. Literally, anyone can learn it.
The first thing is let’s talk about hiring. “Who’s going to develop your software?” I cannot stress enough that you need to get this right.
Developers, they are not commodities. Developers are building your lifeblood, your dream. Make sure you get good developers. You want to build a team that’s going to last. It could take a developer three, four, five, six, even nine months to ramp up on an application.
Let me put it like this. Let’s say you buy one of those old muscle cars, like an old Mustang from the ’60s, and you want to restore it. You hire a mechanic. Mechanic’s been working on your car for two or three weeks.
You decide to lay off the mechanic, and hire somebody new. That new mechanic will be productive day one. A carburetor’s a carburetor. A manifold’s a manifold. They can get up and running immediately.
Not so much in software. If you lay off your developer, he quits, or whatever, it could take a new developer months, literally months, to become productive in your system.
That means months of downtime that’s wasted for you ‑‑ wasted money, wasted opportunity cost. Make sure you hire the right developers on the get‑go.
We recommend hiring virtual developers. Why do we recommend hiring virtual developers? First of all, if you limit your search for developers within your geographical location, you’re going to have a much limited talent pool than a search all over the world.
If you’re looking for a really good .NET guy who knows C# and knows the ins and outs of a mongo database really, really well, it’s going to be hard to find that guy within 20, 30 miles of your office.
However, if you expand your search to the whole United States, you have a much better chance. If you expand your search to the Western hemisphere, you have a huge chance. If you expand your search to the world, you’re going to find this guy.
The larger you expand your search, the better the odds are you’re going to find this guy at a really, really good rate. There are a lot of very good websites out there that help freelancers get together with employers, like Elance, oDesk, Freelancer.com. There are so many more.
We do definitely recommend hiring a virtual developer. When you jump on one of these sites and you go to Elance, when you go to Freelancer.com, or an oDesk, it’s really important that you find the right developer.
By finding the right developer, there is a process of describing what you want done in your project, and communicating the what, not the how.
What do I mean by that? What I mean is that when you’re looking for a developer, you’re not looking for a mechanic. Again, development is extremely difficult. It’s not like building a skyscraper or doing heart surgery. Development is a very, very difficult task, and as such, it’s not so much mechanics as it is an art.
When you are communicating with a developer, and you’re hosting your job in Elance or Freelancer.com, describe what you want, not how you want it implemented.
For instance, don’t say, “I’m looking for a iOS/Android developer who can create a geo‑fence application that will send an alert back to a MySQL database, do some processing of other devices within a 10 mile radius, and then send that out over a REST web service.”
Instead, you might want to say, “I want to develop an application that taxi drivers can find fares within 5 to 10 miles of where they’re located.” By doing that, a developer will come back to you with an architecture, with a design, with a plan, that you might have never thought of, and lend huge, huge value to your development process and to your business and theirs.
Developers are going to be your lifeblood. Describe what you want. Describe the goals of the project, the goals of the business, not how it should be done.
When you do find somebody to create a good rapport with, give them a programming test. This is really, really important. When I say a programming test, I am not talking about one of those multiple choice or fill in the blank tests. Anybody can do those. What I’m talking about is a real programming test.
If you need a mobile developer, go ahead and give him a test to create an application on a mobile device. Design it so the test will take him two or three hours. You don’t want to give him a huge test, but give him a test that would take two or three hours.
I also put a couple of guidelines in the test to really ascertain the developer. I will go ahead and leave the requirements a little open‑ended so that the test can be completed in two or three hours, but he could work on it for a lot longer if he wants.
I also make the requirements a little bit ambiguous. Why? Because I want to see what a developer does when he’s not completely clear on requirements. Does he ask me questions? Does he make assumptions on his own? There are pros and cons to both, right?
By actually creating a test, what you’re doing is you’re seeing how much this developer really wants to work for you, how ambitious he is. Does he do the minimum on the test or does he deliver a really robust test?
I’ve had developers tell me, “Nope, not taking a test until you hire me.” Well, then I’m not hiring you. I’ve had developers return the bare requirements and I’ve had developers spend days on a test, turning in masterpieces, who wound up being senior level architects for me for a long, long time.
Just to wrap up the development, communicate your goals, what you’re doing not how, and require a real world programming test. If you’ve done this before, great. If you haven’t, I highly, highly recommend you get a consultant to help you out the first or second time around to provide a gut check for you.
Let’s talk about planning. This is the second phase of hiring and managing a distributed team.
Would you build a house without a blueprint? I would hope not. Would you drive in a new city without a GPS? Again, I would hope not, unless you want to get lost. Why in the world would you build software without a clear plan? I see this all the time. I see folks just jump in there writing code saying, “We don’t have time for requirements analysis. We’re on a tight deadline.” Or, “We’ll wing it because we’re agile.”
They give you a whole bunch of excuses why they can’t do requirements analysis. I’ve seen projects go on and on and on because they have no clear goal of where they’re going.
Requirements analysis doesn’t mean that you’re locked into doing something the same way or the same plan for the entire project. Requirements analysis means that you have a vision, and you have a way of getting there. But you’re never going to get somewhere if you don’t know where you’re going in the first place.
The first step in requirements analysis is to create what’s called the wireframes and use cases. A wireframe is a graphical depiction of every screen in your software. If you’re developing a web app, it’s every screen in the web app. If you’re developing a mobile app, it’s every screen in the mobile app. Desktop app, same thing.
It’s a sketch of every single screen. What you’re looking at right here is a wireframe of the Spotlight status cards. This is a wireframe created in an application called “Balsamiq.” It shows the developers, the designers, everybody else, the project managers, what we’re creating.
Those numbers that you see all over there, they correspond to a spreadsheet that depicts what happens when each one of those items are clicked or what they are.
For instance, number one is the team member’s profile, his image. Number five is a chat button. Number five in a spreadsheet might say something like, “When the user clicks the chat button, a chat opens in the lower right hand corner of the web browser, enabling a chat with the two team members.” Then, it might see, “See chat wireframe and use case for more information.”
By doing your wireframes and use cases, you have lots of benefits. The first benefit is you really get an opportunity to think about what you want to design. I have seen, more often than not, when an entrepreneur does his wireframes and use cases, he starts thinking about things in his application he never would have thought of before. He starts pivoting some ideas he already had. It becomes an incredibly, incredibly useful endeavor.
Number two, by having wireframes and use cases, you’re able to go to your developers, your project managers, your QA and say, “Here’s exactly what we’re developing.” It’s not nebulous. You have something concrete that everybody can work towards, and everybody can create a project plan for, which leads us to the next planning item.
Now that you’ve got wireframes and use cases, let’s go ahead and set up what’s called sprints, goals, and tasks. A sprint in software development really is just a logical timeframe. For instance, a one week timeframe, a two week timeframe, where we decide that we’re going to go ahead and do the following tasks within the timeframe.
It’s a way to have a discrete unit of tasks to be done within a certain time in order to impose a deadline on everybody, so that we’re working towards a goal versus working without any clear guidelines. By setting up your sprints, by setting up your task, by creating clear, defined goals, everybody now is on the same page, on what needs to be developed.
Again, you’re not locked into doing everything that you’ve laid out, but, by laying everything out in advance with the wireframes, with the use case, with sprints, goals, and tasks, you now have a clear plan of what you’re going to do. You can modify that plan. In fact, 99 percent of projects are modified along the way, many, many times, usually every single sprint. But, again, without a clear focus, without a clear direction, you’re not going to get anywhere.
Spotlight is an incredible tool to set up sprints, goals, and tasks. Our tasks management system is a rock solid system to track tasks and to also track the time spent on every single task by all your team members. It is a world‑class system on parity with anything else in the world.
Let’s talk about phase three of hiring and managing a distributed team. This is the execution phase. This is the day‑to‑day phase. You’ve hired your developers. You’ve got everything all set up with your requirements analysis. Now, it’s time to sprint forward and execute on a daily basis.
There are three things that I recommend on a daily basis to do that will keep your team communicating and collaborating and on track. The first is a daily meeting, the second is regular status updates, and the third is daily progress reports.
The daily 15‑minute meeting. This is sometimes called a scrum. It’s sometimes called a stand‑up. Why does software development always have these unique vernacular ‑‑ scrum, stand‑up? Let’s just call it a meeting, ’cause that’s what it is, a 15‑minute meeting.
What’s it designed to do? It’s designed to get your entire team together, especially a distributed team, at the beginning of the day, and let everybody in turn describe what they did yesterday, what they’re going to do today, and any issues or blockers that they might have.
This daily meeting, this daily scrum, has several key advantages. First of all, for a distributed team, you’re getting everybody communicating first thing in the morning. If you’ve got a couple of guys in Mexico, a couple of guys in New York, and a couple of guys in Indiana, all of a sudden, everybody is communicating with each other first thing in the morning which is fantastic and exactly what you need for a distributed team.
Number two, by publicly saying what you’re going to do today, you’ve created a sense of group accountability. If I say, “I’m going to finish those database tables today,” everybody now is aware of what my goals are today. Scientific research suggests that when you make a goal public you have a much better chance of succeeding.
Do these daily meetings every single day. Spotlight makes daily scrums extremely easy by simply integrating Skype right into Spotlight.
You started your day with a daily meeting and instilled a sense of group accountability and communication into everybody. How do you get the team now communicating and collaborating all day long? Because, traditionally, with distributed teams, if they do their daily scrum, they now go off on their own.
What typically happens is a project manager or a scrum master will be Skyping all the individual developers all day long. “What’re you working on? How’s it going? How’s it going? What’s going on?” Basically, your scrum master or your project manager becomes a glorified babysitter. She might know what everybody is working on, but nobody knows what anyone else is working on because they’re all distant from each other.
That’s why in Spotlight we created what’s called regular status updates. If you’re not on Spotlight, you can do this via email also. What a status update is literally a update on what you’re working on, what the progress is, any issues, and your availability, sent out three to five times a day.
If you take a look at the status update on the screen, you’ll see that Harry has sent out an update saying he’s identified the database issue that causes the error and it should be fixed in 15 minutes. He’s 80 percent done with this task that he’s working on, and he’s available, letting everybody know that he is around. He’ll be available till this evening. Maybe later on, he’ll go ahead and change his status to away, saying, “I’m at lunch and I’ll be back in about an hour.”
These only take about a minute to do. There’s no excuse for anybody not to do these status updates because of how incredibly valuable they are.
Now that everybody knows what Harry is working on, somebody can jump in and say, “Hey, Harry, if you’re going to be good in 15 minutes, I actually don’t have anything else to work on for a little while. I can help you test it.” But nobody would have known it if they didn’t see the status update!
I can tell you, by experience, from somebody who has worked with distributed teams for a long, long time, these daily status updates are our lifeblood. It keeps distributed teams communicating and collaborating like they’re sitting together in the same office.
So you started your day with accountability and communication, and then throughout the day, the regular status updates kept the team communicating and collaborating. Now, you want to end your day with more communication and accountability, what I call the daily progress report.
Think of the daily progress report as an inverse scrum. Instead of saying what you did yesterday and what you’re going to do today, you create a report recounting what you did today and what you will do tomorrow. But instead of sending that report to everybody, it should be sent only to your supervisor, or the team member’s manager, or whatever.
In this way, there’s a one‑on‑one sense of accountability between the team member and the manager. The team member is now ending his day with accountability of what he said he was going to do in the morning, and he’s ending his day by communicating directly with his manager. Managers love daily progress reports, because they’re able to see what really happened during the day ahead of the daily scrum, and they’re able to plan for the daily scrum much better.
I find that when team members do daily progress reports every day, the actual scrum in the morning lasts about 50 percent shorter, because I’m able to scan the reports and say, “OK, I see what you’re working on. I had a question about your daily progress report. Any changes over there?” It moves so quickly. After all, the goal is to spend less time in meetings, and more time working.
I want to end this with just a quick note about “lean and agile.” You guys have heard the term many times. I’m sure everybody has. What “lean and agile” basically is is a way to create software in a fashion, such that you can change your mind as you move through the cycle of developing the software, without any major impediments to speed, delivery, time, cost, or anything like that.
The way that’s done is by first planning out exactly what you want to do, as we talked about during the planning phase, and setting up what’s called “sprints,” those predetermined time frames, those discrete time frames. A project might have, let’s say, 20 sprints that are two weeks apiece, and each one of those sprints has a certain amount of goals you want to accomplish.
The idea in agile is you’ll do one of those two‑week sprints, you’ll finish coding and QA for that one sprint, and then you’ll pause for a second. You’ll look at what you did, and then you’ll look at the goals for the next sprint and say, “Is this still what we want, or have market conditions changed? Have customers’ conditions changed? Has anything changed that we need to alter course, or are we still on course?”
A lot of the times, you will alter course. You’ll say, “OK, what we did was right, but for the next sprint, these goals are not appropriate right now due to current market conditions, and we want to swap out these goals for a goal much later in the project.” That’s what “agile and lean” allows you to do. Spotlight is set up for the agile, lean process, and it makes things extremely, extremely productive.
All right, I’m going to now open up the floor to any specific questions. Any questions whatsoever? If you have any questions about your own project, ask them. If you have questions about hiring, planning, or executing, please ask them now. Any questions about Spotlight, ask them now. I always like to keep my webinars right to the point, not a lot of flowery talk, so we jammed about two hours of information in about 23 minutes, just for the sake of being concise.
First question is, “What are some good requirements analysis tools?” Balsamiq. I think it’s spelled BALSAMIQ. It’s an inexpensive, online requirements analysis tool that allows you to create wireframes that can get you way down the road. You’ll have to create your use cases using a spreadsheet, and the two accompanied together are very, very impactful.
Another tool is called iRise, IRISE. It’s more of a prototyping tool than anything else. It has some unique advantages over Balsamiq. Balsamiq has some advantages over iRise.
The back of a napkin and a pencil is another requirements analysis tool. The idea about requirements analysis is make sure you sketch out what you want. If you have a client that you’re working for, you definitely want to make sure you have requirements so that the client doesn’t come back and say, “This is not what we agreed on.” With requirements, you’ve also added accountability to your client.
Another question is…Let’s see.
Every task is timed in Spotlight. Let me show you. I’ll give you an example. There’s a question about timing, and I want to show specifically. Right here, you see Javier is working on “Display time zone under picture.” What we’re going to do is we’re going to add a feature over here that shows the time zone that he’s in. He is 95 percent done with this task. He has been timed the whole time with this task. Let’s click on this and look into this task.
What you see is that Javier worked on it from 8:48 to 9:36 AM, again from 9:36 to 10:24, and again from 10:24 to 10:25. There is also a project report that will detail everything he’s worked on. So when someone submits an invoice, you can go ahead and balance his hours against all of the hours that he’s reported. Spotlight is designed to granularly track every single hour, every single minute, that somebody has worked on a task.
Other questions? The question is “How long should a sprint be?” That’s a very, very good question. I’d like to say that sprints typically should be about two weeks long. I like to say that “typically,” because there are conditions where your sprints will be one week, and there’s conditions where your sprints might be three or four weeks.
Once you’ve kind of hit a stride and you’re moving at a good runner’s pace, you’re going to find your sprints are going to get shorter and shorter, because everybody is working in sync together.
In the beginning, your sprints are going to be a little on the longer side, because the team’s getting to know each other, the project’s getting up and running, and you’re still getting your sea legs, so to say.
I would say, in the beginning, make your sprints a little longer, with an eye towards making it shorter as you move along. That’s just my personal experience.
Any other questions before we call it a webinar? All right, thank you very much. I appreciate you attending, and look forward to seeing everybody next Wednesday. Thank you. Bye‑bye.
“Developers are not commodities.” Software development projects are very unique. No two projects are the same and this also applies to developers. They all have different skills with expertise in different programming languages. Hiring a software project team is a process that requires thorough screening and many conversations to ensure you have the right people in place for your project.
Depending on the complexity of the project, it can often take months for a new developer to get familiar with the details, team, and process. So choosing wisely at the start of the project is imperative to prevent team member turnover and delays. That’s why it’s so important to know how to accurately locate developers, properly interview, and hire them. A process of looking outside your local area, communicating your goals (not ‘how’ the software should work), and short programming tests will help you narrow down the perfect software project team for your endeavor.
Consider Going Online
With the increase in innovative tools to work from anywhere, any time, and on any device, the opportunity to work with developers from across the globe is huge. There are several major advantages in going with a virtual software project team:
Hiring developers online allows you to expand you search beyond your local geographic area to a global market. This automatically increases the available talent to choose from by a massive amount.
Different areas have a lower cost of living. This means you may be able to attract developers with comparable experience level at a much lower rate.
Working from home with flexibility often makes the hired developers happier. Happier employees equal a more productive workforce as a whole.
Hiring a virtual software project team on a contract basis eliminates all the overhead cost of office space, equipment, and full-time employee benefits.
Several online marketplaces give you the ability to find quality software developers like Elance, oDesk, and Freelancer.
Communicate Your Goals
Now that you have found a potential candidate to have further conversations with, how you communicate the project goals becomes key. Don’t communicate the ‘how’ of the project, but describe ‘what’ you are trying to achieve. In other words, always communicate what you want done at the end of the project and not how you should get there.
Good software developers have a unique way of finding solutions to reach the project’s goals that you may have never thought of. For example, instead of saying, “I want an iOS application that will geo-trip locations using REST based web services that are stored in a MySQL database and after some processing, sends an SMS message”, you might say, “I want to create a mobile app for taxi drivers to pick up fares within 1 mile of their current location”. Communicating in this method will allow the developer to present a variety options to achieve this goal and unlock solutions you may have never considered.
Require a Programming Test
Now it’s time to see your potential developers in action. Have the candidates take a programming test. Look at the requirements of your software project and develop a mini test that emulates those requirements. You can leave a little room for ambiguity to see how the developer proceeds when requirements may not be so clear.
Having developers do a short test, especially when you can’t meet them face to face, helps you really get a look at their traits and characteristics. Not only does it give you a good overview of their programming ability, but also how they will work with you, your team, and the project.
Choosing the right software project team can often make or break a project. For startup and small businesses, this is especially important where the failure of a project can lead to the failure of the entire business. So choose wisely. The extra time it takes to thoroughly screen a candidate is a worthwhile trade off for a successful delivery.
What other tips do you have for hiring the right software team for your project? If you have dabbled in the online hiring space, share your experience!
Launching a startup will most likely require you to outsource part of the work at some point during the initial building phase. Lack of readily available resources and skills make this unavoidable, especially in software development and design. But there are tons of opportunities out there to find this type of talent – almost 30% of the entire freelance market is made up of development and design pros. Whether you need a team to build out the product in it’s entirety or just added manpower, outsourcing this type of work is going to be far cheaper than hiring a full-time employee.
While hiring a freelance or virtual software team can offer many benefits, new challenges arise in trying to manage and collaborate with your team across locations. Often times, lack of communication and accountability in these teams can increase the already high failure rate of projects. But there are some things you can do to ensure your virtual software team stays in sync and is accountable for their tasks. Spotlight CEO Vincent Serpico goes on to explain each one in more detail in the video below.
Daily “Virtual” Scrums – Since most project managers are used to gathering the whole team for a daily meeting, this same process can be achieved for the virtual software team. Let all team members share what they did yesterday and what they will work on today. It’s a quick way to get the team communicating first thing in the morning.
Regular Status Updates – One of the biggest concerns for a project manager leading a virtual software team is losing track of them. They can’t see them in the building, emails and phone calls are easy to ignore, and time zones make it difficult. By having team members communicate frequent status updates of their availability, what they are working on, and progress, the whole team can collaborate better.
Daily Progress Reports – These reports are simply the daily meeting on paper. Having team members submit this short, free form report at the end of the day keeps them accountable for their work and still communicating with their team. The project manager can then properly prepare for the next morning’s meeting, keeping the duration short and getting the developers back to work.
While there is more to successfully executing with a virtual software team depending on the project, these three tactics can be easily implemented and quickly improve the team’s efficiency. Our company uses them for all our projects and even has the process streamlined right into Spotlight.
What other tactics have worked for you in executing a project with a virtual software team? Drop us a comment and let us know.
It probably won’t be known for several months the exact cause of the collapse, but it would be a pretty safe bet that a communication breakdown is somehow involved. The importance of effective communication and collaboration during an agile development project sometimes just isn’t realized until it breaks down.
It’s even more important in agile development projects with distributed teams. More businesses are implementing this strategy as a cost reduction and to expand their talent search outside the local area. But with this comes the challenge of keeping the distributed team on the same page and collaborating effectively.
This week’s Friday Findings offers a list of books for managing agile development projects with distributed teams. The authors are experienced and seasoned in the process, offering a great resource for your business to effectively use this strategy. On to the findings…
This book covers a 60-minute interview with Ambler where he discusses some great examples of how development teams are adapting agile methods to work in a global team environment. You will learn how to break down communication barriers to improve project team performance.
Eckstein discusses how to address the challenges of agile software teams working together over great distances. Full of several real-world experiences from other practitioners, this book will train you to form customized plans that fit your distributed team’s situation.
Written by three of IBM’s Scrum experts, this guide serves as basis for Scrum practitioners working in a distributed environment. The authors look at several real-world project examples and how to apply key Scrum practices in a distributed environment.
Global software projects are becoming the norm for many businesses that operate in multiple locations to take advantage of talent and cost savings. The question often comes down to whether they should implement agile tactics in their global projects. The authors break down agile implementations for distributed teams into five areas: motivation, transition, management, teams, and the epilogue, which offers future trends and research.
While not directly targeted at distributed teams, collaboration is one of the biggest keys to project success in a distributed environment. Tabaka discusses collaboration and facilitation techniques for agile software project leaders to get their teams interacting through the project lifecycle. More effective collaboration equals higher delivery success.
This book discusses the “Design for Hybrid Agile Adoption” approach in implementing successful agile approaches with distributed teams. Venkatesh covers various tactics in making agile development projects with distributed teams successful such as collaboration techniques, metric analysis, meetings and interactions, and many other factors.
Yassin creates an entire global software project scenario in this book and takes you through the whole thing. He looks at all the possible roadblocks that could be ran into when working on a distributed basis and solutions for those roadblocks. Collaboration techniques are discussed that address time zone, culture, familiarization, and trust issues that pop up in agile software development with distributed teams.
Techniques proven successful at electronics and software company Siemens AG are shared in this book about developing software on a global scale. The authors discuss how Siemens uses a high-level process framework of agile methods that fosters team building and effective team collaboration. Real-world examples of both successful and failed projects offer takeaways of what to do and what not to do for success in leading agile development projects with distributed teams.
In this book, Ebert covers best practices for managing software projects across borders. He discusses his own first-hand experience in executing projects across multiple locations, mitigating risk, and creating a highly effective collaboration environment for distributed agile teams.
Properly managing risk in a global software development project is a key consideration for any business looking for success. Using real-world experiences, this book provides several tools and techniques to manage the risk that arises in agile development projects with distributed teams. Hussey discusses how to gather insight into diverse team personalities in order to achieve trust and effective collaboration between team members, ultimately leading to success.
Every book has one thing in common (at least) and that’s effective team communication and collaboration. Agile software teams on a global scale can’t survive without it. Phone and email are typically not enough and a social network based collaboration platform like Spotlight offers can make a team that much more productive. It keeps everyone on the same page all the way through the project.
Are you an experienced project manager leading distributed teams? Share your experience and techniques to help the rest of us out!
Stay up to date with Spotlight’s latest content, news and special offers – Join our mailing list! (We promise not to use your email address for anything else and you can unsubscribe at any time.)
Requirements analysis is an important part of any software project. They get your project team started off on the right foot with the client’s requirements of the new software application. They describe the goals of the application and what the project is actually about.
Think of requirements analysis like the blue prints to building a house. You need the blue prints in order to build it the correct size, dimensions, etc for the house and requirements analysis achieve the same thing in a software project. They answer the ‘what’, ‘when’, and ‘who’ of the project.
So how do you build solid requirements analysis to get everyone on the same page and heading in the right direction? Here are 10 resources to help you out:
Think software requirements analysis can be done quickly or even skipped? Here are 13 common objections against requirements analysis and why you shouldn’t believe them. This article comes from a while back but still relevant.
The entire software project management process ties together from start to finish. Here’s an article describing how strong user stories will drive effective software requirements analysis.
Why doing requirements analysis is a critical first step in web design…and all software design and development.
When doing website redesign or thinking about developing a new application, software requirements analysis can be delivered in these 3 common steps.
Want to learn more about software requirements analysis or thinking about a career in business analysis? Here are 8 books that you should read.
Great quality software requirements analysis can often be the difference between a successful project and one that sees lots of waste. Here are 10 best practices to create great requirements.
There are several key questions to ask during software requirements analysis. This article highlights some of the more important ones that you can ask to avoid common issues that arise when starting a software project.
Getting software requirements analysis right is very important in allocating time and money towards the project. Here are 5 tips to get your requirements done right to send your project team marching towards the project goals.
Proper preparation using software requirements analysis can get your project off to the right start towards success. One of our favorite authors on business analysis and the importance of requirements is Barbara Davis, who is an expert at properly gathering requirements analysis. She’ll have a new book coming out later this year on specifically software requirements analysis.
We employ this technique when helping businesses with their software project management process which gives them a product roadmap of how their project will play out. Seeing this gives them a peace of mind knowing there is are goals and objectives clearly outlined for a successful project.
Have any other good tips for gathering requirements from customers and stakeholders for software projects? Leave a comment and let us know!
Software project management requires a versatile style of management that has to be adapted constantly. No longer is a pre-defined plan set and followed to a T. There are now twists and turns with requirements changes, new features, and unexpected issues throughout. The agile or lean process of development can help offset these challenges and is a very efficient method to turn your software idea into a polished product.
At Spotlight, we place an enormous amount of emphasis on our software project management process and making sure it’s as efficient as possible. This allows us to maintain weekly releases of Spotlight People & Project Manager (PPM) based off customer feedback and suggestions. We’ve maintained this practice all the way throughout the development of PPM and hence, wanted to share it with everyone else!
Coming soon to our website, we introduce TheVisual Guide to Successfully Managing a Software Development Project. This guide will take you through the entire process of developing your business application successfully, from idea to delivery. One of the biggest challenges for entrepreneurs and startups in getting their business off the ground is creating that first website, software, or mobile app. We’ve produced this guide to save you time and money in developing that software vision that is so exciting for your new endeavor.
Our guide takes you through the software project management process using a three-phase approach: hiring, planning, and executing. Let’s take a closer look at all three to give you a first peek into what the guide offers.
This first step in the three-phase approach is probably the most important. Hiring the wrong people to work on your project can set you back a long ways, both in time and financially. Our visual guide will show you how to clearly communicate your goals to potential developers, evaluate candidates through programming tests, and finally, the benefits to using a virtual team. An important thing to remember here is to hire a team that aligns with your software vision and goals, not just the one that is the cheapest.
Going straight into execution without planning your project is like going into a football game with no plays for the offense. Some people feel that the agile or lean methodology doesn’t require a plan. This is definitely not the case. In this second phase, we outline how to form the initial plan to provide your team with a direction towards the end goal. By all means, use the agile methodology during development, but formulating a plan helps get you to that development phase.
Our guide will show you how to implement requirements analysis, wire frames, and use cases to get that software vision on to paper. Setting up goals, sprints, and tasks is also done in this phase and we’ll walk you through a strategy that keeps your project on track.
Now for the fun (and last) part in our three-phase software project management guide: executing. This is where your software app starts to take shape. Managing a software team through this final critical phase can often determine whether the project is actually delivered on time.
In this section, our guide offers advice on how to turn your team into a well-oiled machine through effective communication and accountability. Using daily scrums, frequent status updates, and regular progress reports, it will feel like your entire development team is working in the same office (if they aren’t already). This keeps everyone on the same page, including all project stakeholders, to move the project along without any major bumps.
Software project management is not easy. Things change constantly when creating software and the ability of a team to be agile (see what I did there?) will determine its success. That’s why we’ve created this visual guide to successfully managing a software project, to help you hire, plan, and execute your project in the most cost and time efficient manner possible.
Interested in when our new visual guide will be live on our website? Contact us or sign up for our mailing list at the bottom of our homepage and be the first to know, along with other news and special offers!
Recently, a new approach to managing project teams has emerged combining traditional project management techniques with social network principles. Social networks allow project teams to communicate and collaborate on demand and in real-time, leading to a new management method called “Social Project Management”.
At Spotlight, we found the value of using social networks to keep our project teams communicating frequently during a project, especially since our entire company is virtual. But instead of using each social network individually, we integrated these social media principles right into our people and project manager app. Now development teams all over the world can stay in contact through the integrated social media features and project management techniques from their computer, mobile, or tablet device.
We aren’t the only ones jumping on the social project management trend. Thomas Kennedy, founder of www.PmBookClub.com is currently holding a business study on Elizabeth Harrin’s book Social Media for Project Managers. They go through the entire book in a study outline to help you take advantage of social media for project team collaboration.
In this week’s Friday Findings, we look at how social project management is being used for project teams to help them communicate better.
Social project management works best when a good balance is found between the social media tools and traditional project techniques. Here’s some keys to balancing the two and using social media to improve collaboration in “extended” project teams that comprise all stakeholders.
Here’s a great article from MindJet with a look at social task management to help conquer time, budge, and scope challenges.
As you can see, social project management is a trend that is gaining popularity. Spotlight integrates social principles into all aspects of our people and project manager app to help keep our software teams on the same page. If you are interested in seeing Spotlight PPM’s social integration live, join our webinar next Wednesday, May 22nd.
Has your business integrated any social media methods into project management? Let us know how it’s going!