What are the root causes of UX failures and how do we mitigate this? This presentation looks at the concept of UX Spaces as a way to improve UX delivery.
why can nobody get it right? • Why do traditional user-centered design and UX processes break when applied to Drupal? • How to resolve this problem by combining UCD, content modelling, and interaction design. • A worked example.
fine arts, humanities, marketing • Experience with public sector, not-for-profits, media organisations, commercial clients • First used Drupal 4.5 • Familiar with very version since 3.0 • Working exclusively with Drupal since 2007 • I work for in Canberra, Australia
interactions • A laptop has a maximum screen resolution of 1280px • A CMS always represents a certain type of page task as a tab • A kiosk doesn’t work like a website 24
interactions • A laptop has a maximum screen resolution of 1280px • A CMS always represents a certain type of page task as a tab • A kiosk doesn’t work like a website • A TV doesn’t have a keyboard 25
interactions • A laptop has a maximum screen resolution of 1280px • A CMS always represents a certain type of page task as a tab • A kiosk doesn’t work like a website • A TV doesn’t have a keyboard • A software framework doesn’t always make choices which match our needs 26
• Wireframes assume dimensions which may be non- optimal • Content maps presume that content can be independent of design • Design mockups can contain un-implementable features 31
• Wireframes assume dimensions which may be non- optimal • Content maps presume that content can be independent of design • Design mockups can contain un-implementable features • Lack of specificity in “design” can lead to assumptions in deliver. 32
world of pure problem solving, we have to acknowledge that the most successful architectures are the ones you can actually convince someone to implement.” - Jesse James Garrett
set of interactions between: • An actor (e.g. a user) • The content model • Defined by the intended audience, type of content, and required interactions.
set of interactions between: • An actor (e.g. a user) • The content model • Defined by the intended audience, type of content, and required interactions. • They (usually) correspond to website sections, pages or widgets, applications, or task spaces.
set of interactions between: • An actor (e.g. a user) • The content model • Defined by the intended audience, type of content, and required interactions. • They (usually) correspond to website sections, pages or widgets, applications, or task spaces. • Easy to document
or exercise Entity type: user Family audience Interested in family outings. Entity type: user Tourist audience Interested in sightseeing Entity type: user Actors: Who is our audience?
play sport or exercise Entity type: user Family audience Interested in family outings. Entity type: user Tourist audience Interested in sightseeing Entity type: user
play sport or exercise. Entity type: user Family audience Interested in family outings. Entity type: user Tourist audience Interested in sightseeing. Entity type: user
park or garden. Created by Parkfile. Type: Content type A User can search for Parks by Interest. Interest Represents an activity to be undertaken at a Park. Created by Parkfile. Type: Taxonomy Term UX space: “Find by Interest”
park or garden. Created by Parkfile. Type: Content type A User can search for Parks by Interest. Interest Represents an activity to be undertaken at a Park. Created by Parkfile. Type: Taxonomy Term Content type Taxonomy term reference UX space: “Find by Interest”
Park Parks represent a physical park or garden. Created by Parkfile. Type: Content type A User can search for Parks by Interest. Interest Represents an activity to be undertaken at a Park. Created by Parkfile. Type: Taxonomy Term A User can find Parks by Location. A User can rate Parks. A User can view details of a Park. A User can share a Park through social media. A User can add new Parks. A User can claim existing Parks. Location Represents a city, state and country. Created by Parkfile. Type: Taxonomy Term
Park Parks represent a physical park or garden. Created by Parkfile. Type: Content type A User can search for Parks by Interest. Interest Represents an activity to be undertaken at a Park. Created by Parkfile. Type: Taxonomy Term A User can find Parks by Location. A User can rate Parks. A User can view details of a Park. A User can share a Park through social media. A User can add new Parks. A User can claim existing Parks. Location Represents a city, state and country. Created by Parkfile. Type: Taxonomy Term
garden. Created by Parkfile. Type: Content type A User can find Parks by Location. Location Represents a city, state and country. Created by Parkfile. Type: Taxonomy Term Starting the build • Panels • Views • Display Suite • Compact view mode? • Mapping • Geofield? • Openlayers?
Created by Parkfile. Type: Content type A User can rate Parks. A User can view details of a Park. A User can share a Park through social media. Starting the build • Display suite • Full view mode • Image styles • Lightbox2 • Rating • Fivestar/Voting API • Sharing • AddThis etc.
Created by Parkfile. Type: Content type A User can add new Parks. A User can claim existing Parks. Starting the build • Panels • Views • Permissions • Add new • Edit own • Node Ownership
unified approach: • Start with UCD activities, IA research and content modelling, etc… • Merge these streams using UX Spaces • Create your UX spaces in Drupal
• Moods • Combine UX spaces with Mood Boards • Wireframes • UX spaces can morph into wireframes easily • Content modeling/Pseudo-UML • Pair with content models for greater depth • Testing • Include test descriptions in your UX Spaces