software project management (intro) step wise an approach to planning software projects

27
Software project Software project management (intro) management (intro) STEP WISE An approach to STEP WISE An approach to planning software planning software projects projects

Upload: liliana-phebe-shields

Post on 18-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Software project management (intro) STEP WISE An approach to planning software projects

Software project Software project management (intro)management (intro)

STEP WISE An approach to STEP WISE An approach to planning software projectsplanning software projects

Page 2: Software project management (intro) STEP WISE An approach to planning software projects

‘‘Step Wise’ - aspirationsStep Wise’ - aspirations

PracticalityPracticality tries to answer the question ‘what do I do tries to answer the question ‘what do I do

now?’now?’

Scalability Scalability useful for small project as well as largeuseful for small project as well as large

Range of applicationRange of application

Accepted techniquesAccepted techniques e.g. borrowed from PRINCE etce.g. borrowed from PRINCE etc

Page 3: Software project management (intro) STEP WISE An approach to planning software projects

‘‘Step Wise’ - an overviewStep Wise’ - an overview0.Select project

1. Identify

project objectives

2. Identify projectinfrastructure

3. Analyseproject

characteristics

4. Identify products and activities

5. Estimate effort for activity

8. Review/ publicizeplan

6. Identify activityrisks

7. Allocateresources

9. Execute plan

10. Lower levelplanning

Review

Lowerleveldetail

For each activity

Page 4: Software project management (intro) STEP WISE An approach to planning software projects

A project scenarioA project scenario

Hardware/software engineering company Hardware/software engineering company (C++ language of choice)(C++ language of choice)

teams are selected for individual projects - teams are selected for individual projects - some friction has been found between some friction has been found between team membersteam members

HR manager suggests psychometric HR manager suggests psychometric testing to select teamtesting to select team

Page 5: Software project management (intro) STEP WISE An approach to planning software projects

Project scenario - continuedProject scenario - continued

Software package to be used to test staffSoftware package to be used to test staff

MS Access suggested as a vehicle for MS Access suggested as a vehicle for implementationimplementation

usability is important - decision to carry out usability is important - decision to carry out usability testsusability tests

Page 6: Software project management (intro) STEP WISE An approach to planning software projects

Step 1 establish project scope Step 1 establish project scope and objectivesand objectives

1.1 Identify objectives and measures of 1.1 Identify objectives and measures of effectivenesseffectiveness ‘‘how do we know if we have succeeded?’how do we know if we have succeeded?’

1.2 Establish a project authority1.2 Establish a project authority ‘‘who is the boss?’who is the boss?’

1.3 Identify all stakeholders in the project 1.3 Identify all stakeholders in the project and their interestsand their interests ‘‘who will be affected/involved in the project?’who will be affected/involved in the project?’

Page 7: Software project management (intro) STEP WISE An approach to planning software projects

Step 1 continuedStep 1 continued

1.4 Modify objectives in the light of 1.4 Modify objectives in the light of stakeholder analysisstakeholder analysis ‘‘do we need to do things to win over do we need to do things to win over

stakeholders?’stakeholders?’

1.5 Establish methods of communication 1.5 Establish methods of communication with all partieswith all parties ‘‘how do we keep in contact?’how do we keep in contact?’

Page 8: Software project management (intro) STEP WISE An approach to planning software projects

Back to the scenarioBack to the scenario

Project authorityProject authority should be a project manager rather than should be a project manager rather than

HR manager?HR manager?

StakeholdersStakeholders project team members to complete on-line project team members to complete on-line

questionnaires: concern about results?questionnaires: concern about results?

Revision to objectivesRevision to objectives provide feedback to team members on provide feedback to team members on

resultsresults

Page 9: Software project management (intro) STEP WISE An approach to planning software projects

Step 2 Establish project Step 2 Establish project infrastructureinfrastructure

2.1 Establish link between project and any 2.1 Establish link between project and any strategic planstrategic plan ‘‘why did they want the project?’why did they want the project?’

2.2 Identify installation standards and 2.2 Identify installation standards and proceduresprocedures ‘‘what standards do we have to follow?’what standards do we have to follow?’

2.3. Identify project team organization2.3. Identify project team organization ‘‘where do I fit in?’where do I fit in?’

