This document provides an overview of project management and the changing landscape of software project management. It defines what a project is and what project management entails. It then discusses traditional sequential models like waterfall and more iterative models like spiral and agile. Agile practices are based on values like collaboration, working software, responding to change. Specific agile frameworks like Scrum and Kanban are covered. The document also discusses challenges of scaling agile and approaches like SAFe, Nexus and LeSS. It concludes by noting the transformation in project management tools.
1. Pramesh Vaidya
CSM, CSPO, MBA, Principal PM at LogPoint
pramesh.vaidya@gmail.com
Changing Landscape of Software
Project Management
2. Introduction to Project
It's a temporary endeavor undertaken to create
a unique product, service or result.
Temporary: defined beginning and end in time
Unique: specific set of operations designed to accomplish a
singular goal
3. What is Project Management?
Project management, then, is the application of
knowledge, skills, tools, and techniques to
project activities to meet the project
requirements.
6. Waterfall Model
Benefits Drawbacks
Easy to understand
Clearly defines deliverables and
Milestones
Emphasizes the importance of
analysis before design, and
design before implementation
Adopted for well-specified parts
that can be outsourced
Not very adaptable to changes
Focuses on knowing all the
requirements up front
Testing occurs late in the
process
Client does not see the
product until close to the end
of development
10. Agile Practices
Agile Practices are based upon the Manifesto for Agile Software
Development
• Customer collaboration over contract negotiation
• Working software over comprehensive documentation
Agile Manifesto
• Individuals and interactions over processes and tools
• Responding to change over following a plan
11. Agile Principles
Our highest priority is to satisfy the customer through early and
continuous delivery of valuable software.
Business people and developers must work together daily
throughout the project.
Deliver working software frequently, from a couple of weeks to
a couple of months, with preference to the shorter timescale.
Welcome changing requirements, even late in development.
Agile processes harness change for the customer’s competitive
advantage.
12. Agile Principles
Build projects around motivated individuals. Give them the
environment and support they need, and trust them to get the job
done.
Working software is the primary measure of progress.
Agile processes promote sustainable development. The sponsors,
developers, and users should be able to maintain a constant
pace indefinitely.
The most efficient and effective method of conveying information to
and within a development team is face-to-face conversation.
13. Agile Principles
Continuous attention to technical excellence and good design
enhances agility.
The best architectures, requirements, and designs emerge from
self-organizing teams.
At regular intervals, the team reflects on how to become more
effective, then tunes and adjusts its behavior accordingly.
Simplicity, the art of maximizing the amount of work not done is
essential.
16. Other Agile Frameworks
Extreme Programming (XP) Test-Driven Development (TDD)
Feature-driven development (FDD)
Lean Software Development (LSD) Adaptive system development (ASD)