Chapter Four

You might also like

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 23

Software Project Management

Chapter Four
Risk and Configuration Management Plan

Sem. I – 2023
SITE-AAiT

1
Risk Management Plan

What
What isis aa risk?
risk?
Factors
Factors or
or Aspects
Aspects which
which areare likely
likely toto have
have aa negative
negative impact
impact on
on the
the projects
projects
performance.
performance.ItItisispossibility
possibilityofofaaloss
lossor
orananinjury.
injury.
Uncertainties
Uncertaintieswhich
whichaffect
affectthe
theproject
projectperformance:
performance:budget,
budget,schedule,
schedule,quality
quality

Types
Types of
of Risk
Risk
Schedule
ScheduleRisks
Risks
Schedule
ScheduleCompression
Compression(customer,
(customer,marketing,
marketing,etc.)
etc.)
Cost
CostRisks
Risks
Unreasonable
UnreasonableBudgets
Budgets
Requirement
RequirementRisks
Risks
Incorrect
Incorrect
Incomplete Operational
OperationalRisks
Risks
Incomplete
Unclear Validity
Validityof
ofassumptions
UnclearororInconsistent
Inconsistent assumptions
Volatile Performance
PerformanceRisk
Risk
Volatile

2
Risk Management Plan

Risk
Risk Management
Management
Any
Anyproject
projectinvolves
involvescertain
certainrisks
risks
We
Weneed
needtotomanage
managerisks
risks
Purpose
Purposeofofrisk
riskmanagement
management
Ensure
Ensurethat
thatthe
theimpact
impactof ofrisk
riskononproject’s
project’sperformance
performanceisisminimized
minimized
Deals
Deals with
with identifying
identifying the
the undesirable
undesirable events
events that
that can
can occur,
occur, the
the probability
probability ofof
their
theiroccurring,
occurring,andandthe
theloss
lossififan
anundesirable
undesirableevent
eventdoes
doesoccur
occur
So
Sorisk
riskmanagement
managementrevolves
revolvesaround
aroundrisk
riskassessment
assessmentand andrisk
riskcontrol
control

3
Risk Management Plan

Risk
Risk Identification
Identification
Produces
Producesaalist
listofofrisks
riskswith
withpotential
potentialtotodisrupt
disruptyour
yourproject’s
project’sschedule
schedule
Sub-activities
Sub-activitiesofofrisk
riskidentification
identification
Checklist
Checklist
Decision
DecisionDriven
Drivenanalysis
analysis
Assumption
Assumptionanalysis
analysis
Decomposition
Decompositionanalysis
analysis

Risk
Risk Identification-Check
Identification-Check List
List
1.1.Personnel
Personnelshortfalls
shortfalls
Management
Managementtechniques:
techniques:
Staffing
Staffingwith
withtop
toptalent
talent
Pre-scheduling
Pre-schedulingkeykeypeople
people
Training
Training
2.2.Unrealistic
Unrealisticschedules
schedulesand
andbudget
budget
Management
Managementtechniques:
techniques:
Detailed
Detailedschedule
scheduleand
andcost
costestimation
estimation 4
Risk Management Plan

Risk
Risk Identification-Check
Identification-Check List
List
3.3.Developing
Developingthethewrong
wrongsoftware
softwarefunctions
functions
Management
ManagementTechniques:
Techniques:
User
UserSurveys
Surveys
Prototyping
Prototyping
4.4.Developing
Developingthethewrong
wronguser
userinterface
interface
Management
ManagementTechniques:
Techniques:
Prototyping
Prototyping
5.5.Gold
GoldPlating
Plating––refers
referstotoadding
addingfeatures
featuresthat
thatare
areonly
onlymarginally
marginallyuseful.
useful.ItItconsumes
consumes
resources and time.
resources and time.
Management
Managementtechniques:
techniques:
Requirements
Requirementsscrubbing
scrubbing
Prototyping
Prototyping
Cost-Benefit
Cost-Benefitanalysis
analysis
6.6.Stream
StreamofofRequirement
RequirementChanges
Changes
Management
Managementtechniques
techniques
Incremental
Incrementaldevelopment
development
High
Highchange
changethreshold
threshold 5
Risk Management Plan

