PROJECT MANAGEMENT NOTES
Introduction
Activity: Project
Ø
Schedule:
Tool that allow project manager to allocate resources to different activities
within the process and a given time span
Ø
A project is a sequence of unique, complex and
connected activities having one goal or purpose and that must be completed by
specific time within budget and according to specifications.
Ø
Project management: process of scoping,
planning, staffing, organizing, directing and controlling the development of an
acceptable system at a minimum cost within a specified time frame.
Ø
Process management: A going activity that documents
manages the use of and improves an organization chosen methodology for system
development. It’s mainly concerned with activities, deliverables and quantity
standards to be applied to all projects
Ø
Activity task- Smallest unit of work, effort
within the project that consumes both time and resources which are under the
control of the project manager.
Ø
Schedule- This allocate resources to accomplish
the activities within a time frame. It sets priorities, start time and finish times.
The purpose of project management is to achieve the
successful project completion with resources available.
Successful project is one which:
- Has been finished on time
- Is within its cost budget
- Performs to a technical / performance standards which satisfies the end user.
TYPES OF PROJECT MANAGEMENT
Project can be broadly categorized into three:
- Personal Projects e.g., report obtain Bsc in IT
- Industrial projects e.g., contact a building, design a new car
- Business projects e.g., develop anew course, develop a computer system, set up new office.
CHARACTERISTICS OF
PROJECTS
a) Time
frame
b) Activity
/ Task
c) Resources
d) Aim
/ Goal objectives
Project management process
It has five stages
- Defining the goals of the project
- Planning
- Leading – offering guidance to human resource, subordinate, self contractors
- Monitoring – Measure, controls and correct the plan
- Completing- ensure you’ve met the goals user specs, Prepare documentation
PROJECT MANAGEMENT
FUNCTION
a) Scoping
b) Planning
c) Estimating
d) Scheduling
e) Organizing
f) Directing
g) Controlling
h) Closing
Scoping
Setting boundaries of the project i.e. activities to be
include, departments to be involved or affected. The following things will be
important:- product that will be produced
-
Quality of the project
-
Time that will be spent
-
Cost implications
-
Resources utilized- availabity (locally or
internationally)
At the end, there must be statement of work which is
documentation. (Project overview / Project definition / scope statement /
document of understanding.
Statement of work is a narrative description of the work to
be performed as part of the project.
Planning
Main activity is to identify the task of activities that
will be performed or carried out in the project hence work break down
structure.
Work break down
structure is a hierarchical decomposition of project into phases, activities /
Tasks
The definition of Milestones is an event that signifies the
accomplishment or completion of major deliverables altering a project e.g.
Statement of works, work break down structure
Estimating
Main activities include:
-
Estimating task durations- where all the activities of
the project have to be given a duration there are three ways of estimating the
duration of any task
-
Estimating the minimum amount of time needed to
complete ( optimistic duration )
-
Estimating the maximum amount of time needed to perform
the same task.
-
Calculate the most durably (D) as follows
D = ( 1* OD ) + ( 4 * ED ) + ( 1* PD )
6
Scheduling
Main activities are:
I.
Specific task and inter- task dependencies
II.
Carry out a scheduling strategy using two techniques ie
forward scheduling and reverse scheduling
There are four main ways of
identifying task and inter task dependencies
I.
Finish – to- Start ( FS ) – the finish of one task
triggers the start of another.
II.
Start –to- Start ( SS) – the start of one task triggers
the start of another task
III.
Finish –to – Finish ( FF) – Two task must finish at the
same time
IV.
Start – to – Finish ( SF ) – The start of one task signifies
the finish of another task
Strategies of scheduling
v Forward
scheduling- establishes a project start date and then schedules forward from
that date based on the planned duration of required task, their
interdependencies and the allocation of resources to completion date is
calculated.
v Reverse
scheduling – establishes a project deadline and their schedules backward from
that date essentially, task, their durations, interdependencies and resources
must be considered to ensure the project can be comp0leted by the deadline.
Organizing
Main activities are:
·
Assign resources e.g. people services,
facilities and equipment
·
Level resources e.g. for supplies for materials,
money. Resources leveling is a strategy used to correct resources over
allocation through delaying all splitting task
Do not delay /
split activities that are on the critical path.
Directing
Main activity
is to direct the team effort eg set new deadlines, encourage staff and team
maturity (Understand what the project requires )
Controlling
Main activity is to monitor and control the
progress of the project check whether there was a progress at every stage.
a.
Emphasize on change management
b.
Emphasize on Expectation management
c.
Make adjustments to the schedule
Closing
Involve handing
over the project to the client for its documentation and examination whether
you met the goals.
TRIPLE CONSTRAIN OF PROJECTS:
a.
Performance specification / objectives / Aim
b.
Time
c.
Money ( cost )
Obstacles to
satisfy the constrains on performance
I. Poor
communication – Programmers understand codes while analyst understand charts
hence barrier
II. Poor
design – Mistakes in carrying out the contract performance, errors by workers
and managers
III. Over
optimistic assumptions: High ambition
Obstacles to
satisfy the constrains on time
1. Resources
not being available when needed
2. Performance
specifications or objectives may change in the middle of the project
3. Subordinates
may fail to give proper priority
4. Over
emphasis on performance Vs meeting time and budget constraints
Obstacles to satisfy
the constrain on cost
1.
Initial cost estimates are often too optimistic
2.
Reducing cost estimates to win bid causes a built –
cost overrun for start
3.
Mistakes, bad cost management and bad cash flow
4.
Failure to meet time constraint usually costs more because
of lack of efficiency.
Measures of
project success
1.
The resulting project of information system is
acceptable to the end user or client
2.
The project or system was delivered in time.
3.
The project system was delivered within budget.
4.
The system development process (process management )
had a minimum impact on on-going business activities.
Causes of
project failure
1. Failure
to establish upper management / commitment to the project
2. Poor
estimating techniques eg time for coding tasks
3. Insufficient
resources
4. Priorities
not set right
5. Inadeuate
skills to team members
6. Improper
documentation
7. Lack
of proper planning
8. Poor
people management
9. Misunderstanding
of user requirements
10. Departure
of key players in the team
11. Pre-mature
commitment to a fix budget and schedule
Project manager
competencies
i. Business
awareness: Clear understanding of the business activities within the
organization. He should have in mind the mission and union of the organization
and knowledge in stakeholders.
ii. Business
partner orientation: The project manager should have skills to understand likes
and dislikes of stakeholders of the organization. He should also request
opportuinities of meeting some stakeholders.
iii. Commitment
to quality: the project manager should always be committed to quality standards
that should be employed in the organization, they include: - An organization
can employStandards proposed by ISO
iv. Initiative:
He should be in the fore front because be understand the project from the start
to the end
v. Information
gathering skills: He is expected to know different skills / techniques of
information gathering, which to use and when to use it.
vi. Analytical
skills / thinking : He should have skills required to analyse data gathered
from people and understand people with diffent views.
vii. Conceptual
thinking : Skills in conceptualizing, picture or model the whole project and
not phased and offer solutions at any stage
viii. Flexibity:
flexible in accommodating other people’s ideas and make adjustments whenever
necessary
ix. Stress
management skills: He should have skills to manage people and their stress as a
result of deadlines, long working hours etc.
x. Motivational
skills: they should have ways of motivating discouraged team players through,
break, reward, console etc
xi. Developing
others: to ensure continuity of the project in the event of the manager’s departure
xii. Anticipation
impact: Skills of predicting eventualities and their impact on organization
xiii. Risk
management skills: should be aware that risks are real and have skills of
converting them to opportunities.
Responsibilities of the project
manager
a) To
plan thoroughly on the project aspects responsible for seeking clarity from
stakeholders
b) To
control the organization’s manpower and human resources needed by the project .
Some activities have a definite of staff to carry them out when others he then
assigns and reassigns manpower depending on the need of the activity.
c) To
control the basic technical definitions of the project ensuring that ‘technical
Vs cost’ trade off determine the specific areas where optimization is
necessary.
d) To
lead the people and organization
assigned to the project at any given point in time
e) To
monitor performance, cost and efficiency of all elements of the project.
f) To
complete the project on schedule and within budget
Feasibility study
Process used to identify any
problem. Opportunities or charges in organization objectives
Requires examination of existing
procedures project and systems.
Areas of study to find reality
project.
a) Cost
b) Timing
c) Performance
specification
d) Impact
of the project on the organization
It aims at answering two
questions:
i.
Is the project feasible?
ii.
How feasible are the alternatives under consideration
The main of the study is to
investigate carry out a pre – liminary investigation which should help to determine
whether the project should proceed further and how it should proceed.
The relevance of the approach will
vary with the nature of the project itself.
The more concrete the project is,
the more likely that there will be established procedure in relation to
feasibility for open project: Budget never fixed, Objectives known and time
flexible.
Project manager is responsible for
conducting the feasibility study and would normally consider:
a) Cost:
is this within the budget set by the organization or within the capability for
the organization to account how do the alternative compare?
b) Timing:
Are there specific constrains on timing and is it possible to compete the
project within this constrains.
c) Performance:
Will the project satisfy performance criteria which have been determined?
Basically this means will it do the jobs it is designed to do.
d) Effect
on the organization: Is it feasible in the context of the organization and the
effect which will have.
COST.
Cost factors will be looked at
through at through a financial appraisal. This should be related to financial criteria
which have been determined. We need to consider whether the following criteria
are relevant.
i.
Capital expenditure implications.
What are the
costs of the project? If there are alternative what are the relevant figures,
What effect will this have upon the organization finances particularly capital
budget, How will it fit with controls imposed upon the organization by control
government. How will the expenditure be financed? What are the alternative
sources?
ii.
Revenue implications
How much will this cost both in the
current year and subsequent years.
What are the likely gains in terms
of income?
What effect will this have upon
revenue budget?
NOTE: The answers to the questions
will determine the financial criteria upon which the feasibility will be judged
TIMING.
The project schedule may need to
comply with specific criteria which have been laid down.
It can be important:
a) To
comply with legal requirements eg new legislation or new requirement may need
to be implemented by a certain needs.
b) For
operational reasons a new system may be required as a matter of organization policy or to fit in with existing procedure and deadlines
c) To
assist with financing mgt or borrowing approval may need to be spent within a specific
period.
d) To
give the organization an edge over its competitors.
PERFORMANCE SPECS
This may be:
a) Technical-
operational, capability, external people
b) Service
based
c) Resulting
from external regulations
d) Required
by clients or customers
ORGANISATIONAL CONTEXT.
What the policy of the organization
/ quality standards the organization supports.
What are the budgeting procedures?
What are the reporting procedures /
documents?
What are the organizational
culture, does the project fit in with the general values and the believes if
the organization.
This should be reflected on
mission, vision and objectives.
How will it affect resourcing. Are
the skills technology and physical space
available.
How will the project fit in with
the existing procedure.
What effect will it have upon
systems.
NOTE: The actual question asked and
the shape of the study and the consequent report will depend upon the type of
the project being investigated
Activity:
Examine a life project in your
institution make a list of questions that should be asked in relation to
feasibility.
Feasibility report.
Deliverable that comes from the
feasibility study it is in form a document. A project manager will be
responsible for.
Reporting on feasibility to the
sponsoring decision makers or stakeholders. This can be done in a variety of
ways and with different degrees of formalities.
Typical context will include:
a) Project
definition covering goals and objectives
b) General
introduction and background with update description and options.
c) A
clear definition of success criteria or feasibility criteria.
d) Finding
of the feasibility study
e) Financial
appraisal
f) Pre-liminary
compliance
g) Organizational
suitability
h) Plan
for the management of the project including implementation.
COST BENEFIT ANALYSIS
Basic considerations: For project
appraisal
Looking at the economic feasibility
of a project
Will investment of the resources be
profitable
Will you gain after the end product?
How profitable will it be?
What is the profit margin i.e. one
time or spread over time
How is profitability measured?
There are aspects of profitability
that cannot be put in monetary terms eg
Change in staff morale, staff
commitments to projects
How the profitable is the
alternative investments.
Assess the option and come up with
a margin
If there ae several different
opportunities which one gives the best rewards
Selecting one opportunity from
others that you have in min
CAPITAL AND REVENUE
Initial quantitative analysis
Process that helps in identifying,
specifying and evaluate:
Project cost
Project benefit
Project costs are all the expenses
that go into the running of the project
Project benefits are all the
accruals from the project they could be inform of positive change in staff
morale increased production, increase in income
To be able to specify, evaluate
identify project cost and benefits the following must be specified:
a) Value
in financial terms – All that goes to the project or revenue into financial
figure
b) Timing
–clearly specify the timings i.e. The
schedules phase duration activity duration and all estimations as far timing is
concerned.
c) Capital
or revenue – Specify whether it is capital or revenue expenditure ie capital
should either cost or benefit.
d) Singular
or recurring – Does it occur once ( singular ) or recurring ie used later
e) Variation
with time of the rearing item.
COST AND BENEFIT
Capital cost and expenses
These cost are
incurred in the acquisition of business assets which are usually tangible items
such as building machines etc
It is not merely
the purchase of an item that contributes to the capital cost but also the cost
of installation and putting it to work.
They form a
significant part of the investment against which the profitability will be
judge.
These costs
usually occur at the start of one – off expenditure although there may be
exceptions e.g. where a project is subdivide into faces
Recurrent costs and expenses
These are cost
incurred on a routine basis after forming the day to day running cost of the
business.
Benefits
Classes
a. Capital
b. Revenue
Capital benefits
These are realized
from the swale of equipment which the existing system uses but which will no
longer be needed or required.
Revenue benefits
This refers to
increase in income or decrease in cost resulting from project investment.
Financial analysis
Depreciation
These revenue cost
from business payable out of profit to allow for the reduced value through the
use of capital asset.
The purpose of depreciations’
principally to provide fund for replacement costs
But may also be regarded as:
a. A
charge against the business for use of the asset.
b. An
allowance against tax.
The two methods for computing
depreciation include:
iii.
Straight line method
D = A - R
T A- Original cost of the asset.
R-
Residual value of the asset.
T-
the life time of the asset.
Constant percentage
of reducing value.
This based on a selected fixed rate of depreciation being
applied each year to the asset value at the start of that year.
The residual value at the end of the year is the initial
value less the depreciation,
The residual at the end of the year (n) becomes the initial
value of the year (n + 1)
This method is in very common use by many businesses because
of:
- Provide a reasonable accurate method of the way in which many tangible assets lose their value with time.
- It the method used by government for calculation of capital allowance before tax in profit for plant, machinery and motor vehicle.
Financial Evaluation
Analysis.
This is based in the maximum time value of money.
A project will have
an optimal life for the several years; the proposed system should ideally be
made using discounting cash flow (DCF) analysis.
A concept shared by financial evaluation techniques is the
time value of money ie a shilling today is worth a shilling one year from now.
Before cost / benefit analysis, this cost should be brought
back to current shilling.
Discounted cash flow
analysis
This is an evaluation technique which allows, managers to
asses whether, the front end cost of buying or developing the project are worth
the expected net benefit that will eventually follow on.
DCF recognizes that there is a time value or interest cost
and risk cost to investing money so that the expected benefit from a project
should not only pay back the cost but also yield satisfactory returns.
Present value
This refers to the future sum of money that sum which if the
money is placed in a bank account will grow to at the given rate of interest.
The current value actually called present value of a
shilling at any time in the future can be calculated using the formulae.
PV = amount * 1/
( 1+ r ) ^n.
Sometimes there is a need to determine the time period when
life time benefit will overtake life time cost. This time or period is referred
to as Break even point.
Cost / Benefit
Analysis
There are 4 techniques or methods used i.e.
- Pay back period analysis
- Net present value
- Return on investment ( ROI )
- Internal rate of return ( IRR )
·
Pay
back analysis
This is a simple and popular method
for determining if and when an investment will pay for itself. This period of time
is called payback period.
Determining payback period
Adjust the cost and benefit for the time value of
money ( ie adjust them to current shilling rate. )
The present value of a shilling in year
( n ) depends on the discount rate. The discount rate is a percentage similar to
interest rates.
Discount rate for a business is the
opportunity cost of being able to invest money in other projects.
- Return on investment ( ROI )
This compares life time
profitability of alternative solutions of projects.
This is a percentage rate that
measures the relationship between the amount invested and the amount the
business gets back from an investment
The ROI of a potential solution all
projects is calculated as follows.
ROI = life
time benefits – life time cost * 100%
Estimated life time
cost
·
Net
present value
This is the
process of discounting back to present the strings of cost and benefits associated
with projects during life time.
The NPV of an
investment alternative is considered the cost / benefit technique by many
managers.
Cost is
represented by negative cash flows while benefits are represented by positive cash
flows.
After
discounting all costs and benefit, subtract the sum of the discounted cost from
the NPV.
NPV= [ B/ 1+ r)
+ ( B1/ (1+ r)^2+ ………..+Bt/( 1+r) ^t]- [C/(1+ r)+ C2/(1+r)^2+………………………. Ct/(
1+r )^t]
R= internal rate
of return, C= cost (gross), t= time in years, B=benefit (gross)
The following
should be listed about NPV:
·
If it is positive then the investment is good
·
If it is negative the investment is bad.
When considering
multiple solutions, all projects, the one with the highest positive NPV is the
best investment.
Internal rate of
return ( IRR )this is the discount rate that equates the present value of a
project’s benefit with the present value of project cost.
It answers the
question, how does the discount rate have to be make the project have a
positive NPV.
The project is
acceptable if the IRR exceeds the current market rate of interest.
IRR is the rate
of income which solves the equation.
IRR=[
B/(1+r)+B1/(1+r)^2+…Bt/(1+R)^t]-[C/(1+r)+C1/(1+r)^2+..Ct/(1+r)^t]
R= discount
rate.
IRR rule for
investment projects are:
Accept the project if IRR is less than discounting rate
eg, you have a project which has
i9nitial capital outlay of 10m, benefits after one year is 6m,Aftetr 2years is
7.25m and discount rate is 10%. Compute the IRR
SOFTWARE
COST ESTIMATIONS.
Basic
considerations
a. Development
cost- cost incurred in developing an application it could consist of
programmer’s salary, purchase of programming tools and all other cost6s in
development places of software.
b. Maintenance
cost:- This contributes towards the cost.
c. The
hardware cost:-Refers to the cost of any tangible hardware that is required for
the development and completion of the software.
d. Training
cost:- Training programmers in their specific criteria for the completion of
the software project and training users.
e. Travelling
cost:- The frequent visit that you make to different sites, expenses incurred
must be reflected.
Development and
maintenance cost makes up in bigger percentage of software costs.
Software cost
begins at the proposal and continues all the way until the system is discarded.
Poor cost
estimation techniques contributes to poor project management since cost
estimates are largely time estimates.
Most software
cost estimation techniques assume firm knowledge of user requirement which is
not the case inn practice.
Ø
Expert judgment ( technique) on cost
estimation
One or more experts
on the software development methods to be used and on application domain are to
estimate cost based on their experience. The expert will work independent.
Final cost is
arrived at by consensus (estimate, estimate again, continue until co census is arrived
at)
Advantages
1. Quick
2. May
be accurate if collective experience is on board.
Disadvantages
- Errors may be introduced due to guess work
- Human biases are likely to feature particularly to methodologies.
Ø Estimation
by analogy
Cost estimation by analogy with completed projects in some
application domain
Advantages
- More accurate than expert judgment.
- Quicker than expert judgment.
Disadvantages
- Project may not be similar and may not be possible to recall the details of the previous projects.
- It may not be possible to know how these differences affect since proportional cost models / strategy is unreliable; therefore the cost of co-ordination and communication is never estimated.
Ø Cost
estimation using work breakdown structure
Based on breaking down project into
task / work units then estimates cost of each task ( choose any of the E.T) and
sum up the task costs.
Advantages
a.
Quicker/more accurate than estimating for whole
project.
b.
Esti9mation more likely to be detailed than estimating
for one large project.
Disadvantages
a.
Ignore cost of communication and training
b.
Project cost is not equal to the sum of component cost.
c.
How estimate cost of work unit is not addressed.
NB/ Researchers in this areas have
found that there exist an optimal development time and adding extra people
cannot speed the project below 75% of the optimal development time.
Estimation using lines of
code
This is based on the number of
lines of source code ( L ) relying on the estimators judgment.
Demerits
a.
One dimentional i.e. only one factor is being considered as affecting cost ie lines codes
b.
Ignores other factors eg, programming language, use of
function or procedures.
c.
Estimating using parametric
equations
Software costing based on
attributes and not only lines of codes. This attributes are as follows:
a) Work
environment
b) Interest
c) Technical
ability
d) Communication
skills
e) Management
skills
f) Type
of work / project
g) Experience
h) Ability
to share
Ability to work
This takes into account all factors that interrupt are
useful working time/person in a standard 8-hour day.
Type of project
Different stages of the SDLC take different percentage of
development time depending on complexity of difficulty of the software being
developed or the project.
This is clearly evidence from investigation carried out by Boehme
in various efforts put on different types of projects. He came up with the
constructive cost model COCOMO
Parkinson’s Law
It is based on the fact that work expands to fill the time
available.
The cost of software project is equipment to the available
resources and not development effort.
Pricing to win
The estimate of the project cost is equal to whatever the
customer is willing to pay.
Development and not software functionality.
Algorithmic cost
modeling.
The more scientific but not necessarily the most accurate
approach to the software costing and scheduling process.
The model is built by analyzing the cost and attributes of
computed projects.
Mathematical formulae can be established by linking cost
with one or more metrics such as projects size No of programmers experience.
Programming language etc.
Basic difficulty with this approach.
Relies on the quantification of some attributes of the
finished software products.
Cost estimation is probably most critical only in the
software process long before the product is completed, so the manager must
estimate the appropriate attribute value for the input to the costing model.
The estimation must usually be made often inaccurate.
The degree of inaccuracy is unknown so the probable event in
the estimate is uncertain.
Common metrics of
cost estimation.
a) Reduce
the number of LCO in the finished uncertain system.
b) Size
estimation based on estimation by analogy with other projects and estimation by
ranking sizes of system components.
c) Application
domain knowledge.
d) For
use of functions – points which relates to functionality rather than size.
The COCOMO Model
(Constructive Cost Model)
It exist in the basic (simple), intermediate and detailed
forms.
It assumes that:
- The software requirement are relatively stable
- The project will be well managed both by the customers/ client and the software developer.
The basic COCOMO
model
It only uses the estimated size of the software project and
the type of software being developed, there are various of the estimated
formulae for three classes of software projects.
v Organic mode project
The project of this project relatively has final working in
the familiar environment developing well understood projects.
Communication overhead is low because team is small
Team members know what they are and can quickly get with the
jobs.
v Semi-detached mode projects
Intermediate stage between organic mode and embedded mode
projects.
Team can be made up of experienced and inexperienced staff.
Team members may have limited experience of related system
and may be unfamiliar with some but not all aspects of the system being
development.
v Embedded mode project
This is concerned with developing software which is part of
a strong coupled complete of hardware, software regulation and modifications to
get validation costs are high.
There are diverse and its unusual for project team members
to have much experience in the application being developed.
The basic estimation formulae to compute cost for the
project or more precisely the effort required for software developments are.
Effort=A(KDSI)^b
TDEV=B(MM)^c
KDSI=No of thousands of delivered source institution
A, B, b and c are constants which vary depending on the type
of project.
DSI – refers to any
time of source text irrespective of the actual number of instructions on the
line. Comments are excluded.
MM= Man months
TDEV=Development schedule- time required to complete the
project given that sufficient personnel resources are available.
Summary of basic
CoCoMo
It is good for quick, early. Rough order of magnitude
Estimates of software cost but its accuracy is limited
because:
- Lack of factors to account for different in hardware constrains.
- Personnel cost and experience
- Use of modern tools and techniques
- Other project attributes.
Intermediate
CoCoMo
The basic model is extended to consider a set of cost driver
attribute that can be grouped into four major categories with each category
having a number of sub category.
- The first category is the Product attribute
-Require
software
-
Size of application database
-Complexity
of the product
·
Hardware attributes
-Runtime
performance
-
Memory constrains
-Volatility
of the virtual machine environment
-
Required turn about time.
·
Personnel attributes
-Analyst
capability
-Software
engineer capability
-Application
experience
-Virtual
machine experience
-Programming
language experience.
·
Product attribute
-The
use software tools
-Application
software engineering methods
Required
development schedule
Each of the 15 attributes is rated
on a 6 point scale that rages from very low to extra high ( in importance all
value )
Based on the rating and effort
multiplier is determined. The product of all effort multiplier results in an
effort adjustment factor typical values of EAF rage from 0.9-1.4
The intermediate formulae for
computing effort is
E=A (KDSI) ^b.EAF
Since intermediate CoCoMo relies
mostly in size estimations, there are problems associated with size estimation e.g.
a. Nature
of the software
b. Novel
application of software
c. Fast
changing technology
d. Lack
of homogeneity of product experience
e. Subjective
nature of estimation
f. Political
implication with organization.
FUNCTION POINT
CONFIGURATION MANAGEMENT:
Change is inevitable when building
a software project
This increases the level of
confusion among software engineers who are working on a project confusion
arises when changes are not:
a.
Analyzed before they are made
b.
Record before they are implemented
c.
Reported to those with a need to know
d.
Controlled in manner that will improve quality and
reduce errors.
Sources of changes
- New business or market condition that dictate changes in product requirement or business
- New customer need that demand –- Modification of data produced by IS
-
Functionality
delivered by the product.
-
Services delivered by computer based system
a)
Re-organization/business downsizing that causes changes
in project priorities or software engineering team structure.
b)
Budgeting/Scheduling constrains that causes a
redefinition of system or product
Definition of configuration management
CM is the process of identifying
and defining the items in the system, controlling to these items throughout
their life
Recording and reporting the status
of these items and change requests and verifying the completeness and
correctness of items.
Functions of CM
- Identification- the unique naming of the software object to be managed
- Control- Controlling the release of a project and changes to it throughout the software life cycle.
- Status Accounting-Recording and reporting the status of components and change requests.
- Audit and review- Validating the completeness of a product and maintaining consistency among the components
- Manufacture-Managing the construction and building of a product
- Process management-ensuring carrying out of the organization’s procedures, policies and lifecycle model.
- Teamwork-Controlling the work and interaction between multiple users on a product.
TERMINOLOGIES
- Software maintenance-This refers to asset of software engineering activities that occur after software has been delivered to customers or client and into construction.
- Software configuration management- A set of activities (tracking and controlling) that begin when a software project begins and terminate only when the software is taken out of operation
Change control: meaning,
Similarity to CM,Difference from software configuration.
PURPOSE OF CM.
Changes to an existing software
system are inevitable and therefore CM ensures that these changes:
a.
Take place in identifiable and control environment
b.
Do not adversely affect any properties on the system.
c.
Do not adversely affect the implementation of the
security policy.
It
provides assurance that addition, deletions, or changes made do not compromise
the trust of the originally evaluated system.
Software configuration management tasks
Configuration
Identification:
This function identify the components of the design and implementation
of the system
These will be accomplished through:
- Identifier ( Software confirmation item )
- Base lines
It SCI’s are the output of the software process and could be
divided into 3
- Computer programmes
- Documentation.
- Data
Base line is a software configuration management concept
that helps to control change without seriously impending or hindering.
- Development baseline e.g.
Rapid application development, integration testing and the
goal of this development base line is to coordinate engineering activities.
- Functional base line eg. Prototype technology previous. The goal of functional baseline is to obtain customer experience with functional system.
- Product base line eg. Windows 98, Millennium word. The goal of product base line is to cordinate sales and customers support.
To control and manage software configuration items each must
be seperately named and then organised using object oriented approach.
There are two types of object:
-Basic object-Refers to a unit of text created by a software
engineer during analysis,design.coding or testing. Example is requirement
specification
-An aggregate object-This is a collection of basic object
and other aggregate objects eg. Design specification.
Each object has a set of distinct features that identifies
it uniquely. This include: Name,
Description and resources required by the object.
Configuration
control/Version control
This involved the systematic, evaluation, co-ordination,
approval or disapproval of proposed changes to the design and construction of a
configuration item that has been formely approved.
It begins in the earlist stages of the design and
development of the system and extends over the full life of the configuration
items included in the design and development stages.
Early initiation of configuration control procedure provides
increased accountability for the system whereby making its development more
traceable. This serves a dual purpose:
- Make it possible to evaluate the impact of a change to the system and controls the chages as its being made.
- There is less chance of making undisirable changes to a system that may later adversely affect the security of the system.
Initial faces of configuration control are directed towards
control of the system configuration as defined primarily in design document.
CC specifies procedures to ensure properly and presents an accurate description of the system and
software configuration often a change to one area of a system may necessitate a change to an area.
It covers a broader area than first documentation, It
maintains control of design data, source code, the running version of object
code and test fixtures.
Change to any of these areas are subject to review and
approval by unauthorised body.
Configuration status
accounting
Its used in reporting on the progress of the development in
very specific ways. It accomplishes these tasks through: Data recording, Data
storing, Data reporting.
The main objectives of CSA is to record and report all information
that is of significance to the configuration management process. What is of
significance should be outlined in the configuration or meeting of a milestone.
The configuration accounting systems may consist of:
- Tracing these documentation manually to final the status over change.
- A debit balance can be automatically be used to track the change.
Benefits of online
status Accounting system.
- Information may kept in a more structured fashion which would keep it upto date.
- Being able to query a debit balance is less cumbersome than sorting note pages.
- Durabiliyt of a discatte or harddisk for stoprage outweighs that of a spiral notebook or folder provided that it is properly backed up to avoid data loss in the event of system failure.
CSA establishes records and reports which enable proper
logistics support ( ie supply of spares instruction mannuals, training and
maintanance facilities ) to be established.
The records and report produced through CSA should include.
- A current configuration list
- A historical change list
- The original designs
- The status of change request and their implimentation
- Procedure to trace all changes.
Configuration Audit
and Riview.
Configuration audit is used for ckecking from top to bottom
completeness of the configuration Accounting information to a scertain that
only the authorised changes have been made
The minimum configuration management be limited to simply
defining how configured management will be impemented as it relats to the
identification controls, Accounting and auditing task. Configured management
plan should contain sufficient details of the following items:
Responsibilities
Ensures elements function properly during configuration
management.
Tools
- It includes: Forms used to change control
- Correction for labelling configuration.
- Software libraries.
- Any automated tools that may be available
- Samples of any documents to be used for reporting.
Procedures
The main objective of configuration management consist of
the following procedures
- To ensure both user and design documentation are updated in synchrony with all changes to the system.
- Guidelines for creating and maintanang functional tests and documentation this out the life of the system
- Procedures for how design and impementation of changes are proposed,evaluated, co-ordinated and approved.
- Steps to take to ensure that only those approved changes are actually included and that changes are included in all of the necessary areas:
Emerging procedures
Ensure that:
- Procedures for performing a time sensitive changes without going through a full review process that may overide the stardard procedures defined.
- The steps for retroactivatively implimenting configuration management after the emerging change has been complemented are also defined.
The configuration management plan
is a living document and should remain flexible during design and
implimentation phases.
It is in place to impose control on
a project but should still be open to addition and changes as designers and
developers see fit. The CMP defines
- Types of documentation to be management under document management scheme.
- Who takes responsibility for configuration management procedures and creation of base line.
- Policies for change control and version management.
- Describe tools which can be used to assist the configuring management process and their limitation.
- Defines the configuring management process debit balancing to record configuring information.
No comments:
Post a Comment