Download as pdf or txt
Download as pdf or txt
You are on page 1of 80

EEI6360 - SOFTWARE PROJECT MANAGEMENT

COURSE
AGENDA

01 Project Performance Domains 05

02 Q&A 06

03 07

04 08
PROJECT PERFORMANCE DOMAINS
1. STAKEHOLDERS
ADDRESSES ACTIVITIES AND FUNCTIONS ASSOCIATED WITH STAKEHOLDERS
DEFINITIONS
▪ Stakeholder - An individual, group, or organization that may affect, be affected by, or perceive itself to be affected by a decision,
activity, or outcome of a project, program, or portfolio.

▪ Stakeholder Analysis - A method of systematically gathering and analyzing quantitative and qualitative information to determine
whose interests should be considered throughout the project.

▪ Stakeholder Engagement - Implementing strategies and actions to promote productive involvement of stakeholders.
Stakeholder engagement activities start before or when the project starts and continue throughout the project.
STEPS TO ENGAGE STAKEHOLDERS
▪ Identify
▪ High-level stakeholder identification may be carried out prior to forming the project team.
▪ Detailed stakeholder identification progressively elaborates the initial work and is a continuous activity throughout the
project.
▪ Understand and Analyze
▪ The project manager and the project team should seek to understand stakeholders’ feelings, emotions, beliefs, and values.
These elements can lead to additional threats or opportunities for the project outcomes.
▪ Understanding and analyzing stakeholders is an ongoing action.
▪ Prioritize
▪ There are many stakeholders involved for the project team to engage directly or effectively with all of them.
▪ The project team can complete an initial prioritization of stakeholders. It is common to focus on stakeholders with the most
power and interest as one way to prioritize engagement.
▪ Engage
▪ Stakeholder engagement entails working collaboratively with stakeholders to introduce the project, elicit their requirements,
manage expectations, resolve issues, negotiate, prioritize, problem solve, and make decisions.
▪ Engaging stakeholders requires the application of soft skills, such as active listening, interpersonal skills, and conflict
management, as well as leadership skills such as establishing the vision and critical thinking.
▪ Monitor
▪ Throughout the project, stakeholders will change as new stakeholders are identified and others cease to be stakeholders.
▪ As the project progresses, the attitude or power of some stakeholders may change. There is an opportunity to assess whether
the current engagement strategy is effective or if it needs to be adjusted.
POWER-INTEREST GRID

Additional Reading : https://www.forbes.com/advisor/business/what-is-stakeholder-analysis


2. TEAM
ACTIVITIES AND FUNCTIONS ASSOCIATED WITH THE PEOPLE WHO ARE RESPONSIBLE FOR PRODUCING PROJECT
DELIVERABLES THAT REALIZE BUSINESS OUTCOMES
CENTRALIZED MANAGEMENT AND LEADERSHIP
 Authority and control are concentrated at the top levels of the hierarchy. key decisions, strategic planning, and the exercise of authority are
primarily the responsibility of a small group of individuals or a single leader. key characteristics of centralized management and leadership.
 Decision-making authority: High-level executives, often at the top of the project hierarchy, make most, if not all, important decisions. These
leaders have significant control over the project's strategy, policies, and day-to-day operations.
 Communication channels: Information and communication typically flow from the top down in a centralized structure. Leaders and
managers communicate directives, goals, and instructions to subordinates, who are expected to follow these directives without significant
input into decision-making.
 Efficiency and consistency: Centralized management can lead to efficient and consistent decision-making because it minimizes conflicting
interests and ensures that project activities align with the overarching strategy. It can also help maintain uniform standards and practices
across the project.
 Accountability and responsibility: In a centralized structure, leaders are held accountable for the overall performance and outcomes of the
project. This can help clarify lines of responsibility and make it easier to pinpoint who is responsible for successes and failures.
 Limited autonomy: Subordinates within a centralized structure typically have limited autonomy and decision-making authority. They are
expected to carry out the directives and policies set by higher-ups without significant deviation.
 Risk of bottlenecks: Centralized decision-making can lead to bottlenecks and delays in response to rapidly changing situations. Since all
important decisions must go through a few individuals or a single leader, the project may struggle to adapt quickly to new challenges or
opportunities.
 Hierarchical structure: Centralized management and leadership are often associated with a hierarchical project structure, with clear lines of
authority and reporting relationships. The higher the position in the hierarchy, the more authority and decision-making power individuals
have.
CENTRALIZED MANAGEMENT AND LEADERSHIP

 Examples of projects in which centralized management is typically effective:


 Manufacturing and Production
 Construction Projects
 Healthcare Facilities
 Utility and Infrastructure Maintenance
 Government Initiatives
 Supply Chain Management
 Quality Control and Regulatory Compliance
 Financial Institutions
 Large-Scale Event Planning
 Emergency Response and Disaster Management
DISTRIBUTED MANAGEMENT AND LEADERSHIP

 Disperses decision-making authority and leadership responsibilities across various levels and individuals within a project. Decision-making
and leadership are more collaborative and widespread. Key characteristics of distributed management and leadership include:
 Decision-making decentralization: decision-making authority is shared among different levels of the project and across various
departments or teams. Leaders encourage input from employees, enabling them to contribute to the decision-making process.
 Collaborative communication: Information and communication flow more freely and interactively in a distributed system. Leaders foster an
environment of open communication, where ideas and feedback from all levels of the project are encouraged and valued.
 Empowerment and autonomy: Individuals at various levels to take ownership of their roles and make decisions within their areas of
responsibility. This autonomy can lead to increased job satisfaction and engagement.
 Adaptive and agile: Associated with greater project agility and responsiveness. With decision-making distributed, organizations can adapt
more quickly to changes in their external environment and seize opportunities as they arise.
 Accountability and responsibility sharing: While decision-making authority is distributed, leaders and team members share responsibility
for outcomes. This shared accountability can create a stronger sense of ownership and commitment to the project's success.
 Flatter organizational structure: A distributed approach can result in a flatter project structure with fewer hierarchical levels. This structure
may facilitate more direct communication and collaboration between employees and teams.
 Leadership at multiple levels: Leadership is not confined to a specific position or title. Leaders can emerge at various levels, based on
their skills, expertise, and contributions.
 Employee development: Encourages the development of leadership skills and opportunities for employees at different levels. This can
contribute to leadership talent pipelines within the project.
DISTRIBUTED MANAGEMENT AND LEADERSHIP

 Examples of projects in which distributed management and leadership can be particularly beneficial
 Software Development
 Research and Development
 Creative and Design Projects

 Start-up Companies

 Education and Training

 Marketing Campaigns

 Non-Profit Initiatives
 Cross-Functional Teams
 IT and DevOps

 Open-Source Software Development


PROJECT TEAM CULTURE

 The project team’s culture may be established deliberately by developing project team norms, or informally through the
behaviors and actions of its project team members.
 The project team culture operates within the organization’s culture but reflects the project team’s individual ways of
working and interacting.
 The project manager is key in establishing and maintaining a safe, respectful, nonjudgmental environment that allows
the project team to communicate openly.
 Factors of positive team culture
 Transparency
 Integrity
 Respect
 Positive discourse
 Support
 Courage
 Celebrating success.
HIGH-PERFORMING PROJECT TEAMS

 One goal of effective leadership is to create a high-performing project team


 Factors that contribute to high-performing project teams
 Open communication
 Shared understanding
 Shared ownership
 Trust
 Collaboration
 Adaptability
 Resilience
 Empowerment
 Recognition
ESTABLISHING AND MAINTAINING VISION

Additional Reading : https://www.projectmanagement.com/articles/682014/how-to-use-a-product-vision-board-for-citizen-


development#_=_
CRITICAL THINKING
MOTIVATION

Additional Reading : https://www.geektonight.com/what-is-motivation/


EMOTIONAL INTELLIGENCE

Additional Reading : https://globalleadershipfoundation.com/deepening-understanding/emotional-intelligence/


CONFLICT MANAGEMENT

Additional Reading : https://www.mtdtraining.com/blog/thomas-kilmann-conflict-management-model.htm


3. DEVELOPMENT APPROACH AND LIFE CYCLE
ADDRESSES ACTIVITIES AND FUNCTIONS ASSOCIATED WITH THE DEVELOPMENT APPROACH, CADENCE, AND LIFE CYCLE
PHASES OF THE PROJECT
DEFINITIONS

 Deliverable - Any unique and verifiable product, result, or capability to perform a service that is required to be produced to
complete a process, phase, or project.
 Development Approach - A method used to create and evolve the product, service, or result during the project life cycle, such
as a predictive, iterative, incremental, adaptive, or hybrid method.
 Cadence - A rhythm of activities conducted throughout the project.
 Project Phase - A collection of logically related project activities that culminates in the completion of one or more deliverables.
 Project Life Cycle - The series of phases that a project passes through from its start to its completion.
RELATIONSHIP

▪ The type of project deliverable(s) determines how it can be developed.


▪ The type of deliverable(s) and the development approach influence the number and cadence for project deliveries.
▪ The deliverable approach and the desired delivery cadence determine the project life cycle and its phases.
DELIVERY CADENCE
 Delivery cadence refers to the timing and frequency of project deliverables.
 Types of Delivery cadence
 Single delivery - Projects that have a single delivery deliver at the end of the project.
 Examples: Process Reengineering project, House Construction
 Multiple deliveries - A project may have multiple components that are delivered at different times throughout the
project.
 Examples: A real estate development. Event Management for a Large Conference
 Periodic deliveries - Periodic deliveries are like multiple deliveries, but they are on a fixed delivery schedule, such as
monthly or bimonthly.
 Examples: Agile Software Development, Product Development
 Continuous deliveries - Continuous delivery is the practice of delivering feature increments immediately to customers,
often using small batches of work and automation technology.
 Examples: Marketing and Content Creation , Agile Software Development, Product Development
DEVELOPMENT APPROACHES
 A development approach is the means used to create and evolve the product, service, or result during the project life
cycle. There are different development approaches, and different industries may use different terms to refer to
development approaches.
 Three commonly used approaches are
 Predictive
 Hybrid
 Adaptive

 There are several factors that influence the selection of a development approach. They can be divided into categories
of the
 Product, service, or result
 The project
 The organization
SELECTING A DEVELOPMENT APPROACH

Product, service, or result The project The organization

•Degree of innovation •Stakeholders •Organizational structure


•Requirements certainty •Schedule constraints •Culture
•Scope stability •Funding availability •Organizational capability
•Ease of change •Project team size and
•Delivery options location

•Risk
•Safety requirements
•Regulations
PREDICTIVE APPROACH

 A predictive development approach, is a project


management methodology that relies on careful
planning, documentation, and defined
processes to deliver a project.
 In this approach, project requirements and
objectives are well-defined upfront, and the
project plan is created based on these
requirements. It is typically used in projects
where the scope, timeline, and costs can be
accurately estimated, and there is minimal
uncertainty.
 The predictive approach is well-suited for
projects with stable, well-understood
requirements and minimal ambiguity.
 It works best when changes to project
requirements are minimal and can be managed
through formal change control procedures.
CHARACTERISTICS OF A PREDICTIVE DEVELOPMENT
 Detailed Planning - Extensive planning is done at the beginning of the project. This includes defining project requirements,
setting clear objectives, and creating a detailed project plan, often using tools like Gantt charts.
 Sequential Phases - The project is typically divided into sequential phases or stages, and each phase must be completed
before moving on to the next. This is often referred to as a Waterfall approach.
 Fixed Scope - The project scope is usually well-defined and is not expected to change significantly throughout the project. Any
changes are subject to formal change control procedures.
 Emphasis on Documentation - Documentation plays a crucial role in a predictive approach. Detailed project plans,
requirements documents, and specifications are created and maintained throughout the project.
 Risk Management - Risks are identified and managed through the project. A risk management plan is often in place to address
potential issues that may arise.
 Change Control - Any changes to project requirements, scope, or objectives require formal approval and may impact the project
schedule and budget.
 Quality Control - Quality assurance and control processes are built into the project to ensure that the final deliverables meet
the specified quality standards.
 Strict Timeline and Budget Control - The project schedule and budget are closely monitored and controlled to ensure they stay
on track.
 Client Engagement at the Beginning - Clients or stakeholders are typically heavily involved in the initial planning phase but may
have limited involvement during the development phase.
V MODEL

 The V-model represents a development process


that may be considered an extension of the
waterfall model and is an example of the more
general V-model.
 Instead of moving down in a linear way, the process
steps are bent upwards after the coding phase, to
form the typical V shape.
 The V-Model demonstrates the relationships
between each phase of the development life cycle
and its associated phase of testing.
 The horizontal and vertical axes represent time or
project completeness (left-to-right) and level of
abstraction (coarsest-grain abstraction uppermost),
respectively.
HYBRID APPROACH

 A hybrid development approach is a combination of adaptive and predictive approaches.

 It often use an iterative or incremental development approach.

 It especially useful when dealing with complex projects that have both well-defined and evolving requirements.

 They provide a balance between structure and flexibility, allowing project managers to tailor their approach to the specific
project environment.

 Implementing a hybrid approach requires a good understanding of various project management methodologies and a clear
vision of how to integrate them effectively to achieve project success.
CHARACTERISTICS OF A HYBRID DEVELOPMENT

 Tailored Methodology - A hybrid approach starts with an assessment of the project's specific needs and constraints. It then
selects and integrates appropriate practices and techniques from different project management methodologies.
 Mix of Methodologies - It can blend elements from traditional, predictive (e.g., Waterfall), and agile methodologies (e.g.,
Scrum, Kanban) to create a project management approach that is well-suited to the project's characteristics.
 Adaptive Planning - Hybrid approaches allow for flexible and adaptive planning, enabling changes to be accommodated
while still maintaining structure and control in the project.
 Iterative and Incremental - Some aspects of the project might follow an iterative and incremental model, allowing for
regular reviews and adaptations, while other aspects may follow a more traditional, sequential approach.
 Collaboration and Communication - Agile principles, such as close collaboration with stakeholders and frequent
communication, may be incorporated into the hybrid approach to enhance transparency and responsiveness.
 Phases and Milestones - The project may be divided into phases or milestones, with each phase potentially using different
methodologies or approaches depending on the project's evolving requirements.
 Change Management - A hybrid approach may have mechanisms in place for managing changes effectively, including
change control processes where necessary.
CHARACTERISTICS OF A HYBRID DEVELOPMENT

 Risk Management - The hybrid approach may incorporate risk management strategies from both predictive and agile
methodologies to address uncertainties and potential issues.
 Team Structure - The team structure and roles can be adapted to match the project's needs. For example, cross-functional
teams may be used to ensure flexibility and efficiency.
 Client Engagement - Depending on the project, client or stakeholder engagement may be continuous and iterative or more
structured at specific phases of the project.
ITERATIVE APPROACH

 Iterative development is an
approach to software and product
development that focuses on
breaking a project into smaller,
more manageable increments or
iterations.
 Each iteration involves planning,
designing, coding, testing, and
refining the software or product,
with the goal of producing a
potentially shippable or releasable
product increment at the end of
each iteration.
CHARACTERISTICS OF AN ITERATIVE DEVELOPMENT
 Incremental Progress - Instead of trying to deliver the entire product at once, iterative development delivers a portion of the functionality
with each iteration. This allows for incremental progress and the ability to release features sooner.
 Frequent Feedback - Stakeholders, including customers and end-users, provide feedback at the end of each iteration. This feedback loop
helps identify and address issues early and adapt to changing requirements.
 Flexibility - Iterative development embraces change. It accommodates evolving requirements and allows for adjustments as the project
progresses, making it suitable for dynamic or uncertain environments.
 Small, Cross-Functional Teams - Teams are typically small, cross-functional, and self-organizing. They work collaboratively to complete the
tasks within each iteration.
 Prioritized Backlog - A prioritized list of features or user stories, known as a backlog, guides the development team in selecting the most
important items to work on during each iteration.
 Iteration Planning - Before each iteration, the team plans the work to be done, defines the goals, and estimates the effort required to
complete the selected backlog items.
 Continuous Testing - Testing is an integral part of each iteration, ensuring that the delivered increment is of high quality. Automated testing
is often used to expedite the process.
 Deliverable Increments - At the end of each iteration, a potentially shippable increment is produced. This can be a functional piece of
software or a product feature that can be demonstrated to stakeholders.
 Continuous Improvement - Lessons learned from each iteration are used to improve the process, making future iterations more efficient
and effective.
INCREMENTAL APPROACH

 Incremental development is an approach to


software and product development that
involves building a product in small, functional
segments or increments, gradually adding
features and capabilities over time.
 Incremental development focuses on delivering
discrete, complete components or increments
of the product.
 Incremental development can be a suitable
approach for large and complex projects where
it may not be feasible to develop the entire
product at once. It allows for early value
delivery and continuous improvement while
managing the complexity of the project.
CHARACTERISTICS OF AN INCREMENTAL DEVELOPMENT

 Sequential Building - In incremental development, the product is constructed in a linear sequence. Each increment builds on the previous
one, adding new functionality and features.
 Staged Releases - The project is divided into distinct stages or phases, with each stage resulting in a release of a partial or complete
product. These stages are typically planned and executed one after the other.
 Prioritization - Features and functionalities are typically prioritized based on their importance and relevance to the overall product. High-
priority features are often included in earlier increments.
 Early Delivery - Incremental development allows for the early delivery of a basic, usable product or system. Subsequent increments add
more features and enhance the product's capabilities.
 Iterative within Increments - Although the primary focus is on delivering complete increments, each increment can also involve iterative
development practices, allowing for refinement and improvement of features during its construction.
 Customer Feedback - Stakeholders can provide feedback after each increment is delivered, which can inform the development of
subsequent increments.
 Risk Management - Incremental development can help mitigate project risks by delivering parts of the product early, allowing for early
detection and correction of issues.
 Integration and Testing - Each increment is integrated into the existing product, and testing is performed to ensure that the added
functionality works correctly and does not introduce defects.
ADAPTIVE APPROACH
 Adaptive approaches are useful when requirements are subject to a high level of uncertainty and volatility and are likely to
change throughout the project.
 Various adaptive methodologies, such as Agile, Scrum, Kanban, and Extreme Programming (XP), provide specific frameworks
and practices to implement these characteristics effectively in different contexts.
CHARACTERISTICS OF AN ADAPTIVE DEVELOPMENT

 Iterative and Incremental - Adaptive development involves breaking the project into small, manageable iterations or
increments. Each iteration typically spans a few weeks and results in a potentially shippable product increment.
 Customer-Centric - The primary focus is on delivering value to the customer or end-users. Customer feedback is actively sought
and used to guide the development process, ensuring that the product meets their needs.
 Embracing Change - Adaptability is a fundamental principle. The approach is designed to accommodate changing
requirements and priorities throughout the project. Changes can be made at any stage of development.
 Cross-Functional Teams - Teams are typically small, cross-functional, and self-organizing. They work collaboratively to complete
tasks, and decision-making is decentralized, allowing the team to respond quickly to changing circumstances.
 Continuous Feedback - Frequent feedback loops with stakeholders, including customers, are established to assess progress,
validate assumptions, and make course corrections as necessary.
 Transparency - There is a strong emphasis on transparency in terms of project status, issues, and progress. This is often
achieved through visual management tools and daily stand-up meetings.
 Prioritization and Backlog Management - Work is organized and prioritized based on a backlog of features, user stories, or
tasks. The backlog is continuously refined to ensure that the most valuable items are addressed first.
 Continuous Testing and Quality Assurance - Testing is integrated throughout the development process, with a focus on