Risk
Risk Identification-Check
Identification-Check List
List
7.7.Dependency
Dependencyononexternally
externallyfurnished
furnishedcomponents
components
Management
Managementtechniques:
techniques:
Compatibility
Compatibilityanalysis
analysis
Benchmarking
Benchmarking
Cost-benefit
Cost-benefitanalysis
analysis
8.8.Dependency
Dependencyonontechnology
technology
Management
ManagementTechniques:
Techniques:
Technical
Technicalanalysis
analysis
Cost-benefit
Cost-benefitanalysis
analysis

Risk
Risk Identification-Decision
Identification-Decision Driven
DrivenAnalysis
Analysis
Analyze
Analyzeall
alldecisions
decisionstaken
taken
Look
Lookfor
fordecisions
decisionsderived
derivedbybynon-technical
non-technicalorornon-
non-management
managementreasons
reasons
Such
Suchdecisions
decisionsmight
mightbebedriven
drivenby
bypolitics,
politics,marketing
marketingororthe
thedesire
desirefor
forshort
shortterm
termgain
gain

6
Risk Management Plan

Risk
Risk Identification-Assumption
Identification-AssumptionAnalysis
Analysis
Look
Lookfor
foroptimistic
optimisticassumptions
assumptionssuch suchas:
as:
Nothing
Nothinggoes
goeswrong
wrong
There
Therewill
willbe
beenough
enoughrainrain
No
Noteam
teammember
memberwill willquit
quit
People
Peoplewill
willput
putininextra
extrahours
hoursififrequired
required
External
Externalcomponents
componentswill willbebedelivered
deliveredonontime
time

Risk
Risk Identification-
Identification- Decomposition
DecompositionAnalysis
Analysis
20%
20%of
ofthe
themodules
modulescause
cause80%
80%ofofthe
theproblem
problem
Analyze
Analyzethe
themodules
modulesof
ofthe
theproject
project

7
Risk Management Plan

Risk
RiskAnalysis
Analysis
Estimating
Estimatingsizesizeof
ofloss
loss
Loss
Lossisiseasier
easiertotosee
seethan
thanprobability;
probability;You Youcan
canbreak
breakthis
thisdown
downintointo“chunks”
“chunks”(like
(like
WBS)
WBS)
Estimating
Estimatingprobability
probabilityofofloss
loss
IsIssubjective,
subjective,UseUseteam
teammember
memberestimates
estimatesandandhave
haveaarisk-estimate
risk-estimatereview
review
Use
UseDelphi
Delphiororgroup-consensus
group-consensustechniques
techniques
Use’
Use’gambling
gamblinganalogy’
analogy’“how
“howmuch
muchwould
wouldyouyoubet”
bet”
Use
Use“Adjective
“AdjectiveCalibration”:
Calibration”:highly,
highly,likely,
likely,probably,
probably,improbable,
improbable,unlikely,
unlikely,highly
highly
unlikely
unlikely
Other
Otherapproaches
approachesof ofrisk
riskanalysis
analysisinclude
include
Decision
DecisionAnalysis
Analysis--studying
studyingthetheprobability
probabilityand andthe
theoutcome
outcomeof ofpossible
possibledecisions
decisions
Network
Network Analysis
Analysis -- understanding
understanding the the task
task dependencies
dependencies toto decide
decide critical
critical
activities and the probability and cost of their not being completed
activities and the probability and cost of their not being completed on time. on time.
Quality
Quality Factor
FactorAnalysis
Analysis -- risks
risks onon the
the various
various quality
quality factors
factors like
like reliability
reliability and
and
usability
usability
Performance
PerformanceAnalysis-
Analysis-evaluating
evaluatingthetheperformance
performanceearly
earlythrough
throughsimulation,
simulation,etc.,
etc.,
ififthere
thereare
arestrong
strongperformance
performanceconstraints
constraintson onthe
thesystem
system
8
Risk Management Plan

