SlideShare ist ein Scribd-Unternehmen logo
1 von 16
An Overview of the Software Project Management
What is a Management?
Management is the process of gettign things done through others, it is the process of
coordinating people & other resources to achieve the goals of the organization. Management
is the practice of executing & controlling the projects & involves the following activities:
 Planning-deciding what is to be done.
 Organizing- making arrangement.
 Staffing-selecting the right people for the job.
 Directing-giving instruction.
 Monitoring-checking on progress.
 Controlling-taking action to remedy hold-ups.
 Innovation-coming up with new solutions.
What is a Project?
A project is a set of related tasks that are coordinated to achieve a specific objective in a
given time limit. A project is well-defined task, which is a collection of several operations
done in order to achieve a goal (for example, software development & delivery). Key
characteristics that distinguish project are as follows:
 A project achieves a specific objective”
 Every project may has a unique & distinct goal
 Project is a planned activity & also requires planning
 In a Project work is to be carried out in several phases & in time & resource
constraints
 Projects are done in coordination & typically involve many people - a team
What is a Software Project?
Software is the program & all associated documentation & configuration data which is
needed to make these programs operate correctly.
A Software Project is the complete procedure of software development from requirement
gathering to testing & maintenance, carried out according to the execution methodologies, in
a specified period of time to achieve intended software product.
What is Software Project Management?
Generally the project management includes the activities like initiating the processes,
planning activities, executing processes & the practical implementation, supervision & the
monitoring processes & then the closeout activities.
Software project management includes the knowledge, techniques, & tools necessary to
manage the development of software products. Some characteristics of the software project
management are as follows:
 Product
It is the outcome or the output & it is the combination of the different modules or the
programs.
 Invisible
The software product is invisible because it has no physical appearance at all.
 Sensitivity
The software products are sensitive they have more restrictions, rules for coding that
may be for syntax or semantics errors.
 Quality Assurance
Quality is the basic need for any software product & quality assurance is necessary.
 Monitoring
It includes the testing & inspection activities & error removing & error detection
techniques.
Project Management Components:
Some of the main components of the project management are as follows:
i. Resources:
Each activity requires some resources for its processing. Examples of
resources are: machines & tools, human & their skills, raw materials & natural
resources (energy, water, l&, etc.), information, money etc.
ii. Activities
Each activity is characterized by: resource requirements, processing model, &
precedence constraints with other activities, but other parameters can occur in
the problem formulation as well.
iii. Objectives
Some objectives may be related to time, as they concern temporary usage of
renewable & doubly constrained resources, whereas others to cost, as they
deal with consumption of nonrenewable & doubly constrained resources.
iv. Schedules
A schedule is defined by a sequence of activity start & completion times, but it
is insufficient for problems where activities can be executed in multiple
modes.
A schedule is “time-feasible” if it satisfies all time constraints defined for the
project, & a project is “resource-feasible” if all resource constraints are met. A
schedule is said to be feasible if it is both time- & resource-feasible.
v. Stake holders
Every project has stakeholders. Stakeholders are people who have an interest
in the successful completion of the project. There are many different types of
stakeholders, & the stakeholders vary by project. The stakeholders should
have some part in defining the project objectives, since they are the people
who will be affected by the outcome. Some of the stake holders are
customers/clients, sponsors, company, team members & the project manager.
Goals of Project Management:
Every project has some goals which are also on management side. Some of the goals are as
follows:
1) Performance
Performance deals with what actually is required for the project, does it meets it
intended functionality & standards.
Performance is directly related to the time & cost
2) Cost
Cost factor is important factor in the whole project. We cannot exceed the cost &
must be proper cost estimation for every phase in the project & development lifecycle.
3) Time
Every project should be done in the given time frame & time constraints which are
well for the successful project completion.
Performance Cost
Time
Dimensions of Software Project Management:
The four dimensions that influence the management of the software project includes the
whole process of the development, the other dimensions is the people involved in the project,
the third dimension is the product & the technology relation & fourth dimension is the
relation of the product & the customers.
What is Project Planning?
Software Project planning defines the project activities & end products that will be performed
& describes how the activities will be achieved or completed successfully. The purpose of
project planning is to define each major task, estimate the time & resources required, &
provide a framework for management review & control. The project planning activities &
goals include defining:
 The specific goals that defines the project & the specific tasks to be performed
 Estimates to be documented for planning, tracking, & controlling the project & the
Project alternatives, assumptions, & constraints
 The commitments that are planned, documented, & agreed to by affected groups &
the stakeholders
Product & Customers
Process
People Product & Technology
The software project planning is the process that includes steps to estimate the size of the
project, the estimation of the technical scope of the effort, planning process includes the
estimation of the resources required for the completion of the project & the process to
produce a schedule, identify risks & risk management.
Steps in the Planning Process
The Software Project planning process consists of the following basic tasks which are
required for the successful completion of the Software Project
 Define & sequence the tasks to be performed, schedule all tasks to be performed &
also define the relations between tasks
 Estimate the resources & budget required to perform each task
 Define the organization used to execute the project
 Identify the known risks in executing the project
 Define the process used for quality assurance
 Define the process used for specifying & controlling requirements
