Skip to content

Instantly share code, notes, and snippets.

@jpolete
Last active May 16, 2016 12:53
Show Gist options
  • Save jpolete/40f2f5a0f729e11158eb2e4ba818d4df to your computer and use it in GitHub Desktop.
Save jpolete/40f2f5a0f729e11158eb2e4ba818d4df to your computer and use it in GitHub Desktop.

Development Process Outline

Discovery

Business

  • Interview stakeholders. Goals. Vision
  • Elevator pitch: “For [target customer], who has [customer need], [product name] is a [market category] that [one key benefit]. Unlike [competition], the product [unique differentiator].”
  • Define your value proposition
  • Create a “Concept Story” as described in “The User’s Journey.”

Users

Competition

  • Research competitive landscape
  • Define differentiator/competitive advantage

Analyze Current State

  • Perform a content audit
  • Identify current failures / success
  • Define/redefine success metrics

Design

The following design and development process aren’t necessarily linear. You will not necessarily do each process for every project, either.

Write User Stories / Epics

Work with users to write user stories. Do this with real users when possible. For new products you may imagine what you want your future users to be able to do. Group related stories into epics.

User story template:

As a [type of user], I want [goal] so that I [receive benefit].

Map Tasks/Processes

Use Story Mapping to map out all of the individual steps and tasks that make up each user story.

  • Create story maps from user stories. Do this for existing processes as well as future/imagined/ideal processes.
  • Create “Usage Stories” (map action, crisis, climax, etc. for greater engagement - The User’s Journey)

Define System of Objects & Interactions

Use OOUX (Object Oriented UX) practices to discover and define the objects and interactions that will make up the system.

Sketch Flows & Interfaces

Start simple using Ryan Singer’s design flow shorthand.

Sketch out screens and ideas. Use a formal Design Studio method or just hash out ideas together more informally using pen and paper.

Prototype

Create prototypes from user stories and sketches.

  • Paper (old-school, quick and simple)
  • Clickable (Balsamiq, Keynote, Sketch/Invision, etc.)

Development

Agile Design/Dev Process

  • Manage agile development process using an agile software tool like Jira or do it manually using post-its on walls.
  • Use Github Issues to manage your product backlog and sprint backlog. See Github Scrum Process.

Backlog Grooming

  • Add stories to backlog
  • Break larger stories down until you get smaller, manageable stories that can be clearly defined and estimated (see example story-issue)
  • For each issue create (sub) tasks
  • Prioritize the backlog
  • Collaboratively decide on what issues to pull from the product backlog into sprint backlog. Assign sprint items to devs.

Kickoff Sprint

Rinse, Repeat

At the end of the sprint we present the working iteration to users. From this point on we go back to the beginning—continue to elicit user/stakeholder feedback and iterate on the product.

Resources / Further Reading

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment