0% found this document useful (0 votes)
9 views

Software Project Management

The document discusses the fundamentals of software project management, highlighting its historical development and key figures like Henry Gantt and Henri Fayol. It defines a project as a temporary endeavor aimed at creating a unique product or service, and outlines essential project attributes, constraints, and the role of project managers and sponsors. Effective project management involves planning, monitoring, and communication to ensure projects are completed on time, within budget, and meet quality standards.

Uploaded by

clinton
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views

Software Project Management

The document discusses the fundamentals of software project management, highlighting its historical development and key figures like Henry Gantt and Henri Fayol. It defines a project as a temporary endeavor aimed at creating a unique product or service, and outlines essential project attributes, constraints, and the role of project managers and sponsors. Effective project management involves planning, monitoring, and communication to ensure projects are completed on time, within budget, and meet quality standards.

Uploaded by

clinton
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 25

1

SOFTWARE PROJECT MANAGEMENT


As a discipline, Project Management developed from several fields of application
including construction, engineering, and defense activity. Two forefathers of
project management are commonly known: Henry Gantt, called the father of
planning and control techniques who is famous for his use of the Gantt chart as a
project management tool; and Henri Fayol for his creation of the five management
functions which form the foundation of the body of knowledge associated with
project and program management. The 1950s marked the beginning of the modern
Project Management era. Project management became recognized as a distinct
discipline arising from the management discipline.
The discipline of project management is about providing the tools and
techniques that enable the project team (not just the project manager) to organize
their work to meet these constraints.
Another approach to project management is to consider the three constraints
as finance, time and human resources. If you need to finish a job in a shorter
time, you can allocate more people at the problem, which in turn will raise the cost
of the project, unless by doing this task quicker we will reduce costs elsewhere in
the project by an equal amount.

1.1 WHAT IS A PROJECT?


All of us have been involved in projects, whether they be our personal projects
or in business and industry. Examples of typical projects are for example:
 Personal projects:
 obtaining an MCS degree
 Your final year project
 writing a report
 planning a party
 planting a garden
Projects can be of any size and duration. They can be simple, like planning a
party, or complex like launching a space shuttle.

1.1.1 Project Definition:


A project can be defined in many ways :

A project is “a temporary endeavor undertaken to create a unique product,


service, or result.” Operations, on the other hand, is work done in organizations to
sustain the business. Projects are different from operations in that they end when
their objectives have been reached or the project has been terminated.
A project is temporary. A project’s duration might be just one week or it might
go on for years, but every project has an end date. You might not know that end
date when the project begins, but it’s there somewhere in the future. Projects are
not the same as ongoing operations, although the two have a great deal in common.
A project is an endeavor. Resources, such as people and equipment, need to
do work. The endeavor is undertaken by a team or an organization, and
therefore projects have a sense of being intentional, planned events. Successful
projects do not happen spontaneously; some amount of preparation and planning
2

happens first.
Finally, every project creates a unique product or service. This is the deliverable
for the project and the reason, why that project was undertaken.

1.2 PROJECT ATTRIBUTES


Projects come in all shapes and sizes. The following attributes help us to
define a project further:
- A project has a unique purpose. Every project should have a well-defined
objective. For example, many people hire firms to design and build a new
house, but each house, like each person, is unique.
- A project is temporary. A project has a definite beginning and a definite end.
For a home construction project, owners usually have a date in mind when
they’d like to move into their new homes.
- A project is developed using progressive elaboration or in an iterative fashion.
Projects are often defined broadly when they begin, and as time passes, the
specific details of the project become clearer. For example, there are many
decisions that must be made in planning and building a new house. It works
best to draft preliminary plans for owners to approve before more detailed
plans are developed.
- A project requires resources, often from various areas. Resources include people,
hardware, software, or other assets. Many different types of people, skill sets,
and resources are needed to build a home.
- A project should have a primary customer or sponsor. Most projects have many
interested parties or stakeholders, but someone must take the primary role of
sponsorship. The project sponsor usually provides the direction and funding for
the project.
- A project involves uncertainty. Because every project is unique, it is sometimes
difficult to define the project’s objectives clearly, estimate exactly how long it
will take to complete, or determine how much it will cost. External factors
also cause uncertainty, such as a supplier going out of business or a project
team member needing unplanned time off. This uncertainty is one of the main
reasons project management is so challenging.

1.3 PROJECT CONSTRAINTS


