The Practical Approach to Project Management
July 24, 2008 | Author: admin | Filed under: Time Management, Scheduling, Activity Definition, Activity Duration Estimate, Activity Sequencing, Resource Leveling
The Practical Approach to Project Management
By Neeraj Choudhary
With variety of applications and hundreds of web development framework and craziest client demands, one of the most common questions I hear from project managers are:
- How do I determine how long a project should take?
- How many resources should we introduce in a project?
- Which PM tool to use?
- Which development methodology to use?
- How do I deal with nuisances of development?
Many project managers use the old-fashioned gut check method, in which they rely on past experiences to provide guesstimates for the previous questions. While this method may occasionally work for smaller projects, it becomes more difficult to accurately execute as the project grows in size and complexity.
The following methods can guide you in determining your project schedules and cost with a higher degree of accuracy and help your organization efficiently plan and track projects.
Activity definition
Activity definition is when you break down a project into the individual tasks that are necessary to produce the project’s deliverables. Here you define the modules to a very granular level and sit/decide in presence with a technical architect manager upon the timelines as most of the time in open sources you have to be very alert and updated on the latest developments.
For example, in rails (MVC framework) you have the direct GEM/Pluggin to achieve a set of functionality in no time so if you are not aware and your client is aware then you are in mess, so be updated on these fronts.
There are many ways to go about this, but I tend to use process decomposition through a Work Breakdown Structure (WBS); it allows me to break down each element of the work packages into a scheduled activity by team member based on who is responsible for the package. At this point, you can also create the activity lists, which help define what needs to be done later.
Note: I leave some tasks unallocated as I want people to come forward and accept tasks and behave proactive. I am using Redmine (Open source PM tool based on Ruby) and it allows me to define a particular task with related material like, test cases, use cases, scenarios and conditions, wireframes etc and also allows me to associate these tasks with others.
Activity sequencing
Activity sequencing is when you decide the order in which the project’s activities need to be completed. Here I am not going with big technical terms like arrow sequencing, its just straightforward for me like design, development, integration, testing, and deployment.
Since the tasks is already divided through a WBS on a very granular level I put up these modules and sub modules before the client to present me with his/her priority List in a MOSCOW fashion.
After I have the lists I concentrate the Musts and Shoulds first.
Activity duration estimation
Many factors contribute to determining a project’s activity duration; these factors may include business needs or situations that have legal requirements.
To estimate an activity’s duration, start by using your Project Scope statement in order to understand any project constraints or assumptions that could impact your estimating. You can base your estimates on similar activities that have occurred in the past (analogous estimating), or you can estimate based on how long something typically takes to accomplish (parametric estimating).
You may have a customized template for this estimation. Since you already have all the tasks broken down and a clear idea of the code/previous code that you are going to use, you can give a clear estimate on the timelines and add 20% as the contingency.
You can also estimate an activity’s duration by using the Program Evaluation and Review Technique (PERT) formula. PERT weighs the average of the pessimistic (P), most likely (M), and optimistic (O) estimates for an activity. For example: PERT formula = (P+4M+O) / 6.
Activity resource estimating
Once you know which tasks to complete, it’s time to figure out: how many resources will you need, when will you need the resources during the project, and how long you will need the resources.
You shouldn’t need to do much guessing because you can rely upon your Organizational Process Assets, expert judgment, published existing data, or bottom-up estimating when validating your resource requirements. All of these methods are valid ways to put firm numbers in place when determining your resource needs.
The team plays an important role so before assigning any resource make the competitive resource matrix where you will be estimating the intellect and competence of a resource based on their expertise and experience and each resource perform on a different level.
Put extra/backup resources with active involvement as you never know when they are needed as there might be changes that some people are not able to continue and knowledge transfer is not done.
Schedule development
During schedule development, you bring together information from activity sequencing, activity duration estimation, and activity resource estimating to help build your project schedule, as well as your project schedule baseline.
If there are any issues at this point in your schedule, you can perform resource leveling or schedule compression. Resource leveling will help you manage your resources during periods where you may have initially found them to be over/under committed. Schedule compression will show you the impact of adding more resources to any critical path items or how running tasks in parallel can benefit the schedule.
Schedule control
While schedule control is part of the necessary Integrated Change Control process, you must also know where your project is at any point in time. This step will help you define and communicate how to handle things that affect the project’s timelines. Any changes that may impact areas such as the schedule baseline or approved change requests need to be handled via this process to ensure you can track their significance on the project.
Note: Take all approved change requests in account so that your schedule is not out of control and adjust your schedule accordingly.
Summary
During the course of any project, you will struggle with questions about what to do, how to do it, and when to do it. By taking a more structured approach when defining and answering your questions about time management, you will put yourself in a better position to come up with a plan that you can explain and execute.
Stay small and be agile in order to succeed: if you have an application with three different modules “x”, “y”, “z”, differentiate them separately along with their association and assign separate team/people for each module. This way the bigger picture is small and clear and the overall picture is still big and clear.
Neeraj Choudhary
Practicing Functional Project Manager (Agile-DSDM)/Business Analyst
Mastiff Tech Pvt Ltd (www.techmastiff.com)
Currently associated with Mastiff Tech a Web 2.0 consumer Internet & Mobile product Development Company with a development center in Mumbai, Company’s primary focus is into Online Media, Online Travel, Online Retail, and social networking space, customized products, facebook applications and Mobile 2.0.
Email: neeraji2it@gmail.com , neeraj.choudhary@techmastiff.com
Related Articles
- The Purposes and Methods of Practical Project Categorization - Part VIII - Conclusions
- The Purposes and Methods of Practical Project Categorization - Part I - Introduction
- The Purposes and Methods of Practical Project Categorization - Part VI - Multi-dimensional Classification of Projects
- The Purposes and Methods of Practical Project Categorization - Part V - Project Categorization Methods
- The Purposes and Methods of Practical Project Categorization - Part IV - Proposed Matrix for Systematic Categorization of Projects
No comments yet.
feel free to leave a comment
Comment Guidelines: Basic XHTML is allowed (a href, strong, em, code). All line breaks and paragraphs are automatically generated. Off-topic or inappropriate comments will be edited or deleted. Email addresses will never be published. Keep it PG-13 people!
XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>
All fields marked with " * " are required.







