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!!