Like any human undertaking, projects need to be performed and delivered
under certain constraints. Traditionally, these constraints have been listed as
scope, time, and cost. These are also referred to as the Project Management
Triangle, where each side represents a constraint. One side of the triangle cannot
be changed without impacting the others. A further refinement of the constraints
separates product 'quality' or 'performance' from scope, and turns quality into a
fourth constraint.
The time constraint refers to the amount of time available to complete a
project.
The cost constraint refers to the budgeted amount available for the project.
The scope constraint refers to what must be done to produce the project's
end result.
3

These three constraints are often competing constraints: increased scope


typically means increased time and increased cost, a tight time constraint could
mean increased costs and reduced scope, and a tight budget could mean increased
time and reduced scope.

1.3.1 Time:
For analytical purposes, the time required to produce a product or service is
estimated using several techniques. One method is to identify tasks needed to
produce the deliverables documented in a work breakdown structure or WBS. The
work effort for each task is estimated and those estimates are rolled up into the final
deliverable estimate.
The tasks are also prioritized, dependencies between tasks are identified, and
this information is documented in a project schedule. The dependencies between
the tasks can affect the length of the overall project (dependency constraint), as
can the availability of resources (resource constraint). Time is not considered a cost
nor a resource since the project manager cannot control the rate at which it is
expended. This makes it different from all other resources and cost categories.

1.3.2 Cost:

Cost to develop a project depends on several variables including: labor rates,


material rates, risk management, plant (buildings, machines, etc.), equipment, and
profit. When hiring an independent consultant for a project, cost will typically be
determined by the consultant's or firm's per diem rate multiplied by an estimated
quantity for completion.

Figure 1.1 : The Project management Triangle

1.3.3 Scope:
Scope is requirement specified for the end result. The overall definition of
what the project is supposed to accomplish, and a specific description of what the
end result should be or accomplish can be said to be the scope of the project. A
major component of scope is the quality of the final product. The amount of time put
into individual tasks determines the overall quality of the project. Some tasks may
require a given amount of time to complete adequately, but given more time could
be completed exceptionally. Over the course of a large project, quality can have a
significant impact on time and cost or vice versa.

Together, these three constraints viz. Scope, Schedule & Resources have
given rise to the phrase "On Time, On Spec, On Budget". In this case, the term
4

"scope" is substituted with "spec(ification)"

1.4 WHAT IS PROJECT MANAGEMENT

Project management is “the application of knowledge, skills, tools and


techniques to project activities to meet the project requirements.” The effectiveness
of project management is critical in assuring the success of any substantial
activity. Areas of responsibility for the person handling the project include planning,
control and implementation. A project should be initiated with a feasibility study,
where a clear definition of the goals and ultimate benefits need to be determined.
Senior managers' support for projects is important so as to ensure authority and
direction throughout the project's progress and, also to ensure that the goals of the
organization are effectively achieved in this process.

Knowledge, skills, goals and personalities are the factors that need to be
considered within project management. The project manager and his/her team
should collectively possess the necessary and requisite interpersonal and technical
skills to facilitate control over the various activities within the project.

The stages of implementation must be articulated at the project planning


phase. Disaggregating the stages at its early point assists in the successful
development of the project by providing a number of milestones that need to be
accomplished for completion. In addition to planning, the control of the evolving
project is also a prerequisite for its success. Control requires adequate monitoring
and feedback mechanisms by which senior management and project managers
can compare progress against initial projections at each stage of the project.
Monitoring and feedback also enables the project manager to anticipate problems
and therefore take pre- emptive and corrective measures for the benefit of the
project.
Projects normally involve the introduction of a new system of some kind and,
in almost all cases, new methods and ways of doing things. This impacts the
work of others: the "users". User interaction is an important factor in the success of
projects and, indeed, the degree of user involvement can influence the extent of
support for the project or its implementation plan. A project manager is the one
who is responsible for establishing a communication in between the project team
and the user. Thus one of the most essential quality of the project manager is that
of being a good communicator, not just within the project team itself, but with
the rest of the organization and outside world as well.

1.4.1 Features of projects:


 Projects are often carried out by a team of people who have been assembled for
that specific purpose. The activities of this team may be co-ordinated by a
project manager.
 Project teams may consist of people from different backgrounds and different
parts of the organisation. In some cases project teams may consist of people
from different organisations.
 Project teams may be inter-disciplinary groups and are likely to lie outside the
normal organisation hierarchies.
5

 The project team will be responsible for delivery of the project end product to
some sponsor within or outside the organisation. The full benefit of any project
will not become available until the project as been completed.
1.4.2 Project Management Tools and techniques:

Project planning is at the heart of project management. One can't manage and
control project activities if there is no plan. Without a plan, it is impossible to know
if the correct activities are underway, if the available resources are adequate or of
the project can be completed within the desired time. The plan becomes the
roadmap that the project team members use to guide them through the project
activities. Project management tools and techniques assist project managers and
their teams in carrying out work in all nine knowledge areas. For example, some
popular time- management tools and techniques include Gantt charts, project
network diagrams, and critical path analysis. Table 1.1 lists some commonly used
tools and techniques by knowledge area.
Knowledge Area Tools & Techniques
Integration Project selection methods, project management
management methodologies, stakeholder analyses, project
charters, project management plans, project
management software, change requests, change
control boards, project review meetings, lessons-
learned reports
Scope Scope statements, work breakdown structures,
management mind maps, statements of work, requirements
analyses, scope management plans, scope
verification techniques, and scope change controls
Cost Net present value, return on investment, payback
Management analyses, earned value management, project
portfolio management, cost estimates, cost
management plans, cost baselines
Time Gantt charts, project network diagrams, critical-path
management analyses, crashing, fast tracking, schedule
performance measurements
Human resource Motivation techniques, empathic listening,
management responsibility assignment matrices, project
organizational charts, resource histograms, team
building exercises
Quality Quality metrics, checklists, quality control charts,
management Pareto diagrams, fishbone diagrams, maturity
models, statistical methods
Risk Risk management plans, risk registers,
management probability/impact matrices, risk rankings
Communication Communications management plans, kickoff
management meetings, conflict management, communications
media selection, status and progress reports,
virtual communications, templates, project Web
sites
Procurement Make-or-buy analyses, contracts, requests for
management proposals or quotes, source selections, supplier
6

evaluation matrices

Table 1.1: Project Management Tools and Techniques


1.4.3 Project Success Factors:

The successful design, development, and implementation of information


technology (IT) projects is a very difficult and complex process. However, although
developing IT projects can be difficult, the reality is that a relatively small number of
factors control the success or failure of every IT project, regardless of its size or
complexity. The problem is not that the factors are unknown; it is that they seldom
form an integral part of the IT development process.
Some of the factors that influence projects and may help them succeed are
- Executive Support
- User involvement
- Experienced project managers
- Limited scope
- Clear basic requirements
- Formal methodology
- Reliable estimates

1.5 THE ROLE OF PROJECT MANAGER


The project manager is the driving force in the management control loop. This
individual seldom participates directly in the activities that produce the end result,
but rather strives to maintain the progress and productive mutual interaction of
various parties in such a way that overall risk of failure is reduced.
A project manager is often a client representative and has to determine and
implement the exact needs of the client, based on knowledge of the firm he/she is
representing. The ability to adapt to the various internal procedures of the
contracting party, and to form close links with the nominated representatives, is
essential in ensuring that the key issues of cost, time, quality, and above all, client
satisfaction, can be realized.
When they are appointed, project managers should be given terms of
reference that define their:
 Objectives;
 Responsibilities;
 Limits of authority.

1.5.1 Responsibilities of a Project Manager:


The objective of every project manager is to deliver the product on time,
within budget and with the required quality. Although the precise responsibilities of
a project manager will vary from company to company and from project to project,
they should always include planning and forecasting. Three additional areas of
management responsibility are:
 ·interpersonal responsibilities, which include:
 leading the project team;
 liaising with initiators, senior management and suppliers;
 being the 'figurehead', i.e. setting the example to the project team and
7

representing the project on formal occasions.


 informational responsibilities, which include:
 monitoring the performance of staff and the implementation of the project
plan;
 disseminating information about tasks to the project team;
 disseminating information about project status to initiators and senior
management;
 acting as the spokesman for the project team.
 decisional responsibilities, which include:
 allocating resources according to the project plan, and adjusting those
allocations when circumstances dictate (i.e. the project manager has
responsibility for the budget);
 negotiating with the initiator about the optimum interpretation of
contractual obligations, with the company management for
resources, and with project staff about their tasks;
 handling disturbances to the smooth progress of the project such as
equipment failures and personnel problems.

1.6 THE PROJECT SPONSOR

A project sponsor is an individual or group responsible for providing overall guidance, support, and resources
to a project. They are typically senior-level executives within an organization who have the authority to
allocate funding, approve project decisions, and ensure the project aligns with the organization's strategic
goals.

Key Roles and Responsibilities of a Project Sponsor

 Strategic Alignment: Ensures that the project aligns with the organization's overall business
objectives and strategy.
 Resource Allocation: Approves the allocation of necessary resources, including budget, personnel,
and equipment.
 Decision Making: Makes critical decisions regarding the project's scope, timeline, and risk
