0% found this document useful (0 votes)
21 views9 pages

SPM Unit-4

Uploaded by

nild3011
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views9 pages

SPM Unit-4

Uploaded by

nild3011
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

Project Control

Project control is the process of monitoring, managing, and


regulating a project’s performance to ensure it stays on track
with its planned schedule, budget, and quality standards. It
involves comparing actual performance with the project plan,
identifying deviations, and implementing corrective actions to
achieve project objectives.
Project Control Process:
▪ Set Standards: Set clear and measurable standards for the project’s scope, budget, timeline, and
quality. These standards act as benchmarks that define the project's goals and expectations.
Example: For a software development project, a standard might be that the project must be completed
within 6 months and with a budget of $200,000, ensuring that the final product meets specific user
requirements.
▪ Measure Performance: Measure the actual performance of the project by collecting data on key
metrics like progress, costs, resource utilization, and timeline adherence. This helps track the project’s
status.
Example: In the construction of a building, performance is measured by tracking the number of floors
completed each month compared to the project’s planned schedule.
▪ Compare Actual Performance: Compare the actual performance with the set standards to identify
any differences or deviations. This comparison helps determine if the project is on track, ahead, or
behind schedule.
Example: If a marketing campaign was supposed to reach 1,000 leads by the end of the second month
but only reached 800, the comparison reveals a 20% shortfall from the plan.
▪ Analyse Deviations: Analyse the causes of any deviations between actual performance and the set
standards. This step is crucial for understanding whether the deviations are temporary, manageable, or
require significant intervention.
Example: If a software project is behind schedule, the analysis may reveal that delays are due to
resource constraints, such as insufficient developers for critical tasks.
▪ Take Corrective Actions: Take corrective actions to address deviations and bring the project back on
track. These actions may include reallocating resources, adjusting schedules, or revising the project
plan.
Example: In response to delays in a construction project, corrective action might involve bringing in
additional labour or extending working hours to meet the original deadline.
(What is project control? Explain the different types of control mechanism in details.)

Types of Project Control Mechanisms


1. Schedule Control
Ensures that the project timeline is maintained by tracking milestones and deadlines. This helps
avoid delays and ensures timely delivery.
Example: Adjusting task priorities when a delay in one task affects dependent activities, like shifting
resources to meet a deadline.
▪ Cost Control
Focuses on keeping the project within budget by monitoring and controlling project expenses and
cost overruns. Effective cost control helps prevent financial mismanagement.
Example: Reviewing material costs in a construction project and reallocating resources to stay within
budget by negotiating with suppliers.
▪ Quality Control
Ensures that the project outputs meet the required quality standards and specifications. It involves
testing and validating deliverables throughout the project.
Example: Performing unit testing and integration testing to ensure software functionality meets the
project’s quality requirements.
▪ Risk Control
Identifies potential risks, assesses their impact, and puts in place mitigation strategies to address
them. This minimizes the chance of disruptions.
Example: Allocating additional resources to manage unexpected delays in supply chain logistics,
such as transportation strikes.
▪ Change Control
Manages and regulates changes to the project scope, schedule, or resources to ensure minimal
disruption and avoid scope creep.
Example: Assessing the impact of adding new features in a software project, ensuring that the
changes won’t significantly affect cost or timeline.
▪ Communication Control
Ensures timely and clear communication with all stakeholders. This includes regular updates,
meetings, and using tools for efficient information sharing.
Example: Sending status reports and holding weekly meetings to inform stakeholders about progress
and challenges encountered.
▪ Scope Control
Ensures that the project scope remains aligned with its original goals and prevents unauthorized
changes that may lead to scope creep.
Example: Rejecting requests for additional features that would divert resources or delay project
completion beyond the agreed scope.
▪ Resource Control
Involves efficiently managing resources, such as human, material, and financial, to ensure the project
operates at maximum productivity.
Example: Reallocating team members to high-priority tasks when certain project deadlines are at risk
due to delays in critical components.
Project control mechanisms are crucial for keeping a project on track and ensuring it meets its objectives. By
monitoring key aspects such as schedule, cost, quality, risk, and communication, project managers can detect
issues early and take corrective actions to minimize disruptions. Systematically implementing these controls
enhances the likelihood of project success.

