Thursday, February 22, 2007

SDLC and PMLC

The recent spurt of Fortune employers scouting for IT Project Managers with PMP certification has taken me by surprise. I started wondering that why these employers would need PMPs to do Software Project Management when they can 'sustain' with SDLC experts or is it just another certification fad!!

Project management as a discipline can be used to handle situations in almost any domain - from building houses, to planning your holidays, and obviously developing software. So Project Management is valuable to focus as an established mechanism (a science??) for getting work done. It has processes (Rita Mulcahy) and should be used for continuous improvement of PM processes and for capturing knowledge to improve the performance of the Project Team. Concern of project management include project planning, risk assessment and management, issue management, schedule management, status assessment and reporting, calculating costs etc.
SDLC is another specific discipline used only for the development of software. Concerns of SDLC involves requirements gathering, business modeling, systems architecture and design, development, integration, release, maintenance, etc.
The processes involved in SDLC definitely needs to be managed and data from these processes need to be collected for future improvement and client satisfaction.

The similarities are many in both of these methodologies; PM methodology recommends breaking down tasks into chunks of activities to be completed in definite or overlapping phases. SDLC prescribes the phases as Analysis, Design, Code and Test, Deploy . However its important to understand the differences;each of them has independant sets of metrics, and SDLC is much more specific than PMM. RUP, Agile and other software development methodologies has Project Management as a separate thread to address this unique overlap. RUP even also has no prescription for contract/vendor management.

At the end of day, it makes more sense to mix the PM and SDLC methodologies based on cumulative experiences, company culture and and come up with blended ( or chai latte) approaches (continuous improvement) that handles "who", "how", "when", "why" of "what" needs to be done in the context of IT Project Management. Also with most of the companies now agressively being involved in ourtsourcing and offshoring and multi-vendor contract development, software Project Management demands a new level of acuity and ingenuity than earlier. Again, SDLC supports only development of software systems, a project usually involves lot more than just developing software; customer interaction, business process reengineering, marketing a new product/service etc. Knowledge of generic PMLC helps to coordinate all these other activities.
So having a Project Management certification along with RUP or Six Sigma is not bad at all for your next career move!!

9 comments:

manuvns said...

waht you have not added is the ITIL part of IT infrastructure management which is the hottest in outsourcing trends .

Anonymous said...

Nice one.Hope your prospective employers are listening!

Anonymous said...

There is a basic difference between IT Project Managers with a technical background and those who are PMP certified with no technical background whatsoever.

There definitely is a PMLC and at some point in the execution of the PMLC, the SDLC kicks in. A "true" project manager would know when to switch to the SDLC and still manage a project from that point on. However, a "non-technical" project manager tends to regress into a functional role and ends up as a Project Administrator, which incidentally rings the death knell for the project.

Project Management does not seem to be a recognized field of endeavor in India at the present time. A quick look at the massive number of failed outsourced projects tells the story. And why is that so? The simple reason is that although there are PMP certified Project Managers in India, their knowledge is primarily academic, coupled with a non-technical background whereas their experience with working in a project environment is based at a Task level. This leads to several problems when they have to interface with the Prime in the US.

Speaking from experience, the Indian team had never seen a Project Plan, never mind MS-Project. They were not accustomed to recognize the difference between an activity and a task and paid scant importance to Start and End dates for tasks. A project manager in their minds is non-existent or is a non-technical hindrance at best. Their vision does not go beyond a (technical) Task Lead on whom they depend on to solve technical issues and whom they see as a source for the "next task". The concept of working as a member of a project team is totally alien to them.

We figured why this was so when we visited the work site for our project in India. What we saw were large rooms with long rows of tables (not desks) joined end-to-end and mounted with desktops; a veritable software churner (or factory, for want of a better term). That explained it all. I am sure that similar sights will be evident if we were to visit the Philippines, Ireland, Russia, Poland, or any other East European or South East Asian countries.

Technically, Indians are pretty competent but project management and working in a project environment is a whole different story.

Project Management Software said...

Depending on your need, either can work wonderfully in meeting your requirements. But before starting to use that, the entire team should be taught how to use it and encouraged to use it as much as possible. The main reason for the failure of PMS is not the software’s design but lack of participation from all the required members – something that only management can enforce.

Project Management Software said...

Under this project, an automated HMIS has now been installed in four hospitals. Part of the project also involves developing a generic Tanzanian version of Care2X, an open source HMIS. ELCT programmers are, therefore, cooperating with the University Computer Centre (UCC) in Dar es Salaam, Tanzania’s capital, to adapt the software to Mfumo wa Taarifa za Uendeshaji wa Huduma za Afya (the Swahili name for HMIS) – the government health registration system.

IT Support Santa Clarita said...

Project management is the discipline of planning, organizing, and managing resources to bring about the successful completion of specific project goals and objectives. It is sometimes conflated with program management, however technically a program is actually a higher level construct: a group of related and somehow interdependent projects.

Nathaniel @ project management certification said...

You have successfully differentiate Project Management and SDLC, which somehow gives me a headache on how they were to use for I was looking at their similarities.

Thanks a lot for the post. Hope more people will be able to see this post so that they won't have any confusion about both!

Unknown said...
This comment has been removed by the author.
Unknown said...

I like to divide and conquer and so think of the PMLC and SDLC as two concentric circles/cycles. The inner cycle is the SDLC which represents the IT work (i.e., need/problem analysis, requirements analysis, architect/design, etc.). The outer cycle is the PMLC and represents the PM work (i.e., scope mgmt, time mgmt, cost mgmt, risk mgmt, etc.). The PMLC bounds the SDLC. The SDLC work is excuted sequentially by SDLC phase. The PM work is executed repeatedly on top of each SDLC phase. Check out www.addtis.com for an overview on applying the PMBOK and SDLC processes on a software development project.