Risk
Risk Prioritization
Prioritization
Determine
Determineimpact
impactofofeach
eachrisk
risk
One
Oneapproach
approachfor forprioritization
prioritizationisisRERE
Risk
RiskExposure
Exposure(RE)(RE)
IsIs expected
expectedvalue
valueofofloss
lossdue
duetotoaaparticular
particularrisk
risk
RE
RE==Probability
Probabilityof ofLoss
Loss**size
sizeofofloss
loss
Ex:
Ex:risk
riskisis“Facilities
“Facilitiesnot
notready
readyon ontime”
time”
Probability
Probabilityisis25%,
25%,size
sizeisis44weeks,
weeks,REREisis11week
week
Ex:
Ex:risk
riskisis“Inadequate
“Inadequatedesign
design––redesign
redesignrequired”
required”
Probability
Probabilityisis15%,
15%,size
sizeisis10
10weeks,
weeks,REREisis1.5
1.5weeks
weeks
Sum
Sumall allRE’s
RE’stotogetgetexpected
expectedoverrun
overrun
The
Thehigher
higherRE,RE,the
thehigher
higherthe
thepriority
priority

9
Risk Management Plan

Risk
Risk Control
Control
Unlike
Unlikerisk
riskassessment,
assessment,risk
riskcontrol
controlinvolves
involvesactive
activemeasures
measurestaken
takenby
byPM
PMtotominimize
minimize
impact.
impact.
Has
Hasthree
threesub-activities:
sub-activities:
Risk
Riskmanagement
managementplanning
planning
Risk
Riskresolution
resolution
Risk
Riskmonitoring
monitoring

Risk
Risk Management
Management Planning
Planning
Plans
Plansare
aredeveloped
developedfor foreach
eachrisk
risk
The
Theplan
planfor
foraaparticular
particularrisk
riskneedn’t
needn’tbe
beextensive
extensiveororelaborate
elaborate
The
Theplan
planhas
hasfive
fivecomponents:
components:
Why
Whyititisisimportant
importantand
andwhy
whyshould
shouldititbe
bemanaged
managed
What
Whatshould
shouldbe bedelivered
delivered
Who
Whoisisresponsible
responsibleforforrisk
riskmanagement
managementactivities
activities
How
Howthetherisk
riskbe
beabated
abated/ /minimized
minimized
How
Howmany
manyresources
resourcesare
areneeded
needed 10
Risk Management Plan

Risk
Risk Management
Management Planning
Planning
Risk
Riskmanagement
managementplanning
planningstrategy:
strategy:
Risk
Riskavoidance
avoidance
Don’t
Don’tdodoitit
Ex:
Ex:shifting
shiftingthe
thesite
siteof
ofaabuilding
buildingtotoearthquake
earthquakefree
freezone
zoneififlocation
locationisisaarisk
risk
Risk
Riskreduction
reduction
Risk
Risktransfer
transfer
Causing
Causinganother
anotherparty
partytotoaccept,
accept,typically
typicallyby
bycontract
contractor
orhedging
hedging
Ex:
Ex:Insurance,
Insurance,outsourcing,
outsourcing,… …
Risk
Riskretention
retention
Accept
Acceptits
itsoccurrence
occurrence
Don’t
Don’tdodoanything
anythingabout
aboutitit

11
Risk Management Plan

Risk
Risk resolution
resolution and
and Monitoring
Monitoring
Risk
Riskresolution
resolutionisisessentially
essentiallyrisk
riskmanagement
managementplanning
planningimplementation
implementation
For
Foreach
eachrisk,
risk,specify
specifyits
itsrisk
riskmonitoring-
monitoring-how
howthe
themeasures
measuresdescribed
describedininresolution
resolutionare
are
executed.
executed.

