SPD Unit 1-2-
SPD Unit 1-2-
2
Q6) Project Management life cycle
A project management life cycle is a framework Q7) Outline the general approach that might be
encompassing of a set of different high-level stages taken for project planning in an organize
essential to transform an idea of concept into reality in an A structured approach to project planning involves several
orderly and efficient manner. Projects are temporary key steps that help define the project’s objectives,
activities of the organization and have definite aims. They deliverables, resources, timelines, and potential risks. Here
do not form the core activity of the organization. Project is a step-by-step outline of the general approach to project
life cycles is also used in all works o fLife. Like in planning:
aerospace, government offices, hospitals, hotel, etc. The Step 1: Define Project Objectives and Scope
Project Lifecycles defines the different rational stages in 1)Establish Project Goals: Determine the overall purpose,
the life of a project, and it starts from the incorporation of objectives, and desired outcomes of the project.
the project till the end. The project life cycle structure Define the Project Scope: Specify what is included in the
project and what is not. Clearly outline the deliverables and
1. Project Initiation boundaries to prevent scope creep.
Project initiation is the first stage in Project Management Identify Stakeholders: List all stakeholders involved in or
life cycle, where the project starts rolling. It offers a affected by the project, including their roles and
summary of the project, along with the tactics which are expectations.
essential to achieve the desired results. In this stage, the Step 2: Gather and Document Requirements
feasibility and business value of the project are Conduct Requirements Analysis: Collect and document
determined. the functional and non-functional requirements from
stakeholders and users.
2. Project Planning – Define Acceptance Criteria: Establish criteria for
A lot of planning is associated with the project in this deliverables that define what constitutes successful
phase. On identifying the project objectives, it is time to completion.
develop a project plan which could be followed by all. Step 3: Develop a Work Breakdown Structure (WBS)
The planning phase decides a set of plans which will Break Down Project Tasks: Decompose the project into
guide the team in implementing the phase and thereafter smaller, manageable tasks or components.
closing it. Organize Tasks in a Hierarchy: Use a work breakdown
structure (WBS) to organize tasks, making it easier to
3. Project Execution understand project complexity and dependencies
Project execution is the stage where the execution Step 4: Estimate Effort and Resources
processes are applied, works and resources are allocated. Estimate Task Duration: Assess the time required for
The technique includes constructing and satisfying each task based on complexity and resource availability.
customer needs. Project managers or team leaders Identify Required Resources: Determine the people,
achieve the job through resource sharing and by keeping tools, technology, and budget needed for each task.
the team Step 5: Develop a Project Schedule
members focused. Define Task Dependencies: Identify relationships between
4. Project Monitoring and Control tasks, including dependencies and constraints, using tools
The Project Monitoring and Control is all about like dependency diagrams.
measuring the performance of the project and chasing the Create a Timeline: Set start and end dates for each task to
development. It is applied during the execution phase and create an overall project schedule.
the main goal of this phase is to align with the plan Step 6: Identify and Assess Risks
especially related to financial constraints and timelines. It Identify Potential Risks: List potential risks, including delays,
is the accountability of the project manager to make resource shortages, budget issues, and technical challenges.
essential modifications connected to resource allocation Assess and Prioritize Risks: Evaluate the likelihood and impact
of each risk, prioritizing them based on severity.
and guarantee that all the things are on
Step 6: Identify and Assess Risks
track
Identify Potential Risks: List potential risks, including
delays, resource shortages, budget issues, and technical
5. Project Closure
challenges.
The final phase of the Project Management life cycle
Assess and Prioritize Risks: Evaluate the likelihood and
phases is similarly significant as all other phases. This
impact of each risk, prioritizing them based on severity.
phase signifies the final phase of the Project Management
life cycle, which is also recognized as the “follow-up”
phase. During this time, the ultimate product is
completely ready for delivery.
Unit 2(SPD)
3
Q1) Describe the Capers Jones estimating rules of thumb
Capers Jones, a software engineering expert, developed a set of Q2)Define Atern/Dynamic Systems Development Method.
estimating rules of thumb to help estimate software project State and explain eight core principle of it
costs, efforts, and timelines. These guidelines are based on The Atern/Dynamic Systems Development Method
years of industry experience and are aimed at providing rough (DSDM) is an agile project delivery framework designed
estimates for software development activities. These rules of to provide a structured yet flexible approach for delivering
thumb take into account various factors that impact the size,
software projects. Originally created in the 1990s, DSDM
complexity, and cost of software project
is based on rapid application development (RAD)
1. Lines of Code (LOC) Estimation Rule
Rule: The most common and direct method to estimate principles but has evolved to become a comprehensive,
software size is based on the number of lines of code (LOC). agile framework used across various industries. DSDM
Example: If a developer writes 1,000 lines of code for a emphasizes user involvement, iterative development, and a
project, it would take between 5,000 to 10,000 minutes of work strong focus on delivering on time and within budget
(or roughly 83 to 167 hours) to complete it, based on the LOC 1. Focus on the Business Need
rule of thumb Explanation: Projects should only be pursued if they align
2. Function Points (FP) Estimation with business objectives and bring measurable benefits.
Rule: Function Points measure the size of software The primary goal is to deliver value that meets business
based on the number of functions it provides to users needs
(such as inputs, outputs, and user interfaces) and the 2. Deliver on Time
complexity of those functions.
Explanation: DSDM places a strong emphasis on
Example: If you estimate that a software system has 50 user
inputs, 30 outputs, and 10 user inquiries, each function type timeboxing, where tasks are planned within fixed time
will have a certain complexity rating. The total will then be periods. This ensures the project stays on schedule, and
used to estimate the overall effort, often factoring in a function non-essential features can be postponed or reprioritized.
point conversion rate (e.g., hours per function point). 3. Collaborate
3. Rule of Thumb for Development Time Explanation: Collaboration is crucial in DSDM,
Rule: The amount of development time can often be encouraging strong communication among business
estimated as 1 month per 1,000 lines of code for a stakeholders, developers, and users to build trust and better
medium-sized project. understand requirements.
Estimation: A 10,000 LOC project would require 4. Never Compromise Quality
approximately 10 months of development time. Explanation: DSDM upholds that quality should never be
Example: For a project requiring 20,000 LOC, the sacrificed, even when there are constraints on time or
development time could be roughly 20 months. resources. Quality is built into every step of the
4. Productivity Rule development process
Rule: The average productivity in software development 5. Build Incrementally from Firm Foundations
is 50 to 1,000 lines of code per month per developer, Explanation: Development should occur in incremental
depending on the complexity of the project. stages, with each stage building upon a stable foundation.
Example: If a team of 5 developers is working on a system This approach allows for progressive development while
with relatively low complexity, and you estimate their reducing the risk of project failure.
productivity at 100 LOC per month, then the total lines of code 6. Develop Iteratively
they can produce in a month would be: Explanation: DSDM embraces change, understanding that
5 developers × 100 LOC/month = 500 LOC per month. requirements can evolve over time. By developing
If the project requires 5,000 LOC, the team could complete the
iteratively, teams can adapt to changes based on feedback
project in about 10 months
5. Cost Estimation Rule and evolving needs
Rule: The average cost per function point or line of code 7. Communicate Continuously and Clearly
can vary depending on the region and complexity of the Explanation: Clear and ongoing communication among all
project. However, a typical range for software projects is team members and stakeholders is essential. DSDM
Example: For a project requiring 200 function points, if the promotes transparency, enabling quick decision-making
cost per function point is $150, then the estimated cost would and problem-solving.
be: 8. Demonstrate Control
200 FP × $150/FP = $30,000. Explanation: Project control is essential to ensure the
8. Testing Time Rule project stays on track and within scope. DSDM emphasizes
Rule: Testing typically takes about 50% to 100% of the structured project management to keep all activities
total development time. This is a rule of thumb for how organized and aligned with goals.
much time is needed for quality assurance and bug fixing.
Example: If development takes 6 months, then testing
might take an additional 3 to 6 months.
4
Q3)COCOMO II stages Q4)Discuss the common problem faced during effort
COCOMO II (Constructive Cost Model II) is an estimation
advanced model for estimating the cost, effort, and Effort estimation is a key process in software development,
time required for software development projects. used to predict the amount of effort required to complete a
Developed by Barry Boehm and his team, COCOMO II project or a specific task within a project. Effort is typically
measured in person-hours, person-days, or person-months, and
builds upon the original COCOMO model, incorporating
represents the total time or work required by developers, testers,
adjustments for modern software practices and a wider designers, and other project personnel to deliver a product that
range of project types. COCOMO II is widely used meets the specified requirements.
because of its flexibility and adaptability to different 1.Unclear Requirements
software development environments, especially as it can Issue: If project requirements are not well-defined or
handle iterative and incremental development. change frequently, it becomes difficult to estimate the work
1. Applications Composition Model involved accurately
Purpose: Used early in the project when the requirements Impact: Leads to underestimation or overestimation of
are not fully defined, and the project scope is still effort, often requiring reevaluation and adjustments that
flexible. disrupt project timelines.
Characteristics: This stage is best suited for rapid 2. Lack of Historical Data
prototyping and GUI-oriented applications. Estimates are issue: Many organizations lack a repository of past project
based on high-level “object points” (e.g., screens, reports, data, such as time spent on similar tasks, resource
components) and are suitable for projects where you can utilization, or code complexity.
quickly develop a functional prototype. Impact: Without historical benchmarks, teams may rely on
Estimation: Object points are counted and adjusted assumptions rather than data-driven estimates, reducing the
based on complexity and developer productivity levels. accuracy of effort estimation.
This model provides a quick, rough estimation of efforts. 3. Ignoring Non-Development Tasks
Example Use Case: Estimating the resources for a customer
relationship management (CRM) system after initial planning
Issue: Effort estimation often focuses only on coding tasks,
meetings have clarified major modules and user needs. ignoring other essential activities like meetings, testing,
2. Early Design Model debugging, documentation, and deployment.
Purpose: Applied during the early design phase when Impact: This oversight leads to underestimated effort, as
high-level design decisions have been made, but detailed non-development tasks can consume a significant portion
specifications are still not fully developed. of the project timeline.
Characteristics: This stage provides more accuracy than 4. Overconfidence in Productivity Levels
the Applications Composition model and relies on a Issue: Teams may overestimate their productivity based on
rough estimate of the number of lines of code (or function best-case scenarios or optimistic assumptions.
points) along with additional factors called “cost drivers.” Impact: Overconfidence can lead to tight schedules and
These cost drivers include factors like required reliability, underestimated effort, resulting in burnout, delays, and
team experience, and use of modern development tools. quality issues as developers struggle to meet unrealistic
Estimation: The Early Design Model uses simplified equations timelines.
and general cost drivers to estimate effort based on the 5. Misjudging Complexity
expected code size and project-specific factors. Issue: Some tasks may appear simple initially but involve
Example Use Case: Estimating the resources for a customer unexpected complexity or integration challenges that are
relationship management (CRM) system after initial planning not apparent at the estimation phase.
meetings have clarified major modules and user needs. Impact: Misjudged complexity can lead to underestimated
3. Post-Architecture Model timelines, especially if unforeseen technical challenges or
Purpose: Used in the detailed design phase, after the complex business logic arise.
project's architecture and major components have been 6. Difficulty in Estimating New or Unfamiliar
defined. Technologies
Characteristics: The Post-Architecture Model is the Issue: When working with new technologies or tools,
most detailed and precise stage of COCOMO II. It teams may lack the experience to make accurate estimates
applies detailed cost drivers and a more refined set of due to the steep learning curve or unknown complexities.
equations, making it suitable for accurate estimates. Impact: Estimations may fail to account for additional
Estimation: In this model, cost drivers are evaluated at a time spent on learning and problem-solving, leading to
more granular level, and detailed inputs (like module- schedule overruns
specific code sizes and reuse factors) are used. The model
provides estimates for total project effort, schedule, and
resources.
Q5)Sprial model advantages and disadvantags Q6)Discuss Agile and Scrum as a fast delivery approach
5
The Spiral Model is a risk-driven software development of a project in detail
model that combines elements of both iterative and waterfall Agile and Scrum are frameworks and methodologies within
methodologies. Proposed by Barry Boehm in 1986, the Spiral software development that emphasize flexibility, collaboration,
Model is well-suited for large, complex, and high-risk projects, and rapid delivery of functional software. Both approaches are
as it emphasizes continuous risk assessment and mitigation. It designed to accommodate changing requirements and improve
is structured as a spiral, with each loop representing a phase in project delivery speed by breaking down development into
the development process. Each loop in the spiral represents one smaller, iterative cycles
iteration, moving the project closer to the final product. Agile Methodology
The model progresses through four main phases for each Agile is a broad, iterative approach to software
iteration, which are repeated until the project is completed: development that emphasizes customer collaboration,
Planning: Define objectives, requirements, and constraints.
adaptability to change, and incremental delivery. The
Risk Analysis: Identify and analyze risks, and explore
alternatives to mitigate them. Agile Manifesto, published in 2001, outlines four core
Engineering: Design, code, and test the product incrementally. values:
Evaluation: Obtain feedback from stakeholders to make 1)Individuals and Interactions over Processes and Tools.
adjustments before the next iteration. 2)Working Software over Comprehensive
Each loop involves expanding the product's functionalities Documentation.
while refining requirements and testing outcomes, allowing 3)Customer Collaboration over Contract Negotiation.
teams to incrementally improve the system based on feedback Responding to Change over Following a Plan
and risk reassessment Scrum Framework
Advantages of the Spiral Model Scrum is one of the most popular Agile frameworks, designed to
Risk Management: The Spiral Model’s focus on risk manage and control software projects efficiently. Scrum is a
assessment helps identify and mitigate high-risk areas lightweight, team-based framework that breaks down complex
early in each iteration. projects into manageable sprints (iterations), focusing on
Flexibility: Requirements can evolve over iterations, delivering small but valuable increments of software. Scrum
making it suitable for projects with changing divides the project into sprints, typically lasting 2–4 weeks, and
requirements. incorporates roles, ceremonies, and artifacts to ensure structured
progress.
Customer Feedback: The model incorporates regular
stakeholder feedback, allowing for continuous Key Components of Scrum
1.Roles in Scrum:
improvement and realignment with customer needs. Product Owner: Responsible for maximizing the value of the
Phased Development: Allows for incremental releases of product, managing the product backlog, and prioritizing features
the product, making it easier to identify and fix issues based on business goals and customer needs.
progressively. Scrum Master: Facilitates the Scrum process, removes
5 )Enhanced Documentation: Each phase requires obstacles, and ensures the team follows Scrum practices.
detailed documentation, ensuring that project records are 2 Artifacts in Scrum:
maintained and updated iteratively. Product Backlog: A prioritized list of features, bug fixes, and
Disadvantages of the Spiral Model other requirements for the product.
Complexity: The model’s iterative nature makes it Sprint Backlog: A subset of the product backlog selected for
development in a particular sprint.
complex and difficult to manage, especially for smaller
3 Scrum Ceremonies:
projects where formal risk analysis might not be Sprint Planning: A meeting at the start of each sprint where the
necessary. team decides which backlog items to tackle and defines sprint
Costly and Time-Consuming: Each loop requires goals.
thorough planning and risk analysis, making it time- Daily Standup (Daily Scrum): A 15-minute meeting where team
intensive and potentially costly. members discuss what they accomplished yesterday, what they
Dependency on Risk Assessment: The model relies will do today, and any roadblocks they face.
heavily on accurate risk assessment, which can be Challenges of Agile and Scrum
challenging without experienced personnel. Scope Creep: The flexibility of Agile can lead to scope creep if
Overlapping Phases: The model’s overlap of planning requirements are not managed effectively.
Requires Experienced Teams: Agile and Scrum require self-
and development can lead to confusion if not managed
organizing, cross-functional teams who can communicate
effectively. effectively and manage responsibilities.
Not Suitable for Small Projects: Due to its complexity Dependency on Stakeholder Involvement: Regular feedback is
and focus on risk management, the Spiral Model is necessary for Agile success, but this depends on the availability
generally unsuitable for smaller or less complex projects and engagement of stakeholders.
Difficulty with Larger Teams: Agile and Scrum are easier to
implement in smaller teams, and scaling up can lead to
coordination challenges
1.1.5 Housing/Body
1.1.6 Sensors (e.g., fingerprint sensor, accelerometer,
gyroscope)
1.2 Software
1.2.1 Operating System (OS)
1.2.2 User Interface (UI)
1.2.3 Pre-installed Apps
1.2.3.1 Messaging App
1.2.3.2 Camera App
1.2.3.3 Settings App
1.3 Accessories
1.3.1 Charger
1.3.2 Earphones
1.3.3 Instruction Manual
11
12