• Embed Doc
  • Readcast
  • Collections
  • CommentGo Back
Download
 
Underbelly of Software Project Management ToolsIntroduction
Tiger is a strong, ferocious and carnivorous animal. The only weak part of its body is itsunderbelly. The easiest way to kill a tiger is by attacking its underbelly but the hitch inreaching the underbelly is that it is protected from attacks by tiger’s claws, two-inch longcanines, the powerful paws and its well-honed killer instinct.The tools for managing software development projects in the software industry are alsolike the tiger – powerful yet with an underbelly. The purpose of this article is to look atthat underbelly.Software tools that are being used in the software development project management fallinto two categories, namely,1. Scheduling and tracking tools, such as MS-Project and Primavera2. Document Management tools such as Whizible and DigiteLet us look at the underbellies of these two categories.
Pedigree of Scheduling and tracking tools
After the success of PERT in the Polaris Nuclear Submarine development was wellpublicized, PERT became darling of the industry and it was adopted in a big way. WhenPCs started having respectable graphics capability, PERT/CPM based packages aredeveloped and offered. The first one I saw was the HTPM (Harvard Total ProjectManager). I loved it as it allowed me to draw network diagram interactively. Then itbecame HTPM II and HPM (Harvard Project Manager) and then disappeared. Primaveraalso came about the same time and it took root in the construction industry and is themajor player in that segment. Then came a plethora of packages from India but nonecould make much dent in the market.Then came MS-Project by studying and improving all the existing products and thenbringing out a killer app, in the true tradition of Microsoft. MS-Project is more or less thede-facto standard for project management tools in the software industry so much so thatPMI (Project Management Institute) made it a subject of study for getting certified asPMP (Project Management Professional). I am amazed at this decision – are we sayingthat those who are proficient in Primavera cannot be certified as PMPs?Present market leaders are MS-Project and Primavera.
Pedigree of Document Management Packages
Unlike in other industries, in the software development industry placed very high valueon certifications, such as ISO 9000 (International Standards Organization’s 9000 seriesof standards) or SEI’s CMMI (Software Engineering Institute’s Capabilities MaturityModel Integrated). In order to obtain certifications and to maintain them, theorganizations need to gather evidence of continued conformance to the standards / models of the certifying organizations, especially the ISO and SEI. The onus of
 
maintaining these documents is mainly with the project manager and with the qualitydepartment of the organization.While MS-Windows and UNIX both allow secure management of documents, projectmanagers wanted tools to manage the project documents. Microsoft obliged with VSS,which can be used for document control though its original intent was to control the codeunder development. Others too followed in quick succession. They were titled SCM(Software Configuration Management) tools and not as Project Management tools on theone hand and are not directly aimed at making the certification / surveillance auditseasier to face. Couple with this, the penchant of the software developers andmanagements to see every thing in a browser and having it on the Internet / intranet,gave rise to new breed of document controllers under the garb of Project Managementtools.These packages are mainly document controllers and integrate MS-Office tools such asWord, Excel and MS-Project. They also provide mechanisms to manage the workregister and set of rudimentary metrics such as schedule variance.Software estimation functionality is almost non-existent in these packages. Component-based tracking is also absent.
Task Centric Vis-à-vis Component Centric of Scheduling and tracking tools
These scheduling & tracking tools are based on PERT / CPM (Program Evaluation andReview Technique / Critical Path Method). PERT came out of research background fromthe development of Polaris project from the US Department of Defense and is intendedto handle the uncertainty inherent to the research project and predict the completiondate. CPM came out of construction industry and is intended to predict the completiondate and possibly to pre-pone the completion date by infusing more resources. Bothtechniques are based on network diagrams. The underlying premises of these twotechniques are that1. A project comprises of a finite number of activities (tasks, if you prefer)2. A network diagram connecting all the activities between start activity and activityis central to the techniques3. Completion of those activities would complete the project4. Some activities can be performed concurrently with each other and some need tobe performed sequentially5. There could be several paths from the start activity to the end activity in thenetwork diagram and the path that takes the longest duration is called the criticalpath6. The activities that fall on the critical path are called the critical activities and anydelay in the completion of critical activities would delay the project7. The activities that do not fall on the critical path would have some slack (float)and delaying their completion date within the available slack would not delay theproject8. Activities consume resources including time (measured in duration not effort)9. The sum of the cost of those resources is the cost of the project10. All the activities have precedence relationships with each other11. The project has a definite start and a definite end
 
As you can see, “activity (task) is central to these techniques! So these techniquesrevolve around tasks, scheduling tasks, determining which tasks can be delayed andidentifying the resources needed for those tasks, tracking the completion status of tasksand progress of the tasks that are started but not completed.This is perfect for construction scenario as that industry is activity based – there wouldbe large number of disparate tasks. Quality assurance is basically “in-process”inspection. Testing has very limited application – limited to testing the electrical wiringand plumbing and even there, it is cursory. In-process inspection is crucial. The qualitycontrol inspector works along side the workers performing tasks ensuring that the tasksare performed properly. For example, while pouring concrete, quality of materials andmethod of mixing, quality of the mix and the method of pouring have to be ensured onthe spot and immediately. Once poured, the inspector has no role – reversal or the workresults in loss of costly resources like materials. Quality assurance is not a sequentialseparate activity but an embedded and concurrent activity. Thus, if we have an activity“Pour Concrete” it includes all relevant quality control activities too. Quality control is aminiscule portion of the activity.Now cutover to software development industry – software development hinges oncomponents like screens, reports, stored procedures and so on. The tasks are few suchas requirements, design, coding and testing with lion’s share going to coding and testing.Construction of these components, integrating them into a product and testing it toensure that desired functionality and quality are built-in, completes the project. Herequality control is sequentially performed. That is, we construct a component like screen,then we subject it to peer review and independent testing. Then integration of all thecomponents and then, final testing comprising of multiple tests is carried out byindependent peers. Quality assurance consumes significant amount of time and in somecases, quality assurance takes more time than performance itself.So software development industry tracks the project using components mainly and nottasks!Second, activities in construction industry consume resources (materials, specializedequipment etc.) besides human resources. Software development industry, the mainresource is human resource and other resources are minimal or absent.PERT/CPM based tools do not facilitate component based scheduling. It does notfacilitate (easily I mean) scheduling quality control activities against the componentexcept as a separate task unrelated to the component. This renders tracking bycomponent difficult.Therefore, these tools that are based on PERT/CPM, being task-centric are not the bestfit for software project management.We circumvent this major hitch by adding quality assurance activities also as separatetasks. Well, this is a workaround but surely not the most suitable or appropriate forsoftware development projects.
Duration Centric Vis-vis Effort Centric
of 00

Leave a Comment

You must be to leave a comment.
Submit
Characters: ...
You must be to leave a comment.
Submit
Characters: ...