Page 10: Software project management (intro) STEP WISE An approach to planning software projects

Step 3 Analysis of project Step 3 Analysis of project characteristicscharacteristics

3.1 Distinguish the project as either 3.1 Distinguish the project as either objective or product-based.objective or product-based. Is there more than one way of achieving Is there more than one way of achieving

success?success?

3.2 Analyse other project characteristics 3.2 Analyse other project characteristics (including quality based ones)(including quality based ones) what is different about this project?what is different about this project?

Page 11: Software project management (intro) STEP WISE An approach to planning software projects

Step 3 continuedStep 3 continuedIdentify high level project risksIdentify high level project risks ‘‘what could go wrong?’what could go wrong?’ ‘‘what can we do to stop it?’what can we do to stop it?’

Take into account user requirements Take into account user requirements concerning implementationconcerning implementation

Select general life cycle approachSelect general life cycle approach waterfall? Increments? Prototypes?waterfall? Increments? Prototypes?

Review overall resource estimatesReview overall resource estimates ‘‘does all this increase the cost?’does all this increase the cost?’

Page 12: Software project management (intro) STEP WISE An approach to planning software projects

Back to the scenarioBack to the scenarioObjectives vs. productsObjectives vs. products use paper questionnaire then input results of use paper questionnaire then input results of

the analysis?the analysis?

Some risksSome risks team members worried about implications team members worried about implications

and do no co-operateand do no co-operate project managers unwilling to try out project managers unwilling to try out

applicationapplication design difficult to implement in MS Accessdesign difficult to implement in MS Access

Answer? - evolutionary prototype?Answer? - evolutionary prototype?

Page 13: Software project management (intro) STEP WISE An approach to planning software projects

Step 4 Identify project products Step 4 Identify project products and activitiesand activities

4.1 Identify and describe project products - 4.1 Identify and describe project products - ‘what do we have to produce?’‘what do we have to produce?’

Usability testing

Change requests

Test resultsTesting

arrangementsSelected subjects

Completedquestionnaire

Questionnairedesign

Bookedmachine

Analysisreport

A product breakdown structure (PBS)

Page 14: Software project management (intro) STEP WISE An approach to planning software projects

ProductsProducts

The result of an activityThe result of an activity

Could be (among other things)Could be (among other things) physical thing (‘installed pc’), physical thing (‘installed pc’), a document (‘logical data structure’)a document (‘logical data structure’) a person (‘trained user’)a person (‘trained user’) a new version of an old product (‘updated a new version of an old product (‘updated

software’)software’)

Page 15: Software project management (intro) STEP WISE An approach to planning software projects

ProductsProducts

The following are NOT normally products:The following are NOT normally products: activities (e.g. ‘training’)activities (e.g. ‘training’) events (e.g. ‘interviews completed’)events (e.g. ‘interviews completed’) resources and actors (e.g. ‘software resources and actors (e.g. ‘software

developer’) - may be exceptions to thisdeveloper’) - may be exceptions to this

Products CAN BE Products CAN BE deliverabledeliverable or or intermediateintermediate

Page 16: Software project management (intro) STEP WISE An approach to planning software projects

Product description (PD)Product description (PD)

Product identityProduct identity

Description - what is Description - what is it?it?

Derivation - what is it Derivation - what is it based on?based on?

Composition - what Composition - what does it contain?does it contain?

FormatFormat

Relevant standardsRelevant standards

Quality criteriaQuality criteria

Create a PD for ‘test Create a PD for ‘test data’data’

Page 17: Software project management (intro) STEP WISE An approach to planning software projects

Step 4 continuedStep 4 continued

4.2 document 4.2 document generic product generic product flowsflows

Testing plan

Selectedsubjects

Questionnairedesign

Bookedmachine

Completedquestionnaire

Questionnaireanalysis

Test results

Changerequests

Page 18: Software project management (intro) STEP WISE An approach to planning software projects

Step 4.3 Recognize product instancesStep 4.3 Recognize product instances

The PBS and PFD will probably have The PBS and PFD will probably have identified generic products e.g. ‘software identified generic products e.g. ‘software modules’modules’

