An Easy Method of Tracking Software Development

70

By kittythedreamer

Initiation into the World of Software Tracking

Last August, I was thrown into the world of Software Development, without having a speck of knowledge on the topic. My boss enthusiastically told me that he needed my assistance with tracking the development of a new software program, which would be used by an entire nationwide franchise network (about 250 franchises total plus corporate employees). Before this new and tedious task was entrusted to me, I had been using my people and paperwork skills, performing simple project coordination for commercial duct cleaning. And before that? Well, thrift store retail and Starbucks coffee about covers my level of experience.

As you can guess, I was pretty nervous about taking on a task so new to my mind and work-life; however, I was also very excited and liberated to have a fresh project with such great potential sent my way. Being that I was so new to the world of software and any sort of supervision/tracking of a project, I sort of had to learn on my own how to properly and thoroughly track the progress of this new software program. I had a few key co-workers who aided me in the development of my tracking process, though...which definitely helped me find my way. But you can only do what works best for you, so take this hub and use it to your advantage, but you will most likely have to tweak things here and there to make it perfect for your project tracking.

The Primary Step: Tracking Spreadsheets

The first step to tracking a software program's development is to build yourself a tracking spreadsheet. I use Microsoft Excel and it works fabulously. I set up different worksheets: the first worksheet is titled "Action Tracking by Module", the second worksheet is "Action Tracking by Deadline", and the third worksheet is "Completed".

The Action Tracking by Module worksheet consists of each task that the programmers and designers are working on at the moment and they are organized/listed alphabetically by which module in the software program the task is related to. For instance, if there is a task such as the following: "creation of extra field for Drivers' License Number", goes into the module "Employee Record".

The way I have my Action Tracking by Module worksheet set up - the columns are in this order (left to right): Date Initiated (the date the task was first initiated), Module (the section of the program), Action Step (the task that is open), Assigned To (this is handy if you have more than one programmer/designer on the job), Deadline (keep a due date on everything), Notes (any status notes you'd like to keep track of), and also Percentage (what % of the task the programmer/designer has completed thus far). In the very beginning of the tracking process, I did not have any color coding on this worksheet because the tasks were not very many at that point; however, now that we are over six months deep into this software project I have added color coding to keep it simpler for myself and the programmers that view my spreadsheets. The color coding I use separates each task by priority. For example, the highest priority tasks are in a burgundy color (I didn't use bright red because I feel it is a little too angry in a spreadsheet), the middle priority tasks are in an orange shade, and the lowest priority are in a peaceful light blue color (an example of my spreadsheet can be seen below). Another type of color coding that you could use in your spreadsheet is color coding by module. This works especially well if you have many different modules with many tasks assigned to each. Experiment with both...find what works best for you and your programmers/designers.

By having a tracking spreadsheet, you will be able to easily and efficiently track the percentage of completion on each task and you will be able to move the completed tasks from their open status to the "completed" worksheet. This keeps a record of what tasks are still in progress and what tasks have been accomplished. If you have a Notes section for each task, this is where you will write notes on the status of the task. For example:

If the task is, "create and send report analysis for all necessary reports to be built in system", your Notes section might have, "3/15 (date) - Johnny to send report analysis for approval".

This method ensures that you are aware of what stage of the task is occurring and how you will send the appropriate reminders and follow-ups to aid in moving the process forward. Which brings me to the next step in tracking software progress.

Example of Color-Coded by Priority Tracking Spreadsheet
Example of Color-Coded by Priority Tracking Spreadsheet
Source: kittythedreamer

The 2nd Step: Continual Follow-up & Reminders

The second step, and a very critical one might I add, is to continually follow up on open tasks and modules by sending reminders to the programmers and/or people involved in the Software Development. When I say send "reminders", I mean email them directly and copy anyone who is higher up on the food chain besides you so that they see where the progress of the program is at any given time.

Sometimes if I do not receive a response from a particular programmer on a reminder that I have sent a few times, I pick up the phone and call them. Or if I work with one of them in the same building, I take my happy butt down to the programmer's office and ask them directly. Once I have talked to that programmer personally, I follow my conversation up with an email reviewing whatever it is that we discussed during our conversation...this way, you always have the status documented in writing. No one can come back and say, "I never told you I would have that done by such and such date.", etc.

When you are tracking the progress of a program, part of your job will most likely be to keep the programmers and designers focused on their tasks. In this case, you will want to continually follow-up on every item that is open...even if it means sending ten emails a week on the same topic. Yes, they may end up being HIGHLY annoyed by you but at least you are doing your job and making sure that you are on top of it.

The 3rd & Final Step: Verification of Completed Tasks

The last step in my tracking procedures is to verify the completion of assigned tasks. The reason this is so important in finalizing a software program is because sometimes the programmer doesn't always fully complete the task that they claim to have completed. This doesn't necessarily mean that they "lied" to you, it just means that maybe some sort of programming error occurred in between or maybe they misunderstood exactly what the task entailed.

If the programmers and designers you work with are anything like the ones I work with, well...we know for a fact that they are EXTREMELY busy people, so I think it actually makes it easier for them to remind them of what they need to do and double-check that their work is functioning fully within the program. If there is a break in the code somewhere or some sort of error that you receive when checking their work, be sure to let them know immediately so that they can fix the issue and so that you can move that open task from the Action Tracking Spreadsheets to the Completed Spreadsheet.

Comments

Juan Alzate 14 months ago

One issue when outsourcing development is the fact that the development cycle doesn't take place inside the company. In an ideal situation, a Research and Development team would start by completely outlining the new application with detailed schematics of what each screen is going to look like and what it's going to do, and who is going to develop which section and in what order, before a single line of code is written.

The problem with third party developers is that they make their money by providing a fast development, so they have to limit the number of man hours or the price of the project will become prohibitive (while an in-house R+D department wouldn't have that kind of constraint), so a lot of times the design is overlooked, and there is not a separate Quality Assurance or Testing team that has a copy of the Design documents and are paid exclusively to verify that each module that the development team releases is doing exactly what the document says it has to do. In a third party development company, a lot of times the testing is limited to the same programmer running a single test on the screen - but since development data is not real life data, the possibilities of overlooking the complexity of real life scenarios are incredible.

kittythedreamer profile image

kittythedreamer Hub Author 14 months ago

thank you for that intelligent input, juan...as usual! obviously in my case the time i can spend on tracking the program's development is not as limited as other companies' tracking time. this hub was written for people like myself, who if given the opportunity, would need to develop their own means of simple tracking and would have the extra time at work in which to do a complete tracking process.

by the way, you're awesome! :) thanks for following my hubs...as correct or incorrect as they may be!

kittythedreamer profile image

kittythedreamer Hub Author 14 months ago

oh, yeah and i actually thought about how the development process would work more effectively, as you mentioned with the outlining of the work previous to starting the design of the program and also laying out what each page would look like and which order to work on each page. unfortunately, things and people aren't always as organized as that...but boy, wouldn't that be a software developing utopia of sorts? :)

Gareth 6 months ago

Hi there...you may want to look at this site: www.webactionhero.com. It has all the tools to better track all these actions without using flat spreadsheets. Would welcome your feedback and support! Thanks

Submit a Comment
Members and Guests

Sign in or sign up and post using a hubpages account.



    • No HTML is allowed in comments, but URLs will be hyperlinked
    • Comments are not for promoting your Hubs or other sites

    Please wait working