management.
 Stakeholder Management: Manages relationships with key stakeholders, including senior
executives, customers, and partners.
 Risk Mitigation: Provides oversight and support for risk management activities to ensure potential
issues are identified and addressed.
 Communication: Communicates the project's progress, challenges, and successes to relevant
stakeholders.

Benefits of Having a Strong Project Sponsor:

 Increased Support: A committed sponsor can provide essential support and advocacy for the project.
 Improved Decision Making: Sponsors can leverage their expertise to make informed decisions.
 Enhanced Resource Allocation: Sponsors can ensure that the project has the necessary resources to
succeed.
8

 Stronger Stakeholder Relationships: A sponsor can help build and maintain positive relationships
with key stakeholders.
 Reduced Risk: A sponsor can help identify and mitigate potential risks.

1.7 PROJECT LIFE CYCLE


The Project Life Cycle refers to a logical sequence of activities to accomplish the project’s
goals or objectives:

Figure 1.5 : Project Life Cycle

1.7.1 Project Initiation:


The initiation stage determines the nature and scope of the development. If
this stage is not performed well, it is unlikely that the project will be successful in
meeting the business’s needs. The key project controls needed here are an
understanding of the business environment and making sure that all necessary
controls are incorporated into the project. Any deficiencies should be reported and a
recommendation should be made to fix them.

The initiation stage should include a plan that encompasses the following areas:
 Analyzing the business needs/requirements in measurable goals.
 Reviewing of the current operations.
 Conceptual design of the operation of the final product.
 Equipment and contracting requirements including an assessment of
long lead time items.
 Financial analysis of the costs and benefits including a budget.
 Stakeholder analysis, including users, and support personnel for the project.
 Project charter including costs, tasks, deliverables, and schedule.

1.7.2 Planning & Design:

After the initiation stage, the system is designed. Occasionally, a small


9

prototype of the final product is built and tested. Testing is generally performed by a
combination of testers and end users, and can occur after the prototype is built or
concurrently. Controls should be in place that ensures that the final product will
meet the specifications of the project charter. The results of the design stage
should include a product design that:
- Satisfies the project sponsor (the person who is providing the project budget),
end user, and business requirements.
- Functions as it was intended.
- Can be produced within acceptable quality standards.
- Can be produced within time and budget constraints.

1.7.3 Execution & Controlling


Monitoring and Controlling consists of those processes performed to observe
project execution so that potential problems can be identified in a timely manner
and corrective action can be taken, when necessary, to control the execution of the
project. The key benefit is that project performance is observed and measured
regularly to identify variances from the project management plan.
Monitoring and Controlling includes:
 Measuring the ongoing project activities (where we are);
 Monitoring the project variables (cost, effort, scope, etc.) against the project
management plan and the project performance baseline (where we should be);
 Identify corrective actions to address issues and risks properly (How can we get
on track again);
 Influencing the factors that could circumvent integrated change control so
only approved changes are implemented
In multi-phase projects, the Monitoring and Controlling process also provides
feedback between project phases, to implement corrective or preventive actions to
bring the project into compliance with the project management plan.
Project Maintenance is an ongoing process, and it includes:
 Continuing support of end users
 Correction of errors
 Updates of the software over time
In this stage, auditors should pay attention to how effectively and quickly user
problems are resolved.
Over the course of any IT project, the work scope may change. Change is
normal and expected part of the process. Changes can be the result of necessary
design modifications, differing site conditions, material availability, client-requested
changes, value engineering and impacts from third parties, to name a few. Beyond
executing the change in the field, the change normally needs to be documented to
show what was actually developed. This is referred to as Change Management.
Hence, the owner usually requires a final record to show all changes or, more
specifically, any change that modifies the tangible portions of the finished work.
The record is made on the contract documents – usually, but not necessarily limited
to, the design drawings. The end product of this effort is what the industry terms as-
built drawings, or more simply, “as built.”
When changes are introduced to the project, the viability of the project has to
be re-assessed. It is important not to lose sight of the initial goals and targets
of the projects. When the changes accumulate, the forecasted result may not
10

justify the original proposed investment in the project.

1.7.4 Closure:
Closing includes the formal acceptance of the project and the ending
thereof. Administrative activities include the archiving of the files and documenting
lessons learned.
This phase consists of:
 Project close: Finalize all activities across all of the process groups to formally