Risk
Risk Control
Control Example
Example
Suppose
Suppose wrong
wrong product
product development
development isis identified
identified as
as aa risk.
risk. Identify
Identify its
its strategy,
strategy,
resolution
resolutionand
andmonitoring
monitoring
Solution:
Solution:
Risk
RiskManagement
Managementplanning
planningstrategy:
strategy:reduction
reduction
Risk
Riskresolution
resolution
elicit
elicitas
asmuch
muchrequirement
requirementas aspossible
possible
clarify
clarifyvague
vaguerequirements
requirements
prepare
prepareprototype
prototype
Risk
RiskMonitoring
Monitoring
dev’pt
dev’ptteam
teamleader
leadermonitors
monitorschanges
changesaccording
accordingtotothe
thenew
newunderstanding
understanding
PM
PMchecks
checkswhether
whetherthe
thenew
newrequirements
requirementsare
areaddressed
addressed
12
Risk Management Plan

Risk
Risk Management
Management Document
Document Template
Template
1.1.Introduction
Introduction
2.2.Risk
Riskassessment
assessment
2.1
2.1Risk
Riskidentification
identification
2.2
2.2Risk
Riskanalysis
analysis
2.3
2.3Prioritization
Prioritization
3.3.Risk
RiskControl
Control
3.1
3.1Planning
Planningstrategies
strategies
3.2
3.2Resolution
Resolution
3.3
3.3Monitoring
Monitoring
Assignment
Assignment
Prepare
PrepareRMD
RMDfor foryour
yourproject
project

13
Software Configuration Management

Terminology
Terminology
AAconfiguration
configurationitem itemisisaawork
workproduct
productthatthatisistreated
treatedas asaasingle
singleentity
entityfor
forthe
thepurpose
purpose
of
ofconfiguration.
configuration.
AA composite
composite of of configuration
configuration itemsitems isis defined
defined as as aa configuration
configuration management
management
aggregate.
aggregate.
Eg.:
Eg.:
Serial
Serialport
portdevice
devicedriver
driverisisaaCICI
Linux
LinuxOS OSisisaaCMCMAggregate
Aggregate
AA version
version identifies
identifies the
the state
state ofof aa configuration
configuration item item oror aa configuration
configuration atat aa well
well
defined
definedpoint
pointinintime.
time.
Variants
Variantsare areversions
versionsthat
thatare
areintended
intendedtotocoexist.
coexist.
AAsystem
systemhashasmultiple
multiplevariants
variantswhenwhenititisissupported
supportedon ondifferent
differentOSs
OSsand
anddifferent
different
hardware
hardwareplatforms
platforms(eg.
(eg.Machintosh,
Machintosh,Windows
Windowsor orLinux
Linuxvariant)
variant)
AAsystem
system hashas also
also multiple
multiple variants
variants when
when itit isis delivered
delivered with
with different
different levels
levels of
of
functionalities
functionalities(eg.,
(eg.,novice,
novice,expert
expertor orstandard
standardversion)
version)
AA promotion
promotion isis aa version
version that
that has
has been
been made
made available
available toto other
other developers
developers inin the
the
project
project
ItItdenotes
denotesaaconfiguration
configurationitem itemthat
thathas
hasreached
reachedaarelatively
relativelystable
stablestate
stateand
andthat
that
can be used or reviewed by other developers. 14
Software Configuration Management

Terminology
Terminology
AArelease
releaseisisaaversion
versionthat
thathas
hasbeen
beenmade
madeavailable
availabletotothe
theclient
clientor
orthe
theusers
users
ItItdenotes
denotesthat
thataaconfiguration
configurationitemitemhas hasmet
metthe
thequality
qualityset
setby
bythe
thequality
qualitycontrol
control
team
teamand andcan
canbe beused
usedororreviewed
reviewedby bythe
theusers.
users.
AAworkspace
workspaceisisaalibrary
libraryof
ofpromotions
promotions
AArepository
repositoryisisaalibrary
libraryofofreleases.
releases.
AAsoftware
softwarelibrary
libraryprovides
providesfacilities
facilitiestotostore,
store,label,
label,and
andidentify
identifyversions
versionsofofthe
theCis.
Cis.
Three
Threetypes
typesof oflibraries:
libraries:
Developer’s
Developer’sworkspace
workspaceor orDynamic
Dynamiclibrarylibrary
used
usedfor
foreveryday
everydaydevelopment
developmentby bydevelopers
developers
change
changeisisnotnotrestricted
restrictedandandcontrolled
controlledby bythe
theindividual
individualdevelopers
developers
Master
Masterdirectory
directoryor orcontrolled
controlledlibrary
library
tracks
trackspromotions
promotions
change
changeneeds
needstotobebeapproved
approved
Software
SoftwareRepository
Repositoryor orStatic
Staticlibrary
library
tracks
tracksreleases
releases
promotions
promotionsneed needtotomeet
meetcertain
certaincontrol
controlcriteria
criteriabefore
beforethey
theybecome
become releases
releases15
Software Configuration Management

