-
Chapter 2Project Planning, Monitoring & Control and Process
Models
*References: Hughes, B. and Cotterell, H. 2009. Software Project
Management. 5th edn. McGraw Hill.Pressman, R.S. 2009. Software
Engineering A Practitioners Approach. 7th edn. McGraw Hill.
2.1 Project Planning2.2 Project Monitoring and Control2.3
Project Process Models2.4 Project Process Models Selection
*
-
2.1 PROJECT PLANNING (PP)*What are the steps?
-
2.1 Project Planning (STEP WISE Approach)*What are the steps?1
to 10Step 0 is not part of PPSteps 1 and 2 can be performed in
parallelSteps 5 and 6 need to be repeated for each activity in the
project
Planning project:Start with an outline
Steps in Project Planning
-
Step 1
*1.1 Identify objectives and measures of effectiveness in
meeting themObj the things that you want to achieve1.2 Establish a
project authority who is the boss?1.3 Identify stakeholderswho will
be affected/involved in the project?
-
Step 1
*1.4 Modify objectives in the light of stakeholder analysisIt
might be necessary to modify objectives to gain full coorperation
from stakeholders1.5 Establish methods of communication with all
parties
-
Step 2*2.1 Establish relationship between project and strategic
planningUnderstand why the project is needed2.2Identify
installation standards and proceduresWhat standards to follow?
(internal std/external std)2.3Identify project team
organization
-
Step 3*This step is to determined whether the project is to meet
specific objectives or to create a specified product
Select a suitable project approach
Waterfall?Prototyping?Incremental model? etc
-
Step 4*Identify and describe project products (i.e.
deliverables)
e.g. of project products
-
Step 5*
-
Step 6*Estimate how likely the risks will occurIf it happens-
what will be the damage (lost of time/money?)- What actions to be
taken
Then add new activities to reduce risks
When new activities are added to reduce risks, what need to be
adjusted?Ans: overall project p___
-
Step 7*7.1 Identify resources and assign resources to
tasks7.2Revise plan to take account of resource constraintse.g.
when staff is not available on certain dates
-
*Example of Gantt ChartStep 72.1 Project Planning
-
Step 8*
-
Step 9 and 10*Execute plan
And
Create lower level plans(a more detailed plan)
-
2.1 Project Planning*Steps in Project Planning
This framework is called STEP WISE Approach
-
2.1 Project Planning*
This framework is called PRINCE2en.wikipedia.org
-
2.2 PROJECT MONITORING AND CONTROLWhy Do We Need MonitorPurpose
of Project ControlPossible Corrective Actions*
-
Monitoring and ControlWhy do we need to monitor? ______
Ans: We want to know if things happened as planned
What tasks must be monitored closely? ___________
*
*
-
Monitoring and Control
What is the purpose of project control? ______To bring actual
performance to planned performance
Projects often dont go according plan. Agree?
So, PM must be able to detect problems and react
appropriately
*
*
-
Possible Corrective ActionsAdding more staffsAdding people with
greater skillsReassigning tasksDecreasing individual
supervisionImproving the ways of working
or using better toolsReallocate staff to critical
activitiesEncouraging the teamSubcontracting part of the
workReducing scope
*Increasing the number of inspections
Enable inexperienced/ less confident staff to obtain
guidance
Improving the software dev process
Can you give 1 e.g.? _____
*
-
Adding more staffOne of the possibilities when project is behind
scheduleWill work if task can be parti_____ (e.g. interviewing
users)Sometimes, adding more staff is counter productive because
time needed for:communication, learning
*
*
-
Adding people with greater skillsAn alternative to adding more
staff, consider adding people with greater skillsAdding
experienced/skilled staff to a team may yield results
*
*
-
Reassigning TasksNo need to add staffs/people with greater
skillsSome staffs are creative, some are thorough, while some are
analyticalMay get better productivity/quality of work by switching
tasks between staffs
*
*
-
Decreasing individual supervisionWhen dealing with experienced
staff reduce check up frequencyGive experienced staffs greater
responsibility and reduced the amount of supervision
*
*
-
Improve the ways of working or use better tools
*
*
-
Reallocate staff to critical activities*Supposed to be completed
in 10d but it is already 4 days late
*
-
Encouraging the teamProject fatigue may arise causing lower
productivity, increased absenteeism, resignations, complaints,
etcAction plan:Reduced the size of deliverablesRedistribute work to
provide development opportunities Organizing social events in
company to revive the sense of team spirit
*
*
-
Subcontracting part of the workDespite all the techniques
mentioned above and the project is still not on schedule Project
manager may consider outsourcing the tasks to co______Must make
sure the contractors work to the required standards
*
*
-
Reducing ScopeWhen all else fail:Negotiate to reduce the scope.
It may be the original scope is too ambitious for the time or money
Reducing the scope will reduce the amount of wo___Alternatively
resort to phased delivery with major functions being delivered
first. Usually not well received but better than to fail the
project totally
*
*
-
Handling Quality ProblemsIncreasing the no. of product
inspectionsEnable inexperienced/ less confident staff to obtain
guidanceImproving the software dev process
*
*
-
Increasing the no. of inspectionsIf there is a high level of
defects in the completed deliverables thenincrease the no. of
product inspectionsMay delay the project when no. of inspections
increasesBut errors are discovered earlier and rectified more
quickly else the co__ error corrections will be much higher at
later stage.
*
*
-
Enable inexperienced/ less confident staff to obtain
guidance
*
https://malaysia.images.search.yahoo.com/search/images;_ylt=A2KI9kONLz5UtHoAkwflPwx.;_ylu=X3oDMTBsZ29xY3ZzBHNlYwNzZWFyY2gEc2xrA2J1dHRvbg--;_ylc=X1MDMjExNDczMjAwNQRfcgMyBGJjawMyOGJoc2xsYTNzYTN1JTI2YiUzRDMlMjZzJTNEbGcEZnIDeWZwLXQtNzM5BGdwcmlkA3BWeU1nMENXUXJhMU5GMmNPV1FzMEEEbXRlc3RpZANudWxsBG5fc3VnZwMwBG9yaWdpbgNtYWxheXNpYS5pbWFnZXMuc2VhcmNoLnlhaG9vLmNvbQRwb3MDMARwcXN0cgMEcHFzdHJsAwRxc3RybAMzNQRxdWVyeQNJbXByb3ZlIHRoZSB3YXlzIG9mIHdvcmtpbmcgY2xpcGFydAR0X3N0bXADMTQxMzQxNTY5NAR2dGVzdGlkA251bGw-?gprid=pVyMg0CWQra1NF2cOWQs0A&pvid=d5INdzk4LjEkLjytVD4ofgSsMTc1LgAAAADhGq7A&p=Improve+the+ways+of+working+clipart&fr=yfp-t-739&fr2=sb-top-malaysia.images.search.yahoo.com&ei=UTF-8&n=60&x=wrt
*
-
Improving the software dev process
*
https://malaysia.images.search.yahoo.com/search/images;_ylt=A2KI9kONLz5UtHoAkwflPwx.;_ylu=X3oDMTBsZ29xY3ZzBHNlYwNzZWFyY2gEc2xrA2J1dHRvbg--;_ylc=X1MDMjExNDczMjAwNQRfcgMyBGJjawMyOGJoc2xsYTNzYTN1JTI2YiUzRDMlMjZzJTNEbGcEZnIDeWZwLXQtNzM5BGdwcmlkA3BWeU1nMENXUXJhMU5GMmNPV1FzMEEEbXRlc3RpZANudWxsBG5fc3VnZwMwBG9yaWdpbgNtYWxheXNpYS5pbWFnZXMuc2VhcmNoLnlhaG9vLmNvbQRwb3MDMARwcXN0cgMEcHFzdHJsAwRxc3RybAMzNQRxdWVyeQNJbXByb3ZlIHRoZSB3YXlzIG9mIHdvcmtpbmcgY2xpcGFydAR0X3N0bXADMTQxMzQxNTY5NAR2dGVzdGlkA251bGw-?gprid=pVyMg0CWQra1NF2cOWQs0A&pvid=d5INdzk4LjEkLjytVD4ofgSsMTc1LgAAAADhGq7A&p=Improve+the+ways+of+working+clipart&fr=yfp-t-739&fr2=sb-top-malaysia.images.search.yahoo.com&ei=UTF-8&n=60&x=wrtGenerally,
quality depends on:Input PeopleProcess
*
-
Possible Corrective ActionsAdding more staffsAdding people with
greater skillsReassigning tasksDecreasing individual
supervisionImproving the ways of working
or using better toolsReallocate staff to critical
activitiesEncouraging the teamSubcontracting part of the
workReducing scope
*Increasing the number of inspections
Enable inexperienced/ less confident staff to obtain
guidance
Improving the software dev process
Can you give 1 e.g.? _____Can you give 1
e.g.?________________
*
-
2.3 PROJECT PROCESS MODELSWaterfall modelsIncremental
ModelPrototyping ModelRapid Application Development (RAD)Spiral
modelOther Models *
-
Waterfall modelsOldest model of system development There is a
sequence of activities from top to bottom.Activities flow downwards
with little possibility of reworking the previous stage
activities
*
*
-
Waterfall models*Advantages:Manager can easily review project
progress.Suitable for project where requirements are well
definedEasier to forecast project durationDisadvantages:Not
suitable for project with high level of uncertainty.Not flexible
reluctant to go back to previous stage.
*
-
Incremental model *Software is delivered in small usable piece
called increment at a time.Each increment give some benefits to the
userUseful when staffing is too short for a full-scale
development
*
-
Prototyping Model*Throw-away prototypesEvolutionary
prototypes
-
*Throwaway Prototypes
-
*Evolutionary Prototyping
-
Prototyping Model*Throw-away prototypesEvolutionary
prototypes
Disadvantages:Users can misunderstand the role of the prototype
because ___A system evolved from a prototype might not be as
efficient as one developed using conventional methods.
Advantages:Useful when user requirements are uncertain. Valuable
in designing user interface (data-entry screen, reports or Web
pages). Encourages intensive user involvement.
-
Rapid Application DevelopmentSoftware development model that
emphasizes on extremely short development cycle.Each RAD team will
take up a major module and then integrated to form a whole.If
requirements and project scope is well defined, system can be
produced within 60-90 days.
*
*
-
Drawbacks:For large and scalable projects, RAD requires several
teamsNot suitable for system that cannot be modularized.Not
appropriate when technical risks are high:E.g. New software needs
to integrate with existing system.
*Rapid Application Development
-
Spiral model *Process is represented as a spiral rather than as
a sequence of activitiesEach loop in the spiral represents a phase
of the sw dev process (e.g. feasibility study, requirements
analysis, design, coding, etc)Used when requirements are not well
understood and risks are high
*
-
Spiral model *Risks management activities are explicitly
included to minimise risksSuitable for large-scale software
development projects.
*
-
Application of Spiral model to coding Stage *Plan for
resourcesCoding scheduleWhat language to use What is the level of
proficiencycompatibility issuesDevelop the codetesting
*
-
2.3 PROJECT PROCESS MODELSWaterfall modelsPrototyping ModelRapid
Application Development (RAD)Incremental ModelSpiral modelOther
Models ???*Next topic: 2.4 PROJECT PROCESS MODEL SELECTION
-
2.4 PROJECT PROCESS MODEL SELECTION*
-
2.4 Project Process Model SelectionUncertainty is high ?
an e.g. of uncertainty = user requirements are not clearly
defined
Deadlines are tight ?
Requirements are certain but with many complexities ?
e.g. a word processing software needing a large amount of
code)
*Selecting the most appropriate process model
WaterfalEvolutionary PrototypingRapid Application
Development
(RAD)IncrementalSpiral
-
*2.4 Project Process Model Selection
ModelsUser RequirementMan powerUserScheduleProject
scopeWaterfallWell definedCan be forecastedConstrained
Prototyping(evolutionary)Uncertain Heavily involvedRADWell
definedRAD team to tackle componentHeavily involvedFor tight
schedule (3 months)ScalableIncrementalWell definedLack of
staffTightFlexible or complexSpiralLarge-scale system
-
End of Chapter 2
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*