It might be possible to identify specific It might be possible to identify specific instances e.g. ‘module A’, ‘module B’ …instances e.g. ‘module A’, ‘module B’ …

But in many cases this will have to be left But in many cases this will have to be left to later, more detailed, planningto later, more detailed, planning

Page 19: Software project management (intro) STEP WISE An approach to planning software projects

4.4. Produce ideal activity 4.4. Produce ideal activity networknetwork

Identify the activities needed to create Identify the activities needed to create each product in the PFDeach product in the PFD

More than one activity might be needed to More than one activity might be needed to create a single productcreate a single product

Hint: Identify activities by verb + noun but Hint: Identify activities by verb + noun but avoid ‘produce…’ (too vague)avoid ‘produce…’ (too vague)

Draw up activity networkDraw up activity network

Page 20: Software project management (intro) STEP WISE An approach to planning software projects

An ‘ideal’ activity An ‘ideal’ activity

Plantesting

Designquestionnaire

Selectsubjects

Book machine

Conducttests

Analyse results

Draft changerequests

Page 21: Software project management (intro) STEP WISE An approach to planning software projects

Step 4.5 Add check-points if neededStep 4.5 Add check-points if neededDesign

module A

Designmodule B

Designsystem

Designmodule C

Codemodule A

Codemodule B

Codemodule C

Testsystem

Designmodule A

Designmodule B

Designsystem

Designmodule C

Codemodule A

Codemodule B

Codemodule C

Testsystem

Check-point

put in a check point

Page 22: Software project management (intro) STEP WISE An approach to planning software projects

Step 5:Estimate effort for each Step 5:Estimate effort for each activityactivity

5.1 Carry out bottom-up estimates5.1 Carry out bottom-up estimates distinguish carefully between distinguish carefully between efforteffort and and

elapsedelapsed time time

5.2. Revise plan to create controllable 5.2. Revise plan to create controllable activitiesactivities break up very long activities into a series of break up very long activities into a series of

smaller onessmaller ones bundle up very short activities (create bundle up very short activities (create

check lists?)check lists?)

Page 23: Software project management (intro) STEP WISE An approach to planning software projects

Step 6: Identify activity risksStep 6: Identify activity risks6.1.Identify and quantify risks for activities6.1.Identify and quantify risks for activities damage if risk occurs (measure in time lost or damage if risk occurs (measure in time lost or

money)money) likelihood if risk occurringlikelihood if risk occurring

6.2. Plan risk reduction and contingency 6.2. Plan risk reduction and contingency measuresmeasures risk reduction: activity to stop risk occurringrisk reduction: activity to stop risk occurring contingency: action if risk does occurcontingency: action if risk does occur

Page 24: Software project management (intro) STEP WISE An approach to planning software projects

6.3 Adjust overall plans and estimates 6.3 Adjust overall plans and estimates to take account of risksto take account of risks e.g. add new activities which reduce risks e.g. add new activities which reduce risks

associated with other activities e.g. associated with other activities e.g. training, pilot trials, information gatheringtraining, pilot trials, information gathering

Page 25: Software project management (intro) STEP WISE An approach to planning software projects

Step 7: Allocate resourcesStep 7: Allocate resources

7.1 Identify and allocate resources to 7.1 Identify and allocate resources to activitiesactivities

7.2 Revise plans and estimates to take 7.2 Revise plans and estimates to take into account resource constraintsinto account resource constraints e.g. staff not being available until a later datee.g. staff not being available until a later date non-project activities non-project activities

Page 26: Software project management (intro) STEP WISE An approach to planning software projects

Gantt chartsGantt charts

Jean-Paul

Nita

Percy

Ali

Franz

Dylan

Week commencing

5 12 19 26MARCH APRIL

2 9 16

Design module A Des. mod B

Code module A

Code module B

Design module C Design mod D

Code module C

Code Module D

Test module C

Page 27: Software project management (intro) STEP WISE An approach to planning software projects

Step 8: Review/publicise planStep 8: Review/publicise plan

8.1 Review quality aspects of project plan8.1 Review quality aspects of project plan

8.2 Document plan and obtain agreement8.2 Document plan and obtain agreement

Step 9 and 10: Execute plan Step 9 and 10: Execute plan and create lower level plansand create lower level plans