Terminology
Terminology
AAbaseline
baseline isis aa version
version ofof aa CI
CI that
that has
has been
been formally
formally reviewed
reviewed and
and agreed
agreed on
on and
and
which
whichcan
canbe
bechanged
changedonlyonlythrough
throughaachange
changerequest.
request.
AA change
change request
request isis aa formal
formal report
report issued
issued byby aa user
user or
or developer
developer requesting
requesting aa
modification
modificationininaaconfiguration
configurationitem.
item.
Software
SoftwareConfiguration
ConfigurationControlControlItem
Item(SCCI)
(SCCI)
Source
SourceItem
Item(SI)
(SI)
Anything
Anythingsuitable
suitableforforconfiguration
configurationcontrol
control
Source
Sourcecode,
code,documents,
documents,diagrams,
diagrams,etc.etc.
Change
ChangeControl:
Control:process
processofofcontrolling
controllingchanges
changes
Proposal,
Proposal,evaluation,
evaluation,approval,
approval,scheduling,
scheduling,implementation,
implementation,tracking
tracking
Version
VersionControl:
Control:Controlling
Controllingsoftware
softwareversion
versionreleases
releases
Recording
Recordingand andSaving
Savingreleases
releases
Documenting
DocumentingReleaseReleasedifferences
differences
Configuration
Configuration Control:
Control: process
process of of evaluating,
evaluating, approving
approving or or disapproving,
disapproving, andand
managing
managingchanges
changestotoSCCIs.
SCCIs.

16
Software Configuration Management

Sources
Sources of
of Change
Change
Development
Development
Need
Need forfor improving
improving thethe process,
process, functions
functions and
and features
features for
for effectiveness
effectiveness and
and
efficiency.
efficiency.
Maintenance
Maintenance
Bugs
Bugsdetected
detectedwhile
whileininuse
use
Growth
Growth
Need
Needforformoving
movingtotoaanew
newplatform
platform
Expanding
Expandingthe thescope
scope
Expanding
Expandingthe thesystem
systemtotoother
otherdomain
domain

Software
Software Configuration
Configuration Management
Management
The
Thebaseline
baselineproduct
productundergoes
undergoescontinuous
continuouschanges
changes
AAprocess
processisisrequired
requiredtotohandle
handlethese
thesechanges
changesininaasystematic
systematicand
andcontrolled
controlledmanner.
manner.
Such
Suchaaprocess
processisiscalled
calledSoftware
SoftwareConfiguration
ConfigurationManagement
Management
SCM
SCM isis very
very important
important during
during all
all phases
phases starting
starting with
with Requirements
Requirements toto even
even
maintenance.
maintenance. 17
Software Configuration Management

