Resource Management in Software Project Management - Part I

Article by chemuturi (1,138 pts ) , published Feb 19, 2009

This article deals with management of resources in software project management

Introduction

Resources are always limited, not just in software development projects, but projects all over. Decisions to go in for software development are taken only when business demands are not met by existing methods of working. Pressure mounts on software project management to complete the project ASAP. That pressure limits the time available for project execution. Human resources and computer resources are always limited as they service multiple projects. Therefore, the bonus is that a software project manager to marshal his resources carefully, and use them diligently, to achieve the objectives set for the project. Second, the feasibility of deploying more resources to reduce the calendar time has limited applicability in software development projects. Therefore we need to manage the available resources effectively.

We use the following resources in software development –

  1. Time
  2. Human Resources – most crucial of all the resources
  3. Computer Resources
  4. Money

Classification of Resources

Resources can be viewed from four standpoints –

1. Availability

  • Recurring – such as human resources that are available in the same quantity day-after-day – spending these resources does not deplete them
  • Non-Recurring – like time and money – spending these resources depletes them

2. Place of availability

  • Static availability – available wherever they are situated – they can not be moved from place to place – such as computer resources
  • Dynamic availability – these resources can be moved from place to place – such as human resources and money

3. Elasticity

  • Elastic Resources – their supply can be increased or decreased – such as human resources and money
  • Plastic Resources – their supply can not be extended, such as time

4. Sharability

  • Dedicated resources – these ought be dedicated to the project for the required duration – such as computer systems, and programmers
  • Shared resources – these are resources that are needed for short durations but would not be utilized for the entire duration of the project – such as DBAs (Database Administrators), Programming Language experts, Functional Specialists etc.

Skill-sets needed from the Resources

We need different skill-sets from the human resources required for the software development projects.They are –

  1. Programmers – to develop the software programs needed for the project – experts in the chosen programming language
  2. Graphic Designers – to design the graphics and the web pages / front-end required for the project
  3. Database Administrator – to design the database and assist the programmers in optimizing data retrieval queries so that the response time would be shorter
  4. System Architects – to develop the software architecture for the project
  5. System Integrators – to integrate various components of the project and ensure that the end product is built conforming to the specifications
  6. Functional Experts – who are experts in the application domain of the project

We perform the following resource management activities –

1. Planning Activities

2. Utilization Activities

  • Allocation of resources to various activities
  • Ensure the activities are performed

3. De-allocation and Release Activities

  • Performance Appraisals for human resources
  • Reconciliation for monetary resources – planned Vs. actual utilization
  • Document lessons learned in planning and utilization of resources including best and worst practices
  • Release resources

We'll look at each of these sections in detail throughout this series.

 
Subscribe to Project Management
RSS
Get free weekly updates, directly to your inbox.
Browse Project Management