The project plan represents the basic tool for successfully executing a project. The following
figure depicts the evolutionary nature of the project plan.
i. Planning in the Concept Phase
In the project’s concept phase, a need that would result in a product is identified.
While only very general information may be known about the project at this time, it is
important to capture this information for the planning phase. In this stage, the focus of
planning is on the project definition & on getting the project underway. A strategy for
deriving a solution to the stated goals is important at this point. The problem being
addressed by the project is clearly stated; the project goals & objectives are identified;
& success criteria for the project are documented.
ii. Planning in the Planning Stage:
The project plan is completed in the Project Planning & Risk Identification stage of a
project. For large projects, this stage may be run as a mini-project, with a team of
people dedicated to performing the effort. For very small projects, the plan may be
developed by a group of people as a part-time job. Since various skill sets are
required to complete a successful project plan, it is a difficult task for one person to
develop the entire plan.
During this project stage, details of the plan are determined & an approach is defined.
The full project plan is then developed.
The plan may include the following elements like a brief project summary, a work
breakdown structure, a project organization chart, a schedule, an approach, a list of
identified risks, an estimated budget & cost, a list of deliverables, a description of
planned quality activities, a description of the configuration management process to
be used, & a summary of project requirements.
iii. Planning in the Project Start-up Stage
The project start-up stage is typically a short period that transitions a project from the
planning to the execution stage. In the start-up stage, the team is assembled & a
kickoff meeting is held to familiarize the team with the elements of the plan & the
requirements of the system.
Specify the activities being performed by the teams, as well as the cost & schedule
associated with those activities & plans are developed from strategies defined in the
project planning stage.
iv. Planning in the Project Execution Stage
Planning in the project execution stage consists of replanning when it is determined
that the project is not on track with the current plan. This might occur for a variety of
reasons. It is very important to know that project plans will change & that replanning
is a natural part of the planning process. It is better to replan than to simply throw
away the original plan & operate without a plan.
v. Planning in the Project Close-out Stage
A close-out process is performed once the project objectives have been met. Closing a
project should be fairly routines. The first step is acceptance of the system by the
users. It is important that the user decides when the project is completed.
The determination is based upon the success criteria defined in the very early concept
& planning stages of the project. This acceptance may be very informal or it may be
very formal & depends upon the criteria defined in the plan.
What is Project Monitoring?
Project monitoring process is an interactive part of tracking and is firmly tied to project
planning. Project monitoring takes the outputs of tracking and uses them to determine
planned versus actual.
In monitoring we compare the current status with the target status whether we are going right
or not. Monitoring need a plan, schedule data. It is a continuous process that performs the
control exercise over the project. It also helps in ensure the project to meet its target.
What is Project Scheduling?
As the planning is importance in the project similar the Scheduling is also necessary in the
project to make it run efficiently.
Scheduling is the process of assigning specific resources to tasks in relation to a specific
calendar time. Key steps include collecting duration estimates for each task, inspecting the
organization’s calendar for holidays & other closings, checking the calendar of team
members, & developing time lines that show the start & end dates of each task.
How long will each activity take & how long will the entire project take?
 Split project into tasks & estimate time & resources required to complete each task
 Organize tasks concurrently to make optimal use of workforce
 Minimize task dependencies to avoid delays caused by one task waiting for another to
complete
Software project management is an application of knowledge, skills, tools and technique to
solve project scheduling problem. Research into developing effective computer aided
techniques for planning software projects is important and challenging for software
engineering. Different from projects in other fields, software project development is a human
centric activity. Software development organizations often struggle to deliver projects on
time, within budget and with the required quality. One possible cause of this problem is poor
software project management and, in particular, inadequate project scheduling and ineffective
team staffing. Staffing a software project is tedious activity. Manager is supposed to choose
from the team of employees, there could be possibility of many combinations.
Employee allocation or staff scheduling is an important factor when software development is
considered as a value-driven business.
 Identify Activity:
It is the process of identifying activities that are required to perform to
produce the various project deliverables.
 Identify Activity Dependencies:
It is the process of identification & documentation of interactivity
dependencies.
 Allocate Resources:
It is the process in which resources are allocated which will be needed to
complete individual activities.
 Create Project Charts:
It is the process in which project activity charts are created for the analysis of
activity sequences, activity durations, and resource requirements to create the
project schedule.
 Allocate People To Activities:
It is the process to allocate peoples to the different activities according to their
tasks.
The project schedule provides a graphical representation of predicted tasks, milestones,
dependencies, resource requirements, task duration, and deadlines.
A schedule is defined by a sequence of activity start times, but it is insufficient for problems
where activities can be executed in multiple modes. Thus, in these cases additional
information about processing modes is necessary.
A schedule is time-feasible if it satisfies all precedence and time constraints defined for the
project, and resource-feasible if all resource constraints are met. A schedule is said to be
feasible if it is both time- and resource-feasible. An optimal schedule is a feasible schedule
for which a given performance measure is optimized.
During the life of the project, actual progress is frequently compared with the original
schedule. This allows for evaluation of development activities. The accuracy of the planning
process can also be assessed.
Estimate Task Duration:
Estimating task duration is one of the most challenging aspects of project planning. It is also
a key to later cost estimation. This is a refined process that occurs throughout the planning
process, as it is directly affected by results of the staffing and costing activities.
Accurate task duration estimates are defined in order to stabilize customer relations and
maintain team morale. With defined task durations, the team knows what to expect and what
is expected of them.
The estimation process is complex because activity duration is affected by numerous
variables that must be dealt with concurrently in the planning phase. Some of these variables
include staff availability, the skill level of the person assigned to the task, unexpected events,
efficiency of work time, and mistakes and misunderstandings during the development of the
project.
Define Priorities:
Clearly defining the task priorities helps to resolve any scheduling and/or resource conflicts.
Understanding the priorities and relationships of the tasks assists in resolving difficult
scheduling conflicts.
Risk Management
What is Risk?
Risk is defined as “The possibility of suffering harm, loss or danger.” Even if we’re not
familiar with the formal definition, most of us have an innate sense of risk. Experience has
taught us to look both ways before stepping off the curb and most of us at least think twice
before ordering a steak. Indeed, we manage personal risks every day.
Risk Management:
Risk Management is the art and science of identifying, analyzing, and responding to risk
factors throughout the life of a project.
What is Project Risk?
A risk is any factor or reason that may potentially interfere with successful completion of the
project. A risk is not a problem, a risk is the recognition that a problem might occur. By
recognizing potential problems, the project manager can attempt to avoid a problem through
proper actions.
Risk Management Process:
The procedure that the team will use to manage project risks is defined in the planning stage,
documented in the project plan, and then executed throughout the life of the project. Risk
management deals with the following risk phases:
 Risk identification
 Risk analysis and quantification
 Risk mitigation planning
 Risk response
The Risk Management Plan documents the procedures used to manage risk throughout the
project. In addition to documenting the results of the risk identification and analysis phases, it
must cover who is responsible for managing various areas of risk, how risks will be tracked
throughout the life cycle.
Project risks are identified and carefully managed throughout the life of the project. It is
particularly important in the planning stage to document risks and identify reserves that have
been applied to the risks.
There are various areas that can affect a project, including:
 Schedule Risk
 Cost Risk
 Requirement Risk
 Quality Risk
 How great a change will result from the project
Risk identification consists of determining risks that are likely to affect the project and
documenting the characteristics of those risks. No attempt should be made to identify all
possible risks that might affect the project, but anything likely to occur should be included in
the analysis.
Risk management is the process of assuring that all problems are discovered early enough so
that there is time to recover from the problem without missing schedules or overspending the
budget. Control mechanisms are put in place in order for the feedback to occur at the proper
time.
What is Risk Assessment?
Risk assessment consists of the two traditional components: risk identification and risk
prioritization.
Risk Identification:
The risk identification activity focuses on listing possible risks to the project. The basic
activity is to try to focus all situations that might make things in the project go wrong. The
purpose of the risk assessment task is to identify the risks, analyze them, and then prioritize
them.
Risk Prioritization:
The risk prioritization activity considers all aspects of all risks and then prioritizes them. In
prioritizing risks, we identify the risks that should be managed. In other words, prioritization
determines where the extra effort of risk management should be spent to get the maximum
benefit.
Software Project Estimation
For an effective software project management the accurate estimation of various project
measures is necessary. With correct software project estimation the managers can manage &
control the project more efficiently and effectively. Project estimation may involve the
following:
i. Software size estimation
Software size may be estimated either in terms of KLOC (Kilo Line of Code)
or by calculating number of function points in the software. Lines of code
depend upon coding practices and Function points vary according to the user
or software requirement.
ii. Effort estimation
In this process the managers estimate efforts in terms of personnel
requirement and man-hour required to produce the software. For effort
estimation software size should be known.
iii. Time estimation
The time required to produce the software can be estimated after the
estimation of the size & efforts. Software tasks are divided into smaller tasks,
activities or events by Work Breakthrough Structure (WBS). The tasks are
scheduled on day-to-day basis or in calendar months.
The sum of time required to complete all tasks in hours or days is the total
time invested to complete the project.
iv. Cost estimation
This might be considered as the most difficult of all because it depends on
more elements than any of the previous ones. For estimating project cost, it is
required to consider the following:
 Size of software
 Software quality
 Hardware
 Additional software or tools, licenses etc.
 Skilled personnel with task-specific skills
 Travel involved
 Communication
 Training and support
Project Estimation Techniques:
Project manager can estimate the listed factors using two broadly recognized techniques –
1) Decomposition Technique
This technique assumes the software as a product of various compositions. There are two
main models:
 Line of Code Estimation is done on behalf of number of line of codes in the software
product.
 Function Points Estimation is done on behalf of number of function points in the
software product.
2) Empirical Estimation Technique
This technique uses empirically derived formulae to make estimation. These formulae are
based on LOC or FPs.
 Putnam Model
This model is made by Lawrence H. Putnam, which is based on Norden’s frequency
distribution. Putnam model maps time and efforts required with software size.
 COCOMO