SCM
SCMActivities
Activities
Three
Threemain
mainactivities:
activities:
Identification
IdentificationofofCIs
CIs
Change
ChangeManagement
ManagementControlControl
Configuration
ConfigurationAudit
AuditandandStatus
StatusReporting
Reporting
Identification
IdentificationofofCIs
CIs
Software
SoftwareConfiguration
ConfigurationControl
ControlItem
Item(SCCI)
(SCCI)
Source
SourceItem
Item(SI)
(SI)
Anything
Anythingsuitable
suitablefor
forconfiguration
configurationcontrol
control
Source
Sourcecode,
code,documents,
documents,diagrams,
diagrams,etc.
etc.
Requires
Requiresbaseline
baselineproduct
productwhich
whichisisthe
thebasis
basisfor
forsubsequent
subsequentchanges.
changes.
Baseline
Baselineproducts
productscan canbe
besplit
splitas
asRAD,
RAD,SDD,
SDD,etc etc
Component
Componentidentification
identificationandandnaming
naminghelp
helptotolocate
locateand
andknow
knowits
itsstatus
status
This
Thisactivity
activityclearly
clearlyshows
showsthe
the
components
componentsaffected
affectedby
bythe
thechange
changerequirement
requirement
the
theone
onethat
thatisisundergoing
undergoingaachange
changeand
and
the
theothers
othersaffected
affectedby bythe
thechange
change 18
Software Configuration Management

SCM
SCMActivities
Activities …

Change
ChangeManagement
ManagementControl Control
Change
ChangeControl:
Control:process
processofofcontrolling
controllingchanges
changes
Includes
Includes
Program
Programcodecodechanges
changes
Requirements
Requirementsand anddesign
designchanges
changes
Version
Versionrelease
releasechanges
changes
Essential
Essentialfor
fordeveloped
developeditems
items
Code,
Code,Documentation,
Documentation,etc. etc.
CMC
CMCprocesses
processes
Accept
Accept change
change request
request from
from user/developer/customer
user/developer/customer viavia change
change request
request
form that describes:
form that describes:
The
Theconfiguration
configurationitem
itemininquestion,
question,the
theproposed
proposedchange,
change,and
andthe
theimpact
impact
of
ofthe
thechange
change(cost,
(cost,time,
time,quality)
quality)
Analyze
Analyzethe therequest
requestby
by
Identifying
Identifyingparties
partiesaffected
affectedbybythe
thechange
change
Requesting
Requestingand andcollecting
collecting their
theirassessments
assessments 19
Software Configuration Management

SCM
SCMActivities
Activities …

Change
ChangeManagement
ManagementControl
Control… …
CMC
CMCprocesses
processes… …
Based
Based on on cost,
cost, quality,
quality, time
time and
and utility,
utility, and
and received
received assessment,
assessment, evaluate
evaluate
the
thechange
changeneeded
needed
IfIfNO,
NO,submit
submitforforreconsideration,
reconsideration,or orreject
reject
IfIfYES
YESdodothe
thefollowing:
following:
Rename
Renameaffected
affectedcomponents
components
Execute
Executethethechange
change
Incorporate
Incorporateininthe
thebaseline
baseline
Update
Updatetotonew
newstatus
status
Update
Updatebaseline
baselineandandproduct
productdatabase
database
Change
ChangeControl
ControlBoard
Board
Depending
Dependingon onthe
thesize
sizeofofthe
theproject,
project,there
theremight
mightbebeCCB
CCBororCMCMTeam
Team
Structure:
Structure:representatives
representativesfromfromeach
eachstakeholder
stakeholderparty
party
Dev.,
Dev.,QA,QA,Marketing,
Marketing,Mgmt.,
Mgmt.,Customer
Customersupport
support
Perform
PerformCMC CMCprocess
process 20
Software Configuration Management

SCM
SCMActivities
Activities …

Configuration
ConfigurationAudit
Audit& &Status
StatusReporting
Reporting
How
Howcan
canwe
weensure
ensurethatthatthe
thechange
changehas
hasbeen
beenproperly
properlyimplemented
implementedand andreported?
reported?
The
Theanswer
answerisisthreefold:
threefold:
Formal
FormalTechnical
TechnicalReview
Review
Focuses
Focuseson onthe
thetechnical
technicalcorrectness
correctnessofofthe
themodified
modifiedCICI
Addresses
Addressesfor forits
itsconsistency
consistencywith
withother
otherCIs
CIs
Configuration
ConfigurationAudit Audit
Has
Hasthethechange
changebeen beenmade
madeas asspecified?
specified?
Have
Haveadditional
additionalmodifications
modificationsbeen
beenincorporated?
incorporated?
Has
Hasaaformal
formalreview
reviewbeen
beenconducted?
conducted?
Are
ArethetheCMC
CMCprocedures
proceduresfollowed?
followed?
Have
Haveall allrelated
relatedCIsCIsbeen
beenproperly
properlyupdated
updated
Status
Statusreporting
reporting
Answers
AnswersWhat Whathappened,
happened,Who
Whodid didit?,
it?,and
andWhen
Whendiddiditithappen?
happen?
Gives
Givesinformation
informationabout aboutCR
CR >>Decision
Decision>>Effected
Effected>> Affected
Affected
SR
SRhelps
helpsimprove
improvecommunication
communicationamongamongall allinvolved
involved 21
Software Configuration Management