delivering high-quality increments. Automated testing is often used to ensure product stability.
CHARACTERISTICS OF AN ADAPTIVE DEVELOPMENT

 Sustainable Pace - Teams are encouraged to work at a sustainable pace to avoid burnout and maintain long-term
productivity. This contrasts with traditional approaches that may emphasize tight deadlines and long hours.
 Frequent Deliveries - Adaptive development aims to deliver potentially shippable increments of the product at the end of
each iteration, allowing for early releases and rapid feedback.
 Lean and Efficient Processes - The approach encourages eliminating waste and focusing on value-added activities,
resulting in more efficient and effective development processes.
 Inspect and Adapt - At the end of each iteration, the team reflects on their performance, identifies areas for improvement,
and adjusts their practices and processes accordingly.
WHAT IS AGILE?

 Agile is a set of principles and values for software and product


development that prioritize flexibility, collaboration, customer
feedback, and incremental delivery.
 The Agile methodology was developed as a response to the
limitations of traditional, rigid development methodologies and aims
to improve the efficiency, quality, and responsiveness of the
development process.
 Agile is not a single, prescriptive methodology but rather a
philosophy or approach that can be applied in various ways.
 It is often associated with several specific methodologies and
frameworks, including Scrum, Kanban, Extreme Programming (XP),
and more.

Additional Reading :
https://agilemanifesto.org/
https://www.agilealliance.org/agile101/12-principles-behind-the-agile-manifesto/
https://resources.scrumalliance.org/Article/key-values-principles-agile-manifesto
KEY PRINCIPLES AND VALUES OF AGILE

 Individuals and Interactions Over Processes and Tools


Agile values the contributions and collaboration of individuals on the development team, promoting effective
communication and teamwork.
 Working Software Over Comprehensive Documentation
While documentation is important, the primary focus is on delivering working software or products. Agile encourages
producing just enough documentation to support development and no more.
 Customer Collaboration Over Contract Negotiation
Agile places a strong emphasis on collaborating closely with customers and end-users to understand their needs, gather
feedback, and deliver solutions that provide value to them.
 Responding to Change Over Following a Plan
Agile acknowledges that requirements and priorities may change over the course of a project. It encourages adapting to
changing circumstances and making adjustments as necessary.
https://www.youtube.com/watch?v=-P2RIm7QaL8
WHAT IS KANBAN?
 Kanban is a visual project management and workflow methodology that helps teams and organizations visualize, manage,
and optimize their work processes.
 It originated in the manufacturing industry in Japan, particularly at Toyota, and has since been adapted and widely used in
various fields, including software development, project management, and service delivery.
 The term "Kanban" translates to "visual card" or "signboard" in Japanese, and the methodology relies on visual cues to
represent work items and their status.
 The core concept of Kanban revolves around managing work in progress (WIP) and improving workflow efficiency.
KEY FEATURES AND PRINCIPLES OF KANBAN
 Visual Board - A Kanban board is used to represent the workflow. It consists of columns that represent different stages of
work, such as "To Do," "In Progress," and "Done." Work items, often represented as cards, move through these columns as
they progress.
 Work in Progress (WIP) Limits - Kanban places limits on the number of work items that can be in progress at any given time.
WIP limits help prevent overloading team members and promote a smooth, balanced workflow.
 Pull System - Work is pulled into the system only when there is available capacity to work on it. Team members pull work
from the "To Do" column to the "In Progress" column as they are ready to work on it, ensuring that the team focuses on
completing tasks rather than starting new ones.
 Continuous Improvement - Kanban encourages continuous improvement through the Kaizen philosophy. Teams regularly
review and refine their processes to identify bottlenecks, inefficiencies, and opportunities for improvement.
 Visualization - The visual representation of work items and their progress makes it easy to see the status of all tasks briefly.
This transparency aids communication and coordination within the team.
 Flow - Kanban emphasizes creating a smooth and efficient flow of work through the system. This often involves identifying
and addressing obstacles or impediments that disrupt the workflow.
 Customer Focus - Kanban emphasizes delivering value to customers. Work items are prioritized based on customer needs,
and the focus is on delivering valuable features or products.
KEY PRINCIPLES AND PRACTICES OF EXTREME PROGRAMMING (XP)
 Fine-Scale Feedback - XP promotes frequent and direct communication between developers, customers, and other
stakeholders. Developers work closely with customers to understand and prioritize requirements.
 Continuous Planning - Instead of long-term planning, XP focuses on short, frequent planning cycles to accommodate
changing requirements and priorities. This planning is facilitated by user stories and backlog management.
 Small Releases - XP advocates for small, frequent releases of working software, allowing customers to see the results of
development early and provide feedback.
 Simple Design - The codebase should be kept as simple as possible while still satisfying customer requirements.
Refactoring is encouraged to maintain clean and efficient code.
 Test-Driven Development (TDD) - Developers write automated tests before writing the code. This practice ensures that the
code meets the requirements and that any changes do not introduce defects.
 Pair Programming - Developers work in pairs, with one actively writing code (the "driver") and the other reviewing and