close the project or a project phase.
 Contract closure: Complete and settle each contract (including the resolution
of any open items) and close each contract applicable to the project or project
phase.
Sample Questions
1. Why is there a new or renewed interest in the field of project management?
2. What is a project, and what are its main attributes? How is a project different
from what most people do in their day-to-day jobs? What is the triple constraint?
3. What is project management? Briefly describe the project management
framework, providing examples of stakeholders, knowledge areas, tools and
techniques, and project success factors.
4. Discuss the relationship between project, program, and portfolio Management
and their contribution to enterprise success.
5. What are the roles of the project, program, and portfolio managers? What are
suggested skills for project managers? What additional skills do program and
portfolio managers need?

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.
Need of software project management
Software is said to be an intangible product. Software development is a kind of all new stream
in world business and there is very little experience in building software products. 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 the experience of
one product may not be applied to the other one.
Software Project Manager
A software project manager is a person who undertakes the responsibility of
executing the software project. Software project manager is thoroughly
aware of all the phases of SDLC that the software would go through. The
project manager may never directly involve in producing the end product but
he controls and manages the activities involved in production.
A project manager closely monitors the development process, prepares and
executes various plans, arranges necessary and adequate resources,
maintains communication among all team members in order to address
11

issues of cost, budget, resources, time, quality and customer satisfaction.


Let us see few responsibilities that a project manager shoulders -

Managing People
 Act as project leader
 Lesion with stakeholders
 Managing human resources
 Setting up reporting hierarchy etc.

Managing Project
 Defining and setting up project scope
 Managing project management activities
 Monitoring progress and performance
 Risk analysis at every phase
 Take necessary step to avoid or come out of problems
 Act as project spokesperson

Software Management Activities


Software project management comprises of a number of activities, which contains planning of
project, deciding scope of software product, estimation of cost in various terms, scheduling of
tasks and events, and resource management.
Project management activities may include:
 Project Planning
 Scope Management
 Project Estimation

Project Planning
Software project planning is task, which is performed before the production of
software actually starts. It is there for the software production but involves no
concrete activity that has any direct connection with the software production;
rather it is a set of multiple processes, which facilitates software production.
Project planning may include the following:

Scope
Management
It defines scope of the project; this includes all the activities, process need to
be done in order to make a deliverable software product. Scope management
is essential because it creates boundaries of the project by clearly defining
what would be done in the project and what would not be done. This makes
12

project to contain limited and quantifiable tasks, which can easily be


documented and in turn avoids cost and time overrun.
During Project Scope management, it is necessary to -
 Define the scope
 Decide its verification and control
 Divide the project into various smaller parts for ease of management.

 Verify the scope


 Control the scope by incorporating changes to the scope

Project
Estimation
For an effective management, accurate estimation of various measures is a
must. With the correct estimation, managers can manage and control the
project more efficiently and effectively.
Project estimation may involve the following:
 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. Function points vary
according to the user or software requirement.
 Effort estimation
The manager estimates efforts in terms of personnel requirement and
man-hour required to produce the software. For effort estimation
software size should be known. This can either be derived by
manager’s experience, historical data of organization, or software size
can be converted into efforts by using some standard formulae.
 Time estimation
Once size and efforts are estimated, the time required to produce the
software can be estimated. Efforts required is segregated into sub
categories as per the requirement specifications and interdependency
of various components of software. 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.
13

 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 -

 Size of the 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
We discussed various parameters involving project estimation such as size,
effort, time and cost.
Project manager can estimate the listed factors using two broadly
recognized techniques –
Decomposition Technique
This technique assumes the software as a product of various
compositions. There are two main models -
 Line of Code: Here the estimation is done on behalf of number of line of
codes in the software product.
 Function Points: Here the estimation is done on behalf of number of
function points in the software product.

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 (Rayleigh curve). Putnam model maps
time and efforts required with software size.
 COCOMO
COCOMO stands for Constructive Cost Model, developed by Barry W.
14

Boehm. It divides the software product into three categories of


software: organic, semi-detached, and embedded.

Project
Scheduling
Project Scheduling in a project refers to roadmap of all activities to be done
with specified order and within time slot allotted to each activity. Project
managers tend to define various tasks, and project milestones and then
arrange them keeping various factors in mind. They look for tasks like in
critical path in the schedule, which are necessary to complete in specific
manner (because of task interdependency) and strictly within the time
allocated. Arrangement of tasks which lies out of critical path are less likely
to impact over all schedule of the project.
For scheduling a project, it is necessary to -
 Break down the project tasks into smaller, manageable form
 Find out various tasks and correlate them
 Estimate time frame required for each task
 Divide time into work-units
 Assign adequate number of work-units for each task
 Calculate total time required for the project from start to finish

