Realising Dreams: Building for the Web

Post on 20-Aug-2015

1.120 views 0 download

Tags:

Transcript of Realising Dreams: Building for the Web

Realising dreamsBuilding for the web

Stephanie TroethNovember 24 2008School of Information StudiesMcGill University, Montreal.

Overview

Who’s responsible? The role of the web project manager / product manager / web producer

What needs to done? The reality of what is required for us to build a good product.

How can we do it? Borrowing from the way of web 2.0.

How can we plan for uncertainty? Some techniques for estimating.

Who’s responsible?The myths of the role of the project manager,

the web producer, et al.

Observation #1

Role definition is hard to find.

This should send us a warning signal.

What is a project manager?

“Project managers sit between account managers and the project team and have a comprehensive understanding of the web development cycle.

They are fanatical organisers, have a full overview of the project and are responsible for all key elements of it; leadership, risk management and working progress/tracking; always with an eye on commercial requirements/restraints [...]”

Source: http://www.e-consultancy.com/forum/109564-web-producer-versus-web-project-manager.html

What is a producer?

“Producers tend to sit within the creative studio. They have coding and design skills, so a hands-on understanding of creative and development, plus actually ‘produce’ site maps and wireframes. They also co-ordinate customer research and user testing.”

Source: http://www.e-consultancy.com/forum/109564-web-producer-versus-web-project-manager.html

Project manager Producer• identify project objectives &

success criteria• scope definition• documentation: project plans,

scoping, specs reporting tools• liaise with client for sign-off on

key project documents• track project status, provide

regular reports• identifying risks and solutions• project costing & budget• implement project management

methodology• quality control

• working technical knowledge • works with designers, developers• set accurate project timelines• understand current best practices

(usability, accessibility, IA)• produce sitemaps & wireframes• manage small teams• coordinate budgets• develop process and best practices

between teams• coordinate quality control

Comparing roles

Adapted from: http://www.e-consultancy.com/forum/109564-web-producer-versus-web-project-manager.html

What is a producer?

“The "Producer" is responsible for overall project design and creation, including the sum total of the creative efforts of the design staff. This person leads all phases of the design process from concept through development to ultimate completion. The Producer is subject to the supervision of the Project Manager.”

Source: http://archives.hwg.org/hwg-basics/003101bf1fe7$86d3d800$18c315d0@derrienrelyea

Observation #2Consensus of roles does

not appear to exist.This should send us another warning signal.

Because we tend to treat projects like a manufacturing process, we expect people and tasks to be as identifiable & manageable as cogwheels — which cannot always be true.

The project manager or producer has the task of balancing dream and reality in the building of a web site.

What needs to be done?The reality of what is required for us to build a good product.

A dreamImagine the following case study.

A travel agency wants to update their online presence to include:

• a fresh new look

• an update of their travel packages

• features for obtaining quotes online

A dream ...?

More likely they will ask for:

• “just a re-skin”

• “something like an online shop”

And we would have to decipher and establish what the requirements actually are.

The reality ...

• Branding

• Marketing & promotion

• Analysis

• Production planning

• Art Direction & Graphic Design

• User experience design

• Content production

• Interface Development

• Application development

• Quality assurance & testing

• Deployment

• Maintenance/enhancements

Branding

Interdependence of project activities

Analysis

Art Direction

UserX design

Graphic design

Content production

Interface dev.

Application dev.

QA & Testing

Deployment

So, who are the people doing these activities? What skills do they have?

If you’re trying to get the best out of your team members, how would you go about it?

Just as we map risks, we should map what information each individual

member of the team requires in order to do their job well.

But that’s not the end of the story.

A Web product isn’t something you build and leave behind.

Customer needs change, the business landscape changes; it is something that should rightly be in continual development.

How can we do it?Borrowing from the way of web 2.0.

The rise of “Web 2.0” (and henceforth, cloud computing) led to the need for change:

• greater value placed on user-generated content• use and integration of APIs, leveraging existing social

technologies• stronger emphasis (in theory) for the user

This coincides with higher adoption of rapid application development, frequent release cycles, and agile/iterative methods.

• work as one team

• work in short iterations

• deliver on something each iteration

• focus on business priorities

• inspect and adapt

Source: Michael Cohn, “Agile Estimating and Planning”

An agile approach to projects

• manage uncertainty

• accept the fact that we can only see clearly close in the future

• acknowledge that beyond a certain point, we know very little

Adapted from: Michael Cohn, “Agile Estimating and Planning”

An agile approach to projects

Done well, agile methodologies can be creative, rewarding and productive.

Executed badly, it becomes chaotic, and quality is compromised.

Unfortunately, agile methods traditionally rise only from application development ranks.

It means that proper planning and inclusion for all the tasks leading up to development can be missing, mis-timed or just plainly assumed.

Branding

Activities that are likely to be iterative

Analysis

Art Direction

UserX design

Graphic design

Content production

Interface dev.

Application dev.

QA & Testing

Deployment

User needsClient needs

How can we plan for uncertainty?

Some techniques for estimation.

User stories“A user story is a software system requirement formulated as one or two sentences in the everyday or business language of the user. [...]

User stories are a quick way of handling customer requirements without having to elaborate vast formalized requirement documents and without performing overloaded administrative tasks related to maintaining them. The intention with the user story is to be able to respond faster and with less overhead to rapidly changing real-world requirements.”

Source: http://en.wikipedia.org/wiki/User_story

Example user stories

• As a user, I can find available flights on the dates I want to travel.

• As a user, I can find information about cruises based on my city of departure and intended destination.

• As a regular user of the site, I can choose to receive news on specials offers on travel fares.

User stories ...• are unhindered expressions of key requirements

• allow for a “top down” approach in defining what needs to be built

• allow a team of diverse skills and viewpoints to identify what the requirement means to them.

• better definition and clarity of priority

Task estimation techniques(for development)

• “small enough to fit”

• relative story points and velocity

• include a margin for error and time for re-visiting estimates

• the human element

Small enough to fit

• choose an atom size for task: a unit of 4 hours

• break all the definition tasks down until they fit the unit

• understand that as details and specific are available, estimates may change.

Relative point size & velocity

• choose an atom size for an average task

• define tasks relative to atom size

• velocity = measure of how many points you can complete in a real time frame

• we get better and better at estimating velocity as time passes

Source: Michael Cohn, “Agile Estimating and Planning”

Dog points

Breed Dog pointsLabrador Terrier 5

Terrier 3

Great Dane 10

Poodle 3

Dachshund 1

German shepherd 5

Saint Bernard 9

Bulldog 3

How would you rank the height of dogs?

Source: Michael Cohn, “Agile Estimating and Planning”

Estimating, the human way

• A clear understanding of who’s on your team, and how they work

• The person doing the job should estimate how long it should take

• Buffering for optimism

Estimating, the human way

• Creating individual accountability

• Identify how to help each other fulfil our individual accountability

Summary

For a process to be successful, everyone on the team (including the stakeholders) needs to buy in and believe it.

means the process cannot be external to the project, nor should it be separate from the formation of the team.

Acknowledge that each team member has a capacity for creativity and problem solving.

Ditch the cogwheel mentality.

Create and nurture a team culture of supporting one another in individual accountability.

The best work comes from passion and a sense of pride.

Thank you! Questions?

Stephanie Troeth

hello@stephanietroeth.com