suggesting improvements (the "navigator"). Pair programming enhances code quality and spreads knowledge among team
members.
 Collective Code Ownership - Every team member is responsible for the codebase, and anyone can make changes or
improvements. This approach fosters a sense of shared responsibility and accountability.
 Continuous Integration - Code changes are frequently integrated into a shared repository, and automated tests are run to
identify integration issues. This ensures that the codebase is always in a working state.
KEY PRINCIPLES AND PRACTICES OF EXTREME PROGRAMMING (XP)

 Sustainable Pace - XP encourages maintaining a


sustainable work pace, avoiding overwork, and
preventing burnout. This leads to more consistent
productivity and higher quality work.
 On-Site Customer - Having a dedicated customer
representative or stakeholder on-site or readily
available helps the team quickly clarify
requirements and make decisions.
 Coding Standards - Teams establish coding
standards to ensure consistency and
maintainability of the code.
 Refactoring - Regularly improving the codebase to
keep it clean, efficient, and maintainable is a core
practice of XP.
4. PLANNING
PLANNING ORGANIZES, ELABORATES, AND COORDINATES PROJECT WORK THROUGHOUT THE PROJECT.
PLANNING OVERVIEW
 The purpose of planning is to proactively develop an approach to create the project deliverables.
 High-level planning may begin prior to project authorization.
 The project team progressively elaborates initial project documents, such as a vision statement, project charter, business case,
or similar documents to identify or define a coordinated path to achieve the desired outcomes.
 Variables that influence how project planning is conducted include.
 Development approach
 Project deliverables
 Organizational requirements
 Market conditions
 Legal or regulatory restrictions

 Planning begins with understanding the business case, stakeholder requirements, and the project and product scope.
 Product scope - The features and functions that characterize a product, service, or result.
 Project scope - The work performed to deliver a product, service, or result with the specified features and functions.

 Predictive planning approaches start with the high-level project deliverables up front and decompose them into more detail.
This approach can employ a scope statement and/or a work breakdown structure (WBS) to decompose the scope into lower
levels of detail.
 Projects that use iterative or incremental approaches can have high-level themes or epics that are decomposed into features,
which are then further decomposed into user stories and other backlog items.
ESTIMATING
 Estimating the time, effort, and resources required for a software project is a critical aspect of project management.
 Accurate estimation helps in project planning, budgeting, and resource allocation.
 There are various techniques and methods for software project estimation, and the choice of method depends on the
project's size, complexity, and the available information.
 Expert Judgment
 Expert opinion or judgment is often used to estimate software projects, especially when historical data is limited.
 Experienced project managers or team members assess the project requirements and provide estimates based on their knowledge and expertise.

 Analogous Estimation
 This method relies on historical data from similar past projects. It involves comparing the current project with past projects of similar scope, size,
and complexity.
 Analogous estimation can provide a quick and rough estimate when historical data is available.

 Parametric Estimation
 Parametric estimation involves using mathematical models to estimate project parameters like cost, effort, or duration.
 These models are based on historical data and can be quite accurate when calibrated properly.

 Three-Point Estimation
 This method uses three estimates for each task or work package: the most optimistic (O), the most pessimistic (P), and the most likely (M).
 The expected duration or cost is calculated using a formula such as (O + 4M + P) / 6.
ESTIMATING

 Delphi Technique
 The Delphi technique is a consensus-based approach where experts provide estimates independently and then revise them based on
feedback from the group.
 This process continues until a consensus is reached.

 Bottom-Up Estimation
 In this approach, estimates are made for individual components or tasks, and then those estimates are aggregated to get an overall
project estimate.
 This method is more detailed and accurate but can be time-consuming.

 Function Point Analysis (FPA)


 FPA is a method to estimate software size and complexity based on functional requirements. It can be used in conjunction with other
estimation techniques to determine effort and cost.

 Story Points (Agile)


 In Agile development, story points are used to estimate the relative complexity and effort required for user stories or features.
 Teams assign story points based on their experience and use velocity to predict how much work can be completed in a sprint.
SCHEDULES

 A schedule is a model for executing the project’s activities, including durations, dependencies, and other planning
information.
 Schedule planning can use predictive or adaptive approaches.

 Predictive approaches follow a stepwise process as follows:


 Step 1 - Decompose the project scope into specific activities.
 Step 2 - Sequence related activities.
 Step 3 - Estimate the effort, duration, people, and physical resources required to complete the activities.
 Step 4 - Allocate people and resources to the activities based on availability.
 Step 5 - Adjust the sequence, estimates, and resources until an agreed-upon schedule is achieved.
SCHEDULE COMPRESSION METHODS
 If the schedule model does not meet the initial desired end date, schedule compression methods are applied.
 Schedule compression techniques are used to shorten or accelerate the schedule duration without reducing the project scope to
meet schedule constraints, imposed dates, or other schedule objectives.
 Crashing
 A technique used to shorten the schedule duration for the least incremental cost by adding resources.
 Examples of crashing include approving overtime, bringing in additional resources, or paying to expedite delivery to activities