Resource
management
All elements used to develop a software product may be assumed as
resource for that project. This may include human resource, productive tools,
and software libraries.
The resources are available in limited quantity and stay in the organization as
a pool of assets. The shortage of resources hampers development of the
project and it can lag behind the schedule. Allocating extra resources
increases development cost in the end. It is therefore necessary to estimate
and allocate adequate resources for the project.
Resource management includes -

 Defining proper organization project by creating a project team and


allocating responsibilities to each team member
 Determining resources required at a particular stage and their availability
15

 Manage Resources by generating resource request when they are required


and de-allocating them when they are no more needed.

Project Risk
Management
Risk management involves all activities pertaining to identification,
analyzing and making provision for predictable and non-predictable risks in
the project. Risk may include the following:

 Experienced staff leaving the project and new staff coming in.
 Change in organizational management.
 Requirement change or misinterpreting requirement.
 Under-estimation of required time and resources.
 Technological changes, environmental changes, business competition.

Risk Management Process


There are following activities involved in risk management process:

 Identification - Make note of all possible risks, which may occur in the
project.
 Categorize - Categorize known risks into high, medium and low risk
intensity as per their possible impact on the project.
 Manage - Analyze the probability of occurrence of risks at various phases.
Make plan to avoid or face risks. Attempt to minimize their side-effects.
 Monitor - Closely monitor the potential risks and their early symptoms.
Also monitor the effective steps taken to mitigate or avoid them.

Project Execution and


Monitoring
In this phase, the tasks described in project plans are executed according to
their schedules.

Execution needs monitoring in order to check whether everything is going


according to the plan. Monitoring is observing to check the probability of risk
and taking measures to address the risk or report the status of various tasks.

These measures include -


16

 Activity Monitoring - All activities scheduled within some


task can be monitored on day-to-day basis. When all
activities in a task are completed, it is considered as
complete.
 Status Reports - The reports contain status of activities
and tasks completed within a given time frame, generally a
week. Status can be marked as finished, pending or work-in-
progress etc.
 Milestones Checklist - Every project is divided into
multiple phases where major tasks are performed
(milestones) based on the phases of SDLC. This milestone
checklist is prepared once every few weeks and reports the
status of milestones.

Project Communication
Management
Effective communication plays vital role in the success of a
project. It bridges gaps between client and the organization,
among the team members as well as other stake holders in the
project such as hardware suppliers.

Communication can be oral or written. Communication


management process may have the following steps:

 Planning - This step includes the identifications of all the


stakeholders in the project and the mode of communication
among them. It also considers if any additional
communication facilities are required.
 Sharing - After determining various aspects of planning,
manager focuses on sharing correct information with the
correct person at the correct time. This keeps every one
involved in the project up-to-date with project progress and
its status.

 Feedback - Project managers use various measures and


feedback mechanism and create status and performance
reports. This mechanism ensures that input from various
stakeholders is coming to the project manager as their
feedback.

 Closure - At the end of each major event, end of a phase of


17

SDLC or end of the project itself, administrative closure is


formally announced to update every stakeholder by sending
email, by distributing a hardcopy of document or by other
mean of effective communication.

 After closure, the team moves to next phase or project. .

Project Management Tools


The risk and uncertainty rises multifold with respect to the size
of the project, even when the project is developed according to
set methodologies.
There are tools available, which aid for effective project
management. A few described are:-

Gantt Chart
Gantt chart was devised by Henry Gantt (1917). It represents
project schedule with respect to time periods. It is a horizontal
bar chart with bars representing activities and time scheduled
for the project activities.

PERT Chart
Program Evaluation & Review Technique) (PERT) chart is a tool
that depicts project as network diagram. It is capable of
graphically representing main events of project in both parallel
and consecutive ways. Events, which occur one after another,
show dependency of the later event over the previous one.
18

Events are shown as numbered nodes. They are connected by


labeled arrows depicting the sequence of tasks in the project.

Resource Histogram
This is a graphical tool that contains bar or chart representing
number of resources (usually skilled staff) required over time for
a project event (or phase). Resource Histogram is an effective
tool for staff planning and coordination.
19

Critical Path Analysis


This tools is useful in recognizing interdependent tasks in the project. It also
helps to find out the shortest path or critical path to complete the project
successfully. Like PERT diagram, each event is allotted a specific time
frame. This tool shows dependency of event assuming an event can
proceed to next only if the previous one is completed.
The events are arranged according to their earliest possible start time. Path
between start and end node is critical path which cannot be further reduced
and all events require to be executed in same order.
20
21

SOFTWARE PROJECT RISK MANAGEMENT


