Beruflich Dokumente
Kultur Dokumente
Discretionary
Non-Discretionary
Discretionary Projects
The projects that have the factor of choice are called discretionary projects. It can be
explained by providing example either from business organization or SW house point of
view. Business example could be a new report requested by the end user or there are so
many projects required by UET, such as online registration system or online exam
generation system or online timetable scheduling system. It is up to the UET management
starts developing any of the projects first or later. The SW house have stabilized from
9/11 incident. The Net Sol and Cresssoft SW house were severely damaged after 9/11.
Their major projects were seized after the 9/11. They don’t have money to pay even the
salaries of the emoloyess. Net Sol and Cressoft have now recovered from that situation.
They have international projects now in USA and in the European market. Major SW of
the Net Sol Company is the leasing SW. Net Sol management is in a phase of
discretionary to pick a project from the market other than that they are dealing.
Non-Discretionary
The projects that have no choice from implementation point of view are called non-
discretionary projects. It can also be explained by providing examples either from
business organization or Software house point of View. Business example could be a new
report demanded by government regulations or UET was trying to get the recognition
from the Pakistan Engineering Council (PEC). Any new information acquired by the PEC
in which UET was not working is an example of non-discretionary project. There are few
non-discretionary projects are predictable, such as updates to payroll, tax percentage and
1
changes in the insurance processing system. Net Sol software house during the phase of
recovery was in a phase of non-discretionary because they cannot refuse any project. Any
project from the market was vital for them to circulate the flow of money.
3. Types of Projects
There are three main types of projects (Pressman 2005)
Simple
Average
Complex
Simple Project
A new project that is similar to previously completed project is called a simple project
e.g. Net Sol software house is dealing in leasing software. A new leasing project will be a
simple project for Net Sol. Adam software house is dealing in hospital management
systems. A new hospital management project will be a simple project for Adam software
house.
Average Project
A new project that have few functions similar to previously completed projects and few
new functions never been developed will be called an average project.
Complex Project
A new project has such functionalities never been done by the software house will be a
complex project.
4. Feasibility Assessments
There are four types of feasibility assessments.
Economic
Technical
Operational
Schedule
Economic feasibility is composed of estimating project benefits and costs. There are two
main types of project benefits.
Tangible benefits
Intangible benefits
Tangible benefits are those that are measure able in terms of monetary values. Tangible
benefits of a project could bring cost reduction, error reduction, opening new market,
sales opportunities, improvement of management planning and control. How much cost
will be reduced in terms of overtime, staff and resources reduction? The Intangible
benefits of a project could bring efficiency, performance, quality, employee’s moral and
company goodwill.
2
The most popular software project cost estimation methods among all are as follows.
Efforts are calculated in person month such as for project A we have five people and
effort require to complete that project is 24 person month (pm). It means that five people
have to spend effort in a month to complete the project equivalent to 24 people. There are
so many problems with LOC method such as:
Function Point
The functionality of the software is used as a matrix to calculate the project cost using the
FP method. The formula to calculate the FP is:
3
FP = UFC * TCF
UFC = Un-adjustable Function Count
TCF = Technical Complexity Factors
UFC used a complexity factor, which is selected based on the nature of project such as
simple, average, and complex projects. The weight or co-efficient of complexity factor is
assigned and multiplied to number of: user inputs, outputs, user inquiries, files and
external interfaces. The optimistic, realistic and pessimistic approach is used to count the
inputs, outputs, enquires, files and external interfaces. The formula to calculate the
estimated count is:
The UFC is equivalent to summation calculated after multiplying the total count of
inputs, outputs, inquire, files and interface screens multiplied by the desired complexity
factor simple or average or complex depending upon the nature of the project.
Zero means not applicable and five means it is essential for project. The question’s grades
are summed and multiplied with 0.01 and then added with 0.65 to calculate the TCF. The
fourteen questions are as follows.
4
F10: Are the conversions and installations included in the design?
F11: Is the system designed for multiple installations in different organizations?
F12: Is the internal processing complex?
F13: Are data communications required?
F14: Is the application designed to facilitate change and ease of use by the user?
Example 8.1
Figure 8.1 below indicates estimation inputs, outputs, inquiries, files and external
interface for software. Figures 8.2 indicates F1-F14 values.
Figure 8.1
Optimistic Realistic Pessimistic Average complexity factor
No. of Inputs 18 22 28 4
No. of Outputs 14 17 24 5
No. of Inquiries 14 20 26 4
No. of Files 6 6 7 10
No. of Interfaces 4 4 5 7
Figure 8.2
F1=3
F2=3
F3=0
F4=4
F5=4
F6=4
F7=5
F8=3
F9=5
F10=4
F11=3
F12=4
F13=4
F14=4
∑ F1 - F14 = 50
Calculate the number of FP. If the organizational productivity for systems of this type is
7 FP / month & labor rate is $ 4000/month then compute cost / FP, total estimated project
cost and estimated effort in Person Month (pm)
Solution
FP=UFC * TCF
UFC=Estimated count [(Optimistic + 4 * Realistic + Pessimistic) / 6] * complexity factor
5
UFC=348.34
TCF = 0.65 + 0.01 * ∑ F1-F14
∑ F1-F14 =50
Therefore TCF = 0.65 + 0.01 * 50 = 1.15
Advantages of FP method
1. It is more accurate and efficient method to calculate software project cost than
LOC.
2. Provides a direct way to measure the project cost.
3. FP method is also used to measure the cost per FP and effort in person month.
4. It can be used with other cost estimation techniques such as Back Firing and
COCOMO methods.
Disadvantages of FP method
1. Very subjective while calculating the UFC in terms of user inputs, outputs,
inquires, files and interfaces.
2. Very subjective while answering the fourteen questions graded during the
estimation of TCF.
3. Rely on the expert in terms of accuracy.
6
C++ 64
COBOL 106
Delphi 18
HTML 14
VB 6.0 32
SQL 12
JAVA 46
Table 8.3
This method measures the total lines of code by multiplying the FP method with the
constant SLOC / FP value for the programming language used to develop the project.
Backing firing method incorporates the advantages of LOC and FP methods.
Example 8.2
An information system has 25 data entry, 15 output, 10 inquiries, 20 files and 5 interface
screens. The project has an average complexity. The summation of TCF 14 questions is
54. Calculate FP and LOC if the proposed language to the information system project is
JAVA.
14 Questions values:
F1=4
F2=4
F3=2
F4=4
F5=4
F6=4
F7=5
F8=3
F9=5
F10=4
F11=3
F12=4
F13=4
F14=4
∑ F1 - F14 = 54
Solution
7
FP = UFC * TCF
UFC = Estimated count * complexity factor
UFC = 450
ORGANIC
EMBEDED
SEMI-DETACHED
Organic Mode
Effort = 2.4 * (size in KLOC) ^1.05
^ denoting the power
Time to Develop = 2.5 * (Effort) ^0.38
Example 8.3
A project estimation size is 33200 LOC and it is accounting software. Calculate the effort
in person month and total time to develop it with the number of people required to
complete the project.
Solution
The software project is about accounting software therefore basic COCOMO version and
organic is used.
Size = 33200 LOC = 33.2 KLOC
Effort = 2.4 * (size in KLOC) ^1.05
8
Time to develop = 2.5 * (Effort) ^0.38
Effort = 2.4 * (33.2) ^1.05 = 95 person month
Time to develop = 2.5 * (95) ^0.38 =14.1 month
COCOMO II Exercise
A project has 24 screens, 16 reports and 80 components will be used during its
development. It is an average project in terms of software complexity. The project has
70% reused component development. The developer experience and environment
maturity are nominal. The software house labor rate is $4000/month. Calculate NOP,
effort and total project cost.
Solution
OP = 24 * 2 + 16 * 5 + 80 * 1 =208
9
NOP = 208 *[(100 – 0.7)] / 100] = 206.544
Productivity = 13
Technical Feasibility
Technical feasibility is composed of estimating
Hardware cost
Software cost
Operational Feasibility
The operational feasibility is composed of estimating the:
Operational benefits
Operational cost
10
Schedule Feasibility
Schedule feasibility is used to display total schedule time vs the activities performed to
complete the project.
The project director calculates the expected cost of each path and evaluates the least cost
path. The formula to calculate the expected cost = path probability * estimated cost.
Project manager used the make-buy decisions based on the following conditions.
Exercise
The decision tree for a software-based system ‘X’:
1. Internal software development from scratch
2. Reuse existing partial experienced component
3. Customized off-the-shelf software
4. Contract to the software house
Calculate the least cost by using by using the decision tree
Simple (0.3)
11
B
$ 380,000
1 $ 450,000
Difficult (0.7)
Reuse 2
Major changes (0.6)
System X
Buy Simple (0.2)
$ 310,000
3
Difficult (0.8)
Minor changes (0.7)
$ 490,000
Contract to software house Major changes (0.3) $ 210,000
$ 400,000
4
Without changes (0.6)
$ 350,000
With changes (0.4)
$ 500,000
Solution
Expected cost (build) = 0.3 * ($ 380K) + 0.7 * ($ 450K) = $ 429K
Expected cost (reuse) = 0.4 * ($ 275K) + 0.6 * [0.2 * ($ 310K) + 0.8 * (490K)] = $ 382K
Expected cost (buy) = 0.7 * ($ 210K) + 0.3 * ($ 400K) = $ 267K
Expected cost (contract to software house) = 0.6 * ($ 350K) + 0.4 * ($ 500K) = $ 410K
It is clear that expected cost of buying the off-the-shelf software is the least among all
paths.
Example
EVA is called information for a one year project after certain phases
12
Cost Performance Index (CPI) =?
Schedule Performance Index (SPI) =?
Cost Variance At Completion (CVAC) =?
Schedule Variance At Completion (SVAC) =?
Cost Variance = Budgeted Cost of Work Perform - Actual Cost Work Performed
CV = BCWP – ACWP
= 20,000 – 25,000
= -$ 5000
Schedule Variance = Budgeted Cost of Work Perform - Budgeted Cost of Work Schedule
SV = BCWP – BCWS
= 20,000 – 23,000
= -$ 3000
Cost Performance Index=Budgeted Cost of Work Perform / Actual Cost Work Performed
CPI = BCWP / ACWP
= 20,000 / 25,000
= 0.8
Schedule Performance Index=Budgeted Cost of Work Perform / Budgeted Cost of Work Schedule
SPI = BCWP / BCWS
= 20,000 / 23,000
= 0.86
13
14