COCOMO stands for Constructive Cost Model, developed by Barry W. Boehm. It
divides the software product into three categories of software: organic, semi-
detached and embedded.
Software Quality Assurance
The goals of software quality assurance (SQA) are monitoring the software and its
development process, ensuring compliance with standards and procedures, and ensuring that
product, process, and standards defects are visible to management.
Many organizations make use of a quality assurance plan, which sets out standards to be
maintained during project development.
Documentation standards:
Documentation standards are about what type of documents should be documented &
what should be their format & the content.
Coding standards:
Coding standards includes class/method/variable naming conventions & comment
standards & testing conventions.
Quality is the operational behavior of a product required by its users. It comprises a set of
product characteristics, both external and internal.
External Quality Characteristics:
External quality characteristics are related to how the product works in its environment e.g.,
usability and reliability.
Internal Quality Characteristics:
Internal quality characteristics reflect how the product is developed, characteristics such as
structural complexity, size, test coverage, and fault rates.
Factors Affecting Product’s Quality:
Important factors affecting product’s quality characteristics are process maturity level of the
company that has developed the software product, its development environment, such as the
design methodology and CASE tools used, and the development team’s skill and experience.
It is desirable for a software development organization to plan and control product quality
during development. Projects managers cannot allow the luxury of going back and adding
quality - by the time a quality problem is detected, it is probably too late to fix it. For that
reason, it is necessary to establish procedures and expectations for high levels of quality
before any other development begins. Also, hiring developers proven to develop high-quality
code, staffing the project accordingly, and enforcing peer-level code reviews and external
reviews must be top priority of every software project management.
Planning and controlling software product quality during development requires:
 Establishing targets for the external quality characteristics;
 Pursuing those targets during development by defining and monitoring targets
for internal quality characteristics. This can be done using conventional
software measures of size, fault rates, change rates, structure, test coverage,
and so on, taken early in product development.
 Establishing relationships between internal and external quality characteristics
& using experience from similar past software development projects
 Identifying and setting targets for internal quality characteristics. In practice,
all this can be done by first defining a quality model and then applying a
quality process.
Quality process includes quality specification (establishing the software product’s quality
requirements), planning (deciding on a suitable development process and setting target
values for measurable internal quality characteristics), control (monitoring progress
throughout development using internal software measures associated with deliverables and
activities related to each major review point in development), and evaluation (measuring the
actual values of the external quality characteristics and comparing each actual value with its
target value). Maintaining and using a database of past projects helps perform each step in
the process more successfully.
References:
o Rai Technology University, Software Project Management
o Survey paper for Software Project Scheduling And Staffing Problem
o Software Project Management by Bob Hughes And Mike Cotterell
o Software Engineering 9th Edition by Ian Sommerville
o https://www.tutorialspoint.com/software_engineering/software_project_management.
htm
THE END

Weitere ähnliche Inhalte

Was ist angesagt?

Lecture 2
Lecture 2Lecture 2
Lecture 2
9anm12
 
Software Risk Management
Software Risk ManagementSoftware Risk Management
Software Risk Management
Gunjan Patel
 

Was ist angesagt? (20)

Project Scope Management -
Project Scope Management - Project Scope Management -
Project Scope Management -
 
Chap03 the project management process groups
Chap03 the project management process groupsChap03 the project management process groups
Chap03 the project management process groups
 
SPM PPT
SPM PPTSPM PPT
SPM PPT
 
Software Project Management (SPM)
Software Project Management (SPM)Software Project Management (SPM)
Software Project Management (SPM)
 
Effective project management: Traditional, Agile, Extreme
Effective project management: Traditional, Agile, ExtremeEffective project management: Traditional, Agile, Extreme
Effective project management: Traditional, Agile, Extreme
 
Project Planning in Software Engineering
Project Planning in Software EngineeringProject Planning in Software Engineering
Project Planning in Software Engineering
 
Basic Principles of Project Management
Basic Principles of Project ManagementBasic Principles of Project Management
Basic Principles of Project Management
 
project planning-estimation
project planning-estimationproject planning-estimation
project planning-estimation
 
Lecture 2
Lecture 2Lecture 2
Lecture 2
 
Software project management
Software project managementSoftware project management
Software project management
 
Project Management and Process
Project Management and ProcessProject Management and Process
Project Management and Process
 
MG6088 SOFTWARE PROJECT MANAGEMENT
MG6088 SOFTWARE PROJECT MANAGEMENTMG6088 SOFTWARE PROJECT MANAGEMENT
MG6088 SOFTWARE PROJECT MANAGEMENT
 
software project management Waterfall model
software project management Waterfall modelsoftware project management Waterfall model
software project management Waterfall model
 
Software development process models
Software development process modelsSoftware development process models
Software development process models
 
Software Risk Management
Software Risk ManagementSoftware Risk Management
Software Risk Management
 
Organization and team structures
Organization and team structuresOrganization and team structures
Organization and team structures
 
MG6088 SOFTWARE PROJECT MANAGEMENT
MG6088 SOFTWARE PROJECT MANAGEMENTMG6088 SOFTWARE PROJECT MANAGEMENT
MG6088 SOFTWARE PROJECT MANAGEMENT
 
7. (lecture 5) Project scheduling..ppt
7. (lecture 5) Project scheduling..ppt7. (lecture 5) Project scheduling..ppt
7. (lecture 5) Project scheduling..ppt
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
 
Spm unit 1
Spm unit 1Spm unit 1
Spm unit 1
 

Ähnlich wie Software Project Management | An Overview of the Software Project Management

Quality software project managementi need deep explanation for thi.pdf
Quality software project managementi need deep explanation for thi.pdfQuality software project managementi need deep explanation for thi.pdf
Quality software project managementi need deep explanation for thi.pdf
alokkesh
 
Project Manager Primer
Project Manager PrimerProject Manager Primer
Project Manager Primer
Tom Cremins
 
Project management professional
Project management professionalProject management professional
Project management professional
Reema
 

Ähnlich wie Software Project Management | An Overview of the Software Project Management (20)

Project planning.pptx
Project planning.pptxProject planning.pptx
Project planning.pptx
 