A software project can be concerned with a large variety of risks. In
order to be adept to systematically identify the significant risks which
might affect a software project, it is essential to classify risks into
different classes. The project manager can then check which risks from
each class are relevant to the project.
There are three main classifications of risks which can affect a
software project:
1. Project risks
2. Technical risks
3. Business risks
1. Project risks: Project risks concern differ forms of budgetary,
schedule, personnel, resource, and customer-related problems. A vital
project risk is schedule slippage. Since the software is intangible, it is
very tough to monitor and control a software project. It is very tough to
control something which cannot be identified. For any manufacturing
program, such as the manufacturing
of cars, the plan executive can recognize the product taking shape.
2. Technical risks: Technical risks concern potential method,
implementation, interfacing, testing, and maintenance issue. It also
consists of an ambiguous specification, incomplete specification,
changing specification, technical uncertainty, and technical
obsolescence. Most technical risks appear due to the development
team's insufficient knowledge about the project.
3. Business risks: This type of risks contain risks of building an
excellent product that no one need, losing budgetary or personnel
commitments, etc.
1. Known risks: Those risks that can be uncovered after careful
assessment of the project program, the business and technical
environment in which the plan is being developed, and more reliable
data sources (e.g., unrealistic delivery date)
2. Predictable risks: Those risks that are hypothesized from
previous project experience (e.g., past turnover)
3. Unpredictable risks: Those risks that can and do occur, but are
extremely tough to identify in advance.
Principles of Risk Management
1. Global Perspective: In this, we review the bigger system
description, design, and implementation. We look at the chance and
the impact the risk is going to have.
2. Take a forward-looking view: Consider the threat which may
appear in the future and create future plans for directing the next
events.
3. Open Communication: This is to allow the free flow of
communications between the client and the team members so that
they have certainty about the risks.
4. Integrated management: In this method risk management is
made an integral part of project management.
5. Continuous process: In this phase, the risks are tracked
continuously throughout the risk management paradigm.
22

Risk Management Activities


Risk management consists of three main activities
Risk Assessment
The objective of risk assessment is to division the risks in the condition
of their loss, causing potential. For risk assessment, first, every risk
should be rated in two methods:
o The possibility of a risk coming true (denoted as r).
o The consequence of the issues relates to that risk (denoted as
s).
Based on these two methods, the priority of each risk can be
estimated:
p=r*s
Where p is the priority with which the risk must be controlled, r is the
probability of the risk becoming true, and s is the severity of loss
caused due to the risk becoming true. If all identified risks are set up,
then the most likely and damaging risks can be controlled first, and
more comprehensive risk abatement methods can be designed for
these risks.
1. Risk Identification: The project organizer needs to anticipate the
risk in the project as early as possible so that the impact of risk can be
reduced by making effective risk management planning.
A project can be of use by a large variety of risk. To identify the
significant risk, this might affect a project. It is necessary to categories
into the different risk of classes.
There are different types of risks which can affect a software project:
1. Technology risks: Risks that assume from the software or
hardware technologies that are used to develop the system.
2. People risks: Risks that are connected with the person in the
development team.
3. Organizational risks: Risks that assume from the
organizational environment where the software is being developed.
4. Tools risks: Risks that assume from the software tools and
other support software used to create the system.
5. Requirement risks: Risks that assume from the changes to the
customer requirement and the process of managing the
requirements change.
6. Estimation risks: Risks that assume from the management
estimates of the resources required to build the system
2. Risk Analysis: During the risk analysis process, you have to
consider every identified risk and make a perception of the probability
and seriousness of that risk. There is no simple way to do this. You
have to rely on your perception and experience of previous projects
and the problems that arise in them.
It is not possible to make an exact, the numerical estimate of the
probability and seriousness of each risk. Instead, you should authorize
the risk to one of several bands:
1. The probability of the risk might be determined as very low (0-
10%), low (10-25%), moderate (25-50%), high (50-75%) or very high
(+75%).
23

2. The effect of the risk might be determined as catastrophic