Plan-Monitor-Control Cycle
The Plan-Monitor-Control Cycle is a continuous process used in
project management to ensure that the project progresses according to
its plan. This cycle involves three main stages: planning, monitoring,
and controlling. The goal is to keep the project on track, ensure that
objectives are achieved, and make adjustments as necessary.
1. Planning Stage
• Description: The planning phase defines project goals, establishes schedules, allocates resources, and
sets the project budget. It involves detailed mapping of all tasks, milestones, and identifying potential
risks. Careful planning ensures all aspects of the project are covered before execution begins.
• Key Activities: Defining project scope, creating a detailed timeline, allocating resources effectively,
and setting clear project milestones and deadlines.
• Example: In a mobile app development project, planning involves finalizing the app’s features,
estimating the time required for each development phase, assigning team roles for design, coding, and
testing, and defining a release schedule.
2. Monitoring Stage
• Description: The monitoring phase involves tracking the project's progress by measuring performance
against the established plan. Key performance indicators (KPIs) are used to evaluate whether the
project is on track, while any emerging risks or issues are identified and recorded for action.
• Key Activities: Tracking project progress regularly, evaluating performance through KPIs, and
identifying emerging risks or issues during project execution.
• Example: During a web application development project, the project manager tracks the completion
of user stories during sprints, monitors code quality through static code analysis tools, and checks bug
reports to ensure the development process is on track.
3. Control Stage
• Description: The control phase addresses variances between planned and actual performance by
implementing corrective actions. If deviations occur, the project manager adjusts resources, timelines,
or priorities to realign the project with its original goals and objectives.
• Key Activities: Implementing corrective actions to address discrepancies, adjusting project resources,
updating schedules, and modifying priorities to realign with goals.
• Example: In a software development project, if testing reveals critical bugs that affect the release date,
the project manager might extend the timeline for testing, reassign developers to fix bugs, and adjust
the release schedule accordingly to ensure the final product is error-free.
The Plan-Monitor-Control cycle is vital in managing software projects effectively. By setting clear goals and
schedules in the planning phase, tracking progress during monitoring, and making necessary adjustments in
the control phase, project managers can keep software projects on track. Therefore, the cycle enhances the
likelihood of delivering software projects on time, within budget, and meeting client expectations.

Monitoring and Regulating in Project Management