Project planning.pptx
Project planning.pptxProject planning.pptx
Project planning.pptx
 
Quality software project managementi need deep explanation for thi.pdf
Quality software project managementi need deep explanation for thi.pdfQuality software project managementi need deep explanation for thi.pdf
Quality software project managementi need deep explanation for thi.pdf
 
INTRO.pptx
INTRO.pptxINTRO.pptx
INTRO.pptx
 
Project management revised
Project management revisedProject management revised
Project management revised
 
Project management
Project managementProject management
Project management
 
Unit2 Project phases.pptx
Unit2 Project phases.pptxUnit2 Project phases.pptx
Unit2 Project phases.pptx
 
Project management for technologies MGT410
Project management for technologies   MGT410Project management for technologies   MGT410
Project management for technologies MGT410
 
Project Management
Project ManagementProject Management
Project Management
 
Project Manager Primer
Project Manager PrimerProject Manager Primer
Project Manager Primer
 
Project management professional
Project management professionalProject management professional
Project management professional
 
223417 Diploma_Sem4_software_engg-chap-05.ppt
223417 Diploma_Sem4_software_engg-chap-05.ppt223417 Diploma_Sem4_software_engg-chap-05.ppt
223417 Diploma_Sem4_software_engg-chap-05.ppt
 
Assignment
Assignment Assignment
Assignment
 
Project Management
Project ManagementProject Management
Project Management
 
Advanced project management mod 3
Advanced project management mod 3Advanced project management mod 3
Advanced project management mod 3
 
Project management
Project managementProject management
Project management
 
BPP Training on Project Management - Day 1
BPP Training on Project Management - Day 1BPP Training on Project Management - Day 1
BPP Training on Project Management - Day 1
 
ASSIGNMENT-1 PROFESSIONAL PRACTICE
ASSIGNMENT-1 PROFESSIONAL PRACTICEASSIGNMENT-1 PROFESSIONAL PRACTICE
ASSIGNMENT-1 PROFESSIONAL PRACTICE
 
Pmbok
PmbokPmbok
Pmbok
 
Project Mangement
Project MangementProject Mangement
Project Mangement
 

Mehr von Ahsan Rahim

Mehr von Ahsan Rahim (10)

What is Wireless Communication or Unguided Transmission Media
What is Wireless Communication or Unguided Transmission MediaWhat is Wireless Communication or Unguided Transmission Media
What is Wireless Communication or Unguided Transmission Media
 
What is HTML - An Introduction to HTML (Hypertext Markup Language)
What is HTML - An Introduction to HTML (Hypertext Markup Language)What is HTML - An Introduction to HTML (Hypertext Markup Language)
What is HTML - An Introduction to HTML (Hypertext Markup Language)
 
Basics of the Computer System
Basics of the Computer SystemBasics of the Computer System
Basics of the Computer System
 
What kinds of languages can agents use to communicate?
What kinds of languages can agents use to communicate?What kinds of languages can agents use to communicate?
What kinds of languages can agents use to communicate?
 
Multiagent System Communication
Multiagent System Communication Multiagent System Communication
Multiagent System Communication
 
Wireless communication or Unguided Transmission Media
Wireless communication or Unguided Transmission MediaWireless communication or Unguided Transmission Media
Wireless communication or Unguided Transmission Media
 
Network Topologies
Network TopologiesNetwork Topologies
Network Topologies
 
Processes description and process control.
Processes description and process control.Processes description and process control.
Processes description and process control.
 
Agile Development | Agile Process Models
Agile Development | Agile Process ModelsAgile Development | Agile Process Models
Agile Development | Agile Process Models
 
Traditional Process Models
Traditional Process ModelsTraditional Process Models
Traditional Process Models
 

Kürzlich hochgeladen

An Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdfAn Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdf
SanaAli374401
 
Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
MateoGardella
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
kauryashika82
 

Kürzlich hochgeladen (20)

Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
An Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdfAn Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdf
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in DelhiRussian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
Russian Escort Service in Delhi 11k Hotel Foreigner Russian Call Girls in Delhi
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
fourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writingfourth grading exam for kindergarten in writing
fourth grading exam for kindergarten in writing
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 

