SPM IMP Questions
SPM IMP Questions
The project life cycle refers to the series of phases a project undergoes from initiation to closure. It
comprises four main phases: Initiation, Planning, Implementation, and Closure. Each phase has specific
tasks and objectives that guide the project towards successful completion.
1. Initiation Phase
In this first phase, the project's purpose is identified. This could involve addressing a problem
or taking advantage of a new opportunity. A feasibility study is conducted to determine if the
project is possible and valuable, and then a solution is selected. Once approved, the project
manager is appointed, and initial plans are outlined. Approval is then sought to move to the
next phase.
2. Planning Phase
This phase involves detailed planning for the project. The team defines all the tasks and
resources required, creates a project schedule, and sets a budget. This is where risk management
is also conducted, identifying potential issues and solutions to avoid delays or problems.
Stakeholders are identified, and a communication plan is set up to keep everyone informed.
Quality standards are also established to ensure a high-quality result. Once everything is
documented, the project is ready for execution.
3. Implementation (Execution) Phase
In this phase, the project plan is put into action. The project manager monitors progress,
communicates with the team, and makes any adjustments needed to stay on track. Regular
reports are reviewed to ensure the project is progressing as planned. Any changes or delays are
documented, and stakeholders are updated regularly. The aim is to complete all tasks and meet
the project’s objectives as specified.
4. Closing Phase
In the final phase, the project wraps up. Deliverables are handed over to the customer,
documentation is organized, and resources are released. A lessons-learned review is conducted
to capture what worked well and what didn’t. This helps improve future projects by sharing
insights and experiences.
These four phases together form the project life cycle, guiding a project from its start through
to completion.
Purpose of FTR:
● The purpose of an Formal Technical Review (FTR) is to identify errors in function,logic and
implementation of software.
● It is used to verify that the software under review meets its requirements.
● It ensures that the software has been represented according to predefined standards.
● It also helps to achieve software that is developed in a uniform manner and to make projects more
manageable.
Process of FTR
1. Orientation: Participants familiarize themselves with the product being reviewed.
2. Preparation: Reviewers examine the product individually to identify defects.
3. Review Meeting: Conducted by a moderator, the team discusses identified defects.Suggestions for
improvement are documented.
4. Follow-up: The author resolves issues identified during the review. The moderator ensures that all
actions are completed.
Roles in FTR
1. Moderator: Facilitates the review process.
2. Author: Presents the product and implements corrections.
3. Reviewer: Examines the product and provides feedback.
4. Scribe/Recorder: Documents findings and outcomes of the review.
Requirement Engineering
Requirement Engineering is the process of systematically gathering, analyzing, documenting, and managing
the requirements of a software system. Its goal is to ensure that the system meets the needs and
expectations of stakeholders. It involves stages such as requirement elicitation, specification, validation,
and management.
Requirement Elicitation
Requirement elicitation is a crucial step in requirement engineering, aiming to understand the stakeholders'
needs, the environment in which the system will operate, and the features required for the new system. Its
purpose is to bridge the gap between vague stakeholder ideas and concrete system requirements.
2. Brainstorming:
Brainstorming is a group-based requirement elicitation technique aimed at generating a large number of
ideas quickly. It fosters creativity and innovation among stakeholders to better understand the system’s
requirements.
Steps in Brainstorming:
1.Preparation: Select participants and a trained facilitator. Define the agenda clearly.
2. Conducting the Session: Encourage unrestricted idea sharing without criticism. Record all ideas visibly
for participants to view. Use creativity tools like mock-ups or provocative problem statements to spark
discussions.
3. Post-Session Activities: Review and refine ideas, resolving incomplete ones. Categorize and prioritize the
final list of requirements. Prepare a detailed report in simple language for clarity.
Advantages:
Encourages creativity and innovation.
Helps uncover unconventional ideas and solutions.
Provides a platform for stakeholders to share concerns and expectations.
3. Questionnaires:
Questionnaires are a requirement elicitation technique involving a series of structured or unstructured
questions designed to collect specific information from stakeholders. This technique is particularly useful
when information must be gathered from a large group efficiently.
2. Open Questions: Allow respondents to provide descriptive, detailed answers. Useful for gathering
opinions, ideas, and new perspectives.
4. Facilitated Application Specification Technique (FAST):
Its objective is to bridge the expectation gap– difference between what the developers think they are
supposed to build and what customers think they are going to get. A team-oriented approach is developed
for requirements gathering.
Project Integration Management: This sits at the centre of all knowledge areas, ensuring that they work
together effectively. Integration management coordinates processes and activities to achieve project goals.
Tools and Techniques: Various tools, such as project management software, Gantt charts, and progress
reports, help in planning, tracking, and controlling project tasks and resources.
Project Portfolio: A collection of projects, which, when successfully managed, contribute to Enterprise
Success. Each individual project is aimed at achieving project Success, but collectively, they align with the
organization's strategic goals and objectives.
Q7. Write a short note on cocomo model. OR Different types on cocomo model.
COCOMO Model:
The Constructive Cost Model (COCOMO) is a software cost estimation model proposed by Barry W. Boehm
in 1981. It is a single-variable regression model that predicts the effort and development time required for
software development based on project size, measured in KLOC (thousands of lines of code). COCOMO is
particularly useful for project managers and software engineers to make informed decisions regarding
project planning and resource allocation.
2. Intermediate COCOMO:
This model extends the Basic Model by incorporating additional cost drivers that account for various
project attributes, such as product reliability, team experience, and development environment.
It provides a more refined estimate by considering factors like Required software reliability,
Database size, Product complexity.
The effort estimation formula is similar to the Basic Model but includes multipliers for the cost
drivers: E (Effort) = a *(KLOC)b * EAF (in Person-Month)
3. Detailed COCOMO:
The Detailed COCOMO model includes all the features of the Intermediate model and further
breaks down the project into phases (e.g. requirements, design, implementation, testing).
It allows for a more granular analysis of effort and cost by considering the impact of various phases
on the overall project.
This model is suitable for large and complex projects where detailed planning and estimation are
These principles emphasize proactive, collaborative, and systematic approaches to identifying and
managing software development risks.
3. Risk Analysis
o Qualitative Analysis: Assess the probability and impact of risks. For example:
Uncertainty: Risk may or may not occur.
Loss: If the risk materializes, it results in unwanted consequences.
o Quantitative Analysis: Evaluate risks numerically by calculating risk exposure using
RE = P × C, where P is the probability and C is the cost impact.
6. Risk Assessment
o Reassess risks to validate the estimates of probability and impact.
o Rank risks and analyze compound effects of multiple risks on project objectives.
Q10. What is the purpose of risk analysis and assessment? Also explain proactive and reactive risk
strategies.
Purpose of Risk Analysis and Assessment
The purpose of risk analysis and assessment in software project management is to identify, evaluate, and
manage uncertainties that could impact project outcomes. It aims to:
1. Identify Potential Risks: Determine what could go wrong during the project lifecycle.
2. Evaluate Likelihood and Impact: Analyse the probability of risks occurring and their potential
impact on project scope, schedule, cost, and quality.
3. Prioritize Risks: Rank risks based on their severity to focus on critical ones.
4. Develop Mitigation Strategies: Plan measures to minimize or avoid the occurrence of risks and their
consequences.
5. Improve Decision-Making: Support proactive decision-making to enhance project success rates.
6. Ensure Project Stability: Provide a framework to monitor, manage, and control risks throughout the
project.
2. Class Diagram
A Class Diagram is used to represent the structure and behavior of a system by illustrating its classes, attributes,
operations (methods), and the relationships between the classes. It serves as a conceptual model of the system,
capturing the static view of the system’s entities and their interactions. Class diagrams are essential in requirement
capture and end-user interaction, and more detailed versions are used by developers.
3. Sequence Diagram
A Sequence Diagram is used to model the interaction between objects in a system over time. It shows how objects
communicate with each other by sending messages, and is particularly useful for visualizing single-scenario
situations. The diagram emphasizes the control focus in objects and can include various types of interaction
messages such as synchronous, asynchronous, and simple.
4. State Diagram
A State Diagram is used to describe the behavior of a system by modeling the different states an object can be in as
events occur. It represents the life cycle of an object in a system, tracking its transitions between states through
various events. Typically, state diagrams focus on a single class and are used to demonstrate the object's behavior
across different use cases.
Key elements of a state diagram include:
States: Represented by rounded boxes, indicating the condition of an object.
Transitions: Arrows showing how the object moves from one state to another due to events or conditions.
Activity: Depicts the actions the object performs while in a particular state.
Definition The Spiral Model combines iterative The Incremental Model divides the system
development with risk management, focusing into small, manageable parts (increments)
on repeated cycles or spirals. that are developed and delivered one at a
time.
Focus The Spiral Model highlights risk management The Incremental Model focuses on
and iterative refinement. delivering functional parts of the system in
stages.
Risk Handling The Spiral Model explicitly identifies, The Incremental Model handles risks
evaluates, and mitigates risks at every phase. gradually as increments are added.
Phases The Spiral Model includes planning, risk The Incremental Model ensures that each
analysis, engineering, and evaluation in each increment undergoes requirements
cycle. analysis, design, development, and testing
Flexibility The Spiral Model is highly adaptable due to The Incremental Model is less flexible, but
continuous risk analysis and iterative future increments can adapt to changes.
refinement.
Complexity The Spiral Model is suitable for complex and The Incremental Model is suitable for
high-risk projects. simpler projects with well-defined
requirements.
Time to The Spiral Model takes longer to deliver as it The Incremental Model provides quicker
Deliver focuses heavily on risk management. delivery of functional parts.
Customer The Spiral Model involves customer feedback The Incremental Model considers
Feedback in every cycle to refine the product customer feedback after delivering each
continuously. increment.
Cost The Spiral Model is more expensive due to its The Incremental Model is more cost-
rigorous risk management and iterative efficient for projects with clear
approach. requirements.
Usage The Spiral Model is commonly used for large, The Incremental Model is used for smaller
critical, and complex projects. projects requiring faster delivery.
Key Features:
Iterative Development: Work is divided into small iterations, allowing teams to develop, test, and
deliver functional components in manageable cycles.
Stakeholder Collaboration: Small, dedicated teams work closely with stakeholders to create quick
prototypes, proofs of concept, or other visual tools that help clarify and solve the problem.
Integrated Testing: The team defines iteration-specific requirements, develops code, runs integrated
tests, and engages users to verify results early in the process.
Advantages:
Early Verification: Agile ensures that verification happens much earlier in the process compared to
the traditional Waterfall model. This allows stakeholders to fine-tune requirements when changes
are still relatively easy to implement.
Flexibility and Adaptability: Agile enables continuous improvement by quickly responding to
changes in requirements or priorities.
Popular Agile Methodologies:
Scrum: Focuses on sprints, daily stand-ups, and defined roles to manage and execute work
efficiently.
Extreme Programming (XP): Places emphasis on technical excellence, including practices like pair
programming and continuous integration.
Q22. Write a short note tools and techniques used in quality control
Ans:
Tools and Techniques Used in Quality Control
Quality control (QC) involves monitoring and ensuring the quality of products or services by identifying
defects and implementing corrective actions. The following tools and techniques are commonly used in QC:
1. Statistical Process Control (SPC)
o Uses statistical methods to monitor and control processes.
o Includes tools like control charts to track variations and trends in production.
2. Check Sheets
o Structured forms used to collect and analyze data in real-time.
o Help identify patterns and frequency of defects.
3. Flowcharts
o Visual representations of processes to identify bottlenecks and inefficiencies.
o Useful for mapping steps and identifying areas for improvement.
4. Histogram
o Graphical representation of data distribution.
o Helps analyze variations and detect anomalies in quality.
5. Control Charts
o Monitor process stability over time.
o Detect trends, shifts, or outliers in production.
6. Scatter Diagrams
o Display relationships between two variables.
o Used to identify correlations that may affect quality.
7. Inspections
o Manual or automated examinations of products or processes.
o Ensures conformity to standards and specifications.
8. Six Sigma Methodology
o Data-driven approach focused on reducing defects and improving quality.
o Utilizes DMAIC (Define, Measure, Analyze, Improve, Control) framework.