0% found this document useful (0 votes)
19 views8 pages

SPM End Sem

Software Project Management Notes
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)
19 views8 pages

SPM End Sem

Software Project Management Notes
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/ 8

Unit 3 2.

Network Diagram: Also known as a PERT


(Program Evaluation and Review Technique)
Q.1 Explain the Objectives of activity chart, it illustrates the sequence of activities,
planning and discuss the different types dependencies, and critical path(s) in a project.
of project schedules. Describe the steps Network diagrams help identify the most
involved in sequencing and Scheduling critical tasks and estimate project duration.
3. Milestone Chart: Focuses on key project
activities.
milestones rather than detailed tasks. It
Activity planning is a crucial aspect of project provides a high-level overview of project
management that involves defining, progress and helps stakeholders track major
organizing, and scheduling tasks to achieve achievements.
specific project goals. The primary objectives 4. Resource Histogram: Displays resource
of activity planning are to ensure a systematic allocation over time, showing when resources
and efficient approach to project execution, are assigned to specific tasks. Resource
allocate resources effectively, and manage the histograms assist in identifying resource
project within constraints such as time and conflicts and optimizing resource utilization.
budget. Activity planning involves identifying 5. Bar Chart: Similar to a Gantt chart, but with
and documenting the specific tasks or bars representing the duration of each task
activities required to achieve the goals of a rather than the start and finish dates.
project. Sequencing and scheduling activities involve
The Objectives of activity planning include: several steps:
1. Clarity: Ensure that each task is well- 1. Identify Activities: Break down the project
defined, with clear objectives and scope into smaller, manageable tasks or
deliverables. activities. 2. Define Dependencies: Determine
2. Resource Allocation: Determine the the logical relationships between activities.
resources (such as personnel, equipment, and Some tasks may be dependent on others
materials) needed for each activity. (finish-to-start, start-to-start, finish-to-finish,
3. Time Management: Develop a timeline for or start-to-finish).
completing each activity and the project as a 3. Estimate Duration: Estimate the time
whole. required to complete each activity,
4. Coordination: Establish dependencies considering factors such as resource
between activities to ensure they are availability and task complexity.
executed in the correct sequence. 4. Sequence Activities: Arrange the activities
5. Risk Management: Identify potential risks in the order they need to be performed,
associated with each activity and plan considering dependencies and constraints.
accordingly. 5. Develop Schedule: Allocate resources to
6. Communication: Provide a structured plan activities and create a project schedule,
that can be communicated to all stakeholders incorporating start and finish dates for each
involved in the project. task.
7. Efficiency: Optimize the sequence and 6. Optimize Schedule: Review the schedule to
scheduling of activities to minimize project identify potential conflicts, bottlenecks, or
duration and costs. resource overloads. Adjust the sequence or
Types of Project Schedules: resource allocation as needed to optimize the
1. Gantt Chart: A visual representation of schedule.
project tasks over time, showing start and end 7. Monitor and Control: Continuously monitor
dates, dependencies, and progress. Gantt progress against the schedule, making
charts are useful for tracking project timelines adjustments as necessary to ensure that the
and resource allocation. project stays on track and meets its objectives.
Q.2 Define (Project) Risk management may be monitored or addressed later.
and explain the different stages of the 4. Risk Mitigation: After prioritizing risks,
risk management process. Discuss the mitigation strategies are developed to reduce
different techniques for risk identification or eliminate the impact of the most significant
risks. This may involve implementing controls,
and prioritization.
transferring risk to third parties through
Risk management is an ongoing process that insurance or contracts, avoiding certain
involves identifying, assessing, and managing activities altogether, or accepting the risk if it
risks within a project or organization. Its falls within acceptable tolerance levels.
primary goal is to minimize the negative 5. Risk Monitoring and Control: Risk
impact of uncertainties on project objectives. management is an ongoing process that
By proactively addressing risks, organizations requires continuous monitoring and
can enhance decision-making, resource adjustment. Regular reviews of risks are
allocation, and overall project success. conducted to assess their status, identify new
risks, and ensure that mitigation strategies are
Project Risk Management is a systematic
effective.
process of identifying, analyzing, and
Now, regarding techniques for risk
responding to risks that might affect the
identification and prioritization:
success of a project. Risks are uncertainties
1. Brainstorming: Gathering inputs from
that, if they occur, can have either positive or
various stakeholders to identify potential risks
negative effects on a project's objectives. The
based on their knowledge and experience.
goal of Project Risk Management is to increase
2. Checklists: Using predefined lists of
the likelihood and impact of positive events
common risks relevant to the organization's
(opportunities) and decrease the likelihood
industry or operations to systematically
and impact of negative events (threats). The
identify potential threats.
Project Risk Management processes are
3. SWOT Analysis: Assessing Strengths,
typically divided into several steps or phases.
Weaknesses, Opportunities, and Threats to
The Project Management Institute (PMI), in its
identify both internal and external factors that
Project Management Body of Knowledge
could impact objectives.
(PMBOK).
4. Interviews and Surveys: Engaging with key
Stages of Risk Management Processes :
stakeholders through interviews or surveys to
1. Risk Identification: This involves identifying
gather insights on potential risks and their
potential risks that could affect the project or
perceptions.
organization. Risks can come from various
5. Documentation Review: Reviewing past
sources such as internal processes, external
incidents, project plans, financial reports, and
factors, human error, natural disasters, or
other relevant documents to identify recurring
technological failures.
patterns or potential vulnerabilities.
2. Risk Assessment: Once risks are identified,
6. Risk Registers: Maintaining a centralized
they need to be assessed to determine their
repository of identified risks along with
potential impact and likelihood of occurrence.
relevant details such as their likelihood,
This often involves qualitative and quantitative
impact, and mitigation plans.
analysis to prioritize risks based on their
7. Risk Workshops: Facilitating workshops or
severity and probability.
meetings with stakeholders to systematically
3. Risk Prioritization: Prioritizing risks involves
identify, analyze, and prioritize risks
ranking them based on their potential impact
collaboratively.
and likelihood of occurrence. Risks with higher
7. Scenario Analysis, 8. Risk Heat Maps,
severity and likelihood are prioritized for
9. Expert Judgment.
immediate attention, while lower priority risks
Q.3 Explain the different Risk response This involves taking advantage of
strategies and how to evaluate the risk to opportunities that arise from the risk. For
the schedule. example, if a competitor's product launch is
delayed, a company might exploit this by
A risk response strategy is a plan of action increasing its own marketing efforts during
taken to address a particular risk. The purpose the competitor's downtime.
of a risk response plan is to mitigate a 6. Sharing: Sharing involves collaborating with
negative risk, also known as a threat, to an other parties to jointly manage the risk. This
individual or company. What constitutes a could include forming partnerships or
threat may vary depending on the business or alliances to share resources and expertise in
individual, but typically, a threat is defined as addressing common risks.
something that has the potential to cause
harm. An opportunity is a potential situation To evaluate the risk to the schedule, you can
or event that could have a positive effect on follow these steps:
an individual or company. Risk response 1. Identify Risks: Begin by identifying
strategies are actions taken to address potential risks that could affect the project
potential risks identified in a project. There schedule. This can be done through
are several common risk response strategies: brainstorming sessions, historical data
1. Avoidance: This strategy involves analysis, expert judgment, and other risk
eliminating the risk entirely by changing the identification techniques.
project plan to bypass the risk or removing 2. Assess Risks: Once identified, assess each
the risk trigger altogether. For example, if risk to determine its likelihood of occurring
there's a risk of inclement weather delaying and its potential impact on the project
outdoor construction, the project could be schedule. Use qualitative and quantitative
rescheduled for a different time of year. analysis methods to prioritize risks based on
2. Mitigation: Mitigation aims to reduce the their severity.
probability or impact of a risk. This might 3. Quantify Impact: Quantify the potential
involve implementing safety measures, impact of each risk on the project schedule in
redundancy in critical components, or creating terms of time delays or adjustments needed
contingency plans. For instance, if there's a to the project timeline.
risk of a key team member leaving the project, 4. Probability Assessment: Assess the
cross-training other team members can likelihood of each risk occurring. This can be
mitigate the impact. done through probability analysis, historical
3. Transfer: Risk transfer involves shifting the data, expert judgment, or risk modeling
risk to another party, usually through techniques.
contracts, insurance, or outsourcing. For 5. Risk Response Planning: Based on the
instance, purchasing insurance can transfer assessment, develop appropriate risk
the financial risk of equipment failure to an response strategies for each identified risk.
insurance company. Consider the effectiveness, feasibility, and cost
4. Acceptance: Sometimes, the best option is of each response strategy.
to accept the risk, particularly if the cost or 6. Implement Responses: Once the risk
effort to mitigate it outweighs the potential response strategies are determined,
impact. However, acceptance doesn't mean implement them as part of the project plan.
ignoring the risk; rather, it involves developing 7. Monitor and Control: Continuously monitor
a plan to monitor the risk and implement the project for any new risks or changes in
contingencies if necessary. existing risks. Track the effectiveness of
5. Exploitation: In certain situations, it may be implemented risk responses and adjust as
possible to exploit a risk for potential gain. necessary to keep the project on schedule.
Unit 5 that there is no one-size-fits-all approach to
management, and the most effective
Q.1 Discuss the different theories of management style depends on various
organizational behaviour and their situational factors. In software project
implications for software project management, flexibility and adaptability are
management. Explain how the different essential for responding to changing
requirements, technology, and team
factors that influence individual and team
dynamics. Leaders must tailor their approach
behaviour in software projects, such as
based on the specific project context to
motivation, personality, and group optimize performance.
dynamics, can impact project
performance. Now, let's delve into how factors influencing
individual and team behavior can impact
Organizational behavior (OB) theories offer software project performance:
valuable insights into understanding how 1. Motivation: Motivated team members are
individuals and groups behave within an more likely to be engaged and productive. In
organization, and how these behaviors can software projects, intrinsic motivators such as
influence performance. In the context of a sense of accomplishment, autonomy, and
software project management, several OB mastery can drive individuals to perform at
theories can be particularly relevant: their best. Conversely, lack of motivation can
1. Classical Theory: This theory emphasizes lead to procrastination, poor quality work, and
hierarchical structures, clear roles, and formal missed deadlines, ultimately affecting project
processes. In software project management, success.
adherence to defined roles and processes can 2. Personality: Different personalities within a
provide clarity and direction. However, team can influence collaboration and
excessive bureaucracy and rigidity may stifle communication. For example, extroverted
creativity and adaptability, hindering project team members may thrive in group
performance. discussions and brainstorming sessions, while
2. Human Relations Theory: This theory introverts may prefer independent work and
highlights the importance of social thoughtful reflection. Understanding and
relationships and employee satisfaction in accommodating diverse personalities can
improving productivity. In software projects, foster a more inclusive and harmonious team
fostering a positive team culture, encouraging environment, enhancing overall productivity.
open communication, and providing 3. Group Dynamics: Group dynamics refer to
opportunities for social interaction can the patterns of interaction and influence
enhance motivation and teamwork, ultimately among team members. Cohesive teams with
leading to better project outcomes. strong interpersonal relationships tend to
3. Systems Theory: This theory views communicate more effectively and collaborate
organizations as complex systems of more seamlessly. Conversely, conflicts, power
interconnected components. In software struggles, or cliques within the team can
projects, considering the interdependencies disrupt workflow and impede progress.
between different project elements (e.g., Effective leadership, conflict resolution
requirements, development, testing) is crucial strategies, and team-building activities are
for effective planning and coordination. essential for managing group dynamics and
Changes in one part of the system can have maintaining a positive work environment.
ripple effects throughout the project,
impacting performance.
4. Contingency Theory: This theory suggests
Q.2 With relevant examples, Differentiate 3. Sachin Tendulkar: His cricketing excellence
between Management and Leadership made him a leader in sports.

Management Leadership Management Examples:


Task-oriented People-oriented 1. Project Manager: Coordinates team tasks,
The process of The ability to allocates resources, and ensures project
coordinating resources inspire and milestones are met.
to achieve specific influence others 2. Operations Manager: Manages day-to-day
goals within an towards a common operations, adhering to established
organization. goal or vision. procedures.
Directive and Inspirational and 3. HR Manager: Implements HR policies and
controlling visionary oversees employee performance.
Implementer and Innovator and
executor motivator
Often focuses on Emphasizes long-
short-term goals and term vision and
efficiency. strategic direction.
Example : A manager Example : A leader
ensures that inspires a team to
employees adhere to embrace change
deadlines and meet and pursue
production targets. ambitious goals
beyond what's
currently
achievable.
Often formal and Emphasizes open
structured, focused on communication,
relaying instructions active listening,
and updates. and fostering a
supportive
environment.
Generally risk-averse, Willing to take
prioritizing stability calculated risks in
and consistency. pursuit of growth
and innovation.
Authority-based; Influence-based;
relationships are relationships are
hierarchical. built on trust and
respect.
Efficiency and Alignment of
consistency in individuals with a
operations. shared vision,
fostering creativity,
and adaptability.
Leadership Examples:
1. Mahatma Gandhi: His leadership during
India’s struggle for independence inspired
millions.
2. Amitabh Bachchan: As an iconic actor, he
motivates and influences fans.
Unit 6 continuous integration, testing, and
deployment. These tools are tightly
Q.1 What is Agile Project Management? integrated, allowing seamless collaboration
List two benefits of using Azure DevOps and visibility across the entire development
for Agile Project Management. lifecycle. This integration helps teams to
streamline their processes and reduce
Agile Project Management : Agile Project overhead, leading to improved productivity
Management is a methodology used in and faster delivery of high-quality software.
software development and project 2. Agile Planning and Tracking: Azure DevOps
management, focusing on iterative offers robust features for Agile planning and
development, collaboration, and customer tracking, such as Kanban boards, backlogs,
feedback. It emphasizes adaptability, sprint planning, and burndown charts. These
flexibility, and delivering value to customers tools enable teams to effectively plan,
quickly and efficiently. Key principles of Agile prioritize, and manage their work, ensuring
include prioritizing individuals and that they stay focused on delivering value to
interactions over processes and tools, working customers. With real-time visibility into
software over comprehensive documentation, project progress and performance metrics,
customer collaboration over contract teams can quickly identify bottlenecks, adjust
negotiation, and responding to change over priorities, and make data-driven decisions to
following a plan. Agile projects are broken optimize their delivery process.
down into small increments called iterations 3. Scalability and Flexibility: Azure DevOps is
or sprints. Each iteration typically lasts from highly scalable and can accommodate projects
one to four weeks and results in a potentially of various sizes and complexities. Whether
shippable product increment. Agile you're working on a small startup project or a
encourages close collaboration between large enterprise-level application, Azure
cross-functional teams, including developers, DevOps can scale to meet your needs.
testers, designers, and business stakeholders. Additionally, it offers flexibility in terms of
Communication is prioritized, and teams often deployment options, allowing teams to
work in the same physical space or use digital choose between cloud-hosted or self-hosted
tools for constant interaction. Agile embraces environments based on their requirements
change and allows for flexibility in project and preferences. This flexibility enables teams
requirements. Teams can respond quickly to to adapt their Agile processes to suit the
changes in customer needs, market specific needs of their projects and
conditions, or project priorities. Agile organizations.
emphasizes getting frequent feedback from
customers or end-users throughout the
development process. This feedback helps
teams ensure they are building the right
features and delivering value to the customer.