Software Project Management | An Overview of the Software Project Management

  • 1.
  • 2. An Overview of the Software Project Management What is a Management? Management is the process of gettign things done through others, it is the process of coordinating people & other resources to achieve the goals of the organization. Management is the practice of executing & controlling the projects & involves the following activities:  Planning-deciding what is to be done.  Organizing- making arrangement.  Staffing-selecting the right people for the job.  Directing-giving instruction.  Monitoring-checking on progress.  Controlling-taking action to remedy hold-ups.  Innovation-coming up with new solutions. What is a Project? A project is a set of related tasks that are coordinated to achieve a specific objective in a given time limit. A project is well-defined task, which is a collection of several operations done in order to achieve a goal (for example, software development & delivery). Key characteristics that distinguish project are as follows:  A project achieves a specific objective”  Every project may has a unique & distinct goal  Project is a planned activity & also requires planning  In a Project work is to be carried out in several phases & in time & resource constraints  Projects are done in coordination & typically involve many people - a team What is a Software Project? Software is the program & all associated documentation & configuration data which is needed to make these programs operate correctly. A Software Project is the complete procedure of software development from requirement gathering to testing & maintenance, carried out according to the execution methodologies, in a specified period of time to achieve intended software product.
  • 3. What is Software Project Management? Generally the project management includes the activities like initiating the processes, planning activities, executing processes & the practical implementation, supervision & the monitoring processes & then the closeout activities. Software project management includes the knowledge, techniques, & tools necessary to manage the development of software products. Some characteristics of the software project management are as follows:  Product It is the outcome or the output & it is the combination of the different modules or the programs.  Invisible The software product is invisible because it has no physical appearance at all.  Sensitivity The software products are sensitive they have more restrictions, rules for coding that may be for syntax or semantics errors.  Quality Assurance Quality is the basic need for any software product & quality assurance is necessary.  Monitoring It includes the testing & inspection activities & error removing & error detection techniques. Project Management Components: Some of the main components of the project management are as follows: i. Resources: Each activity requires some resources for its processing. Examples of resources are: machines & tools, human & their skills, raw materials & natural resources (energy, water, l&, etc.), information, money etc. ii. Activities Each activity is characterized by: resource requirements, processing model, & precedence constraints with other activities, but other parameters can occur in the problem formulation as well.
  • 4. iii. Objectives Some objectives may be related to time, as they concern temporary usage of renewable & doubly constrained resources, whereas others to cost, as they deal with consumption of nonrenewable & doubly constrained resources. iv. Schedules A schedule is defined by a sequence of activity start & completion times, but it is insufficient for problems where activities can be executed in multiple modes. A schedule is “time-feasible” if it satisfies all time constraints defined for the project, & a project is “resource-feasible” if all resource constraints are met. A schedule is said to be feasible if it is both time- & resource-feasible. v. Stake holders Every project has stakeholders. Stakeholders are people who have an interest in the successful completion of the project. There are many different types of stakeholders, & the stakeholders vary by project. The stakeholders should have some part in defining the project objectives, since they are the people who will be affected by the outcome. Some of the stake holders are customers/clients, sponsors, company, team members & the project manager. Goals of Project Management: Every project has some goals which are also on management side. Some of the goals are as follows: 1) Performance Performance deals with what actually is required for the project, does it meets it intended functionality & standards. Performance is directly related to the time & cost 2) Cost Cost factor is important factor in the whole project. We cannot exceed the cost & must be proper cost estimation for every phase in the project & development lifecycle. 3) Time Every project should be done in the given time frame & time constraints which are well for the successful project completion.
  • 5. Performance Cost Time Dimensions of Software Project Management: The four dimensions that influence the management of the software project includes the whole process of the development, the other dimensions is the people involved in the project, the third dimension is the product & the technology relation & fourth dimension is the relation of the product & the customers. What is Project Planning? Software Project planning defines the project activities & end products that will be performed & describes how the activities will be achieved or completed successfully. The purpose of project planning is to define each major task, estimate the time & resources required, & provide a framework for management review & control. The project planning activities & goals include defining:  The specific goals that defines the project & the specific tasks to be performed  Estimates to be documented for planning, tracking, & controlling the project & the Project alternatives, assumptions, & constraints  The commitments that are planned, documented, & agreed to by affected groups & the stakeholders Product & Customers Process People Product & Technology
  • 6. The software project planning is the process that includes steps to estimate the size of the project, the estimation of the technical scope of the effort, planning process includes the estimation of the resources required for the completion of the project & the process to produce a schedule, identify risks & risk management. Steps in the Planning Process The Software Project planning process consists of the following basic tasks which are required for the successful completion of the Software Project  Define & sequence the tasks to be performed, schedule all tasks to be performed & also define the relations between tasks  Estimate the resources & budget required to perform each task  Define the organization used to execute the project  Identify the known risks in executing the project  Define the process used for quality assurance  Define the process used for specifying & controlling requirements The project plan represents the basic tool for successfully executing a project. The following figure depicts the evolutionary nature of the project plan. i. Planning in the Concept Phase In the project’s concept phase, a need that would result in a product is identified. While only very general information may be known about the project at this time, it is important to capture this information for the planning phase. In this stage, the focus of planning is on the project definition & on getting the project underway. A strategy for deriving a solution to the stated goals is important at this point. The problem being addressed by the project is clearly stated; the project goals & objectives are identified; & success criteria for the project are documented. ii. Planning in the Planning Stage: The project plan is completed in the Project Planning & Risk Identification stage of a project. For large projects, this stage may be run as a mini-project, with a team of people dedicated to performing the effort. For very small projects, the plan may be developed by a group of people as a part-time job. Since various skill sets are required to complete a successful project plan, it is a difficult task for one person to develop the entire plan.
  • 7. During this project stage, details of the plan are determined & an approach is defined. The full project plan is then developed. The plan may include the following elements like a brief project summary, a work breakdown structure, a project organization chart, a schedule, an approach, a list of identified risks, an estimated budget & cost, a list of deliverables, a description of planned quality activities, a description of the configuration management process to be used, & a summary of project requirements. iii. Planning in the Project Start-up Stage The project start-up stage is typically a short period that transitions a project from the planning to the execution stage. In the start-up stage, the team is assembled & a kickoff meeting is held to familiarize the team with the elements of the plan & the requirements of the system. Specify the activities being performed by the teams, as well as the cost & schedule associated with those activities & plans are developed from strategies defined in the project planning stage. iv. Planning in the Project Execution Stage Planning in the project execution stage consists of replanning when it is determined that the project is not on track with the current plan. This might occur for a variety of reasons. It is very important to know that project plans will change & that replanning is a natural part of the planning process. It is better to replan than to simply throw away the original plan & operate without a plan. v. Planning in the Project Close-out Stage A close-out process is performed once the project objectives have been met. Closing a project should be fairly routines. The first step is acceptance of the system by the users. It is important that the user decides when the project is completed. The determination is based upon the success criteria defined in the very early concept & planning stages of the project. This acceptance may be very informal or it may be very formal & depends upon the criteria defined in the plan.
  • 8. What is Project Monitoring? Project monitoring process is an interactive part of tracking and is firmly tied to project planning. Project monitoring takes the outputs of tracking and uses them to determine planned versus actual. In monitoring we compare the current status with the target status whether we are going right or not. Monitoring need a plan, schedule data. It is a continuous process that performs the control exercise over the project. It also helps in ensure the project to meet its target. What is Project Scheduling? As the planning is importance in the project similar the Scheduling is also necessary in the project to make it run efficiently. Scheduling is the process of assigning specific resources to tasks in relation to a specific calendar time. Key steps include collecting duration estimates for each task, inspecting the organization’s calendar for holidays & other closings, checking the calendar of team members, & developing time lines that show the start & end dates of each task. How long will each activity take & how long will the entire project take?  Split project into tasks & estimate time & resources required to complete each task  Organize tasks concurrently to make optimal use of workforce  Minimize task dependencies to avoid delays caused by one task waiting for another to complete Software project management is an application of knowledge, skills, tools and technique to solve project scheduling problem. Research into developing effective computer aided techniques for planning software projects is important and challenging for software engineering. Different from projects in other fields, software project development is a human centric activity. Software development organizations often struggle to deliver projects on time, within budget and with the required quality. One possible cause of this problem is poor software project management and, in particular, inadequate project scheduling and ineffective team staffing. Staffing a software project is tedious activity. Manager is supposed to choose from the team of employees, there could be possibility of many combinations.
  • 9. Employee allocation or staff scheduling is an important factor when software development is considered as a value-driven business.  Identify Activity: It is the process of identifying activities that are required to perform to produce the various project deliverables.  Identify Activity Dependencies: It is the process of identification & documentation of interactivity dependencies.  Allocate Resources: It is the process in which resources are allocated which will be needed to complete individual activities.  Create Project Charts: It is the process in which project activity charts are created for the analysis of activity sequences, activity durations, and resource requirements to create the project schedule.  Allocate People To Activities: It is the process to allocate peoples to the different activities according to their tasks. The project schedule provides a graphical representation of predicted tasks, milestones, dependencies, resource requirements, task duration, and deadlines. A schedule is defined by a sequence of activity start times, but it is insufficient for problems where activities can be executed in multiple modes. Thus, in these cases additional information about processing modes is necessary.
  • 10. A schedule is time-feasible if it satisfies all precedence and time constraints defined for the project, and resource-feasible if all resource constraints are met. A schedule is said to be feasible if it is both time- and resource-feasible. An optimal schedule is a feasible schedule for which a given performance measure is optimized. During the life of the project, actual progress is frequently compared with the original schedule. This allows for evaluation of development activities. The accuracy of the planning process can also be assessed. Estimate Task Duration: Estimating task duration is one of the most challenging aspects of project planning. It is also a key to later cost estimation. This is a refined process that occurs throughout the planning process, as it is directly affected by results of the staffing and costing activities. Accurate task duration estimates are defined in order to stabilize customer relations and maintain team morale. With defined task durations, the team knows what to expect and what is expected of them. The estimation process is complex because activity duration is affected by numerous variables that must be dealt with concurrently in the planning phase. Some of these variables include staff availability, the skill level of the person assigned to the task, unexpected events, efficiency of work time, and mistakes and misunderstandings during the development of the project. Define Priorities: Clearly defining the task priorities helps to resolve any scheduling and/or resource conflicts. Understanding the priorities and relationships of the tasks assists in resolving difficult scheduling conflicts.
  • 11. Risk Management What is Risk? Risk is defined as “The possibility of suffering harm, loss or danger.” Even if we’re not familiar with the formal definition, most of us have an innate sense of risk. Experience has taught us to look both ways before stepping off the curb and most of us at least think twice before ordering a steak. Indeed, we manage personal risks every day. Risk Management: Risk Management is the art and science of identifying, analyzing, and responding to risk factors throughout the life of a project. What is Project Risk? A risk is any factor or reason that may potentially interfere with successful completion of the project. A risk is not a problem, a risk is the recognition that a problem might occur. By recognizing potential problems, the project manager can attempt to avoid a problem through proper actions. Risk Management Process: The procedure that the team will use to manage project risks is defined in the planning stage, documented in the project plan, and then executed throughout the life of the project. Risk management deals with the following risk phases:  Risk identification  Risk analysis and quantification  Risk mitigation planning  Risk response The Risk Management Plan documents the procedures used to manage risk throughout the project. In addition to documenting the results of the risk identification and analysis phases, it must cover who is responsible for managing various areas of risk, how risks will be tracked throughout the life cycle. Project risks are identified and carefully managed throughout the life of the project. It is particularly important in the planning stage to document risks and identify reserves that have been applied to the risks.
  • 12. There are various areas that can affect a project, including:  Schedule Risk  Cost Risk  Requirement Risk  Quality Risk  How great a change will result from the project Risk identification consists of determining risks that are likely to affect the project and documenting the characteristics of those risks. No attempt should be made to identify all possible risks that might affect the project, but anything likely to occur should be included in the analysis. Risk management is the process of assuring that all problems are discovered early enough so that there is time to recover from the problem without missing schedules or overspending the budget. Control mechanisms are put in place in order for the feedback to occur at the proper time. What is Risk Assessment? Risk assessment consists of the two traditional components: risk identification and risk prioritization. Risk Identification: The risk identification activity focuses on listing possible risks to the project. The basic activity is to try to focus all situations that might make things in the project go wrong. The purpose of the risk assessment task is to identify the risks, analyze them, and then prioritize them. Risk Prioritization: The risk prioritization activity considers all aspects of all risks and then prioritizes them. In prioritizing risks, we identify the risks that should be managed. In other words, prioritization determines where the extra effort of risk management should be spent to get the maximum benefit.
  • 13. Software Project Estimation For an effective software project management the accurate estimation of various project measures is necessary. With correct software project estimation the managers can manage & control the project more efficiently and effectively. Project estimation may involve the following: i. Software size estimation Software size may be estimated either in terms of KLOC (Kilo Line of Code) or by calculating number of function points in the software. Lines of code depend upon coding practices and Function points vary according to the user or software requirement. ii. Effort estimation In this process the managers estimate efforts in terms of personnel requirement and man-hour required to produce the software. For effort estimation software size should be known. iii. Time estimation The time required to produce the software can be estimated after the estimation of the size & efforts. Software tasks are divided into smaller tasks, activities or events by Work Breakthrough Structure (WBS). The tasks are scheduled on day-to-day basis or in calendar months. The sum of time required to complete all tasks in hours or days is the total time invested to complete the project. iv. Cost estimation This might be considered as the most difficult of all because it depends on more elements than any of the previous ones. For estimating project cost, it is required to consider the following:  Size of software  Software quality  Hardware  Additional software or tools, licenses etc.  Skilled personnel with task-specific skills  Travel involved  Communication  Training and support
  • 14. Project Estimation Techniques: Project manager can estimate the listed factors using two broadly recognized techniques – 1) Decomposition Technique This technique assumes the software as a product of various compositions. There are two main models:  Line of Code Estimation is done on behalf of number of line of codes in the software product.  Function Points Estimation is done on behalf of number of function points in the software product. 2) Empirical Estimation Technique This technique uses empirically derived formulae to make estimation. These formulae are based on LOC or FPs.  Putnam Model This model is made by Lawrence H. Putnam, which is based on Norden’s frequency distribution. Putnam model maps time and efforts required with software size.  COCOMO COCOMO stands for Constructive Cost Model, developed by Barry W. Boehm. It divides the software product into three categories of software: organic, semi- detached and embedded.
  • 15. Software Quality Assurance The goals of software quality assurance (SQA) are monitoring the software and its development process, ensuring compliance with standards and procedures, and ensuring that product, process, and standards defects are visible to management. Many organizations make use of a quality assurance plan, which sets out standards to be maintained during project development. Documentation standards: Documentation standards are about what type of documents should be documented & what should be their format & the content. Coding standards: Coding standards includes class/method/variable naming conventions & comment standards & testing conventions. Quality is the operational behavior of a product required by its users. It comprises a set of product characteristics, both external and internal. External Quality Characteristics: External quality characteristics are related to how the product works in its environment e.g., usability and reliability. Internal Quality Characteristics: Internal quality characteristics reflect how the product is developed, characteristics such as structural complexity, size, test coverage, and fault rates. Factors Affecting Product’s Quality: Important factors affecting product’s quality characteristics are process maturity level of the company that has developed the software product, its development environment, such as the design methodology and CASE tools used, and the development team’s skill and experience. It is desirable for a software development organization to plan and control product quality during development. Projects managers cannot allow the luxury of going back and adding quality - by the time a quality problem is detected, it is probably too late to fix it. For that reason, it is necessary to establish procedures and expectations for high levels of quality before any other development begins. Also, hiring developers proven to develop high-quality
  • 16. code, staffing the project accordingly, and enforcing peer-level code reviews and external reviews must be top priority of every software project management. Planning and controlling software product quality during development requires:  Establishing targets for the external quality characteristics;  Pursuing those targets during development by defining and monitoring targets for internal quality characteristics. This can be done using conventional software measures of size, fault rates, change rates, structure, test coverage, and so on, taken early in product development.  Establishing relationships between internal and external quality characteristics & using experience from similar past software development projects  Identifying and setting targets for internal quality characteristics. In practice, all this can be done by first defining a quality model and then applying a quality process. Quality process includes quality specification (establishing the software product’s quality requirements), planning (deciding on a suitable development process and setting target values for measurable internal quality characteristics), control (monitoring progress throughout development using internal software measures associated with deliverables and activities related to each major review point in development), and evaluation (measuring the actual values of the external quality characteristics and comparing each actual value with its target value). Maintaining and using a database of past projects helps perform each step in the process more successfully. References: o Rai Technology University, Software Project Management o Survey paper for Software Project Scheduling And Staffing Problem o Software Project Management by Bob Hughes And Mike Cotterell o Software Engineering 9th Edition by Ian Sommerville o https://www.tutorialspoint.com/software_engineering/software_project_management. htm THE END