Monitoring: Monitoring in project management refers to the continuous process of tracking, reviewing, and
assessing the progress of a project against its planned objectives, schedule, and resources. It ensures that the
project is progressing according to plan and identifies any issues or deviations early. Monitoring includes
collecting data on performance metrics, risks, costs, and timelines, which helps project managers take
corrective actions if necessary.
Regulating: Regulating in project management refers to the process of taking corrective actions based on the
monitoring results to align the project’s performance with the planned objectives. It involves adjusting
resources, schedules, or tasks to ensure that any deviations or risks identified during monitoring are addressed
promptly, keeping the project on track to achieve its goals.
Tools and Methods for Monitoring and Regulating Project Operations
1. Gantt Chart:
A Gantt chart is a project management tool that visually represents the project schedule, illustrating
tasks, durations, and dependencies. It is used to track progress by comparing the planned timeline with
actual progress, highlighting any delays or deviations.
Example: A software development team uses a Gantt chart to visualize and track the progress of
design, development, testing, and deployment phases.
2. Earned Value Management (EVM)
Earned Value Management (EVM) integrates project scope, cost, and schedule to evaluate
performance. By comparing planned and actual progress, it helps identify variances in cost and
schedule, providing a clear picture of the project’s status.
Example: In a software project, EVM helps track whether the costs of coding and testing are on budget
and if the project is meeting its timeline.
3. Kanban Boards
Kanban boards are a visual project management tool used in agile methodologies, where tasks are
represented as cards and moved across columns to indicate their status. It helps teams visualize work
and manage workflow efficiently.
Example: A software development team uses a Kanban board to manage tasks, categorizing them into
stages like "To Do", "In Progress", and "Completed".
4. Status Reports
Status reports provide regular updates on the project's current state, highlighting completed tasks,
upcoming activities, and any risks or issues. They ensure stakeholders are informed and help project
managers monitor progress effectively.
Example: A project manager sends out weekly status reports detailing updates on coding progress,
testing results, and deployment challenges in a software project.
5. Change Control Systems
Change control systems are tools that help manage and document changes to the project scope,
timeline, or resources. They ensure changes are carefully reviewed and authorized to minimize
disruptions and maintain control over the project.
Example: In a software development project, a change control system is used to evaluate the impact
of adding new features or adjusting the timeline before approval.
6. Critical Path Method (CPM)
The Critical Path Method (CPM) is a project scheduling technique used to identify the longest
sequence of dependent tasks that determine the project's overall timeline. It helps ensure that critical
tasks are completed on time to avoid delays.
Example: In a software project, CPM is used to ensure that critical tasks, such as system design and
testing, are completed on schedule, preventing delays in the overall project timeline.
Monitoring and regulating project operations are critical for ensuring the success of any project. By using
tools like Gantt charts, EVM, Kanban boards, and risk management tools, project managers can effectively
track progress, identify issues, and make necessary adjustments. These tools enable efficient decision-making,
risk mitigation, and ensure that the project stays on schedule and within budget.
Visualization of Progress in Project Management
Visualizing progress in project management refers to the use of graphical or visual tools and methods to track
the current state of a project, allowing project managers, teams, and stakeholders to easily understand how the
project is advancing. These tools help represent tasks, milestones, timelines, and outcomes in a clear and
comprehensible way, making it easier to assess project performance and identify potential issues.
Methods for Visualizing Progress
1. Gantt Charts: Gantt charts are a popular project management tool that visually represents tasks over time,
displaying their start and end dates, dependencies, and milestones. They help track progress by comparing
planned and actual completion, making it easy to spot delays and completed tasks.
Example: A project manager uses a Gantt chart to monitor software development phases like planning, design,
coding, testing, and deployment, with each phase marked by a progress bar.
2. Kanban Boards: Kanban boards, used mainly in agile projects, help visualize task status by organizing
tasks into columns such as "To Do," "In Progress," and "Completed." Tasks are moved through these columns
to reflect their current state. This method identifies bottlenecks and improves workflow management.
Example: In an agile software project, a Kanban board tracks tasks like user stories, moving them across
columns to show their progress from "To Do" to "Completed."
3. Burndown Charts: Burndown charts display the amount of work remaining versus time, commonly used
in agile projects to track progress in sprints. The chart slopes downward as work is completed, providing a
quick view of task progress and indicating if the project is on track.
Example: In a Scrum project, a burndown chart is updated daily to track progress, showing if all tasks will
be completed by the sprint’s end.
4. Progress Dashboards: Progress dashboards offer a real-time summary of key project metrics such as task
completion, milestone achievement, cost, and schedule performance. Visual indicators like charts and graphs
help project managers and stakeholders assess the project's current status quickly.
Example: A project manager uses a progress dashboard to track KPIs like task completion rate, budget
usage, and milestone progress in a software development project.
5. Milestone Charts: Milestone charts highlight key project milestones along a simplified timeline. They
focus on critical achievements or deliverables, helping project teams track major progress points without
getting bogged down in detailed tasks or phases.
Example: A software development project might use a milestone chart to track key milestones such as
"Requirements Finalized," "Design Completed," and "Software Deployed."
6. Flowcharts: Flowcharts represent the sequence and dependencies of tasks or processes in a project. They
provide a visual map of steps involved in completing a project, helping teams understand task relationships
and track progress as tasks are completed.
Example: A software development team uses a flowchart to visualize the sequence of coding, testing, and
deployment tasks, updating it as each task progresses.
Visualizing progress is a crucial part of project management as it allows teams and stakeholders to quickly
assess the health of a project. By using methods such as Gantt charts, Kanban boards, and burndown charts,
project managers can track milestones, identify potential delays, and ensure projects stay on course. These
tools not only improve communication but also enhance decision-making, ultimately contributing to
successful project completion.
Change Control
The Change Control process in Software Configuration Management (SCM) is used to systematically handle
changes that occur during the development and maintenance of software projects. This process helps ensure
that all changes are properly assessed, approved, and implemented without disrupting the project's goals or
quality.
1. Change Request:
The process begins when a change request is submitted. It
can come from stakeholders like developers, clients, or
project managers. This request can propose a modification to
the software or its components, such as new features, bug
fixes, or system updates.
2. Change Assessment:
After receiving the request, the next step is to assess the
change's impact. This involves evaluating the feasibility,
cost, benefit, and potential risks of the proposed change to
understand how it will affect the overall project timeline and
goals.
3. Decision Point (Transit):
At this stage, a decision is made about whether to proceed
with the change or reject it. If the change is deemed
unnecessary or too risky, it is rejected. If the benefits
outweigh the risks, it proceeds to the approval phase.
4. Change Approval:
Once the change is deemed beneficial, it goes through an approval process. A change control board
(CCB) or relevant stakeholders review the details and authorize the change. This ensures that the
change aligns with project objectives and goals.
5. Change Implementation:
The approved change is then implemented. The implementation phase involves making updates to
the software, systems, or configurations. It requires coordination to avoid disruptions and ensure the
change is properly integrated into the project.
6. End:
The change process concludes once the implementation is complete. The software or system is
updated, and the change is tested to ensure it works as expected, meeting the requirements and not
causing any new issues.
Example:
▪ In a software project, a change request could be made to add a new feature. After assessing the feasibility
and impact, the change is approved and implemented. This results in the feature being added to the
software, and the project team verifies that the feature works as expected without disrupting existing
functionality.
▪ This Change Control process helps to manage and mitigate risks associated with changes during the
software development lifecycle, ensuring that the project remains aligned with its goals while maintaining
stability and quality. Therefore, by systematically evaluating, approving, and implementing changes,
teams can avoid unnecessary disruptions and ensure that updates enhance the project rather than
complicate it.
Version Control in SCM :
A version control process in a Source Code Management (SCM) system involves tracking and managing
changes made to code files over time, allowing developers to revert to previous versions, collaborate
effectively, and maintain a clear history of modifications within a project, typically using a centralized
repository where all changes are recorded and accessible to the team.
Key elements of a version control process:
▪ Check-out: A developer "checks out" a file from the repository, essentially acquiring a working
copy to make changes on their local machine.
▪ Committing Changes: Once satisfied with the modifications, the developer "commits" the changes,
creating a snapshot of the file at that specific point in time, along with a descriptive message explaining
the changes made.
▪ Pushing to Repository: The committed changes are then "pushed" to the central repository, making
them accessible to other team members.
▪ Merging Changes: When multiple developers are working on the same files, their changes need to
be "merged" together to resolve conflicts and create a unified version.
▪ Branching: Developers can create separate "branches" from the main codebase to work on specific
features or bug fixes without affecting the primary development line.
Popular VCS Tools :
1. Git : Distributed Version Control System (DVCS): Each developer has a complete copy of the
repository, enabling offline work and faster operations.
• Key Features:
o Branching and merging: Create and merge branches easily to isolate work.
o Commit history: Review changes, revert to previous versions, and analyze the project's
evolution.
o Staging area: Prepare changes for commit, allowing for selective inclusion.
o Remote repositories: Collaborate with other developers by pushing and pulling changes.

