chapter 2 planning, m+ctrl, process models (ver2)

52
Chapter 2 Project Planning, Monitoring & Control and Process Models 1 References: 1. Hughes, B. and Cotterell, H. 2009. Software Project Management. 5 th edn. McGraw Hill. 2. Pressman, R.S. 2009. Software Engineering – A Practitioner’s Approach. 7 th edn. McGraw Hill. 2.1 Project Planning 2.2 Project Monitoring and Control 2.3 Project Process Models 2.4 Project Process Models Selection

Upload: foo-thin-chun

Post on 20-Nov-2015

12 views

Category:

Documents


1 download

DESCRIPTION

Planning and chapter 2

TRANSCRIPT

  • 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

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *

    *