Configuration
Configuration Management
Management Tools
Tools
Many
Manyininexistence
existencebutbutdescribe
describe44here:
here:
RCS(Revision
RCS(RevisionControl
ControlSystem)
System)
aafree
freetool
tooltotocontrol
controlaarepository
repositorystoring
storingall
allversions
versionsofofthe
theCIs
CIs
ToTo optimize
optimize storage,
storage, RCS
RCS only
only stores
stores the
the latest
latest version
version and
and the
the differences
differences
between
betweeneach
eachversion
version
Doesn’t
Doesn’tsupport
supportbranch
branch
ToToobtain
obtainaaspecific
specificversion
version
developers
developers check
check out
out aa version
version into
into their
their workspace
workspace by by specifying
specifying version
version
number
numberorordate
date
ToTochange
changeaaCI CIdevelopers
developersneed
needtotolock
lockthe
theitem
itemtotoprevent
preventothers
othersfrom
fromchanging
changing
the
theitem
item
When
Whenthe thechange
changeisiscompleted,
completed,thethedeveloper
developerchecks
checksthe
themodified
modifieditem
itemback
backinto
into
the
therepository
repositoryreleasing
releasinglock.
lock.

22
Software Configuration Management

Configuration
Configuration Management
Management Tools
Tools
CVS(Concurrent
CVS(ConcurrentVersion VersionSystem)
System)
aafree
freetool,
tool,extends
extendsRCSRCSwith
withthe
theconcept
conceptof ofbranch
branch
Instead
Insteadof ofaasequence
sequenceof ofdifferences,
differences,CVSCVSstores
storesaatree
treeof
ofdifferences
differencesfor
foreach
eachCICI
Provides
Providestools toolsfor
formerging
mergingtwo twobranches
branchesdetecting
detectingoverlaps.
overlaps.
Its
ItsChange
Changecontrol
controlpolicy:
policy:
Instead
Insteadof oflocking
lockingaaCI,CI,CVS
CVSconsiders
considerseacheachdeveloper
developertotobebeaaseparate
separatebranch
branch
IfIf aa single
single developer
developer modified
modified aa CI CI between
between twotwo check-ins,
check-ins, CVS
CVS merges
merges thethe
branch onto the main
branch onto the main trunk trunk
IfIfCVS
CVSdetects
detectsaaconcurrent
concurrentchange,
change,ititfirst
firstattempts
attemptstotomerge
mergethe
thetwo
twochanges
changesandand
then,
then,inincase
caseofofoverlap,
overlap,notifies
notifiesthe
thelast
lastdeveloper
developertotocheck-in
check-in
Perforce:
Perforce:Commercial
Commercialreplacement
replacementfor forCVS
CVS
Clear
ClearCase:
Case:
Commercial,
Commercial,supportssupportsCM CMaggregates
aggregatesand andconfigurations
configurations
AACM CMaggregate
aggregateisisrealized
realizedasasaadirectory
directorywhich
whichisismanaged
managedas asaaCI.
CI.
Allows
Allowsthe thespecification
specificationof ofconfiguration
configurationwith withrules,
rules,selecting
selectingversions
versionsofofeach
eachCICI
aaversion
versioncancanbebespecified
specifiedbybyreferring
referringtotoaaspecific
specificversion
versionnumber
numberorortotothe
the
latest
latestversion
versionnumber
number 23

You might also like