2. Ansible : While primarily a configuration management tool, Ansible leverages version control for managing
playbooks and roles:
• Centralized Repository: Ansible playbooks and roles are typically stored in a centralized repository
like Git.
• Version Control Benefits:
o Track changes to configurations and deployments.
o Collaborate on playbooks and roles.
o Roll back to previous versions if necessary.

3. Team Foundation Server (TFS) : Centralized Version Control System (CVCS): A single, centralized
repository stores all project files.
• Key Features:
o Source control: Manage source code, track changes, and revert to previous versions.
o Work item tracking: Plan, track, and manage work items (tasks, bugs, user stories).
o Build automation: Automate the build and deployment process.
o Test management: Plan and execute tests, analyze test results.
Team Structure in a Software Project:
The team structure in a software project defines the roles, responsibilities, communication flow, and
hierarchy within the project team. It is essential for defining how tasks are divided, managed, and executed.
The typical structure can vary depending on the project size and complexity, but it generally includes:
1. Project Manager:
The project manager oversees the entire project, ensuring it aligns with business objectives, is
completed on time, and stays within budget. The manager is responsible for planning, coordinating,
and monitoring the progress of the project.
2. Team Lead:
The team lead is responsible for guiding the development team and ensuring tasks are executed
according to plan. They communicate with the project manager and act as a point of contact between
the team and management.
3. Developers/Engineers:
The development team is responsible for writing code, implementing features, and ensuring that the
software meets the required specifications. Depending on the project, developers may specialize in
front-end, back-end, or full-stack development.
4. Quality Assurance (QA) Engineers:
QA engineers test the software to ensure that it meets quality standards. They write test cases, identify
bugs, and work closely with developers to resolve issues.
5. UI/UX Designers:
UI/UX designers are responsible for designing the user interface and ensuring that the software is user-
friendly. They focus on the usability and aesthetic aspects of the application.
6. Business Analysts:
Business analysts gather requirements from stakeholders and translate them into functional
specifications for developers. They bridge the gap between the technical team and business
stakeholders.
7. Database Administrators (DBAs):
DBAs handle the management and maintenance of databases, ensuring the system's data is efficiently
stored, retrieved, and updated.
8. Support/Operations Team:
The operations team manages the deployment, monitoring, and maintenance of the software once it is
live. They ensure the system remains operational and address any issues that arise in production.

