It8075 - SPM - Course File
It8075 - SPM - Course File
REGULATION 2017
COURSE FILE
ST. PETER'S COLLEGE OF ENGINEERING AND TECHNOLOGY: CHENNAI
Affiliated to Anna University, Chennai & Approved by AICTE
1. TIME TABLE
2. SYLLABUS
3. LESSON PLAN
4. COURSE MATERIAL
TIMETABLE
Ms.D.Sujatha
1 2 3 4 5 6 7
Days /
Hours 08.30- 09.30- 10.35- 11.30- 03.05-
01.15-02.10 02.10-03.05
09.30 10.25 11.30 12.25 04.00
IT8075 IT8501 IT8075
MON
SPM WT SPM
CD3291 IT8075 IT8501
TUE
DS SPM WT
IT8501 IT8075 CD3291 CD3291
WED
WT SPM DS DS
IT8075
THUR IT8711- FOSS& CC Lab
SPM
IT8501 CD3291 IT8501 IT8511- Web
FRI
WT DS WT Programming Lab
SYLLABUS
Resources:
TEXT BOOK(S):
T1. Bob Hughes, Mike Cotterell and Rajib Mall: Software Project Management – Fifth Edition,
Tata McGraw Hill, New Delhi, 2012.
REFERENCES:
R1 Robert K. Wysocki ―Effective Software Project Management – Wiley Publication, 2011.
R2.. Walker Royce: ―Software Project Management- Addison-Wesley, 1998.
R3. Gopalaswamy Ramesh, ―Managing Global Software Projects – McGraw Hill Education
(India), Fourteenth Reprint 2013.
ST. PETER'S COLLEGE OF ENGINEERING AND TECHNOLOGY: CHENNAI
Affiliated to Anna University, Chennai & Approved by AICTE
LESSON PLAN
Name of the Subject: IT8075 – Software Project Management
Unit – 1
PO
Execut Reason
N C s/
Pedago Resour ed For
o Planned Date/ Topic O
gy ce Date/ Deviati PS
. Period s
Period on
Os
Unit -2
P
Reason
N Execute C
Planned Pedago Resour For Os/
o Topic d O
Date/ gy ce Deviati
. Date/ s PS
Period on
Period
Os
27-8-
27-8-22/1
Software process and 22/1
9 BB T1 2 3
Process Models 27-8-
27-8-22/4
22/4
Choice of Process
1 models ,Rapid 30-8-
30-8-22/4 BB T1 2 2
0 Application 22/4
development
Agile
1 methods ,Dynamic
1-9-22/4 PPT T1 1-9-22/4 3 2
1 System Development
Method
1 3-9-22/1 Extreme 3-9-22/1 2
PPT T1 3
2 3-9-22/4 Programming 3-9-22/4 2
Managing interactive
1 23-9-
9-9-22/3 processes ,Basics of BB T1 3 2
3 22/3
Software estimation
Effort and Cost
1 estimation 24-9-
10-9-22/3 BB T1 3 2
4 techniques, COSMIC 22/3
Full function points
COCOMO II ,a
1 28-9-
13-9-22/3 Parametric BB T1 3 2
5 22/4
Productivity Model
1 30-9-
14-9-22/4 Revision MCQ
6 22/3
ST. PETER'S COLLEGE OF ENGINEERING AND TECHNOLOGY: CHENNAI
Affiliated to Anna University, Chennai & Approved by AICTE
Unit -3
P
Plann Reason Os
N Executed
ed Resou For CO
o Topic Pedagogy /
Date/ rce Date/ Period s
. Deviatio
Perio PS
d n
Os
Objectives of Activity
1 14-9-
planning, Project BB T1 6-10-22/3 1 1
7 22/7
schedules , Activities
16-9-
22/3 8-10-22/1
1 Sequencing and
BB T1 2 2
8 Scheduling
17-9-
8-10-22/3
22/3
Network Planning
models ,Formulating
1 20-9- Network
PPT T1 11-10-22/4 3 2
9 22/3 Model ,Forward Pass &
Backward Pass
techniques
Critical path (CRM)
2 21-9-
method BB T1 13-10-22/4 3 3
0 22/4
Risk
2 23-9- identification ,Assessm
BB T1 14-10-22/4 3 3
1 22/3 ent ,Risk Planning ,Risk
Management
24-9-
17-10-22/1
2 22/3
PERT technique BB T1 3 2
2 27-9-
17-10-22/6
22/3
Monte Carlo simulation BB T1 3 3
2 28-9- Resource Allocation, 19/10-22/4
3 22/4 Creation of critical PPT T1 3 1
paths, Cost schedules.
2 30-9-
Revision Slip Test 20-10-22/3
4 22/3
ST. PETER'S COLLEGE OF ENGINEERING AND TECHNOLOGY: CHENNAI
Affiliated to Anna University, Chennai & Approved by AICTE
Unit -4
P
Plann Reason
N Executed C Os/
ed Pedagog Resour For
o Topic Date/ O
Date/ y ce Deviati PS
. Period s
Perio on
d Os
28-10-
6-10-22/3
2 Framework for 22/4
BB T1 3 2
5 Management and control 31-10-
7-10-22/1
22/1
31-10-
2 8-10-22/3 Collection of
BB T1 22/6 3 2
6 data ,Visualizing progress
10-10-22/1 1-11-22/4
2 10-10-22/7 3-11-22/3
Earned Value Analysis PPT T1 3 2
7 11-10-22/4 7-11-22/1
2
13-10-22/3 Prioritizing Monitoring BB T1 7-11-22/6 4 3
8
2 Project tracking ,Change
14-10-22/4 BB T1 8-11-22/4 4 3
9 control
Software Configuration
4 3
3 Management
17-10-22/1 PPT T1 9-11-22/3
0 Managing contracts,
4 3
Contract Management.
3 MCQ,QU 10-11-
17-10-22/6 Revision T1
1 IZ 22/6
Unit -5
No. Planned Topic Pedago Resour Execute Reason C P
Date/ gy ce d For O
Period s Os/
Date/ Deviati
Period on PS
ST. PETER'S COLLEGE OF ENGINEERING AND TECHNOLOGY: CHENNAI
Affiliated to Anna University, Chennai & Approved by AICTE
Os
Managing
17-11-
32 18-10-22/4 people ,Organizational BB T1 5 3
22/1
behavior
Best methods of staff 18-11-
33 19-10-22/4 BB T1 5 3
selection , Motivation 22/6
The Oldham -Hackman 19-11-
34 20-10-22/3 PPT T1 5 1
job characteristic model 22/4
21-11-
35 21-10-22/4 Stress , Health and Safety BB T1 5 3
22/3
Ethical and Professional 22-11-
36 27-10-22/3 concerns Working in BB T1 22/2 6 3
teams
25-11-
37 28-10-22/4 Decision making , BB T1 5 3
22/4
29-11-
38 31-10-22/1 Organizational structures PPT T1 6 3
22/6
Dispersed and Virtual 30-11-
39 31-10-22/6 BB T1 6 3
teams 22/7
Communications genres 1-12-
40 1/11-22/4 Communication plans, BB T1 22/4 6 3
Leadership.
Slip 2-12-
41 3-11-22/3 Revision
Test 22/3
List of Pedagogies: Chalk & Talk/ Quiz/ MCQs/ Flipped Class/ Demonstration/ Site Visit/ Role Play/
Video/ Discussion/ Tutorial/ Any other
Resources:
TEXT BOOK(S):
T1. Bob Hughes, Mike Cotterell and Rajib Mall: Software Project Management – Fifth Edition,
Tata McGraw Hill, New Delhi, 2012.
REFERENCES:
R1 Robert K. Wysocki ―Effective Software Project Management – Wiley Publication, 2011.
.R2.. Walker Royce: ―Software Project Management- Addison-Wesley, 1998.
R3. Gopalaswamy Ramesh, ―Managing Global Software Projects – McGraw Hill Education (India),
Fourteenth Reprint 2013.
POs PSOs
COs P P P P P P P P P P P P
PS PS
O- O- O- O- O- O- O- O- O- O- O- O- PSO-3
O-1 O-2
1 2 3 4 5 6 7 8 9 10 11 12
CO-1 3 2 2 2 2 - - - 3 3 3 3 3 3 2
CO-2 3 2 2 2 2 - - - 3 2 3 3 3 3 3
CO-3 3 2 2 2 2 - - - 3 3 3 3 3 2 2
CO-4 3 2 2 2 2 - - - 3 3 3 3 2 2 2
CO-5 3 2 2 2 2 - - - 3 3 3 3 2 2 2
CO-6 3 3 3 3 2 - - - 3 3 3 3 2 2 2
lOMoARcPSD|9139087
COURSE MATERIAL
SOFTWARE PROJECT MANAGEMENT
1.1 Project
Project ends when its goal is achieved hence it is a temporary phase in the lifetime of an
organization.
The image above shows triple constraints for software projects. It is an essential part of
software organization to deliver quality product, keeping the cost within client’s budget
constrain and deliver the project as per scheduled. There are several factors, both internal and
external, which may impact this triple constrain triangle. Any of three factors can severely
impact the other two.Therefore, software project management is essential to incorporate user
requirements along with budget and time constraints.
Feasibility Study
whether the company has the capability, in terms of software, hardware, personnel and
expertise, to handle the completion of the project when writing a feasibility report, the
following should be taken to consideration:
A brief description of the business
The part of the business being examined
The human and economic factor
The possible solutions to the problems
At this level, the concern is whether the proposal is both technically and legally
feasible.
Economic Feasibility
Economic analysis is the most frequently used method for evaluating the
effectiveness of a new system. More commonly known as cost/benefit analysis, the
procedure is to determine the benefits and savings that are expected from a candidate
system and compare them with costs. If benefits outweigh costs, then the decision is
made to design and implement the system. An entrepreneur must accurately weigh the
cost versus benefits before taking an action.
Cost-based study: It is important to identify cost and benefit factors, which can be
categorized as follows: Development costs and Operating costs. This is an analysis of the
costs to be incurred in the system and the benefits derivable out of the system. Time-
based study: This is an analysis of the time required to achieve a return on investments.
The future value of a project is also a factor.
Legal Feasibility
Legal feasibility determines whether the proposed system conflicts with legal
requirements, e.g. a data processing system must comply with the local Data Protection
Acts.
Operational Feasibility
` Operational feasibility is a measure of how well a proposed system solves the problems,
and takes advantage of the opportunities identified during scope definition and how it
satisfies the requirements identified in the requirements analysis phase of system
development.
Schedule Feasibility
A project will fail if it takes too long to be completed before it is useful. Typically
this means estimating how long the system will take to develop, and if it can be
completed in a given time period using some methods like payback period. Schedule
feasibility is a measure of how reasonable the project timetable is.
Planning Phase
The planning phase comes into existence only if the proposed project is a prospective
one. This is found only by the outcome of the feasibility study phase. In case of complex
project, a detailed plan is not needed during the initial stage of planning phase. Instead, an
outline plan is formulated for the whole project except for the first phase, which has a
detailed one. As the project steps into different phases, a detailed plan for each stage can be
developed as they are approached this will provide a clear idea about what should be done at
every stages of the development.
The Project Planning Phase is the second phase in the project life cycle. It involves
creating of a set of plans to help guide your team through the execution and closure phases of
the project.The plans created during this phase will help you to manage time, cost, quality,
change, risk and issues. They will also help you manage staff and external suppliers, to
ensure that you deliver the project on time and within budget.
In the Planning Phase, the team defines the solution in detail what to build, how to build
it, who will build it, and when it will be built. During this phase the team works through the
design process to create the solution architecture and design, writes the functional
specification, and prepares work plans, cost estimates, and schedules for the various
deliverables.
The Planning Phase culminates in the Project Plans Approved Milestone, indicating that
the project team, customer, and key project stakeholders agree on the details of the plans.
Plans prepared by team members for areas such as communications, test, and security, are
rolled up into a master plan that the program manager coordinates. The team's goal during
this phase is to document the solution to a degree that the team can produce and deploy the
lOMoARcPSD|9139087
solution in a timely and cost-effective manner. These documents are considered living
documents, meaning they will be updated continuously throughout the Planning Phase.
Diligent work in the Planning Phase, which often involves several iterations of plans and
schedules, should mitigate risks and increase chances for success. The team continues to
identify all risks throughout the phase, and it addresses new risks as they emerge.
Project Execution
There are two phases of project execution namely design and implementation. The
boundary between these two phases must be clearly understandable. Design is about thinking
and decision making about the form of the products which has to be created. Implementation
lays down the activities that have to be carried out to create these products. Planning and
design phase are difficult to separate at the most detailed level because planning decisions are
influenced by design decisions. For example, if a software product development has five
components then it must have five sets of activities defined for each component.
Project execution is the process from after the contract is signed to the point where the
technology is ready for operational use. New and modified products must be ready from a
technological and operational point of view before installation and operational use. This is
achieved by carrying out the project planning process followed by the project execution
process. A successful project execution process will make a new or modified product ready
from a technological and operational point of view.
The project planning process will identify technical gaps related to the product itself,
environment, standards, governing documents, verification, handling and documentation.
The technology qualification program (TQP) is a project plan that describes activities and
decision gates for a specific product required to close these gaps.
The project planning process may also identify gaps related to vendor’s organization.
These gaps must be corrected prior to project execution and is not a part of the TQP. A
preliminary TQP will be worked out by the vendor as a part of their tender. The TQP will be
finalized in co-operation with the operator prior to contract award. There will be no need for
RcPSD|9139087
the TQP when a product can be delivered off the shelf in accordance with operator’s
technical requirements.
The TQP describes required activities related to 'development and qualification testing
(QT) in the above figure. Technology readiness is achieved when the TQP activities are
executed and accepted.
The manufacturing and factory acceptance testing (FAT) is controlled by the quality plan.
The operational preparations are controlled by the operational manager. Operational
readiness is achieved when the manufacturing and operational preparations are finalized and
accepted.
Vendors have quality assurance (QA) systems to provide quality in all steps of their
services. These QA systems shall be used to establish the TQP and quality plans during the
project planning process. Operators have requirements and recommended practices that shall
be used during the operational preparation process. Still there is need for a practical summary
of the entire project execution process as it will be for new technology. Such summary is
wanted by completion- and drilling engineers responsible for the project planning process
and will be used to control the content of the TQP and quality plan worked out by the
vendors.
This need has resulted in the development of a guideline describing the entire project
execution process. The guideline is fitted to operator needs and has thus emphasis on
qualification activities. The guideline is made for well technology, but the main principles
can be used for most technology elements.
5. Project close
After project tasks are completed and the client has approved the outcome, an evaluation
is necessary to highlight project success and/or learn from project history.Projects and project
management processes vary from industry to industry; however, these are more traditional
elements of a project. The overarching goal is typically to offer a product, change a process or to
solve a problem in order to benefit the organization.
The objectives are met only when the system becomes operational. Performance
measures deals the reliability of the operational system and predictive measures are done
during the development of the project by measuring the effectiveness of the developing
system.
Division of Work - According to this principle the whole work is divided into small
tasks.The specialization of the workforce according to the skills of a person , creating
specific personal and professional development within the labour force and therefore
lOMoARcPSD|9139087
Unity of Command - This principle states that each subordinate should receive
orders and be accountable to one and only one superior. If an employee receives
orders from more than one superior, it is likely to create confusion and conflict.
Unity of Direction - All related activities should be put under one group, there
should be one plan of action for them, and they should be under the control of one
manager.
The Degree of Centralization - The amount of power wielded with the central
management depends on company size. Centralization implies the concentration of
decision making authority at the top management.
Line of Authority/Scalar Chain - This refers to the chain of superiors ranging from
top management to the lowest rank. The principle suggests that there should be a
clear line of authority from top to bottom linking all managers at all levels.
Order - Social order ensures the fluid operation of a company through authoritative
procedure. Material order ensures safety and efficiency in the workplace. Order
should be acceptable and under the rules of the company.
lOMoARcPSD|9139087
Equity - Employees must be treated kindly, and justice must be enacted to ensure a
just workplace. Managers should be fair and impartial when dealing with employees,
giving equal attention towards all employees.
Initiative - Using the initiative of employees can add strength and new ideas to an
organization. Initiative on the part of employees is a source of strength for
organization because it provides new and better ideas. Employees are likely to take
greater interest in the functioning of the organization.
Esprit de Corps/Team Spirit - This refers to the need of managers to ensure and
develop morale in the workplace; individually and communally. Team spirit helps
develop an atmosphere of mutual trust and understanding. Team spirit helps to finish
the task on time.
Net Profit
The difference between the total costs and the total income over the life of the project is
calculated as net profit.
Net profits do not involve the timing of the cash flows. When there are many projects,the
net profit of preferable projects is done on selection criteria.
Some projects incomes are returned only towards the end of the project. This is a major
disadvantage which means that the investment must be funded for longer time.
Estimates in distant future are less reliable than the short-term estimates which are more
preferable.
Payback Period
The time taken to break even or pay back the initial investment is the payback period.
The project with the shortest payback period will be taken based on organizations that
wish to minimize the time limit.
The payback period is simple to calculate but sensitive to forecasting errors.
The limitation of the payback period is that it ignores the overall profitability of the
project.
Return on Investment
The accounting rate of return or the return on investment compares the net profitability
to the investment required.
Return on Investment (ROI) is calculated using the given formulae;
X 100
The ROI provides simple, easy to calculate the measure of return on capital.
Eg: The net profit of a project id Rs.30,000 and the total investment if Rs.100,000.
Calculate the ROI if the total period is taken as 3 years.
X 100
The annual rate of return with respect to discounted future earnings is termed as the
discount rate.
The net present value of any future cash flow is calculated by the formulae:
t
Present value = value in year t / (1+r)
Where ‘r’ denotes the discount rate expressed as a decimal value,
‘t’ represents the number of years of future cash flows.
Net present value can also be calculated by multiplying the cash flow by the
appropriate discount factor.
NPV for a project is obtained by summing the discounted values and discounting
each cash flows.
The discount rates must be standard and it should reflect the interest rates as nominal
with similar projects which is uncertain with NPV method.
Using NPV, the measure of profitability of comparable projects is not directly
concerned with earnings from other investments which are quoted as a percentage
interest rate.
Risk is associated with almost every project. Risk can become an important factor
when the project is not able to meet its objectives.
Every possible risk must be identified, analyzed and minimized during the
development of the software system.
Risk Identification
Every project evaluation involves risk handling issues.
All possible risks are identified and must be quantified with their potential measures
of evaluation.
A project risk matrix can be implemented in creating a checklist of all possible risks
and classify them based on their relative importance.
The risk matrix contains values of high, medium and low based on their likelihood.
Some factors classified in the risk project matrix contains, delivery of software,
development budget exceeded limit, estimation of maintenance costs, response time
targets and so on.
Risk Ranking
Based on the risk identified, ranking can be established for projects.
Evaluating projects based on the risk project matrix gives a clear picture of how to
rank the different risks that occurs in projects.
Risk ranking involves giving scores to projects based on priorities defined for each
risk in the project.
Discounted cash flow techniques can be used to evaluate the net present value of
future cash flow taken into account the interest rates and uncertainty.
Consider three projects 1, 2 and 3, the figure describes that project 1 is very far from
the expected value compared to project 2. Project 2 exhibits a larger variance where
as project 3 represent a skewed distribution. Project 3 can attain the profitability than
expected but it can go worse too.
… Project 1
------ Project 2
Project 3
NPV
Expansion
0.4 -150,000
Extend 0.9
No Expansion
95,000
Expansion
Replace 0.4 300,000
No Expansion 0.9
-70,000
Any decision that is made will have a greater impact on the future profitability of the project.
The analysis of a decision tree consists of evaluating the expected benefit of taking
each path from a decision point.
The expected value of each path is determined by the sum of the value of each
possible outcome multiplied by its probability of occurrence.
The figure illustrates the use of decision tree of when to extend the project or replace
the existing system based on the NPV values defined.
Decision tress are more advantageous because it will give a precise idea of modeling
and analyzing the problems in the project.
Strategic Programmes
Portfolio programme models define a strategic domain process within the organization.
ARcPSD|9139087
Infrastructure Programmes
Organizations differ in the way they exist. Some of them have distinct
departments
while others have integrated systems.
Each department might be unique in handling different information having distinct
databases defined.
A uniform infrastructure will allow sharing of applications between various departments
which would help in the development process.
Creating a Programme
The various phases involved in creating a programme are defined as:
Creation of programme mandate
Programme brief
Vision statement
Blueprint of programme
Programme portfolio
Programme brief
A programme brief defines the feasibility study of the programme. It includes:
Preliminary vision statement highlighting the capacity of the organization.
Benefits generated from the programme
Risks and other issues involved
Estimated cost, effort and time limit for completion
Vision statement
The vision statement describing the sponsoring group with a more detailed planning
process.
To govern the day to day responsibilities a programme manager is appointed from within
the project management team for running the programme.
Programme manager along with the project development team analyzes the vision
statement and formulates a refined plan for implementing the process.
Blueprint of programme
The description of the vision statement and the changes that have been made to the
structure and the operations are represented in the blueprint.
A blueprint must emphasize on:
Requirement of business models for the new process
Staff requirement by the organization
Resources requirements
Data and information requirements
Cost, effort, performance and service level requirements
lOMoARcPSD|9139087
Programme portfolio
Initially, a list of projects are created along with is objectives to create a programme
portfolio.
An outline schedule of the entire development process is presented by the sponsoring
group with all estimation factors.
Groups are identified with similar interest and drawn out as a stakeholder map.
A communication strategy and plan shows the appropriate information flow between
stakeholders.
The preliminary plan produces the project portfolio, estimation of costs,
expected benefits, risks identified and the resources needed
The Scope Statement should also include the list of users using the product, as well as
the features in the resulting product.
As a baseline scope statements should contain:
The project name
The project charter
The project owner, sponsors, and stakeholders
The problem statement
The project goals and objectives
The project requirements
The project deliverables
The project non-goals
Milestones
Cost estimates
In more project oriented organizations the scope statement may also contain these and
other sections:
Project Scope Management Plan
Approved change requests
Project assumptions and risks
Project acceptance criteria
The project objectives are identified and practical measures are analyzed in
achieving them
A project authority must be identified to have an overall authority over the
project.
Identify different stakeholders involved in the development of the project.
Changes in the objectives must be in a controlled manner.
Interaction and communication among all parties must be straight forward.
* Projects are completed when the project goals are achieved or it’s determined the
project is no longer viable.
* A successful project is one that meets or exceeds the expectations of your
stakeholders.
As the system is developed, the product is driven out of the defined objectives.
The project must be analyzed based on its quality requirements.
Projects are prone to higher risk which needs to be handled without affecting the
product created.
In implementing the product, user requirements are given due importance.
Appropriate methodology and SDLC process must be chosen to suit the current
product.
Review the overall resource estimates.
Product flow diagram represents the flow of the product being developed.
Product instances must be recognized when a product is related to more than one
product. Design Code
Module 1 Module 1
Design Code
Module 3 Module 3
Expert estimation: The quantification step, i.e., the step where the
estimate is produced based on judgmental processes.
Formal estimation model: The quantification step is based on mechanical
processes, e.g., the use of a formula derived from historical data.
Combination-based estimation: The quantification step is based on a
judgmental or mechanical combination of estimates from different sources.
The uncertainty of an effort estimate can be described through a prediction
interval (PI). An effort PI is based on a stated certainty level and contains a
minimum and a maximum effort value.
lOMoARcPSD|9139087
The most common measures of the average estimation accuracy is the MMRE
(Mean Magnitude of Relative Error), where MRE is defined as:
MRE = |actual effort − estimated effort| / |actual effort|
Psychological factors potentially explaining the strong tendency towards over-optimistic
effort estimates that need to be dealt with to increase accuracy of effort estimates.
These factors are essential even when using formal estimation models, because much of
the input to these models is judgment-based.
Factors that have been demonstrated to be important are: Wishful thinking, anchoring,
planning fallacy and cognitive dissonance.
The psychological factors found in work by Jorgensen and Grimstad describes,
It's easy to estimate what you know.
It's hard to estimate what you know you don't know.
It's very hard to estimate things that you don't know you don't know.
System requirements
Design module 1
Code module 1
Design module 2
Code module 2
Integrated software
Staff priority list is generated based on the task allotted to them because some staffs
are used for more than one task.
A Gantt chart pictorially represents when activities have to take place and which one
has to be executed at the same time.
The chart represents when staff will be carrying out the tasks in each month. It also
shows staff involved in more than one task.
When allocating resources the constraints associated is estimated and included in the
overall cost.
Determine the focus : The focus of the Project Review is the question that the
team will ask themselves as they investigate the events that occurred during the
project. This is the fundamental question that will guide the decisions that the
team will make while planning the Project Review. It is always stated as a
question. A commonly used question that project teams ask is:
What are the root causes of events that determined or impacted resources,
schedule, or quality?
lOMoARcPSD|9139087
Select the appropriate tools : Now that the scope, the goaland the problem are
known,the data set needed for the project review areidentified along with the
various activities that will used.
Identify the participants : The Project Review Leadership Team guides the
Postmortem effort. As a group they determine the focus if the investigation, select
the tools that will be used, review the output from each step, decide who should
participate in each activity, and are responsible for reporting lessons learned and
recommendations for action. The Project Review Team usually consists of the
movers and shakers that drove the project or event. They work together to manage
the Project Review process. The team should consist of folks most intimate with
the project including any of the following representatives:
Project Managers
Product Managers
Development Leads
Quality Leads
Content Experts
Customer Support Leads
Management
Document the review plan : Theproject review template can be used so that
everyone responsible for implementation has a copy of the plan.
Project planning and execution becomes an iterative process where as each activity
which is to be carried out approaches, they should be reviewed in detail.
This set of identifiable stages through which a product transits from inception
to retirement form the life cycle of the product.
Life cycle model (also called a process model) is a graphical or textual representation
of its life cycle.
The no. of inter related activities to create a final product can be organized in different
ways and we can call these Process Models.
A software process model is a simplified representation of a software process. Each
model represents a process from a specific perspective. These generic models are abstractions
of the process that can be used to explain different approaches to the software development.
Plan-driven process is a process where all the activities are planned first, and the progress is
measured against the plan. While the agile process, planning is incremental and it’s easier to change
the process to reflect requirement changes.
• Requirements
• Design
• Implementation
• Testing
• Maintenance
In principle, the result of each phase is one or more documents that should be approved and the
next phase shouldn’t be started until the previous phase has completely been finished.
In practice, however, these phases overlap and feed information to each other. For example,
during design, problems with requirements can be identified, and during coding, some of the
design problems can be found, etc.
The software process therefore is not a simple linear but involves feedback from one phase to
another. So, documents produced in each phase may then have to be modified to reflect the
changes made.
The spiral model is similar to the incremental model, with more emphasis placed on risk
analysis. The spiral model has four phases: Planning, Risk Analysis, Engineering and Evaluation.
A software project repeatedly passes through these phases in iterations (called Spirals in this
model). The baseline spiral, starting in the planning phase, requirements is gathered and risk is
assessed. Each subsequent spiral builds on the baseline spiral. It is one of the software
development models like Waterfall, Agile, V-Model.
Planning Phase: Requirements are gathered during the planning phase. Requirements like
‘BRS’ that is ‘Bussiness Requirement Specifications’ and ‘SRS’ that is ‘System
Requirement specifications’.
Risk Analysis: In the risk analysis phase, a process is undertaken to identify risk and alternate
solutions. A prototype is produced at the end of the risk analysis phase. If any risk is found
during the risk analysis then alternate solutions are suggested and implemented.
Engineering Phase: In this phase software is developed, along with testing at the end of the
phase. Hence in this phase the development and testing is done.
Evaluation phase: This phase allows the customer to evaluate the output of the project to date
before the project continues to the next spiral.
7
the customer’s requirements or feasibility of some design decisions.So, a prototype is useful when
Each system increment reflects a piece of the functionality that is needed by the
customer. Generally, the early increments of the system should include the most important or
most urgently required functionality.
This means that the customer can evaluate the system at early stage in the development to
see if it delivers what’s required. If not, then only the current increment has to be changed and,
possibly, new functionality defined for later increments.
Incremental software development is better than a waterfall approach for most business, e-
commerce, and personal systems.
By developing the software incrementally, it is cheaper and easier to make changes in the
software as it is being developed.
Compared to the waterfall model, incremental development has three important benefits:
1. The cost of accommodating changing customer requirements is reduced. The amount of
analysis and documentation that has to be redone is much less than that’s required with
waterfall model.
2. It’s easier to get customer feedback on the work done during development than when the
system is fully developed, tested, and delivered.
3. More rapid delivery of useful software is possible even if all the functionality hasn’t been
included. Customers are able to use and gain value from the software earlier than it’s possible
code it in a simplified manner and use the code to demonstrate what he or she means. Code, say
the proponents of this position, is always clear and concise and cannot be interpreted in more
than one way. Other programmers can give feedback on this code by also coding their thoughts.
Testing
Extreme programming's approach is that if a little testing can eliminate a few flaws, a lot of
testing can eliminate many more flaws.
• Unit tests determine whether a given feature works as intended. Programmers write as many
automated tests as they can think of that might "break" the code; if all tests run successfully,
then the coding is complete. Every piece of code that is written is tested before moving on to
the next feature.
• Acceptance tests verify that the requirements as understood by the programmers satisfy the
customer's actual requirements.
System-wide integration testing was encouraged, initially, as a daily end-of-day activity, for
early detection of incompatible interfaces, to reconnect before the separate sections diverged
widely from coherent functionality. However, system-wide integration testing has been reduced,
to weekly, or less often, depending on the stability of the overall interfaces in the system.
Listening
Programmers must listen to what the customers need the system to do, what "business logic" is
needed. They must understand these needs well enough to give the customer feedback about the
technical aspects of how the problem might be solved, or cannot be solved. Communication
between the customer and programmer is further addressed in the planning game.
Designing
From the point of view of simplicity, of course one could say that system development doesn't need
more than coding, testing and listening. If those activities are performed well, the result should
always be a system that works. In practice, this will not work. One can come a long way without
designing but at a given time one will get stuck. The system becomes too complex and the
dependencies within the system cease to be clear. One can avoid this by creating a design structure
that organizes the logic in the system. Good design will avoid lots of dependencies within a system;
this means that changing one part of the system will not affect other parts of the system.
Advantages
Robustness oARcPSD|9139087
Resilience
Cost savings
Lesser risks
Disadvantages
It assumes constant involvement of customers
Centered approach rather than design-centered approach
Lack of proper documentation
whole is built up step by step, each successive version consisting of the previous ones plus a
number of new functions.
No precise definition
Difficult to estimate at start of a project
Only a code measure
Programmer-dependent
Does not consider code complexity
Analogy, where a similar, completed project is identified and its actual effort
is used as the basis of the estimate.
Parkinson, where the staff effort available to do a project becomes the estimate.
Price to win, where the estimate is a figure that seems sufficiently low to win
a contract.
Top-down, where an overall estimate for the whole project is broken down
into the effort required for component tasks.
Bottom-up, where component tasks are identified and sized and these
individual estimates are aggregated.
The use of Bang measure could apply when re-engineering (either complete or piecewise) is
being considered, as discussed in Maintenance of Operational Systems—An Overview.
Feature points – Adds changes to improve applicability to systems with significant internal
processing (e.g., operating systems, communications systems). This allows accounting for
functions not readily perceivable by the user, but essential for proper operation.
Weighted Micro Function Points – One of the newer models (2009) which adjusts function
points using weights derived from program flow complexity, operand and operator vocabulary,
object usage, and algorithm.
Benefits
The use of function points in favor of lines of code seek to address several additional issues:
The risk of "inflation" of the created lines of code, and thus reducing the value of the
measurement system, if developers are incentivized to be more productive. FP advocates
refer to this as measuring the size of the solution instead of the size of the problem.
Lines of Code (LOC) measures reward low level languages because more lines of code are
needed to deliver a similar amount of functionality to a higher level language. C. Jones offers
a method of correcting this in his work.
LOC measures are not useful during early project phases where estimating the number of
lines of code that will be delivered is challenging. However, Function Points can be derived
from requirements and therefore are useful in methods such as estimation by proxy.
Putnam was the first to study the problem of what should be a proper staffing pattern for
software projects. He extended the classical work of Norden who had earlier investigated the
staffing pattern of general research and development type of projects. In order to appreciate the
staffing pattern desirable for software projects, we must understand both Norden’s and Putnam’s
results.
Norden’s Work
Nordern studied the staffing patterns of several R&D projects.
He found the staffing patterns of R&D projects to be very different from the
manufacturing or sales type of work.
Staffing pattern of R&D types of projects changes dynamically over time for efficient
man power utilization.
He concluded that staffing pattern for any R&D project can be approximated by the
Rayleigh distribution curve.
Putnam’s Work
He found that staffing pattern for software development projects has characteristics very
similar to R&D projects
He adapted the Rayleigh-Norden curve to relate the no of delivered lines of code to the
effort and the time required to develop the product.
Initially less no of developers are needed.
As the project progresses and more detailed work is performed, the number of developers
increases and reaches a peak during product delivery
After delivery, the no. of project staff falls consistently during product maintenance.
Feasibility assessment
Feasibility assessment talks about an very early stage describing whether it is feasible
for the project to exist within the specified time constraint.
A detailed plan will help in forecasting of the project as it progresses from one stage
to other stages of activities.
The feasibility factor also lies in the availability of resources that includes specialized
staff to carry out the activities.
Allocation of resources
The best way to allocate resources to the project depends on the availability factor.
The project plan must analyze the available resources and the timescales for each and
every activity.
Additional usage of resources more than the stipulated timescale will result in
slacking the progress of the project.
Estimation of costs
The project plan must provide solutions to the following
questions: What is the total expenditure?
How much will the project costs?
What are the various estimating factors involved in the development process.
These can be answered only when a detailed estimation of costs and timing is
defined.
Project coordination
Interaction and communication plays a vital role in handling complex projects.
Effective team management must be established to carry out the activities in a well-
coordinated manner.
In particular, the availability of staff for a set of integrated project schedules must be
carefully allocated with no period of idleness.
Personal encouragement
Staff involved in the development process must be motivated in an effective way so
that they achieve the target without any delay.
lOMoARcPSD|9139087
• The targets provided to the staff are monitored and personal encouragement must be
given to individual staff if achieve the target on time.
• Activity planning helps in completing the project in minimum time with an nominal
cost with the help of project schedules.
• To shorten the time limit, activities can be carried out in parallel based on the
conditions defined for obtaining resources.
• Project scheduling activities includes the extension of timescale provided with
constraints that can be relaxed to have effective usage.
Project and its activities must be clearly defined to achieve the target. An activity plan
will contain the following factors:
A project is basically, composed of number of interrelated activities.
The initiation of a project happens only if atleast one activity is ready to start.
An activity is clearly defined with its start and end point that produce good
deliverables.
Activity requiring resources must be analyzed well in advance and made
available during the execution.
Some activities would depend on other activities for them to complete.
A project can attain its completion only when all activities have been
completed.
Activity-based approach
In the activity-based approach, all the activities are listed and created for the project.
This is achieved by a brainstorming session where the entire project team analysis the
various activities needed a0t different stages with the help of similar projects.
This approach usually generates the list of activities using a work breakdown
structure (WBS).
WBS helps in identifying the lowest level of effort i.e. the task required to complete a
project by breaking down into lower sets of tasks.
lOMoARcPSD|9139087
Project
4. Task defined at lower level includes everything that is required to complete the task at
the higher level.
5. The work breakdown structure provides an in-depth knowledge about the lowest level
of activity that has to be completed.
6. WBS is a refined structure that clearly defines the milestones that has to be achieved
in accomplishing a specific task.
7. The ordering of sequence of activities can also be done in this approach by defining
those activities that have to be completed for others to start.
8. In a purely activity-based approach, activities are identified and defined in five levels:
Product-based approach
Domain Descriptions
Hybrid approach
• WBS deals with list of final deliverables whereas PBS deals in producing the
products using the product flow diagram.
Hybrid approach combines both the activity-based and product-based approach to
structure both activities and products.
Structuring of product-based or activity-based approach depend on the nature of the
project type.
PROJECT
Deliver
Testing the Course
System
Deliver the
System
• Scheduling is required for every activity that is planned along with the resources and
can be represented using a bar chart.
← The chart describes the nature of the development process and the resources available
for completing the specified activities.
Weeks
1 2 3 4 5 6 7 8 9 10 11 12
Person
Requirements
Design Module1
Design Module2
Design Module 3
Code Module1
Code Module2
Code Module 3
Integration
System Acceptance
The chart defines two factors: sequencing of tasks and the schedule of the
task.Scheduling includes the staff availability and the activities allocated to them.
Combining sequencing – scheduling approach is suitable only for smaller projects and
needs to be separated for complex projects as individual process.
In case of larger projects, the logical relationship between the activities are grouped
together and then scheduled for resources.
Every node must have duration: Any node that represents an activity must be
provided with the duration for its execution. Here, the activities must be carried
out in the sequenced order defined in the project schedule.
Links do not have duration: The relationship between activities are represented
through links and generally does not have any duration for the establishment of
creating it.
Code
Sample Data
Precedence Network
Flow of activities:Activities are always started from the left most one and
precedes in the forward direction. Usually, networks are drawn from left to right.
Arrows can be drawn to show the flow of direction.
Loop free network: Activity network must not contain any loop and if any loop
exists, it results in error in the network. But certain process can be iterative in the
development and such activities involved in iterative process should not be
visually seen in the network. All network planning applications have the criteria
of finding the loops and generate errors for both small and complex projects.
lOMoARcPSD|9139087
Preparation of
User manual
Program
Program Program Program Program
Installation
Design Code Testing Sign - off
Preparation of
User manual
Activity Activity
A B
(+10)
Activity
C
The logical network model represents the inter-relationships between the activities
and is used in estimating the duration of the activity.
Critical Path Method ensures that the planned project must be completed as quickly
as possible. It also governs those activities that have delay in execution which can
affect the overall project schedule.
lOMoARcPSD|9139087
The critical path method analyses the precedence of activities to predict the total
project duration.
The focus is based on the slack, free float and path float available between the
activities.The method calculates which sequence of activities has the least amount of
schedule flexibility.
CPM analysis starts with a WBS that has singe point estimates for each activity and
uses the precedence diagramming method to relate the precedence in the network.
With the network drawn, two-pass analysis can be performed through the network of
activities and calculate the node quantities for each activity.
Forward Pass
Forward pass is used to calculate the earliest dates on which each activity may be
started and completed.
The steps involved in forward pass are:
Start at the start node
Compute the top pair of numbers
Always add the duration to the connecting node’s earliest finish time.
For example, given the following data,
Activity : 1-2 1-3 2-4 2-5 3-4 4-5
Duration : 8 4 10 2 3
The network is drawn below:
8 2 2
1 5
10
4 3
3 4
Backward Pass 5
Backward pass is used to calculate the latest dates at which each activity may be
started and completed without delaying the end date of the project..
The steps involved in backward pass
are: Start at the end node
Compute the bottom pair of numbers
Always subtract the duration from the connecting node’s earliest start time.
Considering the above example and representing network diagram with both the
passes:
The network with the earliest and latest occurrence of events is drawn below:
E=8
L=8
8 2 2 E=21
1 5
L=21
E=0
L=0 10
4 3
3 4
5 E=18
L=18
E=4
L=13
The critical path is a single path that defines the duration of the project.
Activity float is a measure which calculates the difference between the activity’s
earliest start date and the latest start date.
An activity with a float value to be zero is called critical because delay in carrying out
the activity will affect the project completion date.
Free float is the delay time taken by single activities that do not affect other activities
where as interfering float represents how much the activity can be delayed without
affecting the end date.
Atleast one path exists in the network joining the critical activities which forms the
critical path of the network.
Critical path must be established because monitoring critical activities have a greater
impact on the completion of the project and it shortens the overall duration of the
project.
For the same example, the critical path and the activity float is calculated as:
Earliest Latest
Duration Start Finish EF Start LS Finish Activity Float /
Activity
Days ES EF=ES LS=LF LF Total Float
+ tij - tij
8 0 8 0 8 0
1–2
4 0 4 9 13 9
1-3
10 8 18 8 18 0
2-4
2 8 10 19 21 11
2-5
5 4 9 13 18 9
3–4
4-5 3 18 21 18 21 0
The critical path is 1245 and all the activities in the critical path are termed as
critical activities.
The nodes are numbered sequentially and the arrows move only from left to
right.
The activity-on-arrow network should not contain any loop or dangle.
Dummy Activities
When there are two different paths having the common activity then, it can be
represented using dummy activity.
The model below describes a situation where the third node is a common event.
Activity
A Activity
Activity D
C
Activity Activity
B E
The problem can be solved by introducing a dummy activity for the third node as
shown below where activity F is included as an dummy activity.
All stakeholders identified in the project are brought together to have a brainstorming
session before the project commences.
These stakeholders identify the various features of the project and analyze the
problems that can arise in due course.
The outcome of the discussions of these sessions is beneficial in view point of the
development process because almost all kinds of risks that the project will face are
analyzed.
Checklists are those risks that occur frequently in software development projects.
These risks contain a list of specialized software development risks that occur.
Every stakeholder must undergo a through checking of this list and find out the kind
of risk that can happen in their projects.
Project managers will have a separate list of risks solely associated with the software
process. Any new kind of risks that happens in any of the projects can be added on to
the organizational risk list.
Casual mapping can be represented as a cognitive map that describes the causes and
effects that influence the outcomes in the activity development. The outcome can be a
negative or a positive influence depends on the particular factor. For example, high
staff turnover can be a positive factor but unstable requirements have a negative
impact.
Casual maps usually represent people’s perspective towards the development of the
project.
3.8.2 Risk Assessment
Most frequent risks that occur causes more damage to the process. Risk exposure for
every risk has to be calculated with the probability of occurrence.
Risk exposure is defined by
Risk exposure = (value of damage) X (probability of occurrence)
Here the potential damage is assessed the money value of the development process.
Few risk exposure assessments are listed below:
lOMoARcPSD|9139087
Managers try to produce very precise estimates of loss or they expect something to
happen. It is the duty of the managers to prioritize the risk and handle them giving
due importance to its existence.
The potential damage and the likelihood of risk are described by qualitative
descriptors, depicts the causes and the impact of the project are shown below:
A probability impact grid or summary risk profiles are described in a matrix which indicates the
position of risk. The top right of the matrix denotes the tolerance line with serious risks levels.
3.8.3 Risk Planning
Risk planning involves the following factors:
Risk acceptance: A risk that has already occurred according to he prioritization
process cannot be avoided. Accept the risk that happens and minimizes the
damage and the costs of action.
Risk avoidance: Some risks that happen regularly can be categorized and
avoided before it occurs.
Pre-mitigation
Post-mitigation
History of action
A PERT chart is a project management tool used to schedule, organize, and coordinate
tasks within a project. PERT stands for Program Evaluation ReviewTechnique, a methodology
developed by the U.S. Navy in the 1950s to manage the Polaris submarine missile program.
PERT uses time as a variable which represents the planned resource application along
with performance specification. In this technique, first of all, the project is divided into activities
and events. After that proper sequence is ascertained, and a network is constructed. After that
time needed in each activity is calculated and the critical path (longest path connecting all the
events) is determined.
Expected time: Helps to carry out a forward pass through a network similar to CPM
Activity standard deviation: Used as ranking measure of the degree of uncertainty or risk for
each activity
A 5 6 8 6.17 0.5
B 3 4 5 4.00 0.33
C 2 3 3 2.83 0.17
E 1 3 4 2.83 0.5
F 8 10 15 10.50 1.17
G 2 3 4 3.00 0.33
A Monte Carlo method is a technique that involves using random numbers and
probability to solve problems. This method is often used when the model is complex, non linear
or involves more than just a couple uncertain parameters. A simulation can typically involve
over 10,000 evaluations of the model, a task which in the past was only practical using super
computers. The Monte Carlo method is just one of many methods for analyzing uncertainty
propagation, where the goal is to determine how random variation, lack of knowledge, or error
affects the sensitivity, performance, or reliability of the system that is being modeled.
Monte Carlo simulation is categorized as a sampling method because the inputs are
randomly generated from probability distributions to simulate the process of sampling from an
actual population. So, we try to choose a distribution for the inputs that most closely matches
data we already have, or best represents our current state of knowledge. The data generated
from the simulation can be represented as probability distributions (or histograms) or converted
to error bars, reliability predictions, tolerance zones, and confidence intervals.
The main steps involved in carrying out Monte Carlo Simulation for a project consisting of n
activities are as follows.
Step 1: Express the project completion time in terms of the duration of the n activities (xi, i=1
to n) and their dependences as a precedence graph, d = f(x1, x2, …xn).
Step 2: Generate a set of random inputs, xi1, xi2, ..., xin using specified probability distributions.
Step 3: Evaluate the project completion time expression and store the results in di.
Step 5: Analyze the results di using histograms, summary statistics, confidence intervals, etc.
Resource allocationis the assignment of available resources to various uses. In the context
of an entire economy, resources can be allocated by various means, such as markets or central
planning. In project management, resource allocation or resourcemanagement is the scheduling
of activities and the resources required by those activities while taking into consideration both
the resource availability and the project time.
Activities are ordered according to their total float .Those with the smallest float are
assigned the highest priority
Scheduling resources can create new critical paths. Delaying the start of an activity
because of lack of resources will cause that activity become critical if this uses up its float.
Manage the allocation of resources within programmers
The resources of an organization consist of people, materials, equipment, knowledge and
time. Organizations typically have limited resources; therefore, tradeoffs on what project
resources are expended and when are made every day within organizations. A resourceallocation
plan is an important tool in effective management of scarce resources. The timing of the need of
those resources can be and should be determined within the projectschedules. A resource plan,
which describes the type of resource needed and the timing of that need, is critical to effective
resource management. As the project schedule changes, the resource plan must also be flexible
enough to adjust as these changes occur.
Examples
Allocating resources is fairly self-explanatory. If allocating stone for building a house,
the project manager must ensure that she procures enough stone to complete the project.
Regarding leveling, if renting equipment, the project manager must ensure it will be used
lOMoARcPSD|9139087
steadily rather than sporadically rented and returned. If contracting carpenters, the project
manager should aim to strive to keep a set number of carpenters working at a set number of
hours for the duration of the project to ensure consistency. Carpenters may have difficulty
scheduling more sporadic hours into their schedule, meaning the firm might then have to contract
more workers, leading to inconsistent results. Meanwhile, materials don't necessarily need to be
leveled as they have been purchased rather than rented or paid by the hour.
Calculating cost is straightforward where organization has standard cost figures for staff
and other resources. Staff costs includes not just salary, but also social security contributions by
the employer, holiday pay etc. Timesheets are often used to record actual hours spent on each
project by an individual. One issue can be how time when a staff member is allocated and
available to the project, but is not actually working on the project, is dealt with. Overheads e.g.
space rental, service charges etc. Some overheads might be directly attributable to the project, in
other cases a percentage of departmental overheads may be allocated to project costs. Usage
charges are some charges can be on a ‘pay as you go’ basis e.g. telephone charges, postage, car
mileage – at the planning stage an estimate of these may have to be made. In general, costs are
categorized as follows.
Staff Costs
Overheads
Usage Charges
Cost profile
This shows how much is going to be spent in each week. This could be important where an
organization allocates project budgets by financial year or quarter and the project straddles more
than one of these financial periods
Accumulative costs
The project manager will also be concerned about planned accumulative costs. This chart
can be compared to the actual accumulative costs when controlling the project to assess whether
the project is likely to meet its cost targets.
Project steering committee or the Project Board has the overall responsibility of the
project’s progress in achieving the target.
Project manager has the day-to-day responsibility of governing the development of the
project. These managers assign individual responsibilities to different teams under a team
leader.
Reporting is broadly classified as formal and informal reporting. The basic types of
reports associated with formal and informal reporting includes regular and ad hoc types.
Formal regular types can be oral or written. The standard oral communication of
minutes are kept whereas written type gets the reporting issues in a separate written
format.
Formal ad hoc are mostly received information of different levels towards the end of the
project and generate written reports.
Informal, oral and ad hoc provides early warning to the system and must be backed up
by formal reporting procedures.
` Collecting information of the project progress at regular instances provides much control
over the project.
` However, gathering of partial completion of activities can be used to calculate the
remaining work needed to complete.
Intermediate products that are achieved can specify a milestone in the development of the
project.
Worked Hours
Project Activity Description Hours Percentage Scheduled Estimated
Code this of Completio Completion
week Completio n
n
Non-worked hours
Code Description Hours Comment & Authorization
this
week
Weekly Timesheet
lOMoARcPSD|9139087
Weekly timesheets contain the breakdown activities and holds information about the
scheduled and estimated completion time of individuals and do not contain the project
completion dates.
Review both first and the second level assessments to produce an overall
assessment
• This method only focuses on non-achievement factors and do not mention about any
delay in the development process.
• Assessment forms can be used to evaluate the overall status of the project.
• Critical activities denoted by red color must be reconsidered during the revision of
project schedule.
Review Meetings
. . .
The progress reports of the activity are normally represented as a shaded activity bar
which indicates the percentage of activity completion.
O
D
A
Y
T
|9139087
A Slip chart provides an alternative view of Gantt chart by providing a visual indication
of those activities which are not on schedule.
The chart indicates that, the more there is a bend in the line the greater the variation in
the project plan.
If the slip line deviates more towards the non-achievement of project objectives, then it
has to be reconsidered.
The same figure used to represent Gantt chart is modified to Slip chart and depicted
below: TODAY
Planned Week 15 16 17 18
Work Days M T WT F M T W T F M T W T F M T W T F
Code & Test Module 1
Review Meetings
. . .
Slip Chart
Additional slip lines can be included at regular intervals as they are build p which
provides the project manager a clear idea about the projects progress.
An activity is denoted by a red circle (colored darker in the figure) when the start and the
end dates are later than the target dates whereas green circle (colored lighter in the figure)
denotes that the activity is ahead of its schedule.
The color to the circles reminds the project team about the status of each activity.
In general, all the three types of chart techniques do not show clearly the slippage in the
project completion date for the project life cycle. This is overcome by timeline charts.
A line down the horizontal axis represents the scheduled activity completion dates and the slip in
the line indicates a delay in the respective activities.
This timeline chart is used to calculate the duration of execution of the project as a part of post-
implementation review.
Dra
nde
ftte
r
2
3
4
5
6
7
8
9
Timeline Chart
The chart does a comparison between the actual and the planned expenditure.
These charts become more useful for estimating future costs.
When revision of estimated cost and completion date are done, the same can also be
expressed in the revised cumulative chart.
An assigned value to each task or work package based on original cost forecasts yields
earned value for the project.
The assigned value is the original budgeted cost value and termed as a planned value
(PV) or budgeted cost of work schedule (BCWS).
Earned value(EV)denotes the total value credited to a project at any point. It is also
termed as budgeted cost of work performed (BCWP).
0/100 technique: Task value is assigned zero till completion and the budgeted
value is 100%.
50/50 technique:Task value is assigned 50% and then increased to 100% once it
completes.
Schedule variance (SV) : the difference between the earned value and the
planned value indicates the degree of the completed work with the planned.
Cost variance (CV):the difference between the earned value and the actual cost
of a completed work results in cost variance. A positive CV value indicated that
the project is under control and a negative CV denotes that the actual cost
incurred is much more than the planned one.
← The diagram depicts the earned value analysis along with the schedule and cost
variance.
Critical path activities: These denote those activities in the critical path that are
delayed in project completion date.
Activities with no free float: These delayed activities will have a delay in
subsequent ones but still stick on target. These activities can have a serious effect on
the resource schedule because the subsequent activities have to wait for its
completion.
Activities with less than a specified float: If there is a very little float in the activity
say less than one week, these activities must be monitored very closely.
High risk activities: These high risks are identified in the risk management plan
itself and these results in over spending.
Activities using critical resources: Critical activities are very expensive and are
available only for a limited period and require high level of monitoring.
A precedence constraint activity can be sub-divided into a component that can start
immediately.
Altering these constraints would have a major impact on the quality factors, the risk
involved, which can cause a delay in carrying out the activities.
Change control implies the authority to approve and rank the changes. It combines the
automated tool with human to provide a mechanism for control of change.
Any changes or alteration done to a single document often implies changes to other
documents as well.
Change request is evaluated to assess the technical aspect of configuration items and the
budget.
4.7.1 Role of Chang Control Manager
The responsibilities of change control manager or the configuration librarian are:
Identification of configuration items that are subjected to change control.
If user accepts, copies of master are chosen User do not accept the change
The first requirement for any change management is to have clearly agreed-on basis for
change. That is, when a change is done, it should be clear to what changes has been applied.
This requires baselines to be established. A baseline change is the changing of the established
baseline, which is controlled by SCM.
After baseline changes the state of the software is defined by the most recent baseline
and the changes that were made. Some of the common baselines are functional or requirements
baseline, design baseline, and product or system baseline. Functional or requirement baseline is
generally the requirements document that specifies the functional requirements for the software.
Design baseline consists of the different components in the software and their designs. Product
or system baseline represents the developed system.
It should be clear that a baseline is established only after the product is relatively stable.
Though the goal of SCM is to control the establishment and changes to these baselines, treating
each baseline as a single unit for the purpose of change is undesirable, as the change may be
limited to a very small portion of the baseline.
Configuration control
Most of the decisions regarding the change are generally taken by the configuration
control board (CCB), which is a group of people responsible for configuration management,
headed by the configuration manager. For smaller projects, the CCB might consist of just one
person. A change is initiated by a change request.
The reason for change can be anything. However, the most common reasons are requirement
changes, changes due to bugs, platform changes, and enhancement changes. The CR for change
generally consists of three parts. The first part describes the change, reason for change, the SCIs
that are affected, the priority of the change, etc.
The second part, filled by the CM, describes the decision taken by the CCB on this CR,
the action the CM feels need to be done to implement this change and any other comments the
CM may have. The third part is filled by the implementer, which later implements the change.
Status accounting and auditing
For status accounting, the main source of information is the CRs and FRs themselves.
Generally, a field in the CR/FR is added that specifies its current status. The status could be
active, complete, or not scheduled. Information about dates and efforts can also be added to the
CR, the information from the CRs/FRs can be used to prepare a summary, which can be used
by the project manager and the CCB to track all the changes.
4.9 Managing Contracts
4.9.1 Introduction
The acquisition and supply process are depicted for pre-contract and post-contract as
follows:
The success of a contract requires considerable amount of time management.
An ISO 12207 standard defined for acquisition and supply of software defines five
major processes namely,
Acquisition
Supply
Operation
Maintenance
Development
ACQUIRER SUPPLIER
Initiation
Pre -
Request for proposal Initiation cont
ract
Preparation of Response
Contract Preparation
Contract
Post
Planning
-
cont
ract
Supplier Monitoring Execution
The initiation activity starts with the acquirer describing the preparation for the invitation
to tender.
System requirements are broader and are not related to software alone but depends on the
changes in the organizational environment.
Software requirements specifically relate to the software components within the delivered
system and can be extracted from broader system requirements.
Request for proposal of the project contains the system requirements, scope of the
system, instruction for the bidders, list of software products, subcontractors detail and
other technical constraints.
The criteria for selecting the supplier will have to done very carefully by the acquirer
done by joint reviews, verification and validation.
As the supplier delivers, the acquirer conducts the review tests and is satisfied accepts the
software and sign-off as completed.
Services are the external resources that are required for setting up a new system.
Based on the supply of a completed software package the contracts can be classified as
Bespoke system: This kind of system is developed for an individual that is created from
scratch.
Off-the-shelf: This package denotes what the user buys as it is and called as shrink-wrapped
software.
lOMoARcPSD|9139087
Customized off-the-shelf: This system represents a basic core system that is modified based on
the requirements of the client.
Based on how the payment is made to the supplier, the contracts can be classified as,
Fixed price contracts: Here, the price is fixed when the contract is signed. There will be no
changes in the contract terms and the payment must be made towards the end of the work.
Advantages of Fixed price contracts
Customer expenditure is well-known.
Motivation of the supplier towards delivering the product with cost-effective.
Disadvantages of Fixed price contracts
Supplier absorbs the risk in original estimate and allows higher prices to allow
contingency which is added as a margin quoted in the tender.
Requirements once defined are difficult to modify which can cause friction between
supplier and customer.
Initially, the supplier will quote low price but as requirements are put forward, the
supplier demands a higher price.
Threat to the quality of the system can occur if the price is fixed.
Time and Materials contracts: Here, the customer is charged with a fixed rate per unit of
effort. This also estimates the overall cost based on the customer’s requirements and it is not
based on the final payment.
Advantages of Time and Materials contracts
Changing requirements can be done very easily.
The customer is not worried about the price pressure.
Disadvantages of Time and Materials contracts
Fixed price per unit delivered contracts:This type of contract is based on function point
counting. Along with the size of the system which includes LOC, a price per unit is also
quoted. In this system, the scope grows during the development process.
SD|9139087
lOMoARcPSD|9139087
ARcPSD|9139087
lOMoARcPSD|9139087
Open tendering process: The request for proposal must be considered and evaluated with the
original conditions. Every supplier can bid to supply the goods and services. The evaluation
process can be time-consuming and also expensive in open tendering process.
Restricted tendering process: Here, bids can be made only by suppliers who have been
invited by the customer. This is an better approach than the open tendering but has some risk
factors.
Negotiated procedure: In particular instances, the restricted tendering process fails because of
the defects which lead to additional payment towards the completion of the project.
4.9.4 Stages in Contract Placement
Requirement analysis
Preparation of an requirement document containing the
following: Introduction
Description of the existing system
Current environment of the system
Customer’s future plans
System requirements based on either mandatory or desirable
Deadlines have to be defined
Additional information requires from the potential suppliers
Evaluation plan
The evaluation plan contains:
Preparing a plan to evaluate the submitted proposals.
Checking for the mandatory requirements that have been defined to meet the
objectives.
Evaluating the desirable requirements
Validating the quality of the software system
Cost incurred for the lifetime of the proposed system
Invitation to tender
This is also termed as request for proposal and contains:
System requirements
Defining the scope of the system
Instruction to the bidders
List of the software products
Control of the subcontractors resulting in MoA
Technical constraints
lOMoARcPSD|9139087
Evaluation of proposals
This evaluation has to be done in a planned manner. The process of evaluation includes:
Scrutiny of the proposal documents
Questioning supplier representatives
Giving demonstrations
Visiting the site of the development process
Conducting practical tests.
Goods and services to be supplied: This contains the actual list of individual pieces of
equipment that has to be delivered with specific model numbers. The services includes proper
training, documentation, installation, conversion of existing files, maintenance of agreements
and insurance related issues.
Ownership of the software: There are two possible ownership that can exists; one with the
customer and the other with the supplier. Supplier provides a license to the user to use but that
does not mean the ownership changes. Any assignment of copyright must be in writing.
Environment: The basic working environment facilities have to be provided by the supplier
and the customer such as electricity supply.
Acceptance procedures: Various tests are conducted and the system is accepted after the
procedure for signing off the testing process is completed.
Standards: Every product that is supplied must abide by the standards relating to its
development and its documentation.
lOMoARcPSD|9139087
Project and quality management: The quality that is expected by the management for the
project can be influenced by conducting review meetings and obtaining the progress
information of the project.
Timetable: A schedule is drawn to describe the different tasks and activities that has to be
carried out during the development process.
Price and payment method: Payment must be made based on the price that has been defined
in the agreement ensuring that the goods and services are satisfactory.
Miscellaneous legal requirements: A contract must be defined within the legal
jurisdiction stating the liabilities that are applied to sub contractors involved in the process.
Liquidated damages can cause financial losses where the customer suffers if the supplier is not
able to oblige.
4.10 Contract Management
Contract management studies and monitors the conversation between the supplier and the
customer while the contracted work is being carried out.
Customer can make changes to the future direction of the project and make decisions.
The entire project will require representative of the supplier and the customer to interact
with each other at different points in the development process.
Activities involved in contract management
include: Identifying customer approval;
Negotiating successfully;
Project deliverables;
Managing change;
Decision making;
Legal obligations;
Business laws.
lOMoARcPSD|9139087
Certain software suppliers are concerned with pre-acceptance testing where the user tests
the system than the developer.
The supplier will not like to retain their staff to a specific project after its completion.
Customer finds that the modifications needed by them are handled only by the junior level
staffs that are not aware of the delivered product.
All the payment to the supplier solely depends on the acceptance testing.
Every bug that is raised must be fixed within the period of warranty.
Understanding Behavior
Handling of projects with practical experience becomes a vital role in the aspect of project
management.
The managers must be able to decide on whether it is better to have experienced staff or get
an expert advice.
There are numerous theories defined to explain people’s behavior.
The theories are structures based on “If A is the situation then B is likely to be the solution”.
Other than the structures, there a wide range of influences on a situation which are invisible to the
[6] Interviews: these include the aptitude tests, technical tests, personality tests
and examination of previous work. Group discussions are also used for
evaluating and examining the statements provided in the CV.
[7] References: need to be verified and a medical examination test can also be
done if needed.
5.4 Motivation
Motivation Theories
There are various theories formulated by different persons for motivating the
people to work. They are,
10. Taylorist Model
11. Maslow’s Hierarchy of Needs
12. Herzberg’s Two-Factor Theory
13. Expectancy Theory of Motivation.
lOMoARcPSD|9139087
• Physiological Needs: These are the basic needs for sustaining human life itself, such as
food, water, warmth, shelter, and sleep. Maslow felt that until these needs are satisfied to
the degree necessary to maintain life, other needs will not motivate people.
• Security or Safety Needs: These are the needs to be free of physical danger and of the
fear of losing a job property, food, or shelter.
ARcPSD|9139087
• Affiliation or Social Needs: Since people are social beings; they need to belong, to be
accepted by others. It includes friendship, the need to love and be loved, socializing, etc.
• Esteem Needs: Once people begin to satisfy their need to belong; they tend to want to
be held in esteem both by themselves and by others. This kind of need produces such satisfactions
• Self-actualization Needs: This is the highest need in the hierarchy. It is the desire to
become what one is capable of becoming—to fully realizes one's potential and to
accomplish what one is capable of achieving.
Oldman and Hackman coined a rule that managers should group together the
elements of tasks that is carried out must be meaningful and satisfying assignments.
The satisfaction of any job will depend on the following factors:
Skill variety
Task identity
Task significance
Autonomy
Feedback
Factors that make the job meaningful to the person who is doing it are skill
lOMoARcPSD|9139087
Managers must involve the following measures to enhance the job design: .
← Job enlargement
← Job enrichment
Job enlargement is exactly reverse of specialization where the person doing
the job carries out a wider variety of activities.
Say for example, a software developer associated with maintenance group might be
given additional responsibility for specifying minor changes in other phases.
Job enrichment is where the job holder carried out tasks at managerial and
supervisory level.
Say for example, programmers in maintenance group might be given authority to
accept requests for changes for a very small period (five days) without getting
manger’s approval.
Ethics relates to the moral obligation to respect the rights and interests of others – goesbeyond
strictly legal responsibilities.
One example of organizational ethics is the uniform treatment of all employees. Small
business owners should treat all employees with the same respect, regardless of their race,
religion, cultures or lifestyles. Everyone should also have equal chances for promotions. One
way to promote uniform treatment in organizations is through sensitivity training. Some
companies hold one-day seminars on various discrimination issues. They then invite outside
experts in to discuss these topics. Similarly, small company managers must also avoid favoring
one employee over others. This practice may also lead to lawsuits from disgruntled employees.
It is also counterproductive.
Social Responsibility
Small companies also have an obligation to protect the community. For
example, the owner of a small chemical company needs to communicate certain dangers
to the community when explosions or other disasters occur. The owner must also
maintain certain safety standards for protecting nearby residents from leaks that affect
the water or air quality. There are state and federal laws that protect people from
unethical environmental practices. Business owners who violate these laws may face
stiff penalties. They may also be shut down.
Financial Ethics
Business owners must run clean operations with respect to finances, investing and
expanding their companies. For example, organizations must not bribe state legislators for tax
credits or special privileges. Insider trading is also prohibited. Insider trading is when managers
or executives illegally apprise investors or outside parties of privileged information affecting
publicly traded stocks, according to the Securities and Exchange Commission. The information
helps some investors achieve greater returns on their investments at the expense of others.
Executives in small companies must strive to help all shareholders earn better returns on their
money. They must also avoid collusive arrangements with other companies to deliberately harm
other competitors.
lOMoARcPSD|9139087
Considerations
A small company's organizational ethics can also include taking care of
employees with mental illnesses or substance abuse problems, such as drug and alcohol
dependency. Ethical business owners help their employees overcome these types of
problems when possible. They often put them through employee advisor programs,
which involves getting them the treatment they need. Employees may have issues that
lead to these types of problems. Therefore, they deserve a chance to explain their
situations and get the help they need.
Professional ethics
Professionals have knowledge about the technical domain that the general public
does not. Ethical duty of the expert to warn lay people of the risks involved in a particular
course of action. Many professions, or would be professions, have codes of conduct for
their members
Not all people involved in the development process like to work in groups.
But major software projects always have to work in groups and many people do not
like to work in groups.
Any organization involved in the development process will have various departments
reflecting its structure.
Formal groups can be formulated based on the different departments and task groups
can be formed based on specific tasks carried.
Task group can contain different people from different departments to work together
to carry out a specific task.
Every task group formed for specific activities to be carried out are dissolved once the
task is completely achieved.
Every team has to go through five different stages of development as depicted in the
Team Formation Model namely,
← Forming
← Storming
← Norming
← Performing
← Adjourning
Forming : basic ground rules and general behavior are set up to try and get to know
each other in the team.
Storming: grouping methods of operation have to establish as there is a chance of
conflicts arising due to leadership.
Norming: a group identity emerges as the conflicts are largely settled.
Performing: how the tasks are handled by the team.
Adjourning: disbanding of the group.
Any project team must be formed with the best mix of different personalities.
Belbin formulated the need of balanced teams based on individual characteristics of
people.
← Chair: these people must be good at conducting meetings, must be calm,
strong and tolerant. Need not be excellent leaders.
← Plant: these people must be good at generating ideas and giving potential
solution to problems.
← Monitor-Evaluator: they must be good evaluators and best in selecting
the most feasible solution.
lOMoARcPSD|9139087
There is a strong question raised often: “Are groups more effective than individuals
working alone?”.
It is the responsibility of the project manager to distinguish the tasks which are
supposed to be carried out together and those tasks to be carried out by individuals.
Some works yield better results when worked together as a team, while some others
are slowed down because of the work be compartmentalized based on individuals.
There are four different ways of categorizing group tasks. They are:
← Additive Tasks: in this the effort of every person are added to reach the final result.
People involved in additive tasks are interchangeable.
← Compensatory Tasks: here, the judgements of individual group members are
taken and the results are then averaged. These result in effective group work
rather than the efforts of individuals.
← Disjunctive Tasks: these tasks have only one correct solution to the task. Here, if
someone comes with a solution and everybody in the
lOMoARcPSD|9139087
To make group decision making process to be more effective and efficient the Delphi
Technique can be adopted.
ARcPSD|9139087
In project life cycle phases there are separate teams for development and maintenance.
Matrix form of departmentalization can also be formed where there are two managers
namely project manager and programming manager. The project manager deals with the
day-to-day activities while the programming manager focuses on future career
development.
Egoless programming suggests that the programmers and the programming team leaders
should read other people’s programs so that the programs become a common property to
both.
Chief programmer,
Democratic, and
The mixed control team organizations
If the number of groups is larger, then the work will be slower because of increased
communication. So large projects must be formalized and must be represented in an
centralized structure.
One way to avoid this, to reduce the number of people and giving them more support to
make the work done which led to the formulation of chief programmer team.
The chief programmer defines the specification, design, code, tests and documents the
entire software.
The chief programmer can have a co-pilot who can assist in writing some code and
discussions.
An editor can be used to write up the documentation drafted by the chief programmer, along
Team Members
In this team organization, a senior engineer provides the technical leadership and is designated
as the chief programmer.
The chief programmer partitions the task into small activities and assigns them to the team
members.
He also verifies and integrates the products developed by different team members.
Advantages
The chief programmer provides an authority, and this structure is arguably more
efficient than the democratic team for well-understood problems. However, the chief
programmer team leads to lower team morale, since team-members work under the
constant supervision of the chief programmer.
This also inhibits collective and their original thinking.
SD|9139087
The chief programmer team is subject to single point failure since too much
responsibility and authority is assigned to the chief programmer. Since the chief
programmer carries out many tasks individually, there is a danger of information
overload on the chief programmer
The democratic team structure, as the name implies, does not enforce any formal
team hierarchy. Decisions are taken based on discussions, where any member is free to discuss
with any other matters.Typically, a manager provides the administrative leadership. At different
times,different members of the group provide technical leadership.
Advantages:
The democratic organization leads to higher morale and job satisfaction. Democratic
team structure is appropriate for less understood problems, since a group of engineers
can invent better solutions than a single individual as in a chief programmer team.
A democratic team structure is suitable for projects requiring less than five or six
engineers and for research-oriented projects. For large sized projects, a pure democratic
organization tends to become chaotic.
The democratic team organization encourages egoless programming as
programmers can share and review one another’s work.
Disadvantages:
The mixed team organization, as the name implies, draws upon the ideas
from both the democratic organization and the chief-programmer organization. This team
organization incorporates both hierarchical reporting and democratic set up.
The democratic connections are shown as dashed lines and the reporting structure is shown
using solid arrows.
The mixed control team organization is suitable for large team sizes.
The democratic arrangement at the senior engineer’s level is used to decomposethe problem
into small parts. Each democratic setup at the programmer level attempts solution to a single
part. Thus, this team organization is eminently
suited to handle large and complex programs.
This team structure is extremely popular and is being used in many software development
companies.
A major influence on the nature of communication genres is the constraints of time and place. Modes
of communication can be categorized as combinations of two opposite: Same time/Different time and Same
Place/Different Place.
The nature of the information to be conveyed: What is the extent and complexity of the information to be
conveyed?
A phone conversation if message is simple
Is it easy to understand? Is the context well known to both the sender and
the recipient?
Face-to-face contacts
In some organizations the communications management plan may also include a glossary of
common project terminology that will be used within the project. This
glossary may define and include samples of templates, reports and forms that the project
manager will use to communicate information.
The result of the communication process could be documented in a table with the following
column headings.
|9139087
lOMoARcPSD|9139087
5.13 Leadership
Leadership means the ability to influence others in a group to act in a particular way
to achieve group goals.
A leader need not be a very good manager or vice-versa since managers have
different roles such s organizing, planning and controlling.
It is very difficult to list the common characteristics of good leaders.
But every leader have a greater need for power and achievement and must have more
self-control and self-confidence than others.
Leadership is generally based on the idea of authority or power.
OMoARcPSD|9139087
PART A - ( 5 x 2 = 10 marks)
Prepared by Approved by
D.SUJATHA
AP/IT HOD/IT
ST. PETER'S COLLEGE OF ENGINEERING AND TECHNOLOGY : CHENNAI
Affiliated to Anna University, Chennai & Approved by AICTE
PART A - ( 5 x 2 = 10 marks)
1. Explain how you will identify the major risks, & identify the strategies for minimizing each of those
risks. (13)
2. Describe the steps involved in sequencing and scheduling in activities in a planning model. Give
examples (13)
3. Explain Network planning model. Explain with an example how critical path can be identified in
precedence networks (14)
Prepared by Approved by
D.SUJATHA
AP/IT HOD/IT
ST. PETER'S COLLEGE OF ENGINEERING AND TECHNOLOGY : CHENNAI
Affiliated to Anna University, Chennai & Approved by AICTE
PART A - ( 5 x 2 = 10 marks)
5. Discuss in detail the various methods for visualizing the progress of a project (13)
Prepared by Approved by
D.SUJATHA
AP/IT HOD/IT
ST. PETER'S COLLEGE OF ENGINEERING AND TECHNOLOGY : CHENNAI
Affiliated to Anna University, Chennai & Approved by AICTE
Reg. No.
SEVENTH SEMESTER
INFORMATION TECHNOLOGY
(Regulations 2017)
K-Level CO
Formulate the need to develop cash flow forecasting life cycle. K6 1
Identify how the feasibility of an individual project can be evaluated K3 1
Point out the various agile approaches K4 2
Construct the major components of function point analysis K3 2
Identify the various approaches you would use to identify activities. K3 3
Analyze the use of activity float. Appraise the need for modeling in precedence networks K4 3
Evaluate the need for monitoring the cost. K5 4
Compose how to integrate the popular visual tools in monitoring
K6 4
and tracking the project progress?
Recommend some mental obstacles to good decision making. K5 5
Classify the different leadership style. K4 5
PART – B ( 5 13 = 65 marks)
Note: Single Question for 13 marks or Maximum of 3 split up questions with total sum of
Marks K-Level CO
13 marks.
1 a Illustrate the following:
1 ) i) Setting objective of the project.(6) 13 K3 1
. ii) Principle of project management process.(7)
OR
b i)What is Risk? Discuss about Risk Management process. (7)
) ii) Identify the various paradigms, principles to manage the risks in 13 K3 1
project. (6)
PART C (1 15 = 15)
1 a Interpret and assess the objectives and sub-objectives of the Brightmouth College
6 ) payroll project. What measures of effectiveness could be used to check the success in 15 K5 4
. achieving the objectives of the project?
OR
b
Formulate a suitable example to depict Monte Carlo Simulation. 15 K6 3
)
Prepared By Approved By
[D.SUJATHA,AP/IT] HOD /IT