SOFTWARE CONFIGURATION
ITEMS AND TASKS, BASELINES,
PLAN FOR CHANGE
Presented to- Presented by-
Ms. Jyotsna Seth Balvinder Singh
Harsh Dubey
Azimuddin
Abhisweta
Overview
❖ What is Software Configuration Management ?
❖ What are Software Configuration Items ?
❖ What are Software Configuration Tasks ?
❖ What is Baseline ?
❖ What is Plan For Change ?
Software Configuration Management
❖ Software configuration management (SCM) is the process of tracking and controlling
changes made to software artifacts such as source code, documentation, and other project-
related files. The main purpose of SCM is to provide a framework for managing and
controlling changes to software throughout its lifecycle.
❖ SCM plays a critical role in software development by ensuring that changes to software
artifacts are properly managed, tracked, and controlled throughout the development
lifecycle. This helps to minimize errors, improve collaboration, and increase the overall
quality of the software being developed.
Software Configuration Items
In software development, a Configuration Item (CI) refers to any software artifact that is
subject to change during the development process. This can include source code files,
compiled binaries, documentation, test cases, and any other deliverables that make up the
final software product. Each Configuration Item can be uniquely identified and tracked
throughout the development process using a version control system.
Software Configuration Tasks
❖ Tasks, on the other hand, are specific activities or work items that need to be completed
in order to develop and deliver the software product. Tasks can be associated with one or
more Configuration Items and are typically managed through a project management tool,
such as Jira or Trello.
❖ In the context of software configuration management, tasks can be used to manage the
change process for Configuration Items. For example, if a bug is discovered in the
software, a task can be created to fix the bug and associated with the relevant
Configuration Item(s). Once the fix is completed and tested, the Configuration Item(s) can
be updated and a new version created, which is then associated with the original task.
Tasks can also be used to manage other aspects of the software development process,
such as requirements gathering, design, testing, and deployment. By breaking down the
development process into smaller, more manageable tasks, teams can track progress and
identify potential issues early on, allowing them to make adjustments and stay on track
towards meeting their goals.
Tasks in Software Configuration Management-
‣ Configuration Identification- is a method of determining the scope of the software system.
‣ Baselines- A baseline is a formally accepted version of a software configuration item.
‣ Change Control- is a procedural method which ensures quality and consistency when
changes are made in the configuration object.
‣ Configuration Status Accounting- Configuration status accounting tracks each release
during the SCM process.
‣ Configuration Audits and Reviews- Software Configuration audits verify that all the
software product satisfies the baseline needs.
Baselines
❖Baselines are an essential part of software project management. They are used to
measure the progress of the project and ensure that it is on track to meet its goals.
❖These are a set of documents which serve as a reference point for the project's
progress and are used to measure changes in the project's scope, schedule, and budget.
Baselines are created early in the project's lifecycle and are revised as needed to
reflect changes in the project.
A project baseline typically has three components-
1.Scope baseline: This includes the project's scope statement, work breakdown structure
(WBS), and requirements documentation. The scope baseline is used to measure the
project's progress against its scope and ensure that it stays within the agreed-upon
boundaries.
2.Schedule baseline: This includes the project's schedule, milestones, and deadlines. The
schedule baseline is used to measure the project's progress against its timeline and ensure
that it stays on schedule.
3.Cost baseline: This includes the project's budget, resource allocation, and cost estimates.
The cost baseline is used to measure the project's progress against its budget and ensure
that it stays within the allocated funds.
Need for Baselines
1.Provides a reference point: Baselines provide a reference point for measuring progress
against the project's original goals, timeline, and budget.
2.Ensures consistency: By having agreed-upon baselines, project managers can ensure
consistency across the project team and stakeholders.
3.Helps with decision-making: Baselines provide a framework for informed decision-making
based on a clear understanding of the project's status.
4.Reduces risk: Baselines help reduce the risk of project failure by providing a framework for
monitoring progress and taking corrective actions as needed.
5.Facilitates communication: Baselines enable effective communication among project team
members, stakeholders, and clients, providing a common reference point for discussions.
6.Supports project success: By providing a clear framework for measuring progress and taking
corrective actions, baselines support the overall success of software projects.
PROBLEMS CAUSED BY NOT HAVING A PROJECT
BASELINE
1.Schedule delays : Without knowing when you need material, it’s difficult to ensure it’s
ordered on time, especially if it’s something that needs to be ordered weeks or months
in advance.
2.Issues with quality management: An unclear scope baseline can result in substandard
quality. For example, if you know paint is needed but not what color or finish, the
outcome may not meet the customer’s quality standards.
3.A lack of proper change management: Without baselines in place, it’s difficult to track
and manage changes. You have no yardstick to measure against, so it can be challenging
to know if your outcome is different than originally expected.
4.Customer and/or sponsor dissatisfaction: Any of the five problems above can result in
poor project performance, which will mean unhappy stakeholders, including your
customer and/or sponsor.
Plan for Change
❖ A plan for change in software project management involves identifying areas that require
improvement and implementing changes to improve the overall project performance. This
can include changes to the project methodology, team structure, communication processes,
or technology used.
❖ The first step in developing a plan for change is to conduct a thorough analysis of the
current project management process. This involves identifying the strengths and
weaknesses of the current process, as well as opportunities for improvement. A gap
analysis can be conducted to identify the areas where improvements are required.
Need for Change
Change is an inevitable part of software project management, and it is essential to recognize its
importance for successful project completion. Here are some reasons why change is crucial in
software project management-
1.Responding to changing requirements: Software projects can experience changes in requirements
due to various reasons such as changes in the market, technology, or customer needs. The ability to
adapt and respond to these changes is critical to ensure that the software meets the stakeholders'
needs.
2.Addressing issues and risks: Change management allows software project managers to identify and
address issues and risks that arise during the project. It helps to mitigate potential negative impacts
that could affect the project's success.
3.Improving project outcomes: Changes can lead to improvements in project outcomes by
identifying areas for improvement and implementing new ideas and solutions. By embracing
change, project managers can continuously improve the software development process and ensure
that the final product meets or exceeds stakeholders' expectations.
Benefits of Plan for Change
1.Increased efficiency: Change can lead to increased efficiency by eliminating redundant
processes, automating repetitive tasks, and streamlining workflows. For example,
implementing agile methodologies in software development can result in faster development
cycles, more frequent releases, and better collaboration among team members.
2.Improved quality: Change can also result in improved quality by introducing new tools and
techniques for testing and quality assurance. For instance, adopting continuous integration
and continuous delivery (CI/CD) can ensure that code changes are tested and deployed
quickly, thereby reducing the likelihood of bugs and errors in the software.
3.Reduced costs: Change can also help reduce costs by eliminating waste, optimizing
resources, and improving productivity. For example, using cloud-based infrastructure and
software can reduce the need for expensive hardware and software purchases, while also
providing scalability and flexibility.
THANK YOU

