Whose work is it anyway?IWMW, Manchester, 6th July 2005
The problem...
• Where to start it?
• How to get it done?
• Who should do it?
• How to make sure it works?
• What is ‘it’ anyway?
The problem...
• Where to start it?
• How to get it done?
• Who should do it?
• How to make sure it works?
• What is ‘it’ anyway?
The solution?
The solution?
• To be determined
Some thoughts...
• Preparation
• Problem definition
• Resourcing
• Progress
• Completion
Preparation
What you need to know before you begin
• Who is responsible for the project?
• Do you have a project leader?
• What’s the reason for the job?
• Internal development?
• Third-party deployment?
• Bid-related?
About internal development...
Some suggestions
• Solve the smallest possible problem. Incrementally.
• Have the smallest possible team managing it (preferably one person).
About bids...
Writing bids
• Does the awarding body have special requirements?
• Be aware of all the issues
• Get vendors / developers / technical advisors involved before submission
Defining the job
• Scope
• Timescale
• Budget
• Requirements
• Users
• External factors
Problem definitionHow to efficiently specify your work
Specifications
• Should you be writing technical specs?
• What’s the design methodology?
• Monolithic / waterfall?
• Agile?
• Hit ‘n’ hope?
Specifications
• ... or should you be trying to define the problem?
• ... or what you want to happen?
Specifications, the XP way
• User stories
• Provided by you
• ...often with help from the developer
• ...or an analyst
• ...or marketing
ResourcingHow to pick developers
Criteria for selection
• Internal or external?
• Contractor, employee, service, company?
• Reputation, price, competence ...
• The Google effect
• The community effect
Selection process
• Have a formal process defined in advance
• Meet with them
• Is an RFI/RFP/RFQ stage appropriate?
Criteria and questions
• What is their background?
• What similar work have they done?
• What work are they doing at the moment?
• What are their methodologies?
• What is their normal daily rate?
Liaison
• How to keep internal and external resources talking?
• Introduce them to each other early on
• Ask for policies/methodologies from both
• Establish clear communications channels
• Make conversation a default, not a decision
ProgressHow to check on and measure progress
Be involved
• Release early, release often
• Test in context
• Check documentation
• Measurable objectives: what are they?
• feature-based? time-based?
Getting what you want
• Change management
• Issue and bug tracking
• Iterations
CompletionHow to sign off and quantify achievements
Signing off
• Have clear exit criteria defined at the start
• Signing-off as continuous process
• Do external evaluations early