Project management is all about making things happen. When it comes to software development, a project manager can (and should) be involved in every step in the Software Development Life Cycle and even some steps outside of it, such as pre-sales, client meetings, and post-project plus/delta reviews. In this post, V-Soft's Barney Edwards explains some critical beenfits that project managers will bring.
In my experience, being a project manager is all about problem solving and removing barriers that my teams may encounter through communication and creative thinking. Adding value to the SDLC could mean writing a statement of work based on requirements gathered from a client, manually testing the latest iteration of a website, sitting on scrum calls and organizing user story priority, or walking down the hall and having a quick chat with the sales team. Sometimes adding value simply means shutting up and getting out of my team's way. A great project manager knows when to take charge and steer the project while also knowing when to let go and allow your teams to drive.
What is the SDLC?
According to Techopedia, "The software development life cycle (SDLC) is a framework defining tasks performed at each step in the software development process. SDLC is a structure followed by a development team within the software organization. It consists of a detailed plan describing how to develop, maintain and replace specific software. The life cycle defines a methodology for improving the quality of software and the overall development process."
How Do Project Managers Add Value?
Project managers are many things. When it comes to the SDLC, there are dozens of roles that a project manager must take on. Here are only a few of the examples:
We are the Single Point of Contact (PoC) for Development Teams and the Client
Project managers are the hub of communication in a project. We coordinate meeting times and locations, take minutes of meetings, reiterate requirements to developers and clients, and even translate developer jargon to layman terms for clients. Developers are notoriously introverted, so being able to drag information out of them and relay that to clients is a key skill in our toolkit.
We Uphold Quality, Consistency, and Product Delivery
SDLC projects require a team of developers, QA personnel, technical leads, and client stakeholders. Sometimes there are multiple teams of third party developers. Having a single point of contact for all these groups helps to ensure that the big picture goals remain intact during all phases of the project.
We Ensure SDLC Standards are Upheld, Such as ISO or CMMI
The International Standards Organization (ISO) and Capability Maturity Model Integration (CMMI) are two standard ratings and guidelines given to organizations that develop software, who are able to show a dedication to a proven process for SDLC. It’s a project managers job to make sure these standards are upheld by the teams.
We Document Everything
Starting with business requirements and ending with plus/delta reviews, it is a project manager's job to either create or ensure the proper documentation gets completed. Good documentation can make or break a project. I’ve seen hundreds of extra development hours happen because of poor documentation during the requirements gathering phase. Proper documentation not only keeps the organization certified with industry standards, but helps everyone from stakeholders to end users have a good, working knowledge of the software.
We Manage People and Teams
Organizing and documenting is all well and good, but until the machines take over and people are not involved in writing code, there will be a team management element involved within the project manager’s daily tasks.
Knowing your clients and teams on a personal level helps move the project along. Remembering that Prasad is getting Married in May and taking two weeks off, and mitigating that risk by assigning him to give good knowledge transfer to a back-up, could mean all the difference to hitting a deliverable deadline. Likewise, knowing that the main stakeholder will be taking time off during the User Acceptance Testing phase could also derail the project.
Getting to know the team dynamic is critical for communication and delivery. A good project manager follows all the right steps and processes; a great one knows how to manage people on a personal level, and in that way, gets the most out of their teams and clients.