(threaten the survival of the plan), serious (would cause significant
delays), tolerable (delays are within allowed contingency), or
insignificant.
Risk Control
It is the process of managing risks to achieve desired outcomes. After
all, the identified risks of a plan are determined; the project must be
made to include the most harmful and the most likely risks. Different
risks need different containment methods. In fact, most risks need
ingenuity on the part of the project manager in tackling the risk.
There are three main methods to plan for risk management:
1. Avoid the risk: This may take several ways such as discussing
with the client to change the requirements to decrease the scope of
the work, giving incentives to the engineers to avoid the risk of
human resources turnover, etc.
2. Transfer the risk: This method involves getting the risky
element developed by a third party, buying insurance cover, etc.
3. Risk reduction: This means planning method to include the loss
due to risk. For instance, if there is a risk that some key personnel
might leave, new recruitment can be planned.
Risk Leverage: To choose between the various methods of handling
risk, the project plan must consider the amount of controlling the risk
and the corresponding reduction of risk. For this, the risk leverage of
the various risks can be estimated.
Risk leverage is the variation in risk exposure divided by the amount of
reducing the risk.
Risk leverage = (risk exposure before reduction - risk
exposure after reduction) / (cost of reduction)
1. Risk planning: The risk planning method considers each of the key
risks that have been identified and develop ways to maintain these
risks.
2. Risk Monitoring: Risk monitoring is the method that your
assumption about the product, process, and business risks has not
changed.

QUALITY CONTROL AND STANDARDS


1. Quality Control (QC) in Software Development
Quality Control is the process of ensuring that the software product
meets specified requirements and quality standards. It involves
identifying defects in the actual software produced (the output).
Key Activities in Quality Control:
 Testing: Involves different types of testing such as unit testing,
integration testing, system testing, and acceptance testing to
ensure the software functions as expected.
 Reviews and Inspections: Peer reviews, code inspections, and
walkthroughs are carried out to identify potential issues early in
the development process.
 Bug Tracking and Resolution: Defects identified during
testing are logged, prioritized, and fixed. Tools like JIRA, Bugzilla,
or Redmine help manage this process.
24

 Verification and Validation (V&V):


o Verification: Ensures the product is being developed
correctly according to the specified processes. ("Are we
building the product right?")
o Validation: Ensures the developed product meets user
needs and requirements. ("Are we building the right
product?")
2. Quality Assurance (QA) vs Quality Control (QC)
 Quality Assurance (QA) is proactive and process-oriented,
focusing on preventing defects by improving processes.
 Quality Control (QC) is reactive and product-oriented, focusing
on identifying defects in the final product.
3. Software Quality Standards
Quality standards help maintain consistency and ensure that the
software meets its intended purpose. The following are widely
recognized:
ISO/IEC 25010 (Software Quality Model)
This standard defines a set of characteristics that software must meet
to be considered high-quality:
 Functional Suitability: The software must meet the functional
requirements as outlined by the customer.
 Reliability: The system should perform consistently without
failures.
 Usability: The product should be easy for users to understand
and operate.
 Performance Efficiency: The software should meet
performance needs (e.g., response time, resource usage).
 Maintainability: The ease with which the software can be
modified to correct defects, improve performance, or adapt to
changes.
 Portability: The ability of the software to be transferred from
one environment to another.
ISO/IEC 12207 (Software Lifecycle Processes)
This standard provides a framework for all activities in the software
development lifecycle, emphasizing the quality of the product and
processes.
IEEE Software Quality Standards
IEEE has a set of standards such as IEEE 829 for software testing
documentation and IEEE 730 for software quality assurance plans.
4. Best Practices for Implementing Quality Control
 Continuous Integration/Continuous Deployment (CI/CD):
Implement automation in testing and integration of code to
ensure that defects are identified early in the development
cycle.
 Static Code Analysis: Use tools to analyze code for potential
errors, coding standard violations, and security vulnerabilities.
 Automated Testing: Automating tests such as unit tests,
regression tests, and performance tests can help catch issues
early and improve coverage.
 Test-Driven Development (TDD): This approach requires
25

writing tests before developing the code. It ensures that the


code is built with quality in mind from the start.
5. Risk and Quality in Software Development
Risk management plays a key role in quality assurance and control:
 Risk of Defects: Identifying and prioritizing potential areas
where defects may arise (e.g., complex modules).
 Mitigating Quality Risks: Implementing early testing, regular
reviews, and process improvements to reduce the likelihood of
defects.
6. Legal and Compliance Standards in Quality Control
 Data Privacy Laws (e.g., GDPR, HIPAA): Ensure that software
complies with data protection laws during development.
 Industry-specific Regulations: Depending on the industry
(finance, healthcare, etc.), there may be specific standards for
software quality and security.
7. Tools for Quality Control
Several tools are available to help manage and maintain software
quality:
 Version Control Systems (e.g., Git, SVN): Ensure that
software development is tracked, and changes are documented.
 Bug Tracking Tools (e.g., JIRA, Bugzilla): Help manage the
defect identification and resolution process.
 CI/CD Tools (e.g., Jenkins, Travis CI): Automate code
integration, testing, and deployment processes.

You might also like