Azure DevOps is a suite of development tools


offered by Microsoft that supports Agile
methodologies.
Here are two benefits of using Azure DevOps
for Agile Project Management:
1. Integration of Tools: Azure DevOps
provides a comprehensive set of tools for
project management, version control,
Q.2 Explain the concept of Branching and and adherence to coding standards before
Merging in Azure DevOps and how it is changes are merged.
used to support Agile Project 3. Merge Conflicts: Sometimes, conflicts may
Management. arise when merging branches due to
Branching and merging are fundamental overlapping changes. Azure DevOps provides
concepts in version control systems like Git, tools to resolve these conflicts, allowing teams
which Azure DevOps heavily relies on. They to reconcile differences and merge changes
play a crucial role in supporting Agile project smoothly.
management by enabling teams to work How it supports Agile Project Management:
collaboratively, manage changes effectively, 1. Isolation and Parallel Development:
and deliver software iteratively. Feature branches allow teams to work on
Here's how branching and merging work in different features simultaneously without
Azure DevOps and their significance in Agile interfering with each other. Teams can create,
project management: test, and iterate on features independently,
Branching: promoting agility.
1. Main/Branch: The primary branch, often 2. Code Quality and Collaboration: Pull
called the "main" or "master" branch, requests facilitate code reviews. Team
represents the stable version of the codebase. members collaborate, discuss, and validate
It's where production-ready code resides. changes before merging. Code quality
2. Feature Branches: These branches are improves as issues are caught early during
created for developing new features or reviews.
implementing changes. Each feature or user 3. Release Management: Release branches
story typically gets its own branch, allowing stabilize features for deployment. Hotfix
developers to work independently without branches address urgent issues without
affecting the main codebase. disrupting ongoing development.
3. Release Branches: Before deploying new 4. Visibility and Traceability: Azure DevOps
features to production, teams may create provides visibility into branch history,
release branches. These branches are used for commits, and merges. Teams can track
final testing and bug fixes, ensuring that only progress, identify bottlenecks, and ensure
stable code is deployed. alignment with project goals.
4. Hotfix Branches: If critical issues are 5. Flexibility and Responsiveness: With
discovered in the production environment, branching and merging, teams can quickly
hotfix branches are created to address them respond to changes in requirements or
quickly without disrupting ongoing customer feedback by creating new branches
development. or hotfix branches. This flexibility supports
Agile's adaptive and customer-centric
Merging: approach.
1. Merge to Main: Once a feature or user
story is complete, the changes in the feature In Azure DevOps, these concepts are
branch are merged back into the main branch. supported through its Git-based version
This integration ensures that the new control system, which provides robust
functionality becomes part of the stable branching, merging, and pull request
codebase. capabilities, integrated with agile project
2. Pull Requests: Before merging code into the management features like work item tracking
main branch, developers create pull requests and continuous integration/continuous
(PRs) in Azure DevOps. PRs facilitate code deployment (CI/CD). This integration enables
reviews by team members, ensuring quality seamless collaboration and delivery of high-
quality software in Agile environments.
Q.3 Explain how to use Azure Pipelines to performance of your CI/CD pipelines and
implement continuous integration and gather feedback from users. Use this feedback
continuous delivery (CI/CD) in an Agile to make improvements to your processes and
project. Discuss the different ways to optimize delivery.
manage work items in Azure Boards. Managing Work Items in Azure Boards:
Azure Boards offers several ways to manage
Continuous Integration and Continuous
work items, facilitating Agile project
Delivery (CI/CD) with Azure Pipelines:
management:
Azure Pipelines provides a powerful platform
1. Backlogs: Backlogs allow you to prioritize
for implementing CI/CD in Agile projects.
and manage work items (such as user stories,
Here’s how you can set it up:
bugs, tasks) in a list format. You can easily
1. Set up Azure DevOps Project: Begin by
drag and drop items to prioritize them and
creating an Azure DevOps project if you
assign them to specific sprints or iterations.
haven't already. This will provide you with
2. Sprints/Iterations: Organize your work
Azure Pipelines, Azure Repos, Azure Boards,
items into sprints or iterations to plan and
and other useful tools.
track progress over time. You can define the
2. Create Azure Pipelines: Navigate to the
duration of each sprint and allocate work
Pipelines section in Azure DevOps and create
items accordingly.
a new pipeline. You can choose from various
3. Boards: Boards provide a visual
templates based on your project's
representation of work items using
requirements (e.g., .NET, Node.js, Python).
customizable Kanban boards or task boards.
3. Configure Build Pipeline: Define the steps
This allows team members to see the status of
required to build your project. This might
each work item and track progress through
include fetching dependencies, compiling
various stages (e.g., To Do, In Progress, Done).
code, running tests, etc.
4. Queries: Use queries to filter and search for
4. Configure Release Pipeline: Create a
specific work items based on various criteria
release pipeline to deploy your application to
(e.g., assigned to me, priority, iteration).
the desired environment (e.g., staging,
Queries can be saved and shared among team
production). Define the deployment stages,
members for easy access to relevant work
approval gates, and any necessary
items.
configurations.
5. Dashboards: Create dashboards to visualize
5. Integrate with Version Control: Connect
key metrics and track project progress at a
your Azure Pipelines to your version control
glance. Dashboards can include widgets such
system (e.g., Git repository hosted in Azure
as burndown charts, velocity charts, and build
Repos, GitHub). This enables automatic
status indicators.
triggering of builds upon code changes.
6. Customization: Azure Boards can be
6. Implement Continuous Integration: Set up
customized to fit your team's specific needs.
triggers in your build pipeline to automatically
You can define custom work item types, fields,
build your application whenever new code is
and workflows to align with your Agile
pushed to the repository. This ensures that
processes.
changes are validated early and often.
7. Implement Continuous Delivery: Configure
your release pipeline to automatically deploy
the built artifacts to the target environment(s)
after successful builds. This allows for
frequent and reliable releases of your
application.
8. Monitor and Iterate: Monitor the

You might also like