====== What is Project Management ====== ===== Introduction ===== Project Management is the practice of planning, organizing, leading, and controlling work to achieve a specific goal within a defined timeframe and budget. A project is not simply "doing work." It is a temporary effort created to deliver a unique product, service, or result. Project Management helps teams move from: Problem or idea → Planning → Execution → Delivery → Closure Without project management, teams often experience: * unclear goals * missed deadlines * budget overruns * duplicated work * communication problems * low quality outcomes Project Management provides a structured way to reduce uncertainty and improve delivery success. ----- ===== Formal Definition ===== According to PMI (Project Management Institute): > Project management is the application of knowledge, skills, tools, and techniques to project activities to meet project requirements. This definition contains several important ideas: * knowledge * skills * tools * techniques * requirements Project management is therefore not only about managing people or schedules. It combines: * planning * leadership * communication * decision-making * risk management * delivery management ----- ===== What is a Project? ===== To understand project management, we must first understand what a project is. A project is: > A temporary effort undertaken to create a unique product, service, or result. Two important characteristics define a project: ==== Temporary ===== Projects have: * start date * end date They are not permanent. Examples: * Build an e-commerce website * Migrate infrastructure to AWS * Launch a mobile app * Implement SSO for a client Each eventually finishes. ==== Unique ===== A project creates something unique. Even if two projects look similar, they differ in: * requirements * stakeholders * technology * budget * timeline * business goals Example: Two Laravel deployments are not identical. Different: * customer requirements * cloud architecture * integrations * security policies Therefore each deployment can still be treated as a project. ----- ===== What is NOT a Project? ===== Not all work is project work. Many activities are operational work. Operations are: * ongoing * repetitive * continuous Examples: * customer support * daily server monitoring * payroll processing * monthly accounting * routine maintenance These activities continue indefinitely. Projects eventually end. This difference is fundamental in PMP. ----- ===== Why Project Management Matters ===== Many people think project management is just: * task tracking * meetings * status reports This is incomplete. Project management exists because projects naturally contain uncertainty. Typical problems: * unclear requirements * changing priorities * technical challenges * stakeholder conflicts * limited budget * delivery pressure Project management helps teams handle uncertainty systematically. Benefits include: ==== Better Goal Alignment ===== Teams understand: * what to build * why it matters * success criteria Without alignment: Engineering may build technically good solutions that do not solve business problems. ==== Improved Planning ===== Planning answers: * What work exists? * Who does it? * When is it due? * What dependencies exist? Planning reduces chaos. ==== Risk Reduction ===== Risks are identified early. Example: A project depends on third-party API approval. Without planning: Approval delay blocks launch. With project management: Risk is identified early and mitigation planned. ==== Better Communication ===== Many projects fail because of communication problems rather than technical problems. Project management creates: * status visibility * stakeholder communication * escalation paths * shared understanding ==== Predictable Delivery ===== Organizations value predictability. Even if a project is difficult, leaders prefer: "Late by 2 weeks with visibility" rather than: "Unknown status." Project management improves predictability. ----- ===== Core Responsibilities of a Project Manager ===== A Project Manager (PM) is responsible for helping the project succeed. The PM does not necessarily perform technical work. Instead, the PM coordinates and guides delivery. Typical responsibilities: ==== Define Scope ===== Clarify: * what is included * what is excluded Example: Client requests: "Build notification system." PM clarifies: Included: * email notification * admin configuration Excluded: * SMS * WhatsApp Clear scope prevents misunderstanding. ==== Build Plans ===== Create plans for: * timeline * resources * budget * milestones Planning creates direction. ==== Manage Team Coordination ===== Ensure collaboration among: * developers * QA * designers * business teams * vendors PM removes blockers. ==== Manage Risks ===== PM asks: * What could go wrong? * How likely? * What is the impact? * How do we respond? Risk thinking is proactive. ==== Communicate With Stakeholders ===== Stakeholders need visibility. PM communicates: * progress * issues * risks * decisions Good communication builds trust. ----- ===== Real-World Software Example ===== Consider a real software project. Project: Implement SSO and member registration for a retail client. Goal: Enable unified login between systems. Stakeholders: * client business team * backend developers * frontend developers * security team * vendor API team Constraints: * deadline: 3 months * limited budget * external dependency on vendor API Without project management: * unclear API ownership * missed requirements * delayed testing * integration failures With project management: Step 1: Define scope. Step 2: Create timeline. Step 3: Identify dependencies. Step 4: Track risks. Step 5: Communicate progress weekly. Result: Higher probability of successful delivery. This demonstrates project management in practice. ----- ===== Project Management Triangle ===== A classic concept is the Triple Constraint. Projects balance: * Scope * Time * Cost Sometimes quality is included as a fourth dimension. Example: Client asks: "Deliver faster." Possible consequences: * reduce scope * increase cost * accept quality trade-offs The PM balances these competing forces. This topic is explored deeper in: [[pmp:foundation:project_constraints|Project Constraints]] ----- ===== Common Misunderstandings ===== ==== "Project management is only for managers" ===== False. Developers, team leads, and architects benefit from project management thinking. Technical leadership often requires PM skills. ==== "Project management means more meetings" ===== False. Poor project management creates unnecessary meetings. Good project management reduces confusion. ==== "Agile means no project management" ===== False. Agile still requires: * planning * coordination * prioritization * stakeholder communication Management style changes, but management still exists. ----- ===== How Project Management Applies to Software Engineers ===== Software engineers often already perform project management activities. Examples: Estimating work: → schedule management Breaking work into tasks: → scope management Identifying blockers: → risk management Coordinating with teams: → stakeholder communication Leading deployment: → execution management Understanding PMP helps engineers: * communicate better * lead projects * manage complexity * improve delivery success * move toward technical leadership Project management is therefore not separate from engineering. It complements engineering. ----- ===== Key Takeaways ===== * Project Management is structured delivery management. * A project is temporary and unique. * Project management reduces uncertainty. * PM work includes planning, coordination, communication, and risk management. * Good project management improves delivery predictability. * Software engineers already use many PM skills. * PMP provides a formal framework to strengthen these skills. ----- ===== Reflection Questions ===== * What projects have I worked on recently? * Which problems were technical vs management-related? * Did unclear scope or communication affect delivery? * Which project management skills do I already use?