SPM PPT.pptx

  • 1.
    SOFTWARE CONFIGURATION ITEMS ANDTASKS, BASELINES, PLAN FOR CHANGE Presented to- Presented by- Ms. Jyotsna Seth Balvinder Singh Harsh Dubey Azimuddin Abhisweta
  • 2.
    Overview ❖ What isSoftware Configuration Management ? ❖ What are Software Configuration Items ? ❖ What are Software Configuration Tasks ? ❖ What is Baseline ? ❖ What is Plan For Change ?
  • 3.
    Software Configuration Management ❖Software configuration management (SCM) is the process of tracking and controlling changes made to software artifacts such as source code, documentation, and other project- related files. The main purpose of SCM is to provide a framework for managing and controlling changes to software throughout its lifecycle. ❖ SCM plays a critical role in software development by ensuring that changes to software artifacts are properly managed, tracked, and controlled throughout the development lifecycle. This helps to minimize errors, improve collaboration, and increase the overall quality of the software being developed.
  • 4.
    Software Configuration Items Insoftware development, a Configuration Item (CI) refers to any software artifact that is subject to change during the development process. This can include source code files, compiled binaries, documentation, test cases, and any other deliverables that make up the final software product. Each Configuration Item can be uniquely identified and tracked throughout the development process using a version control system.
  • 5.
    Software Configuration Tasks ❖Tasks, on the other hand, are specific activities or work items that need to be completed in order to develop and deliver the software product. Tasks can be associated with one or more Configuration Items and are typically managed through a project management tool, such as Jira or Trello. ❖ In the context of software configuration management, tasks can be used to manage the change process for Configuration Items. For example, if a bug is discovered in the software, a task can be created to fix the bug and associated with the relevant Configuration Item(s). Once the fix is completed and tested, the Configuration Item(s) can be updated and a new version created, which is then associated with the original task.
  • 6.
    Tasks can alsobe used to manage other aspects of the software development process, such as requirements gathering, design, testing, and deployment. By breaking down the development process into smaller, more manageable tasks, teams can track progress and identify potential issues early on, allowing them to make adjustments and stay on track towards meeting their goals. Tasks in Software Configuration Management- ‣ Configuration Identification- is a method of determining the scope of the software system. ‣ Baselines- A baseline is a formally accepted version of a software configuration item. ‣ Change Control- is a procedural method which ensures quality and consistency when changes are made in the configuration object. ‣ Configuration Status Accounting- Configuration status accounting tracks each release during the SCM process. ‣ Configuration Audits and Reviews- Software Configuration audits verify that all the software product satisfies the baseline needs.
  • 7.
    Baselines ❖Baselines are anessential part of software project management. They are used to measure the progress of the project and ensure that it is on track to meet its goals. ❖These are a set of documents which serve as a reference point for the project's progress and are used to measure changes in the project's scope, schedule, and budget. Baselines are created early in the project's lifecycle and are revised as needed to reflect changes in the project.
  • 8.
    A project baselinetypically has three components- 1.Scope baseline: This includes the project's scope statement, work breakdown structure (WBS), and requirements documentation. The scope baseline is used to measure the project's progress against its scope and ensure that it stays within the agreed-upon boundaries. 2.Schedule baseline: This includes the project's schedule, milestones, and deadlines. The schedule baseline is used to measure the project's progress against its timeline and ensure that it stays on schedule. 3.Cost baseline: This includes the project's budget, resource allocation, and cost estimates. The cost baseline is used to measure the project's progress against its budget and ensure that it stays within the allocated funds.
  • 9.
    Need for Baselines 1.Providesa reference point: Baselines provide a reference point for measuring progress against the project's original goals, timeline, and budget. 2.Ensures consistency: By having agreed-upon baselines, project managers can ensure consistency across the project team and stakeholders. 3.Helps with decision-making: Baselines provide a framework for informed decision-making based on a clear understanding of the project's status. 4.Reduces risk: Baselines help reduce the risk of project failure by providing a framework for monitoring progress and taking corrective actions as needed. 5.Facilitates communication: Baselines enable effective communication among project team members, stakeholders, and clients, providing a common reference point for discussions. 6.Supports project success: By providing a clear framework for measuring progress and taking corrective actions, baselines support the overall success of software projects.
  • 10.
    PROBLEMS CAUSED BYNOT HAVING A PROJECT BASELINE 1.Schedule delays : Without knowing when you need material, it’s difficult to ensure it’s ordered on time, especially if it’s something that needs to be ordered weeks or months in advance. 2.Issues with quality management: An unclear scope baseline can result in substandard quality. For example, if you know paint is needed but not what color or finish, the outcome may not meet the customer’s quality standards. 3.A lack of proper change management: Without baselines in place, it’s difficult to track and manage changes. You have no yardstick to measure against, so it can be challenging to know if your outcome is different than originally expected. 4.Customer and/or sponsor dissatisfaction: Any of the five problems above can result in poor project performance, which will mean unhappy stakeholders, including your customer and/or sponsor.
  • 11.
    Plan for Change ❖A plan for change in software project management involves identifying areas that require improvement and implementing changes to improve the overall project performance. This can include changes to the project methodology, team structure, communication processes, or technology used. ❖ The first step in developing a plan for change is to conduct a thorough analysis of the current project management process. This involves identifying the strengths and weaknesses of the current process, as well as opportunities for improvement. A gap analysis can be conducted to identify the areas where improvements are required.
  • 12.
    Need for Change Changeis an inevitable part of software project management, and it is essential to recognize its importance for successful project completion. Here are some reasons why change is crucial in software project management- 1.Responding to changing requirements: Software projects can experience changes in requirements due to various reasons such as changes in the market, technology, or customer needs. The ability to adapt and respond to these changes is critical to ensure that the software meets the stakeholders' needs. 2.Addressing issues and risks: Change management allows software project managers to identify and address issues and risks that arise during the project. It helps to mitigate potential negative impacts that could affect the project's success. 3.Improving project outcomes: Changes can lead to improvements in project outcomes by identifying areas for improvement and implementing new ideas and solutions. By embracing change, project managers can continuously improve the software development process and ensure that the final product meets or exceeds stakeholders' expectations.
  • 13.
    Benefits of Planfor Change 1.Increased efficiency: Change can lead to increased efficiency by eliminating redundant processes, automating repetitive tasks, and streamlining workflows. For example, implementing agile methodologies in software development can result in faster development cycles, more frequent releases, and better collaboration among team members. 2.Improved quality: Change can also result in improved quality by introducing new tools and techniques for testing and quality assurance. For instance, adopting continuous integration and continuous delivery (CI/CD) can ensure that code changes are tested and deployed quickly, thereby reducing the likelihood of bugs and errors in the software. 3.Reduced costs: Change can also help reduce costs by eliminating waste, optimizing resources, and improving productivity. For example, using cloud-based infrastructure and software can reduce the need for expensive hardware and software purchases, while also providing scalability and flexibility.
  • 14.