Virtual Team in a Software Project :


A virtual team refers to a group of individuals who work together on a software project, but are physically
located in different locations, often across different time zones and regions. Virtual teams are becoming more
common due to advancements in technology, allowing teams to collaborate remotely through tools like email,
chat applications, video conferencing, and project management software.
Characteristics of Virtual Teams:
1. Geographically Dispersed:
Virtual teams are spread across different locations, which can be local, national, or international. This
provides access to a broader talent pool but can also lead to challenges in coordination and
communication.
2. Technology-Dependent:
Virtual teams rely heavily on technology to communicate and collaborate. Tools like Slack, Microsoft
Teams, Jira, GitHub, and Zoom are commonly used for messaging, code sharing, task tracking, and
video meetings.
3. Flexible Work Hours:
Team members may work in different time zones, allowing for flexible working hours. However, this
can sometimes cause delays in responses or coordination challenges.
4. Cultural Diversity:
Virtual teams often bring together members from diverse cultural backgrounds, which can enhance
creativity and problem-solving. However, it also requires effective communication strategies to
overcome language barriers and cultural differences.
Advantages of Virtual Teams:
• Access to a Global Talent Pool: Virtual teams allow companies to hire the best talent from anywhere
in the world, providing access to expertise that may not be available locally.
• Cost Savings: Virtual teams can reduce costs associated with office space, utilities, and travel.
• Flexibility: Virtual teams can offer more flexibility in terms of work hours and location, making it
easier for team members to balance personal and professional lives.
Challenges of Virtual Teams:
• Communication Barriers: Without face-to-face interactions, there can be misunderstandings or
misinterpretations. It is important to have clear communication protocols.
• Time Zone Differences: When team members are spread across various time zones, scheduling
meetings and ensuring timely collaboration can be difficult.
• Lack of Cohesion: Without physical presence, building team spirit and a sense of belonging can be
challenging. Virtual teams must work harder to foster collaboration and trust.

You might also like