SPM Unit1 Part-1
SPM Unit1 Part-1
SPM Unit1 Part-1
(KOE-068)
UNIT-1 (Part-1)
(Introduction to Software Project Management)
Content
• Software project
• Software project management
• Causes of SPM failure
• Need of SPM
• Triple constraints for software projects
• Software project manager
• Software management activities
• Need identification
– Steps in need identification
– Need identification techniques
• Vision and scope document
• Project management life cycle
• SPM objective (SMART)/ management principle
• Management spectrum
• SPM framework
Software Project
A Software Project is the complete procedure of software development from
requirement gathering to testing and maintenance, carried out according to the
execution methodologies, in a specified period of time to achieve intended software
product.
Software project management is the art and science of planning and leading
software projects. It is a sub-discipline of project management in which software
projects are planned, monitored and controlled.
Causes of SPM failure
• Unrealistic project goals
• Inaccurate estimates of needed resources
• Badly defined system requirements
• Unmanaged risks
• Poor communication among customers, developers and users
• Use of immature technology
• Inability to handle projects complexity
• Poor project management
Need of software project management
• Software is said to be an intangible product. Most software products are tailor
made to fit client’s requirements. The most important is that the underlying
technology changes and advances so frequently and rapidly that experience of one
product may not be applied to the other one. All such business and environmental
constraints bring risk in software development hence it is essential to manage
software projects efficiently.
Triple constraints for software projects
Software Project Manager
In the process of requirement elicitation there are four main categories of participants:
• The facilitator, who acts as a chairperson of the meeting, has a critical role in
organising the work of the requirements negotiation team.
• The users, who are people involved in using the system, are the “owners” of the
problem.
• The analyst, who is a representative of the design team, has a key role in the
transfer of the requirements from the “problem owners” to the design team.
• The design team, who are the system implementers, are responsible to meet the
elicited requirements.
Steps in need identification
1. Assess the business and technical feasibility for the proposed system.
2. Identify the people who will help satisfy requirements and understand their
organizational bias.
3. Define the technical environment (e.g. operating system, telecommunication
needs) into which the system or product will be placed.
4. Identify “domain constraints” that limits the functionality or performance of the
system or product tobe built.
5. Define one or more elicitation methods (eg interviews, team meetings)
6. Solicit participation from many people so that requirements are defined from
different point of view.
7. Identify ambiguous requirements as candidates for prototyping.
8. Create usage scenarios to help customers/users better identify key requirements.
Need identification techniques
1. Traditional techniques includes a broad class of generic data gathering techniques. These includes
the use of questionnaires and surveys, interviews, and analysis of existing documentation such as
organisational charts, process models or standards and user or other manuals of existing systems.
2. Group elicitation techniques aim to foster stakeholder agreement and buy-in, while exploiting
team dynamics to elicit a richer understanding of needs. They include brainstorming and focus
groups.
• Brainstorming: they are used to let the stakeholders come up with creative ideas or new approaches
to a problem.
• Workshops: are facilitated meetings with multiple stakeholders to draw out and document
requirements.
• Interviewing: are in-person meetings where the business analyst asks questions to get information
from the stakeholders.
• Surveys: are used to gather information anonymously from the stakeholders.
• Documentation review: is the process of obtaining requirements from written documentation such as
manuals.
• Focus groups: are group interviews where the business analyst raises issues and questions to obtain
information from the stakeholders.
• Observation: is when the business analyst watches the users performing their daily tasks and ask
questions about the tasks and work.
3. Prototyping has been used for elicitation where there is a great deal of uncertainty about the
requirements, or where early feedback from stakeholders is needed.
4. Model-driven techniques provides a specific model of the type of information to be gathered, and use
this model to drive the elicitation process.
5. Cognitive techniques includes a series of techniques originally developed for knowledge acquisition
Vision and scope document
1. Problem statement
A) Project background
B) Stakeholders
C) Users
D) Risks
E) Assumptions
2. Vision of solution
a) Vision statement
b) Lists of features
c) Scope of phased released (optional)
d) Features that will not be developed
Project management life cycle
2. Measurable: While working on setting your goals, it’s important to understand that they need to be measurable
ones, so that you can track them. Set milestones or specific tasks to accomplish during your project, and track
and assess your progress.
3. Achievable: In order for your goals to be achievable, they also need to be realistic ones. They should feel
challenging but still remain possible. So, take a close look at any possible previously overlooked opportunities,
and think about the resources you will need to bring your goal to completion. These resources might translate to
developing new skills, so think about what you will need in order to acquire them and how long this will take
you.
4. Relevant: You need to be sure your goal matters to you, and it is also necessary that your goal aligns with other
goals; whether they might be different and broader business goals or personal goals along the way.
5. Time-bound: This step is about working with the right time-set in mind. You need to have a clear deadline to
truly focus on accomplishing your goal. Think about it as a project with no finish line; you wouldn’t know where
and when to start. Setting clear deadlines is imperative to goal accomplishment.
The Management Spectrum:
The management spectrum focuses on the four P’s; people, product, process
and project. Here, the manager of the project has to control all these P’s to have
a smooth flow in the progress of the project and to reach the goal.
The four P’s of management spectrum are
• People
• Product
• Process
• Project
The People:
• A framework represents the information model for the objects that can be described
during software process management. Activities involved to achieve objective are:-
1. Defined and determined the scope of SPM.
2. Defined a framework for SPM using information model technique.
3. Defined a framework for SPM using domain analysis technique
4. Designed a generic framework for SPM.