on the critical path.
 Crashing works only for activities on the critical path where additional resources will shorten the activity's duration.
 Crashing does not always produce a viable alternative and may result in increased risk and/or cost.
 Fast tracking
 A schedule compression technique in which activities or phases normally done in sequence are performed in parallel for at
least a portion of their duration.
 An example is constructing the foundation for a building before completing all of the architectural drawings.
 Fast tracking may result in rework and increased risk.
 Fast tracking only works when activities can be overlapped to shorten the project duration on the critical path.
 Schedule acceleration usually increases coordination efforts between the activities concerned and increases quality risk and
increase project costs.
PRECEDENCE DIAGRAMMING METHOD (PDM)
▪ PDM includes four types of dependencies or logical relationships.
▪ A predecessor activity is an activity that logically comes before a dependent activity in a schedule.
▪ A successor activity is a dependent activity that logically comes after another activity in a schedule.
▪ Finish-to-start (FS)
▪ A logical relationship in which a successor activity cannot start until a predecessor activity has finished.
▪ For example, installing the operating system on a PC (successor) cannot start until the PC hardware is assembled
(predecessor).
▪ Finish-to-finish (FF)
▪ A logical relationship in which a successor activity cannot finish until a predecessor activity has finished.
▪ For example, writing a document (predecessor) is required to finish before editing the document (successor) can finish.
▪ Start-to-start (SS)
▪ A logical relationship in which a successor activity cannot start until a predecessor activity has started.
▪ For example, level concrete (successor) cannot begin until pour foundation (predecessor) begins.
▪ Start-to-finish (SF)
▪ A logical relationship in which a successor activity cannot finish until a predecessor activity has started.
▪ For example, a new accounts payable system (successor) must start before the old accounts payable system can be shut
down (predecessor).
ADAPTIVE SCHEDULE PLANNING
 Adaptive schedule planning uses incremental planning. One such scheduling approach is based on iterations and releases.
 A high-level release plan is developed that indicates the basic features and functionality to be included in each release.
 Within each release, there will be two or more iterations.
 Each iteration adds business and/or stakeholder value. Value may include features, risk reduction, experimentation, or
other ways of delivering or protecting value.
 Adaptive approaches often use timeboxes. The work in each timebox is based on a prioritized backlog.
 The project team determines the amount of work they can do in each timebox, estimates the work, and self-manages to
accomplish the work.
BUDGET

 The project budget evolves from the agreed estimates for the project. The information on Estimating is applied to project
costs to develop cost estimates.
 Cost estimates are then aggregated to develop the cost baseline. The cost baseline is often allocated across the project
schedule to reflect when the costs will be incurred.
 This practice allows project managers to balance the funds approved in a specific budget period with the scheduled work.
 If there are funding limitations for a budget period, the work may need to be rescheduled to meet those limitations.
 The project budget should include contingency reserve funds to allow for uncertainty.
 Contingency reserves are set aside to implement a risk response or to respond to risk events should they occur.
 Management reserves are set aside for unexpected activities related to in-scope work.
 Depending on the organization’s policies and organizational structure, management reserves may be managed by the
project, the sponsor, product owner, or the PMO at the program and portfolio level.
5. WORK PERFORMANCE
ADDRESSES ACTIVITIES AND FUNCTIONS ASSOCIATED WITH ESTABLISHING PROJECT PROCESSES, MANAGING PHYSICAL
RESOURCES, AND FOSTERING A LEARNING ENVIRONMENT.
WORK PERFORMANCE

• The project manager and the project team establish and periodically review the processes the
project team is using to conduct the work.
PROJECT PROCESSES • Reviewing processes can entail determining if processes are efficient, or if there is waste in
the process that can be eliminated.
• Process tailoring can be used to optimize the process for the needs of the project.

• Successfully leading a project includes understanding the constraints associated with the
work.
COMPETING
• The constraints may shift and change throughout the project.
CONSTRAINTS
• Balancing these shifting constraints, while maintaining stakeholder satisfaction, is an
ongoing project activity.

• Project managers have a responsibility for assessing and balancing the project team focus
and attention.
• This involves evaluating short- and long-term projections of progress toward delivery goals.
TEAM FOCUS
• Leading the project team includes balancing the workload and assessing if project team
members are satisfied with their work so they remain motivated.
• Maintain awareness of when potential issues,delays, and cost overruns enter the project.
WORK PERFORMANCE

• Much of the project work is associated with communication and engagement, especially work
COMMUNICATIONS associated with maintaining project team member and other stakeholder engagement.
AND ENGAGEMENT • Communication entails formal and informal communication, in addition to verbal and written
communication.

• Some projects require materials and supplies from third parties.


• Planning, ordering, transporting,storing, tracking, and controlling these physical resources
PHYSICAL RESOURCES
can take a large amount of time and effort.
• Large amounts of physical resources require an integrated logistics system.

• Many projects involve some form of contracting or procurement. Procurement can cover
everything from material, capital equipment, and supplies to solutions, labor, and services.
PROCUREMENTS • In most organizations, project managers do not have contracting authority. Rather, they work
with contracting officers or other people with expertise in contracts, laws, and regulations.
• Organizations usually have rigorous policies and procedures associated with procurements.
WORK PERFORMANCE

• In adaptive projects, there is an expectation that work will evolve and adapt.As a result, new
work can be added to the product backlog, as needed.
NEW WORK AND • The project manager works with the product owner to manage expectations around adding
CHANGES scope, the implications to the budget, and the availability of project team members.
• The product owner prioritizes the project backlog on an ongoing basis so that high-priority
items are completed.

• Periodically, the project team may meet to determine what they can do better in the future
(lessons learned) and how they can improve and challenge the process in upcoming
iterations (retrospectives).
• Throughout the project, project teams develop and share explicit knowledge. Explicit
LEARNING
knowledge can be readily codified using words, pictures, or numbers.
• Tacit knowledge is comprised of experience, insights, and practical knowledge or skill. Tacit
knowledge is shared by connecting the people who need the knowledge with people who
have the knowledge.
CONSTRAINTS MANAGEMENT

▪ Constraints are limitations or restrictions that can affect a


project's scope, schedule, and budget.

▪ Managing constraints effectively is essential to ensure


that a project is completed successfully and within the
defined parameters.

▪ The three primary constraints in project management are:


▪ Scope Constraint
▪ Time Constraint
▪ Cost Constraint

▪ Effective constraints management involves striking a


balance between these three key constraints. In practice,
changes to one constraint (e.g., scope) often have ripple
effects on the other constraints (e.g., time and cost).
THE TRIPLE CONSTRAINTS

 Scope Constraint
 The scope of a project defines what needs to be accomplished. Scope constraints refer to limitations on what is and is
not included in the project. Managing scope constraints involves:
 Scope Change Management - Addressing changes to the project scope, whether they involve adding, removing, or
altering project requirements, to ensure that changes are properly evaluated, approved, and implemented.
 Scope Creep Management - Preventing uncontrolled or unauthorized expansion of the project's scope, which can lead
to cost overruns and delays.
 Time Constraint
 The time constraint pertains to the project's schedule and deadlines. Managing time constraints involves:
 Schedule Management - Developing a project schedule, setting milestones, and tracking progress to ensure that the
project stays on track and meets its deadlines.
 Critical Path Analysis - Identifying the critical path and critical activities that must be completed on time to prevent
delays in the overall project timeline.
 Schedule Compression - Strategies to accelerate the project schedule when necessary, such as fast-tracking or
crashing.
THE TRIPLE CONSTRAINTS
 Cost Constraint
 The cost constraint relates to the project budget and financial resources available. Managing cost constraints
includes:
 Cost Estimation - Accurately estimating the project's costs and budget requirements.
 Cost Control - Monitoring and managing project expenses to ensure they align with the approved budget.
 Cost Containment - Implementing strategies to control and reduce costs when necessary, such as cost-cutting
measures or resource optimization.
PROCUREMENT PROCESS

 The procurement process is a


structured method of procuring goods
and services needed for an
organization. This process saves cost,
reduces time, and builds win-win
supplier relationships.
 The procurement process is the
series of processes that are essential
to get products or services from
requisition to purchase order and
invoice approval.
DIFFERENCE BETWEEN INDIRECT, DIRECT, AND SERVICES PROCUREMENT

Direct Procurement Indirect Procurement Services Procurement


Acquisition of goods, materials, and/or Sourcing and purchasing materials, Procuring and managing the contingent
services for manufacturing purposes goods, or services for internal use workforce and consulting services

Ex: Raw materials, machinery, and resale Ex: Utilities, facility management, and Ex: Professional services, software
items travel subscriptions, etc.
Drives external profit and continuous Takes care of day-to-day operations Used to plug process and people gaps
growth in revenue
Comprises of stock materials or parts for Used to buy consumables and Used to purchase external services and
production perishables staff
Establish long-term, collaborative supplier Resort to a short-term, transactional Maintain one-off, contractual
relationships relationship with suppliers relationships with suppliers
KNOWLEDGE TRIANGLE
TYPES OF KNOWLEDGE

 Explicit knowledge
 This type of knowledge is codified ,meaning it is found in books, files, folders, documents, databases and how-to videos and
is most easily extracted and handled by a knowledge management system.

 Tacit knowledge
 This form of knowledge is intuitive in nature.
 It is based on experience and practice and often helps in achieving long-term goals.
 This type of knowledge transfer is difficult, as it lies with a single person.
 There is no easy way to extract it as with explicit knowledge, leaving the knowledge-holder with the task of writing it down or
creating a video.

 Embedded knowledge
 This knowledge is found in systemic processes, routines, manuals, structures and organizational cultures.
 It is embedded formally through management initiatives or informally as organizations use and apply the other two
knowledge types.
 While embedded knowledge can be found in explicit sources, it is not always immediately apparent why doing something a
certain way is important for a business.
Q&A
Thank You

You might also like