<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Stuart Silverstein on Medium]]></title>
        <description><![CDATA[Stories by Stuart Silverstein on Medium]]></description>
        <link>https://medium.com/@stupac5973?source=rss-e9a41a293303------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/0*YTLc3EIdwN8GpbsM.</url>
            <title>Stories by Stuart Silverstein on Medium</title>
            <link>https://medium.com/@stupac5973?source=rss-e9a41a293303------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sat, 14 Nov 2026 04:46:23 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@stupac5973/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[Pearls on a Pig: How to create great UX for third party applications]]></title>
            <link>https://medium.com/@stupac5973/pearls-on-a-pig-how-to-create-great-ux-for-third-party-applications-6599baaf0522?source=rss-e9a41a293303------2</link>
            <guid isPermaLink="false">https://medium.com/p/6599baaf0522</guid>
            <dc:creator><![CDATA[Stuart Silverstein]]></dc:creator>
            <pubDate>Thu, 02 Jun 2022 05:43:28 GMT</pubDate>
            <atom:updated>2022-06-02T15:29:06.533Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="pig with pearls" src="https://cdn-images-1.medium.com/max/1024/1*dJ8KQMZL1H8suNNpP0NNTQ.jpeg" /></figure><p>Long ago when I was in college, I had a course called <em>“Advanced Jazz Improvisation.”</em> As a musician, studying music in college, I did not start life as a designer. This course explored many ideas on improvisation trying to stretch our musicianship.</p><p>One day we showed up, and the professor told us we would be doing <em>“limited equipment day.”</em> As the title was a bit baffling, we didn’t quite understand what we were going to be doing. Were we going to play with a high hat and a snare? Just a snare? A kick and a cymbal?</p><p>As drummers/percussionists, the professor explained to us that the entire world can become a canvas upon which we can hit, scratch, tap and bang. Our instructions were to play <em>anything</em> in the room... <em>except </em>drums, cymbals and rims, nor any traditional percussion instrument.</p><p>While this opened up a new world of possibilities, this limited us from using our normal bag of tricks. We had an entirely new palette. We had to start to think of wall switches, chairs and even someone’s skull as a new percussion instrument. Even though oftentimes I would have preferred to have one arm tied behind my back and use a drum set, we still had our sticks and our brains, which were our most important assets.</p><p>I bring this up because the design equivalent of<em> “limited equipment day” </em>is the design of <strong>3rd party application.</strong> As designers, oftentimes we are used to having our design tool of choice and a blank canvas onto which we can create unique solutions that are tailor made to our application or user experience. However… once you are told you will be designing for an application that is not yours, but rather a product that your company is purchasing, it can feel more like “limited equipment day,” than business as usual, where you would rather design with one hand, versus use the tool you were given.</p><p>The limitations on the system, the vendor or the technology quickly can turn into a nightmare project where you are simply fighting the system, and spending insubordinate amounts of time to get any little tweak you want, and it can be frustrating. However, we still have our mouses and our brains, so we can still design something great with the help of our vendor partners.</p><p>What follows are my tips, gained from many hours of beating my head against the wall, and designing for 3rd party systems for the past 15 years for working both with very flexible systems (such as <a href="https://medium.com/user-experience-design-1/designing-for-salesforce-lightning-apps-2cc88084f10c">Salesforce</a> or even web builders such as <a href="https://webflow.com/">WebFlow</a> and <a href="https://www.squarespace.com/">Squarespace</a>)and very limited systems.</p><p><strong>The principles remain the same and the steps are the same as well:</strong></p><ol><li><strong>Understand the experience</strong> — where it lies, and what it needs to accomplish, and what it needs to integrate with.</li><li><strong>Understand the limitations and strengths of the tool— </strong>which can range from Logo, font and 2 or 3 colors, to a fully customized implementation that is seamlessly integrated with the natively developed applications.</li><li><strong>Create a prototype</strong><em> (hopefully within the actual tool)</em> — much like a “spike” in Agile, we create a test version to work out the kinks and see what the end result will look like.</li></ol><h3>Understand the experience you need and where it lies</h3><p>So the best thing you can do to start is to block out where the experience is within your flow, and understand what the purpose and goals of the applications. If I am using an application that will interact with other experiences — i.e. a new window link from a web app or a website embedded into a mobile app — by applying as close of styles and layout as possible, I will make sure the transition is as seamless as it can be.</p><p><strong>If the application is stand alone, you will have an easier time of keeping consistency.</strong> In both cases, it is definitely critical to use the same strategic techniques you would for any application or feature. Where we will start to deviate is in the solutioning.</p><p>While this step might seem like a “no-brainer,” prepping and making sure you understand context and requirements will help you ask the right questions when you get to limitations of the system.</p><h3>Get your hands on a demo asap!</h3><p>One of the first things I do is to get a sample setup of the application. I usually will get access to both the development panel (despite whether or not I will be doing development), as well as a sandbox environment to see what a sample app will look like. I try to see what components are out of the box, and exactly how they work, as well as get a sense of how the application want you to do the basic flows and use component.</p><p><strong>Almost all systems have been designed to “do things their way,” and the quicker you can assess how that works, </strong>and how the basic app functions, the quicker you can get a grasp of what can and cannot be done without a ton of trial and error.</p><h3>Figure out what can be done</h3><p>Once I have a demo site, I am looking to assess a few key items that will help with figuring out the limitations of the system:</p><ol><li><strong>UI framework or component library: </strong>If you are working with a strict system, this might be just the framework the developer uses. In a more feature rich tool, you will have a component library that you can drag and drop into the WYSIWYG editor. I will take some screen grabs and use that as reference when designing.</li><li><strong>Global Branding &amp; Font : </strong>When playing with the global settings, just about every application will allow you to set one or 2 global colors and fonts. Once this is in place, try to get a sense of what this will and will not affect. Also how and where a logo could be placed</li><li><strong>Copy and content: </strong>This intersects with layout, but you want to get a sense of where you can edit and place copy, graphics and content. In some systems this may be EXTREMELY limited, and you need to design around this. However, in my experience in most cases, you can pretty freely add graphics, copy, and typesetting at will, and these will be the areas you can use to control the experience the most, when the other parts are not as flexible.</li><li><strong>Organization and architecture: </strong>Just like the components, typically there are flows, navigation and architecture that the vendor has created as a base. We need to start by seeing what those are, and any options we may have for navigation layouts, micro-flows, etc</li><li><strong>Data:</strong> What data can get into the system, and what cannot. If we have the data in a feed, however the system cannot accept or integrate, we may be out of luck.</li></ol><h3>Figure out what can’t be done.</h3><p>The following is a list of items that may or may not be possible depending on the application:</p><ol><li><strong>Integrating custom code: </strong>These may be full on services or javascript, or even a simple HTML box. The more custom code we can add, the better our options for customization.</li><li><strong>Modifying styles on widgets: </strong>Those widgets we inventoried in the first step might not work for what you need. Ideally we could use those as a base without recreating them, however a lot of applications make you use them wholesale, or you have to recreate them on your own.</li><li><strong>Assigning custom styles: </strong>You may have little individual styling you can change on a component or on a layout. I was working in a recent very inflexible application, where we had a top and bottom bar that were fixed and taking up 1/2 of the screen real estate on laptop screens, and we just could not remove those and target the style. We wound up having to live with it and work around it. Some systems allow design tokens to help with customization, and those are great first steps, but that may still require customization that may or may not be achievable.</li><li><strong>Layouts: </strong>You may have a choice of multiple layouts or a drag and drop interface, but you also may be stuck with a layout, where you can only affect the dynamic areas on the screen. Check and see how the application handles layouts,</li></ol><h3>Focus on content and flow</h3><p>The best tool you have in your quiver is copy and content. Just about every tool allows you to have pages and/or boxes that you can add copy. These can help to unify the application visually, but also can help fill any experience gaps that are created with the default flows.</p><h3>When enough is enough and you need to… customize</h3><p>When you have done as much as you can do within the normal bounds of the application, and there are areas that need customization,<strong> first rule is try not to break anything and do no harm!!! </strong>There will be additional releases and patches, and it is best to choose customizations that are going to stand the best chance of future releases. These can be self contained features or code.</p><p><strong>If you have to edit or customize the base code, just know what you are doing.</strong> I think there are definitely cases for doing editing base styles. However, this may break in the future and the team has to be aware of that.</p><p><strong>Make sure to work with the vendor on customizations. </strong>They can guide you on things you can break or customize with little impact, and how others have customized before.</p><p><strong>If all else fails, using your own CSS sheet might be a good alternative to customization. </strong>This is also prone to breakage here, but when you get to the end of your rope, you might need this one.</p><h3>Create the prototype</h3><p>When you are designing, you need to choose how you will create a prototype. As in most cases, I prefer to create a wireframe or paper sketch, and then build a prototype in the tool. I find that with mockups, I can wind up doing a lot of work that is not possible, and it causes a lot of back and forth.</p><p>In a best case scenario, <strong>the tool is easy enough to use to create a very rough prototype.</strong> If not pairing with a dev and using fake data can work in a pinch if you need to test it, In a bind, recreating the tool in Sketch/Figma/XD will work, but I definitely recommend it as a last resort. With screen mocks our interaction design will definitely drift, and has a good chance of setting wrong expectations if you are not careful. You can design interactions that are not possible.</p><h3>Wrapping up</h3><p>Designing for 3rd party applications can feel limiting, however with a solid technique and a plan, you can set the team up for success. Just remember that setting expectations and understanding the limitations as soon as possible will be key. Play with it, and see what you can spin up to get a better sense of what it can do. If you can and need to customize, choose your customizations.</p><p>How have you been able to customize 3rd party apps? What are your tips and tricks?</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=6599baaf0522" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Usable, useful, desirable… and buildable?]]></title>
            <link>https://uxdesign.cc/designing-for-build-cc3869ac5d79?source=rss-e9a41a293303------2</link>
            <guid isPermaLink="false">https://medium.com/p/cc3869ac5d79</guid>
            <category><![CDATA[product-design]]></category>
            <category><![CDATA[ux]]></category>
            <category><![CDATA[design-process]]></category>
            <category><![CDATA[agile-development]]></category>
            <category><![CDATA[ui]]></category>
            <dc:creator><![CDATA[Stuart Silverstein]]></dc:creator>
            <pubDate>Mon, 28 Sep 2020 20:54:51 GMT</pubDate>
            <atom:updated>2020-09-29T22:59:36.553Z</atom:updated>
            <content:encoded><![CDATA[<h4>Maybe it’s time we add a fourth tenet to the great triumvirate of User Experience.</h4><figure><img alt="Desktop App" src="https://cdn-images-1.medium.com/max/1024/1*Px_avOrQ5eGOYYT2dZjrDg.png" /></figure><blockquote><em>Designing the best testing, most usable solution is</em> not<em> always the best answer. In fact, oftentimes, it is not.</em></blockquote><p>Now, before you go leaving a bunch of angry comments, let me explain…and I would like to challenge how you think about design and possibly approach it a little differently. I have certainly changed my approach to the topic over the years, and it has evolved to where I am now.</p><p><strong>Eight or so years ago, if you would have asked me to design a platform or an application, I would have delivered to you, a thoroughly thought out researched solution that would meet the needs of the user</strong>. I would have had the developers and product managers thoroughly on board. We investigated the design, and gave it the old, <em>“We can build this.” </em>However, over the years of actually building these solutions, things happened that were beyond our control. Sometimes, projects were underestimated, or the business often had less patience than we anticipated to get things released right. Corners were cut, bugs were released, and the overall result was often not always one we were proud of. The team understood what our strategy was, we had a roadmap, we had great ideas, good user feedback, and a usable design…so what went wrong?</p><p><strong>What I found out, was that the design had elements, which were agreed upon were going to take longer than we anticipated, and I didn’t do everything I could in the design to make it easier to produce</strong>. I was not 100% sure about what data we had, and what we did not have, and I was <em>sort of</em> informed about how the API returned information. I was <em>not </em>aware of how some of the key elements in the design could be removed and released with unacceptable issues due to the pressures of business. The result was often what I call the <strong><em>“Swiss Cheese Effect”</em></strong> — a product with lots of holes that the user is asked to fill until we can build it.</p><p>Once this happened, I began asking questions and I found out I was not the only one this was happening to. Beautiful designs in Sketch files left on the server to rot, only because the design wasn’t able to be built within the scope of the project, which was always significantly less than we needed to create a great experience.</p><p>Fortunately, I’ve also worked in start-up environments with no resources and very large appetites for features as well. In this situation, every last interaction, animation, API call, etc. takes time and resources, which are in short supply. So I started to investigate and experiment.</p><blockquote>I thought about what would happen if I just tried aligning my ideas with the technology that exists, instead of trying to redo everything to make it unique.</blockquote><p><strong>As I experimented, I had many developers school me in the ways that these systems are created, and how I needed to understand their world better if I wanted to get things built. </strong>I learned that I can work with the systems and get creative with language, layout, etc and keep a lot of infrastructure standard, and get “better,” and creating work that was easier to implement.</p><p><strong>We get closer to “ideal” from a series of “better(s).”</strong></p><p>By releasing “better”, we can see if metrics improve, which will dictate investigation of a more fleshed out solution. Working with what you have allows you to get that solution out faster and benefit the user.</p><p><strong>So here are my tips for designing to build.</strong> Even if you know that there is an ideal solution out there, it takes maturity and restraint to say, “<em>We know how we can solve the problem in a delightful, innovative fashion… but we’re not going to do it right now, because we just want to make something better and complete, versus undone.”</em></p><figure><img alt="Levels of zoom" src="https://cdn-images-1.medium.com/max/1024/1*qBJYk_bZEtbupyjC19TZqg.png" /></figure><h3>Understand Your Zoom Level</h3><p>The first thing to determine the necessary level of understanding is your <strong>level of zoom in your project. “</strong>Vision” projects require a very different approach vs a “story” project, so we will have different requirements in terms of understanding.</p><p><strong>Vision projects by their very nature are at the highest level of zoom. </strong>These are by their very nature very big picture and require less validation of current state technology, because we hope to create a fundamentally better experience.</p><blockquote>The “reality threshold” is the percentage of your design that you know could be built today because your team actually validated what needs to be done.</blockquote><p>For sake of argument, a vision project can be from 0% to 60% reality. Because the reality threshold is very low, you don’t need to know about every piece of data, but you should be able to discuss what it would take to create the UI, bring in the data and make adjustments. Once the vision design makes it to first release, it may be more like a 80–100% reality threshold using almost all technology that exists. This all depends on your business as well.</p><p><strong>At the other end of the continuum is the story level zoom.</strong> Design at this point requires a much higher reality threshold because you will be designing what will be built. You will need to understand the intricacies of the data when you design, and how that might impact overall performance and timeline in general. Understanding this will help you decide on what you can add safely, and what you should make the decision to remove proactively.</p><h4>When working with zoom, ask yourself:</h4><ul><li>Am I at a production level of zoom or a vision/concept level of zoom?</li><li>How far off are we planning for this vision to be reality?</li><li>What level of reality threshold is necessary at this point to make sure this is produceable within that timeframe?</li></ul><figure><img alt="Components" src="https://cdn-images-1.medium.com/max/1024/1*QG6uvWDZYMStgJMOeQk48g.png" /></figure><h3>Knowing How Components Really Work</h3><p>With the rise of design systems, almost all organizations are working with some sort of design system or component library these days. This, in general, is a good thing, however, there are a few caveats. Design system components rarely plug and play. Components almost always need some sort of adjustments or customization. Knowing how they behave will help you determine whether to break the component (not desirable!), where to break the component if needed(not desirable!), or possibly considering an alternative (much better!).</p><p>One example of a well-designed component library/design system is <a href="https://www.lightningdesignsystem.com/">Salesforce Lightning</a>. I wrote an article on <a href="https://uxdesign.cc/designing-for-salesforce-lightning-apps-2cc88084f10c">how to work with Salesforce Lightning</a>, because I’ve run into the issue of designing with those components. I’d use them in context only to find out that a lot of what I wanted needed to be custom. I would inevitably drop a standard component into my design, and alter the data points, and the developers would tell me <em>“ This is nice, however, I need to break the component and customize it,”</em> which means that any further updates are isolated—(not ideal for the long haul). So I thought differently, using the parts that we had, and the parameters that were customizable, what could we do to create a usable design which is buildable.</p><h4><strong>So, when working with any design system or component library ask yourself:</strong></h4><ul><li>Do I know how all the data gets into this component? Can I change the attributes? How?</li><li>What design elements can I change? Type, size, color, scale? How does this break the component?</li><li>If I have to break a component in order to make it work, can I try something elsewhere so I don’t have to break or customize a component?</li><li>How would it look with the out of the box component even if it is not ideal?</li><li>How does that impact LOE and delivery time?</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Sb4Z5cfyedBgmtr87P9cgg.png" /></figure><h3>Working With Data Points</h3><p>One of the biggest challenges when it comes to UX is having the right data in the format that is digestible by the user. Now, ultimately it is up to the engineers to get that data or not, however as designers, we really need to understand what data exists, and what does not in order to make good decisions.</p><p><strong>When we create comps with data points that don’t exist, we have to understand that there are can be 3, 4 or more layers across teams who need to be involved in order to get that data</strong>. While you are designing part of a larger initiative, you will inevitably encounter data that does not exist, however, stay clear of introducing new data at the center of your design when you do not know how it will be getting into the system. Assume that data that does not already exist will <em>not </em>be there, and design accordingly.</p><p><strong>There is no one size fits all rule for bringing data into a system. </strong>Sometimes, especially as part of a larger initiative, the business just needs to create the data, and it will be included in the project. Other times, having that data there can delay delivery, and increase complexity unnecessarily. Take into account your level of zoom, and judge the likelihood of that data showing up at release time. If you can work around it, do so.</p><p><strong>The other thing I will mention on data is that when you do your best to design with what you have, you can get improvements built that might otherwise be delayed</strong>. “Better” is always a win. If you can set up your project to get something built, and then incorporate additional data as a progressive enhancement, that’s a win in my book. That is working software, which is better than Sketch files.</p><h4>When working with data, ask yourself:</h4><ul><li>Do I know if we have all this data?</li><li>Do I know how it is formatted? If data is to be converted or combined from that format, who will be responsible for converting? Front-end or back-end?</li><li>Is the rest of the team aware of the data requirements? Does the entire concept hinge on that data being there?</li><li>If we do not have this data in an API, do we have it at all?</li><li>What is entailed in creating that data? Is that feasible or absolutely required for me to make this project successful?</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*FoVpgCLEhKXTfdolTe0LOQ.png" /></figure><h3>Creating Interactions and Animations</h3><p>Interaction and animation are now prerequisites for great UI. However, these add time to projects and are often considered the “polish” to a project and not the meat of it. While I fundamentally disagree with this, it is often the first thing to land on the cutting room floor when push comes to shove, and we are against the clock. The really cool transition of graphic into button may be integral to your design, but it didn’t make it out the door and left “Swiss cheese.”</p><p>When we talk about designing for build here, <strong>we really have to understand the level of effort to achieve the animation, and also who is developing the work. </strong>If you are working with full-stack developers, the HTML animation may take them a while to complete. If you have a design technologist or you yourself can create those as an asset, all the better chance of getting it delivered. The point here is to understand how much time it will take to create the animation, the value to the project, and a fallback that is acceptable should there be a time crunch. On the flip side, if you are in a situation where the product is being polished, then think about all the interactions in the design, and see where you can cut or simplify the interaction. If you can make some sort of cool animated transition become a simple fade, do it.</p><p><strong>The other main consideration is reflow and scaling.</strong> One time I was working on a really large site, and I came up with a really cool reflow pattern, and the front-end developer came to me and said, <em>“we’re not doing this.”</em> I still thank him to this day for telling me “no,” for shutting this down early. While the design in Sketch looked great, and we <em>could </em>technically do it, he knew that we were going to have enough headaches, and this was not one worth creating. His advice (and this is my advice to all younger designers) was to make it simpler and use an overall framework that was well established. We were doing so many other innovative things, that this was where we really needed some predictability and consistency. I redid the layout using a common layout and scaling pattern, and used that. It was not as cool and innovative, and definitely did not look as great in my portfolio, but it was all about getting it built, not my portfolio.</p><blockquote><strong>Great design is all about getting it built, not about your portfolio. If a design solves a problem better, but the execution fails, is it better than a lesser design with a clean execution? I would choose the latter any day of the week.</strong></blockquote><p>There is a great debate on whether designers should code, and I think 100% “yes” designers should know how to code HTML. They may not be experts, but they should know how you might achieve a design or animation, and would be able to explain how they think a reflow or animation could be achieved. It helps you to better understand at a high level what is involved to create your comp, and if that is worthwhile. Otherwise, you may create a lot of interactions, complicated layouts, etc, and not really understand what you are asking for, and more importantly, how to come up with some alternatives.</p><h4>When working with interactions and animations, ask yourself:</h4><ul><li>Who is building this? Are they good with design details and/or animation?</li><li>Can I use a <a href="https://bradfrost.github.io/this-is-responsive/patterns.html">standard reflow pattern</a> and still achieve a similar result?</li><li>Are the animations a progressive enhancement? If not, what will it take to create them?</li><li>Can I create them myself?</li></ul><figure><img alt="Prebuilt App" src="https://cdn-images-1.medium.com/max/1024/1*Px_avOrQ5eGOYYT2dZjrDg.png" /></figure><h3>Designing With Pre-built Applications or Plug-ins</h3><p>Another shortcut to getting things built is to use pre-built applications and modify to meet your needs. A lot of times, you don’t need a custom UI that takes time to develop and maintain, and you can use a UI provided by the SaaS company to get something released.</p><p>The first thing is to do is get your hands on the software and see if you can prototype with the software or not? If it is possible, you may want to use pencil sketches, and build a prototype in the tool to test. That way you will best understand the limitations of the tool, and how it will behave with your design.</p><p>If not, you will need to rebuild the original UI in Sketch and modify it. Just like the above components I spoke about, you will really need to understand how the components work, so you don’t create components that will not be able to be produced. If the application has a UI kit, all the better!</p><h4><strong>When working with pre-built apps ask yourself:</strong></h4><ul><li>How can we customize layout, style, copy etc?</li><li>How can we change the flow?</li><li>Can we update or modify modules on a page?</li></ul><h3>Working With Start-ups</h3><p>When you work in a startup, designing to build can be your best friend. You have extremely limited resources, and as much as you want to create amazing UX, being able to release a complete product is much more important at this stage. While getting data may be much easier to add to a system versus an established company, there will still be operational overhead. By tailoring your design to an efficient build, the team can spend the time needed features, or just a quicker release.</p><h3>Get. It. Built.</h3><blockquote>By filtering ourselves to only deliver the solution that maximizes the best UX with only the most critical and easiest to build and format elements, we improve our chance of getting closer to the vision, and a more polished result.</blockquote><p>I hope the above ideas give you perspective. I will be the first to tell you I have not worked at with the “Apple’s” of the world, and these principles may be different for companies who do large releases (“big bang” releases). Also, there are schools of thought that might think of this as limiting to building something “amazing,” and that is a fair comment.</p><p>However, in my experience, simplifying the design, adding progressive enhancement, understanding what is entailed in build has always helped get things developed faster and gave us more control over the outcome, versus trying to create a “better” design, only to have to make concessions in production, having the product be a mere shell of the vision.</p><p>Anything you can do to make it easier to produce in my opinion is not lazy, it’s creative. Being able to design something easier to produce will improve your chances of a better end result in the long run.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/980/1*L8DpFIPxtkrT1n9RU7Nz1g.png" /></figure><p>To use the old Agile build analogy, we want a build complete cake(cupcake -&gt; birthday cake -&gt; wedding cake). Even if it’s a smaller cake, I’d rather have a great tasting cupcake than a crappy tasting wedding cake.</p><p>I welcome your thoughts on the topic and whether designing to build vs building to design works at your company.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/94/0*vBkPZhODpHDuFvHU" /><figcaption>The UX Collective donates US$1 for each article published in our platform. This story contributed to <a href="https://www.bayareablackdesigners.com/">Bay Area Black Designers</a>: a professional development community for Black people who are digital designers and researchers in the San Francisco Bay Area. By joining together in community, members share inspiration, connection, peer mentorship, professional development, resources, feedback, support, and resilience. Silence against systemic racism is not an option. Build the design community you believe in.</figcaption></figure><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=cc3869ac5d79" width="1" height="1" alt=""><hr><p><a href="https://uxdesign.cc/designing-for-build-cc3869ac5d79">Usable, useful, desirable… and buildable?</a> was originally published in <a href="https://uxdesign.cc/">UX Collective</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Using Alexa and Voiceflow to prototype a  telephone system]]></title>
            <link>https://uxdesign.cc/using-alexa-and-voiceflow-to-prototype-a-telephone-system-539ab8b203fe?source=rss-e9a41a293303------2</link>
            <guid isPermaLink="false">https://medium.com/p/539ab8b203fe</guid>
            <category><![CDATA[prototyping]]></category>
            <category><![CDATA[ux]]></category>
            <category><![CDATA[artificial-intelligence]]></category>
            <category><![CDATA[ui]]></category>
            <category><![CDATA[alexa]]></category>
            <dc:creator><![CDATA[Stuart Silverstein]]></dc:creator>
            <pubDate>Tue, 30 Jun 2020 16:25:23 GMT</pubDate>
            <atom:updated>2020-08-19T14:46:19.166Z</atom:updated>
            <content:encoded><![CDATA[<h3>Using Alexa and Voiceflow to prototype a telephone system</h3><h4>A necessary evil… but nobody likes’em. It’s time for UX to look at the dreaded Interactive Voice Response System (IVR).</h4><figure><img alt="Telephone" src="https://cdn-images-1.medium.com/max/1024/1*cHhyZiVcyMS7BxuoZ3zwbQ.jpeg" /></figure><blockquote>When was the last time you called a company and had a really great calling experience? I mean one that you raved about?</blockquote><p>If you’re like me, the moment I know I have to call a company up to speak with customer service, I get a cold anxious feeling. I expect a long drawn out experience. I clear my calendar for an hour, I get in a comfy chair, pour something cold to drink, take a breath… and dial. I typically expect it to be pretty miserable — the transfers, the repetitive hold music, the mechanical voice prompts. Plus, you are never quite sure how experienced the person who picks up your call is going to be. It’s a part of the CX industry that, while there are <em>some</em> great experiences <em>(I’m looking at you Discover, Apple and T-Mobile!)</em>, as a whole, it has been traditionally devoid of design.</p><p>One day, I got the call to work on an IVR. I was actually very excited. I had done some voice work in the past, and was eager to get my hands a little dirtier this time, by actually building something myself, versus doing the design and pairing. This project was going to be different: greenfield and no legacy technology was going to be used. ❤️</p><h3>Prototyping</h3><figure><img alt="Voiceflow app sample flow" src="https://cdn-images-1.medium.com/max/1024/1*qPJbQ9IH0V_UN56p_iyjcQ.png" /></figure><p><strong>My first task was to figure out how to prototype this</strong>. After doing a bit of research, I landed on a tool called<strong> </strong><a href="http://www.voiceflow.com/"><strong>Voiceflow</strong></a><strong>. </strong>It’s a small Canadian company, whose founders were very helpful in answering all my questions. The application hooks up to Alexa to create a skill that you can prototype or actually publish it via Amazon developer account. It’s an intuitive WYSIWYG editor, which allows you to visually create your flows and then test it. It will also connect to data sources, so if you have an API and some technical know-how you can do some next-level prototyping.</p><p><strong>I started by determining the use cases, conditions and flows</strong> we were going to test. I worked with the Customer Care team to help determine all the common tasks that customers were calling about. We reviewed which of those could be automated, and marked the automated flows vs the flows that would need intelligent routing.</p><p>One of the challenges of creating an IVR is that <strong>customers have to make choices by using categories</strong> much like we would use in application or website design, only here,<strong> there are no visual cues like icons or colors to help customers understand </strong>what is behind each choice they make. So what happens is a customer may pick the wrong menu, and the system will direct them to the wrong person. As a result, more modern phone systems use the voice to route asynchronously, and to move into “microflows,” which are based on the utterances and intents. <strong>What you find here is that today’s phone systems behave exactly like Alexa skills</strong>, and the only minor difference is the ability to use the keypad to enter numbers and 0 to get a representative.</p><p>On the intelligent routing side, we were able to <strong>discern the key circumstances that a person would be calling about, and give them specialized information based on their particular journey</strong>. Furthermore, these people would be labeled with a flag, which was pushed to a CSR. The combination of better customer feedback and intelligent routing allows customers to get to the right place while prompting them to choose to act on a situation that is likely the reason they are calling, combined with the intents that they utter.</p><figure><img alt="Utterances sample" src="https://cdn-images-1.medium.com/max/874/1*a0F45Zugzxavl9i9U5aLFg.png" /><figcaption>Voiceflow’s utterances as they are mapped to intents.</figcaption></figure><p>In addition to the intelligent routing, <strong>the intents are also important to map. </strong>Remember that task analysis? That came in handy while determining the intents that we needed to map. “Intents,” in case you are not familiar with voice design, are the intentions that a user has when saying a phase or keywords. These phrases and keywords are called “utterances.” When planning your prototype, you will want to list out your intents to match the key tasks, and then map all others to a “general” catch all bucket for miscellaneous. You will also need to list out all the utterances that can be said that will define an intent. There are lots of great intro articles to <a href="https://uxplanet.org/designing-a-vui-voice-user-interface-c0b3b9b57ace">voice design </a>that cover this, so I won’t go into too much detail here.</p><p>One last consideration on prototyping is the <strong>gender of the voice, and the use of TTS (text to speech) vs having a voiceover recording.</strong> In our instance due to time and other constraints, we opted to go with a Male voice, and TTS. We opted for a male voice because the brand wanted strength and trust, and a casual male voice seemed to fit better. We only did TTS out of simplicity, and to test what the TTS was able to accomplish. With Voiceflow, I was able to do some manipulation with the speed, pitch and pauses, however the result was definitely not ready for prime time in my opinion. There are several places that have voice talent, like <a href="https://voice123.com/">Voice123</a>, where you can send them a script, give them some direction on tone and character and they can turn around in a day or so. You take those voice prompts and plug them into Voiceflow, and voilà… IVR!</p><h3>Language, Errors and Feedback</h3><p>Once we have the key flows that we are going to map, a list of intents that will map to those, it’s time to start writing the flows, menus and script out the logic.</p><p>The language on the flows was also a consideration. In reviewing several key brands’ IVRs, there was a very large discrepancy in style. <strong>Just as there is in any creative, there is not a “one-size-fits-all” voice and tone for VUI.</strong> Voice and tone need to fit the brand. Some are casual and verbose, and some are friendly and simple. Each style will have its pluses and minuses, and will convey different things. Remember though, even if you do get casual and verbose, you still want to get to the point. We want people to get where they are going, <em>and</em> have a pleasurable experience.</p><p>There is one other issue within the language: menus. Typical old school style menus which would make you want to commit Hari Kari, would say <em>“Press 1 to get a monkey, press 2 to get a giraffe, and 3 to get a lion.”</em></p><p>These menu systems are not very human or pleasurable, nor are they efficient. Add to that the fact that the person on the end of that phone call is most likely not calling to say how good of a job you are doing, and you have a pretty good reason to make sure you get the menus and navigation right. <strong>The IVR’s that are best in class though give you menu options in the form of a question:</strong></p><blockquote>“ Are you calling about product information or to make a purchase, iTunes or App store, have a Technical support question, or are you calling about a recent iPad order?” <br>—from Apple support prompts</blockquote><figure><img alt="" src="https://cdn-images-1.medium.com/max/796/1*JlwcZuNxMeVLoDYlwHJrWA.png" /><figcaption>When mapping out the flows, we provided some error correction in the prototype.</figcaption></figure><p>While we are on the topic of language, we need to make sure to cover e<strong>rrors and feedback. </strong>In a voice UI, remember it is a <strong>time based medium which is linear. </strong>Because it is linear, we will need to make sure that users get multiple points of feedback that indicate the choice they have made. This can be done by reiterating their choice “OK, iPads, are you calling about product information…” As you see in the example above, they are also using the prompts that reiterate that the system understood “iPad”— “<em>Are you calling about a recent iPad order?” </em>In order to minimize errors and confirm the direction of the user, good feedback will incorporate both techniques to let users know where they are.</p><p>Error handling can be handled in many ways, however, <strong>it will need to cover back, repeat, and main menu options. </strong>Once a user has made a selection and the feedback has confirmed that indeed the selection was incorrect, there needs to be a voice prompt that is global or local to correct the error. Global correction would be something like:</p><blockquote><em>“</em>At any time, you can say ‘main menu’ or ‘previous’ to go back.”</blockquote><p>Another concept in error handling is <strong>knowing when the system to use fallbacks. </strong>NLP systems can get very frustrating when they fail, or misunderstand your intent. Imagine talking to a person, who doesn’t understand you, but with a machine the patience level is much less. We need to know when is enough. My rule of thumb is 2 error failures on a particular prompt, and you should be transferred to a live person. Figure out what the threshold is for your system.</p><p>When handling errors, you want to make sure that you are <strong>progressively enhancing the error experience</strong> in order to get the user to make the correction. For instance on the first menu you might say:</p><blockquote>“I’m sorry, but I couldn’t find that account. The account number can be found at the top of your electric bill. Please say or enter your account number. ”</blockquote><p>However on the second one, you might try something like.</p><blockquote>“I’m having trouble. Let me get you to someone who can help.”</blockquote><p>We have the recognition that the system is at fault —<em>”I didn’t quite understand that”</em>— and then the progressive enhancements to the error correction — where you can find the information and then transfer to live assistance at the threshold for transfer.</p><h3>Mapping and Deliverables</h3><figure><img alt="Flow chart" src="https://cdn-images-1.medium.com/max/1024/1*aC1Ojule-AQJwOjSCZi03A.png" /><figcaption>Part of middle flow for prototype</figcaption></figure><p>After figuring out the language, we needed to make sure we had deliverables that were intelligible and that could demo the flows and that stakeholders could follow and give appropriate feedback. I started the flows in Sketch and used Invision for collaboration. I had to split a few flows into subflows — that translated nicely into Voiceflow — which I could reuse and maintain.</p><p>When breaking out the flows, you will want to keep in mind that a voice experience should have a <strong>beginning, a middle and an end</strong>, and your documentation should match that. The beginning — starts with authentication, the middle — choice of topics and automation, the end is when they get to a person who can answer their question.</p><ol><li><strong>Authentication:</strong> Each flow will most likely start with an authentication piece. Just like the web where the first screen you reach is the login screen, an IVR will need to identify you. This can be an order number, social security number, date of birth etc.</li><li><strong>Main Menu:</strong> Once you have been identified, you are prompted with your main flows. From this main menu, branch out flows for each section of the app.</li><li><strong>Automated services:</strong> For those services that can be handled automatically, there will be flows associated with them</li><li><strong>Customer care transfer: </strong>Once a person finally needs a live human, we will need to make sure we have the appropriate routing information, and hopefully offer conveniences like auto callback or choice of hold music. This is a good time to mention the recorded line or add a survey opt-in.</li></ol><p>Once I mapped out the flows, the flows were mapped in Voiceflow, and delivered to an Alexa device for review. The stakeholder team could open the Alexa app on their phone and open the skill. Note: you will need to get the email address associated with their Amazon account in order to add them to your beta test.</p><h3>Testing:</h3><figure><img alt="Alexa — Open IVR Prototype" src="https://cdn-images-1.medium.com/max/1024/1*m9Fc2YrMAr1_plmc3Ynxdw.png" /></figure><p>While this work is ongoing the plan to test in on the Alexa app or through the browser via Zoom. Voiceflow has a web interface that can emulate the skill, however, it behaves differently than the skill itself on an Amazon device. My recommendation on testing then, is to have the user speak through the computer and put the Alexa device close up. If you have the luxury, you can add them to the beta testers and they can test on their phone, but that does not seem as if it would be foolproof. You can also try the web, but a user has to hold down the space bar for the mic to pick up, and it is easy to screw up.</p><p>I hope this has been helpful. IVR now fits very nicely into the repertoire of voice designers at this point, and hopefully more voice designers will try their hand at designing an IVR system. While I will not profess to be an expert on this — there is a lot of literature from people who have done this for years— this was a very interesting exercise, which shows me that there is room for designers to try their hand and improve it. Some of the best customer service brands have done some really nice work, and it really is a great challenge to bring a design lens to those projects.</p><p>As Enterprise designers though, I want to stress that this is the top of the funnel — the proverbial “garbage in” — which we hope to fix by empowering users to get them to the correct customer care rep. However, the next piece of the puzzle is the information that is pushed to the sales rep on the computer in order for them to assist properly and close the loop… but that is a story for another time.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/94/0*kBSNJAVOudqMHEZ4" /><figcaption>The UX Collective donates US$1 for each article published in our platform. This story contributed to <a href="https://twitter.com/uxminaspretas">UX Para Minas Pretas</a> (UX For Black Women), a Brazilian organization focused on promoting equity of Black women in the tech industry through initiatives of action, empowerment, and knowledge sharing. Silence against systemic racism is not an option. Build the design community you believe in.</figcaption></figure><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=539ab8b203fe" width="1" height="1" alt=""><hr><p><a href="https://uxdesign.cc/using-alexa-and-voiceflow-to-prototype-a-telephone-system-539ab8b203fe">Using Alexa and Voiceflow to prototype a  telephone system</a> was originally published in <a href="https://uxdesign.cc/">UX Collective</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Ten reasons you should think about designing for Enterprises Applications.]]></title>
            <link>https://medium.com/swlh/ten-reasons-you-should-think-about-designing-for-enterprises-applications-16a0f0312f51?source=rss-e9a41a293303------2</link>
            <guid isPermaLink="false">https://medium.com/p/16a0f0312f51</guid>
            <category><![CDATA[enterprise-technology]]></category>
            <category><![CDATA[ux]]></category>
            <category><![CDATA[service-design]]></category>
            <category><![CDATA[ux-design]]></category>
            <category><![CDATA[enterprise-software]]></category>
            <dc:creator><![CDATA[Stuart Silverstein]]></dc:creator>
            <pubDate>Wed, 17 Jun 2020 03:26:04 GMT</pubDate>
            <atom:updated>2020-06-19T19:24:54.778Z</atom:updated>
            <cc:license>http://creativecommons.org/licenses/by/4.0/</cc:license>
            <content:encoded><![CDATA[<h3>Ten reasons you should think about designing for Enterprise Applications.</h3><h4>Why Enterprise design is important, and why you should care.</h4><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*b40tp_HwIBKNDleBihKUlA.jpeg" /><figcaption>Photo by Sean Pollack</figcaption></figure><h3>How many hours do you work a week?</h3><p>For most of us it is 40–50 hours a week. And…if you take the 168 hours per week, minus 49 hours for sleeping 7 hours a day, that means about a third of our waking hours are at work, so work is pretty important.</p><p>While I realize I’m not the first to make these calculations, the point is many of us do use software in order perform our job. In a <a href="https://www.cnbc.com/2017/11/15/technology-is-dramatically-invading-nearly-all-us-jobs-even-lower-skilled-occupations.html">2016 study by the Brookings institute</a>, they found that <strong>90% of all jobs require us to use some sort of software to perform our jobs. </strong>And that number is constantly increasing. How well we do at that job, how much we are able to accomplish, and how we feel about our job, is tied to the software we use. It either enhances or detracts from our capabilities. So, as a result, how we feel about our <em>experience</em> of using software, tools and systems, can have a big impact on our lives, and those who work for the companies we serve.</p><p>There is new research available that shows that the ability to be able to use technology is related to overall job satisfaction. For instance, in a study done by Aruba (a HP company), found that employees who work in fully-enabled digital workplaces where new workplace technologies are in widespread use are 51 percent more likely to have strong job satisfaction, and 43 percent more likely to be positive about their work-life balance than ‘Digital Laggards’ who have less access to workplace technology.</p><h3>The inevitable consumerization of Enterprise technology</h3><blockquote><strong>“The consumerization of the workplace is a very real movement. Employees are consumers and we bring consumer expectations with us to work,” says Janice Le, chief marketer for Aruba. “The workplace is getting smarter and therefore, employees are working smarter.”</strong></blockquote><p>People who work also use consumer apps, and are used to the great design and usability of apps by tech giants like Amazon, Apple and Google. Workers use these apps at home and then bring this bias to the office, expecting the company CRM to be as beautiful and well organized as the Netflix app they are using at home. What we find is there is a big disconnect between the two, and a lot of this has to do with the process of the design and build of these applications, which can lead to unsuccessful launches and adoption of the software. For the past 40+ years, the way Enterprise systems were built was to collect requirements, design, document, and build. Over the past few years, we have realized how this methodology misses the opportunity to prototype and iterate, as well as deeply understand the human element, which leads to successful product design. BTW <a href="https://en.wikipedia.org/wiki/Waterfall_model">Waterfall is from 1956</a> guys…#justsaying.</p><p>According to a<a href="https://www.ironpaper.com/webintel/articles/enterprise-it-spending-statistics-for-2018/"> 2017 McKinsey report</a> on the success of enterprise software implementation:</p><blockquote><strong>“…too often, this team does not include people whose day to day responsibilities involve the use of the software. The result is a technology that only accomplishes some of the goals that the team using the product needs to be successful.</strong></blockquote><p>As UX Designers, it is our job to make these tools usable so that people can get their jobs done, minimize errors, reduce repetitive behavior, as well as reduce overall cognitive load. We understand the people, their environment, the business goals, and restrictions, then we build stuff and watch them use it and iterate.</p><p>It’s a pretty simple but powerful concept.</p><p>With movements like Lean UX, Design Thinking, Agile and the like, we have matured the process of creating the smallest testable item, testing it and iterating, until we have something “good enough.” However, these methodologies are just now starting to make their way into Enterprise, and it’s an exciting time as the industry realizes the need for designers.</p><blockquote><strong>Workers use these apps at home and then bring this bias to the office, expecting the company CRM to be as beautiful and well organized as the Netflix app they are using at home.</strong></blockquote><h3>Change is on the horizon…</h3><p>As of late, large companies are starting to realize that a big part of the “Customer Experience” depends on the “Internal Experience…” and they are putting money against it.</p><blockquote><strong>How do you expect a Sales/Customer Service/Processing rep to do her job well and effectively, without usable tools to assist them?</strong></blockquote><p>Seeing as workplace information systems can be extremely complex, we are in need of a new breed of designer to help sort them out. The clock is finally running down on the lifespan of the outdated applications that run large companies. As a result, there is a need for a new breed of software designer required to reimagine these systems.</p><p>They will need to be doing a better job of understanding the people and context, which then lead to satisfaction and adoption of the software. In “Corporate America,” we now find our selves in the middle of a glut of outdated applications, with massive technical debt, and user complexity, which are in desperate need of updating. It will no longer be good enough to simply “add a field here” or “add a button” there. We need a way of handling these issues that borrows from the past, and incorporates the future into their development and design.</p><p>While there is a large amount of designers entering the UX field, (adding an <a href="https://www.springboard.com/blog/ux-designer-salary-guide/#:~:text=Today%2C%20there%20are%20over%20238%2C000,highest%20paying%20jobs%20in%20America.">additional 10% over the next five year</a>s), I firmly believe some of those UX jobs will be in addressing workplace design.</p><p>And why not? The area is of prime importance to business, and of the workers themselves. In my experience, Enterprise UX is where Consumer UX was 5 to 10 years ago. It is still not considered a “revenue driver” and more of a cost center than a profit center for the most part. It is traditionally considered an “efficiency” play versus a bottom line necessity. However, with companies like Salesforce and Zendesk creating enterprise apps that are easy to use and can help companies be more productive to improve the bottom line, company leaders are now at a place that they need to improve the experience meaningfully for the people working at these companies.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*eU8RLySO_pza9JR7H5yHhQ.jpeg" /><figcaption>photo by Tim van der Kuip</figcaption></figure><h3>Ten reasons why work on Enterprise UX matters</h3><p>Here are 10 reasons that I switched my career to focus the Enterprise side of design and have not looked back:</p><ol><li><strong>Projects are complex and require collaboration across disciplines. </strong>This complexity is fun and challenging. You will need to decode business rules, unpack operations, and work with several teams on execution. The applications often have many user groups and complex tasks, which can make it a fun design challenge to create a usable experience for everyone.</li><li><strong>It will challenge your IA skills. </strong>You will <em>really</em> need to understand data relationships in order to do Enterprise software. There is a TON of data… and this data will need to make sense to humans at the end of it. This means object and attribute modeling chops, as well as an understanding of data technologies, what data is available, and what is not as well as the reliability of the data. You will be a data ninja and you will love it!!</li><li><strong>It will help you learn how to think flexibly no matter what you design. </strong>In an Enterprise system, you cannot create “snowflake functionality” — tailor made flow or patterns for every flow. There is so much to be done, and so many micro interactions, that you will need to develop the ability to see how a pattern or module can be used in multiple contexts and as flexibly as possible. A lot of times it’s not ideal for every individual situation, but that’s OK. You will learn to leverage scale. Take a look at the <a href="https://www.lightningdesignsystem.com/">Salesforce Lightning Design System</a> and see how they use the modules, sections and components and reuse them.</li><li><strong>It will challenge your service design skills. </strong>Enterprise<strong> </strong>Software is almost always integrated with a service that will integrate across the operation. This means several groups will be involved with different needs, and it will be your job to unpack the operations visualize them, and see how the application can support those operations.</li><li><strong>You get to help the people you directly work with and see their satisfaction. </strong>I think one of the best parts of my job is when we create something, and see people using it. With consumer apps, there is always a layer of abstraction between the business and the customer. The experience improving a conversion or improving engagement can be satisfying, but to me it often feels more like playing a video game or a puzzle, where you trying to rack up points versus tangible improvement in people’s lives. With Enterprise , you get to interact with the people who use it every day (unless you work for a software company that makes software for purchase or SaaS). And you get to know them, and understand their issues, and their needs. And it drives you to create something better for them. They are the people on your team. I often feel a deep sense of responsibility to be their voice when designing tools for them.</li><li><strong>You have a large pool of users at your disposal to test and iterate with. </strong>Honestly, this is one of my favorites things about working on internal software. If you are working on a user test for consumer software, it can be time consuming to get users, collect feedback, recruiting and scheduling, and getting payment approved. With internal users, you can iterate many times over, and getting real users to test or give you feedback at any time. It’s priceless! I just walk down the hall, grab someone and start asking questions.</li><li><strong>There are not a lot of us out there… </strong>While I can’t seem to find data on this, anecdotally, I keep running into hiring managers in Los Angeles that require Enterprise or SaaS experience, and they are having trouble filling those positions. I’ve also noticed an increase in job listings for Enterprise UX designers. As there are more and more apps being created, and internal teams get built out, the need will be greater. Furthermore, as UX and Service design grow, I can very well see an opportunity to use our skills on an “Internal Experience” team, which integrates with culture, HR and Technology to take care of our teammates holistically.</li><li>…<strong>but there is a ton of need. </strong>Honestly,<strong> </strong>most large scale Enterprise apps suck. Buggy. Hard to use. Repetitive. Tons of data in various places. There is so much fruit on the ground, that you can make tangible improvements pretty quickly. A lot of apps like Salesforce and Microsoft Dynamics, are typically custom implementations, however those applications may not be configured right based on the user needs. It is a lot of work to understand and design for a system holistically plus have the discipline to keep it well organized.</li><li><strong>Enterprise software has the capability to really help people do great things. </strong>When scientists do research, they use software. When Space-X astronauts launched into space, there was software. When Amazon delivers your <a href="https://www.amazon.com/Silver-Lilly-Bunny-Slippers-Support/dp/B07481TLJY?ref_=ast_slp_dp">fuzzy bunny slippers</a> in two days, it uses software. And someone designed it. While it is very important to generate revenue to help companies keep afloat and use it to fuel important world changing projects, the world changing projects happen by giving our workforce the right tools to make the change. Whether its visualizing data, monitoring a rocket, or helping a customer spend 5 minutes less on the phone, this efficiency is where we make a difference as designers, which means you can be part of that cool stuff!</li><li><strong>You can become the next unicorn. </strong>While the typical UX unicorn is UX/VizD/Front End Dev. There is a new type of unicorn = Product/UX/Business Analyst. As you get deeper into Enterprise UX, you find that those disciplines start to merge, and you very well could find yourself in a position to handle them all. Which can mean you have more control on the projects, and you can define and design a solution.</li></ol><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=16a0f0312f51" width="1" height="1" alt=""><hr><p><a href="https://medium.com/swlh/ten-reasons-you-should-think-about-designing-for-enterprises-applications-16a0f0312f51">Ten reasons you should think about designing for Enterprises Applications.</a> was originally published in <a href="https://medium.com/swlh">The Startup</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[UX/UI design for Salesforce Lightning apps]]></title>
            <link>https://uxdesign.cc/designing-for-salesforce-lightning-apps-2cc88084f10c?source=rss-e9a41a293303------2</link>
            <guid isPermaLink="false">https://medium.com/p/2cc88084f10c</guid>
            <category><![CDATA[enterprise-software]]></category>
            <category><![CDATA[user-experience]]></category>
            <category><![CDATA[ui]]></category>
            <category><![CDATA[enterprise-technology]]></category>
            <category><![CDATA[salesforce]]></category>
            <dc:creator><![CDATA[Stuart Silverstein]]></dc:creator>
            <pubDate>Fri, 01 May 2020 04:03:32 GMT</pubDate>
            <atom:updated>2020-07-29T17:53:50.179Z</atom:updated>
            <content:encoded><![CDATA[<h3>The Complete guide to UX/UI design for Salesforce Lightning apps</h3><figure><img alt="Salesforce screens" src="https://cdn-images-1.medium.com/max/1024/1*EhSGRykXipGF084BHXnqRA.png" /></figure><p>Working with Salesforce can be a challenge for designers not used to working with predefined system. The ecosystem is large and products on the platform are different. We’ll discuss how to navigate designing with Salesforce.</p><p><a href="https://www.salesforce.com/"><strong>Salesforce</strong></a> is now one of the largest CRM platforms available. According to a study by <a href="https://nix-united.com/blog/crm-market-share-salesforce-bright-future-in-2020/">Gartner</a>, spending on Salesforce related implementations outnumbered the next competitor (SAP) by over 2.5 to 1. The benefits of Salesforce are outstanding. You have a very flexible, customizable platform combined with a pretty good out of the box design system and components. Plus, the ecosystem is so rich that you can run your entire business on it (which several businesses do). It is used for Fortune 500 companies and small businesses alike.</p><p>Because of the growth of the platform, there are more opportunities for designers to get involved in designing for Salesforce. As I explained in my last <a href="https://uxdesign.cc/breaking-down-an-enterprise-evaluation-part-1-the-unique-challenge-c299cf0a636a">article</a>, Enterprise UX is now a thing, and Salesforce is an important part of that ecosystem. In this article we’ll break down the ecosystem, the benefits and challenges of working with Lightning, and some tips and tricks for your next project working with Salesforce.</p><h3>The ecosystem</h3><p>First we have to start with the different parts of the Salesforce ecosystem. While the “CRM” (Lightning) part of Salesforce is what started the company, the system itself is comprised of several parts and functionality, but they all integrate together.</p><figure><img alt="Ecosystem: Trailblazers, Sales, Service, Marketing, Apps, Analytics" src="https://cdn-images-1.medium.com/max/1000/1*0KCVrq0wqLo9go2hyxILxA.png" /></figure><p><strong>Lightning Apps:</strong><br>All of the below apps work within the “Lightning” framework — which uses the Lightning design system, and allows the team to add functionality to the application. The Lightning framework works very much like Google Material and Google Apps, whereby they are all united by a unified architecture and design system, where you can switch “apps” and views depending on the products you have enabled. These apps have the same design system, and use the Lightning modules. If you are working on the Service Console, this is the system you will be using,</p><figure><img alt="Service Cloud Screen" src="https://cdn-images-1.medium.com/max/1024/1*ZDA6TNunijSDLOWqp1jLDg.png" /></figure><ul><li><a href="https://www.salesforce.com/products/sales-cloud/overview/"><strong>CRM/Sales Cloud </strong></a><br>This is the heart of the system which allows sales teams to operate. Pipeline, Customer CRM, Leads, etc.</li><li><a href="https://www.salesforce.com/products/service-cloud/overview/"><strong>Service Cloud: </strong></a><br>This application gives you the ability to create cases within Salesforce. It also adds a Knowledgebase to the functionality.</li><li><a href="https://www.salesforce.com/products/marketing-cloud/overview/"><strong>Marketing Cloud:</strong></a><strong> </strong><br>This lighting app has journey builders, email and marketing automation</li></ul><figure><img alt="Salesforce native app" src="https://cdn-images-1.medium.com/max/280/1*tDl8FLXdp9VDqEUSp9PHZQ.png" /></figure><p><a href="https://www.salesforce.com/products/platform/features/mobile/"><strong>Mobile Apps:</strong></a><strong><br></strong>Mobile apps are a native version of the Lightning system. These modules are different than the desktop version, and the patterns will be different as well. The native mobile modules are often different than the responsive version of the browser based cloud apps. This is based on the idea that mobile will have its own set of tasks. These are built in the mobile app builder. As of Winter 2020 release though, the mobile application resembles the Lightning Console much more.</p><figure><img alt="Communities Sample" src="https://cdn-images-1.medium.com/max/930/1*IMuvYM7diC6Wks4fRSLMkA.png" /></figure><p><a href="https://www.salesforce.com/products/community-cloud/overview/"><strong>Communities</strong></a><br>While the initial intent of Communities initially was for intranets, partner portals, and customer self service, Communities is now being used for portals and websites of all types to give a branded view experience, leveraging the same core data to an additional audience.</p><p>You get native integration with all the functionality, however, this application has an additional set of native components, not all of which are available on Lightning are available in Communities (visit the <a href="https://developer.salesforce.com/docs/component-library/overview/components">component reference</a> and filter by “Lightning Communities” which is a mix of Aura Components and Lightning components). Also, if you are not doing a custom layout, the layouts here are different from Lightning, as well as a lot of the design patterns. This includes special blog and forum post content types that only exist in Communities.</p><p>Here is a list of experience builder’s features to customize:<br><a href="https://help.salesforce.com/articleView?id=communities_update_template.htm&amp;type=0"><strong>Brand and colors</strong></a><strong><br></strong><a href="https://developer.salesforce.com/docs/atlas.en-us.communities_dev.meta/communities_dev/components_config_for_builder_layouts.htm#components_config_for_builder_layouts"><strong>Layouts</strong></a></p><figure><img alt="List of options for Communities" src="https://cdn-images-1.medium.com/max/1024/1*Zsq1su4JvWMIVOzIIuISRg.jpeg" /><figcaption>Menu for Experience Builder for Communities with all the default components. Many of these are not Lightning components.</figcaption></figure><figure><img alt="Commerce Cloud Builder" src="https://cdn-images-1.medium.com/max/1024/1*Y_vKfueLYKZi3XGSmIwCCw.png" /></figure><p><a href="https://www.salesforce.com/products/commerce-cloud/overview/"><strong>Commerce</strong></a><br>This is both the front end and the service end of the e-Commerce platform that integrates with Salesforce. Like Communities, it has its own subset of components, although the builder is the same as communities, so it is much more like using Communities versus using Lightning.</p><p>In this article we will only address the Lightning apps using Salesforce Design Lightning System (SLDS). If you are working on Communities or Commerce, there are a different set of out of the box components that are specific to those platforms, as well as the builder tools.</p><h3>The layout &amp; navigation patterns</h3><p><a href="https://www.lightningdesignsystem.com/guidelines/navigation/">Global Navigation</a> —Scoped and modular tabs.<br>Salesforce global navigation has 2 main patterns — scoped tabs — which has all the top level items listed out, and modular tabs, which keeps a closable tab open for each record, much like windows in a web browser. Most applications use the modular tabs, with the scoped tabs being carried over for late adopters.</p><p>There are a few <a href="https://www.lightningdesignsystem.com/guidelines/layout/">main layouts</a> that are reused across the system for efficiency. There are a few variations on these, but these are the main ways that the Lightning system wants you to create a layout. While they are context independent (you can have a customer record in any context), the detail layouts and the middle level list layouts are consistent with themselves.</p><figure><img alt="Home Page Sample Layout" src="https://cdn-images-1.medium.com/max/1024/1*Hvm3Jdh5G06dd7M0SLpz3w.png" /><figcaption>Home page layout</figcaption></figure><figure><img alt="List Screen Sample Layout" src="https://cdn-images-1.medium.com/max/1024/1*yeKhaEXypqXmSlu69DB1Hg.png" /><figcaption>List Layout</figcaption></figure><figure><img alt="Record Screen Sample Layout" src="https://cdn-images-1.medium.com/max/1024/1*tKqAW6n9tCyG3uChnNJD4w.png" /><figcaption>Record layout</figcaption></figure><figure><img alt="Case Screen Sample Layout" src="https://cdn-images-1.medium.com/max/1024/1*ZDA6TNunijSDLOWqp1jLDg.png" /><figcaption>Case layout (3 column)</figcaption></figure><figure><img alt="Search Screen — Master/Detail Layout" src="https://cdn-images-1.medium.com/max/1024/1*Bb8g6TvNm23XxbObMSmcqg.png" /><figcaption>Master Detail Layout</figcaption></figure><p>In addition to the above, there are additional Lightning Page Templates that can add further customization to your layout and still work nicely within the Lighting System.</p><figure><img alt="Lightning Templates" src="https://cdn-images-1.medium.com/max/1024/1*m40dOBIurB-Sc8HUekoPhg.png" /></figure><h3>Working with custom and out-of-the-box</h3><p>When planning your work, you will want to get a sense of whether you will need to use the Lightning Web Components or you will be doing a custom application. In many cases, using Lightning will be the best bet, simply because of the maintenance and dev work it takes to create custom components. This also keeps things consistent, and you can leverage the design system they created. If you are tasked with using Salesforce as the backend system for your app and are going to use the API’s to pull the data, you will have more flexibility, but it will come with a significantly higher level of effort.</p><p>If you are going to use the Lightning System, you will want to keep a few things in mind:</p><ol><li><strong>Use the Lightning way of doing things first</strong><br>Much as using any other design system, Lightning has its way of doing things — layouts, modules etc. One of the things Lightning wants you to do is reuse the modules in a variety of contexts. Modules such as Jabber or Communication, can be used at the Case Level, Record Level or User Level.</li><li><strong>Views often come with defaults that can be modified.</strong><br>For instance, the default on the list view, has a bunch of filters, all of which are easily customizable within the default parameters.</li><li><strong>Many components are customizable, but that makes them more prone to breakage in future releases. </strong><br>While the modules have parameters that can be adjusted, a lot of times you cannot change a module — such as take a layout of a timeline component and put your own data types in it. If you want to change a module’s data that is not a parameter, developers will have to customize it, and can be more prone to breakage.</li><li><strong>AppExchange</strong><br>If you cannot find a default Lightning Web Component, you may be able to find something on the <a href="https://appexchange.salesforce.com/?d=cta-glob-nav-3">AppExchange.</a> This way you can skin or modify an existing module.</li><li><strong>Be purposeful about creating a custom component</strong><br>If you find that you need a custom component, remember that custom components will have to be coded, and maintained. Salesforce makes 3 releases a year on average. Each time there is a new release, it may break your custom component. Plus with Lightning Components, you get the benefit of enhanced features as Salesforce develops them. In addition, working with custom components can introduce additional bugs in the system to fix. If you can do good UX with a Lightning component and make it work, the experience will benefit overall. <br>Moral of the story: Custom components OK, Lightning components better.</li><li><strong>Get a Sandbox and play</strong><br>If you create your own <a href="https://developer.salesforce.com/signup?d=70130000000td6N">developer sandbox</a> and see how the modules and layouts work, you will quickly understand how they work.</li></ol><h3>Modifying the visual assets</h3><p>While you may want to use the modules and Lightning Design System, you may not want your app to look like “Salesforce.” Salesforce Lightning comes with a set of <a href="https://www.lightningdesignsystem.com/design-tokens/">design tokens,</a> which are variables on which the system is based, such as spacing, density colors, fonts, etc. If you modify these items, you can easily make Salesforce look less Salesforce-y.</p><figure><img alt="Sample of buttons, colors and inputs from SLDS Kit" src="https://cdn-images-1.medium.com/max/870/1*HHrl_31BO-eqr9OGe8n-fQ.png" /><figcaption>Default SLDS</figcaption></figure><figure><img alt="Modified SLDS Kit" src="https://cdn-images-1.medium.com/max/1024/1*5cqhr1jar2yaRnhyU7bfpQ.png" /><figcaption>Moderately Customized SLDS Kit using Tokens</figcaption></figure><p>Also, Salesforce has a complete list of <a href="https://www.lightningdesignsystem.com/icons/">icons</a>. Icons are used EVERYWHERE, and are tied to components and context. There are 5 types of icons:</p><ul><li><strong>Standard:</strong> These are the icons used everywhere which help label modules.</li><li><strong>Action icons: </strong>which are tied to an action</li><li><strong>Custom icons:</strong> which are for adding custom to layouts and modules, but are not part of the defaults</li><li><strong>Doctype icons: </strong>which represent different file types</li><li><strong>Utility icons: </strong>Which are attached to modules and are the most common</li></ul><figure><img alt="Icon type" src="https://cdn-images-1.medium.com/max/1024/1*a_MC0SARakl_4EqK7dpBSg.png" /><figcaption>Icons from the Sketch SLDS file</figcaption></figure><p><a href="https://www.lightningdesignsystem.com/design-tokens/"><strong>Colors</strong></a><strong> </strong>are another way to customize lightning. Lightning does have a very robust color system, with all types of hues and values, Most brand systems don’t include this level of detail. The colors are all editable, however be careful about changing hues and values — because they are often tied to the meaning of the interface and the balance of the UI in general, so swapping out a dark blue for a medium yellow may have unintended consequences during development. Colors are also linked to a data object- Lavender is a contact, Koromiko is Cases, Activity is Salem, etc.</p><figure><img alt="Salesforce colors" src="https://cdn-images-1.medium.com/max/1024/1*W_gb3vgh5x5iQfpEzYgFIw.png" /><figcaption>SLDS Colors — from Sketch UI Kit</figcaption></figure><h3>Prototyping solutions</h3><p>As far as prototyping, if you have something simple, or are just demoing some layouts, you can use the <a href="https://github.com/salesforce-ux/design-system-ui-kit">Sketch</a>, <a href="https://www.figma.com/file/5dgFdCHB6FGjfOPAZEDNVK/Lightning-Design-System-Components-for-Web?node-id=0%3A1">Figma</a> or <a href="https://github.com/salesforce-ux/design-system-ui-kit-framerx">Framer X</a> template with the SLDS that you can use to customize. The file is set up very flexibly to use and modify the modules. It has Lightning, Mobile, Builder and Wireframing components. It is a lifesaver. You can design in Sketch and prototype in Invision, Principle, etc, or use Figma or Framer to prototype.</p><p>However, if you need to do more in-depth user testing, you may want to consider either:</p><p><strong>a) Building in a prototyping software</strong> that can handle variables, multi-state objects and inputs — such as <a href="https://www.axure.com/">Axure</a> or <a href="https://www.uxpin.com/">UX Pin.</a></p><p><strong>b) Consider building a prototype in Salesforce or working in a sandbox. </strong>I know this option might seem daunting at first, but if you are using out of the box functionality mostly, this will save you a ton of time. You can fill in your custom components by placing graphics in modules to represent custom modules. You can get a much more realistic experience this way, and if you are going to be working in SF for a while, this may be a worthwhile investment. I have included a link to a Trailhead so you can learn the basics of creating your own Salesforce layout. It is much easier than it sounds.</p><h3>Resources</h3><p><strong>Lightning component reference: </strong><a href="https://developer.salesforce.com/docs/component-library/overview/components">https://developer.salesforce.com/docs/component-library/overview/components</a></p><p><strong>Sketch file for SLDS </strong>(Saleforce Lightning Design System):<br><a href="https://github.com/salesforce-ux/design-system-ui-kit">https://github.com/salesforce-ux/design-system-ui-kit</a></p><p><strong>Figma kit for SLDS: </strong><a href="https://www.figma.com/file/5dgFdCHB6FGjfOPAZEDNVK/Lightning-Design-System-Components-for-Web?node-id=0%3A1">https://www.figma.com/file/5dgFdCHB6FGjfOPAZEDNVK/Lightning-Design-System-Components-for-Web?node-id=0%3A1</a></p><p><strong>FramerX kit for SLDS:</strong><br><a href="https://github.com/salesforce-ux/design-system-ui-kit-framerx">https://github.com/salesforce-ux/design-system-ui-kit-framerx</a></p><p><strong>Trailheads for customization of Lightning</strong> (learn to prototype in SF):<br><a href="https://trailhead.salesforce.com/content/learn/modules/lex_customization">https://trailhead.salesforce.com/content/learn/modules/lex_customization</a><br><a href="https://trailhead.salesforce.com/en/content/learn/trails/lex_admin_implementation">https://trailhead.salesforce.com/en/content/learn/trails/lex_admin_implementation</a></p><p><strong>Data Objects:</strong><br>For those of you who are heavier into information architecture, here are the object models for the different Salesforce domains:<br><a href="https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/data_model.htm">https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/data_model.htm</a></p><p><strong>Lightning Page Components reference:</strong><br><a href="https://help.salesforce.com/articleView?id=lightning_page_components.htm&amp;type=5">https://help.salesforce.com/articleView?id=lightning_page_components.htm&amp;type=5</a></p><p><em>Special thanks to my friend </em><a href="https://www.whatsthegoal.com/"><em>Jon Cline</em></a><em>, for contributing his expertise to lend some background on this information.</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=2cc88084f10c" width="1" height="1" alt=""><hr><p><a href="https://uxdesign.cc/designing-for-salesforce-lightning-apps-2cc88084f10c">UX/UI design for Salesforce Lightning apps</a> was originally published in <a href="https://uxdesign.cc/">UX Collective</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Enterprise UX Design: Breaking down an evaluation]]></title>
            <link>https://uxdesign.cc/breaking-down-an-enterprise-evaluation-part-1-the-unique-challenge-c299cf0a636a?source=rss-e9a41a293303------2</link>
            <guid isPermaLink="false">https://medium.com/p/c299cf0a636a</guid>
            <category><![CDATA[business]]></category>
            <category><![CDATA[ux]]></category>
            <category><![CDATA[startup]]></category>
            <category><![CDATA[b2b]]></category>
            <category><![CDATA[product-design]]></category>
            <dc:creator><![CDATA[Stuart Silverstein]]></dc:creator>
            <pubDate>Wed, 22 Apr 2020 15:58:46 GMT</pubDate>
            <atom:updated>2020-04-27T09:52:16.088Z</atom:updated>
            <content:encoded><![CDATA[<h3><strong>Breaking down enterprise UX design</strong></h3><h4><strong><em>Enterprise Applications, the discipline of Enterprise UX, and where the differences are between Enterprise and Consumer and how to approach the complexity.</em></strong></h4><figure><img alt="Customer care team" src="https://cdn-images-1.medium.com/max/1024/1*fiFT9PvNIRI5DHnyJnaicQ.jpeg" /></figure><p>The term “Enterprise UX” is a hot term. It returns about 53 million results on Google now. The fact is, that after many years of working on Consumer applications, businesses are starting to see the ROI that companies achieve by investing in the internal applications that their employees use to conduct business.</p><blockquote>I remember asking a former boss about whether a tool was an “Enterprise class” application, and her response was “Enterprise class just means ugly and hard to use.” While I laughed at her response, the hard truth is at the time, she was right.</blockquote><p>While that was back in 2012, many Enterprise applications are still ugly and hard to use, because of the complexity, the age of the applications, lack of global perspective, and ad hoc requests. Historically, Enterprise implementations have been disjointed and cluttered, and hard to use, in addition to the “ugly” factor, which not only contributes to an increase in “eyesores” <em>(MY EYES!!!!),</em> but also cause legibility, scanning and comprehension mistakes that are often more costly to fix than to get right. As a result there has been a renaissance in Enterprise UX with several companies doing an awesome job of creating great Enterprise design, such as Salesforce, Intuit, and Microsoft.</p><p>These applications are often very process and business rule heavy, and often require a ton of flexibility and customization features. This is typically in contrast to a typical “Consumer” app, where consumers expect to have a simple intuitive experience for the lions share of the features. This means the Consumer side applications are skewed toward the first use, not the 1,000th, whereas he Enterprise app needs to be prioritized for repetitive use, and geared towards a user who will inevitably be a subject matter expert, well versed in prioritizing their workflow and understanding of the application architecture for goal completion.</p><p>In addition, Enterprise applications will almost always have a Service Design component. A person uses the software in the service of his/her job in order to accomplish a specific task with which the technology assists.</p><p><strong>Some examples:</strong></p><ul><li>A Customer Service rep needs to access orders in order to see where the order is at, and then needs to place a note on the order for the production team.</li><li>An Inventory Management team is managing the inventory and communicating with the order team when products run out.</li><li>Sales team member needs to track sales, follow up with leads, and keep track of his pipeline.</li><li>A Project Manager needs to see what tasks are assigned, who is working on what, communication on the tasks, and the progress towards completion.</li></ul><p>These are all services, where the technology facilitates views of the status and data within the system, notifies people within the system of jobs to be done, and automates some of the work—essentially, monitoring, data entry and reporting functions for the end user.</p><p>Another part of the applications are the large data sets. Enterprise applications are often working with 10x the amount of data that a customer actually sees. For example, a customer might see their name, address, telephone, email as part of their record, whereby the users of the Enterprise system can see those basic demographics in addition to clicks, pages visited, lifetime value, projected sales, etc. The customer needs very little information in comparison to the Enterprise user, plus Enterprise users need to be able to see and manipulate all the data behind the scenes. Also, when they cannot fix the issue themselves, they need an efficient way to let a team member know what to do… at scale.</p><p>These data sets, typically housed in a central database, are pooled from multiple applications within the platform. Within this data, as an Enterprise UX designer, we are tasked with making sense of all of this for the various user groups. There are various data objects <em>(User, Order, Item, Communications, etc) </em>with relationships to one another. A Customer may be the central object in our system, but has contact information, email communication, sales, etc, which are attached to that customer object.</p><p>Each of the objects come with “attributes” — such as address, city, state, cell phone, etc — that have historically been developed and formatted to match the business rules and system architecture, versus the humans at the end of that data. As a result, it is up to the designer, to make sense of all the business data, and make sense of it back to a user, in an organization that makes sense to them, and displayed at a time in their flow that they need it. Without clarified relationships of objects, applications can become messy very quickly. With the advent of big data, and systems that are able to house every click and interaction, <a href="https://www.forbes.com/sites/louiscolumbus/2017/12/24/53-of-companies-are-adopting-big-data-analytics/#30bdde2539a1">the amount of data </a>we have becomes very daunting to the average human to digest.</p><p>Plus, an Enterprise worker has 10x the amount of <em>functions</em> that a consumer app has, and has to integrate toolset, processes and information seamlessly. The result can be very complex and hard to use to the best of users — leading to poor job satisfaction, increased error rates, and lost efficiency and productivity at the very least—if not well thought through and executed. At the worst, it can cripple organizations from scaling their business.</p><p>As a result, organizations are now taking the user experience of internal applications very seriously and applying traditionally consumer focused methodologies, such as a user centered design approach to determine feature/function priority and look and feel.</p><h3><strong>What skills do you need to design for Enterprise Apps?</strong></h3><p>For sake of argument in this article set, I am going to assume you know how to do “Consumer UX design”— you understand how to research and identify needs, create prototypes to test, and develop thorough solutions for development. There are several great treatises on those subjects, so I will avoid them.</p><p>These skills will be foundational to the techniques discussed further. If you are not familiar with design, development and research, I would start there. This is definitely an advanced topic, as it builds on foundational UX domain knowledge — in addition to the fundamentals of User Experience design.</p><p><strong>An Enterprise UX designer will need deeper competency in:</strong></p><p>1)<strong> Interactive Design/Prototyping </strong><em>(including Research and Analysis)</em><strong><br></strong>2) <strong>Information Architecture<br></strong>3) <strong>Service Design, Ecosystem and Service Blueprinting<br></strong>4) <strong>Business Rules and Requirements</strong> or working with a Business Analyst (BA) if you have one.</p><p>While number 1 and 2 are part of a UX designer’s <a href="https://www.uxmatters.com/mt/archives/2011/10/the-t-model-and-strategies-for-hiring-ia-practitioners-part-1.php">T-shape</a> toolkit, 3 &amp; 4 may require some additional experience. Even if you have experience in all 4, there will be some new ways you will need to figure out how to use them together. The interaction design will be much more complex, prototyping state based prototypes with inputs that pass data and variables, telling a story in your prototype in order to test it. This means Invision, Principle, Figma, Sketch etc may be insufficient for handling the job alone, if those are your primary tools.</p><p>I‘ve done Enterprise projects in Invision that have over hundred screens for a singular flow and if someone made a mistake, I had to reset the test and I think hurts feedback without the input data and variables to see where users get hung up on inputting information. In my experience, there are better tools for collecting usability feedback (aside from a concept test—which I will get to in upcoming articles).</p><p>In addition, these apps can require an <em>advanced</em> grasp on Information Architecture. This does not mean simply the organization of articles and content, but also organizing the data objects and attributes. In order to visualize how all this data works together, it will be helpful to make concept models of how all the data objects relate to one another. Then you can put them back together in a way that makes sense for the tasks and the user group. This is often one of the critical steps in organizing information in a way that makes sense and is digestible. Once you have a concept of how objects relate, you can make sure it aligns with the users and their needs. By making sense of the data objects in a model, it becomes easier to reconstruct them according to the users mental model.</p><p>In terms of Service Design, being able to visualize services in operations flows to see how the application will help to see how the technology integrates with the service. User Journeys work in a very similar fashion to Service Blueprints, however, a User Journey is for one user and through the lens of the user and the Service Blueprint is through the lens of the organization. This allows us to understand the needs of the system and make it work for more efficiently, not just the singular user. When working at the organization level, seeing how the whole service comes together, helps you better understand all the requirements, and the effect of your design decisions, and how the different user types might use the same flow.</p><figure><img alt="System flow" src="https://cdn-images-1.medium.com/max/1024/1*ouHsqx1F-XHuszt4jrluLg.png" /></figure><p>This leads to point number 4 which is being able to document these business requirements visually in enough detail to design a solution. Most projects I have been on have a Business System Analyst (BA or BSA) on your project. You will both be working together on this, but the BA will be the owner of the requirements, and your tightest collaborator, working on features and analysis of the system.</p><p><strong>Designing Flexibly vs Tailor Made:</strong></p><figure><img alt="Modules can be placed in multiple places" src="https://cdn-images-1.medium.com/max/1024/1*yWRnG_cAV7_1FJ2kYvLPcQ.png" /></figure><p>Often when we are designing for a consumer flow, we design a tailor made solution for a particular group, anticipating every need. When you get into Enterprise, you <em>need</em> to think flexibly because the amount of work it will take to create unique solutions for every user group. In addition, if you are working on a SAAS or cloud product, you need to accommodate for all different types of implementations and customizations that each organization will want to make. Different people need different permission levels within a product necessitating varying access to functions in an application. In addition, the flow of tasks is often fluid and changing, and often in different order. Systems like <a href="https://www.microsoft.com/design/fluent/#/">Microsoft Fluent Design System </a>and <a href="https://www.lightningdesignsystem.com/">Salesforce Lightning</a> are designed flexibly to be used in any context and can be applied by an administrator without dev help.</p><p>Designing modules and components that can work in multiple contexts, will make it easier to add and manage the module in the system. For instance, a communication module — which shows all the emails, texts and communication with a customer — may be used at a customer level, an order level or a user level. Developing flexible modules decreases level of effort, and increases reusability and consistency. Modules in an Enterprise system typically take a bit longer to develop in Enterprise due to the complex nature, so if you make it as reusable as possible, it will save time and development effort in the long run, just like any design system.</p><p>The challenge then becomes figuring out where in a nonlinear flow a user may need entry into the particular task they are trying to satisfy. I like to think of it like the difference between a categorical taxonomy and a tag system. A categorical taxonomy implies that an item lives in one place, and is organized by drilling down to the item. A tag based taxonomy implies that an item has multiple facets and can be accessed from multiple avenues. Think more like “tags,” less like “categories.”</p><p>So we think of quick micro tasks that make up a larger task, and add entry points. For instance, if a customer service rep is looking up a customer name, looking at their history, reading notes, and then creating a ticket and sending an inquiry. This is all one “task,” but there are several “micro tasks” that you can evaluate a design for one by one once you have identified where the issue lies.</p><p>Access to the micro tasks are key. You may have the same button multiple times in various places, and it is cluttering and duplicating the action, and you may be right. But in Enterprise apps, due to the multiple entry points might make sense to approach it this way even if it does seem like duplication. Users in Enterprise apps often <em>need </em>to be able to enter a workflow from various points because their workflows are variable.</p><h3><strong>Different types of Enterprise applications</strong></h3><p>With all of this “Enterprise” information, there are different types of Enterprise projects, and they all have different needs. If you are working on a SAAS or cloud application, it will be implemented by a company, and thus will need a great deal of flexibility in implementation. An internal CRM will have a 360 view of a customer linking to other internal systems to all the central data.</p><blockquote>As a common thread, we will stick with the definition of:<br> <strong><em>“A complex piece of software with lots of data, various distinct user groups, and several non-linear complex tasks that workers use to get work done.”</em></strong></blockquote><p>This covers all types of Enterprise applications, both internal and 3rd party. SAAS and Cloud products, CRM’s, Enterprise platforms, Analytics packages, Accounting Software, Email programs, and the like. As a result, there are set “classifications” that the average Enterprise will have.</p><p>While this is no means an exhaustive list, these are some of standard ones I have run across in my travels. Many of these apps are platforms that cover multiple categories, however, for this exercise, I have simplified them based on function and <em>main</em> class of the application. This is a mix of SMB and Enterprise Apps. For simplification, I am including both, because the SMB apps are usually more “consumer like” and can provide inspiration for a better experience.</p><p>These applications may be: <br>•<strong><em> Internal </em></strong><em>: </em>Applications developed internally <br>•<strong><em> Purchased : </em></strong>Purchased software or SAAS product<br>• <strong><em>Customized</em></strong> : Off-the-shelf apps which have a different or modified <br> presentation layer.<br>•<strong><em> Combination </em></strong><em>:</em><strong><em> </em></strong>part Purchased, part Customized, part Internal</p><p><strong>Examples of typical classes of Enterprise applications:</strong></p><p><strong>CRM <em>(Customer relationship manager) </em></strong>— houses all information on a customer, primarily used by Sales and Customer Care teams to understand customer context and history. Typically in integrated with communication, ticketing, reporting and/or marketing platforms. <br><strong><em>Examples:</em></strong> <a href="https://www.pipedrive.com/">Pipedrive</a>, <a href="https://www.sugarcrm.com/">Sugar CRM</a>, <a href="https://www.insightly.com/">Insightly</a>, <a href="https://www.freshworks.com/freshsales-crm/">FreshSales</a></p><figure><img alt="CRM application screens" src="https://cdn-images-1.medium.com/max/838/1*u75iOEv182sOXgHAk_-oPA.png" /><figcaption>CRM apps Pipedrive, Insightly, and Freshsales. All have some sort of customer page, a pipeline and reporting capabilities and integrate with other systems.</figcaption></figure><p><strong>ERP<em> (Enterprise Relationship Program) :</em></strong> These are large complex platforms that incorporate elements of all the different applications into a singular suite in order to customize an implementation and have all the pieces integrated. Modern ERP’s have a complete set of modules and a design patterns, which you can leverage to create solutions quickly. <br><strong><em>Examples: </em></strong><a href="https://dynamics.microsoft.com/en-us/">Microsoft Dynamics</a>, <a href="https://www.salesforce.com/">Salesforce Lightning</a>, <a href="https://www.netsuite.com/portal/home.shtml">NetSuite</a>, <a href="https://www.zoho.com/">Zoho</a>, <a href="https://www.sap.com/index.html">SAP</a></p><p><strong>CMS<em> (Content Management Systems) :</em></strong> A system for publishing content or creating HTML pages or emails. typically used by content and marketing teams to publish content on the web, applications and social media. <br><strong><em>Examples:</em></strong> <a href="https://www.microsoft.com/en-us/microsoft-365/sharepoint/collaboration">SharePoint</a>, <a href="https://www.drupal.org/">Drupal</a>, <a href="https://wordpress.com/">WordPress</a></p><p><strong>Calendar and Scheduling<em> :</em></strong> Apps that show you when events are, and often the ability to schedule one or multiple people. <br><strong><em>Examples:</em></strong> <a href="https://calendly.com/">Calendly,</a> <a href="https://www.timetrade.com/">Time Trade</a>, GCal</p><p><strong>Analytics/Reporting :</strong> These apps can be Sales, Behavior Tracking, Reporting or visualizing any type of data. They are typically used by the entire organization, but will have different views depending on the user type — For example a view for the product team with details, and a view for Executives with less. <br><strong><em>Examples:</em></strong> <a href="https://www.tableau.com/">Tableau</a>, <a href="http://www.analytics.google.com/">Google Analytics</a></p><p><strong>Productivity Suite :</strong> These apps are very straightforward — the swiss army knife that allows any user to create content for work — Word docs, Spreadsheets, etc. Typically integrates with communication for sharing. <br><strong><em>Examples:</em></strong> <a href="https://www.microsoft.com/en-us/microsoft-365">Office 365</a>, <a href="https://airtable.com/">Airtable</a>, <a href="https://gsuite.google.com/">G-Suite</a></p><p><strong>Accounting/Invoicing</strong> : These applications are for keeping track of sales and orders. There are typically more specialized software the Accounting team will use to keep track of sales and money, especially for tax purposes, but this can be used by all parties to track the details of a sale.<br><strong><em>Examples: </em></strong><a href="http://www.xero.com/">Xero</a>, <a href="http://www.quickbooks.com/">Quickbooks</a>, NetSuite, Acumatica</p><p><strong>Support/Ticketing</strong> : These are for tracking defects in a system. This can be a Support application — whereby Customer Care Reps enter tickets to keep track of customer errors, or a bug reporting system, and/or tech support. They often have “cases” or tickets as a central object in their system, which are issues that need resolution, which are assigned to people to solve. <br><strong><em>Examples:</em></strong> <a href="http://www.zendesk.com/">Zendesk</a>, <a href="http://www.atlassian.com/">Jira</a></p><p><strong>E-Commerce</strong> : Applications that allow companies to create inventory, sell products and often run reports. May also integrate with a POS system.<br><strong><em>Examples: </em></strong><a href="http://www.magento.com/">Magento</a>, <a href="https://www.sap.com/acquired-brands/what-is-hybris.html">SAP Hybris</a>, <a href="http://www.shopify.com/">Shopify</a></p><p><strong>Intranet/Wiki</strong> : Applications that companies use as a hub for all employees to find other team members, communicate with others, find out policies and benefits and access other software. <br><strong><em>Examples:</em></strong> <a href="http://www.sharepoint.com/">Sharepoint</a>, <a href="http://www.confluence.com/">Confluence</a>, Igloo</p><p><strong>POS</strong> <strong><em>(Point of Sale): </em></strong>Think of this as a complex cash register. Employees at a physical location ring up items — can be food or retail purchases — and then take payment.<br><strong><em>Examples:</em></strong> Swift POS, SquareUp, Vend</p><p><strong>Communication</strong> : These apps are to communicate internally or externally and have many different forms — chat, email, messaging, etc. They all have some sort of “thread” and someone is able to send a message and notify another user of the message where that user can send a response.<br><strong><em>Examples: </em></strong><a href="http://www.slack.com/">Slack</a>, Email, Text, Facebook Messenger, <a href="http://www.livechat.com/">LiveChat</a>, <a href="http://www.intercom.com/">Intercom</a></p><p><strong>Project Management : </strong>A list of tasks and status of a “project.” This can mean anything. When I worked in the Real Estate space, and we considered a home sale a “project” — whereby you had documents that needed to be completed within a period of time, and we needed to track the progress towards done. If it has tasks, deadlines, scheduling, and a goal — it’s a project.<br><strong><em>Examples:</em></strong> <a href="http://www.asana.com/">Asana</a>, <a href="http://www.wrike.com/">Wrike</a>, <a href="http://www.monday.com/">Monday</a>, <a href="https://www.microsoft.com/en-us/microsoft-365/project/project-management-software">Microsoft Project</a>, <a href="http://www.trello.com/">Trello</a></p><p><strong>Automation: </strong>These applications can be anything whereby the user creates an automation, and then is able to monitor and get reporting on the system. This can be a marketing automation or a process automation or data transfer. If you can create a custom flow and have the computer do all the work then it is an automation software project. <br><strong><em>Examples:</em></strong> <a href="http://www.servicenow.com/">ServiceNow</a>, <a href="https://www.salesforce.com/products/marketing-cloud/overview/">Salesforce Marketing Cloud</a>, <a href="https://www.autopilothq.com/">Autopilot</a></p><p><strong>System Monitoring: </strong>These are software that lets a person see how a system is behaving in order for them to make adjustments. This could be an airplane cockpit, a heartbeat monitor, a supply chain management or a telephony app. The idea is to let the human at the end see what is happening, and if there is a problem to make it known.</p><p><strong>Specialty Apps: </strong>A specialty app is used by a specific group, for a very specific task. While specialty apps may combine a few of the above into a specific context, the difference here is that it is typically for a very technical specific audience, which has little or no need to communicate the details to the rest of the company. Think of your design software falling into this category. While there are ways to “export” the designs to be consumed, Photoshop is definitely geared toward the designer to get work done.</p><p>As you can see, these applications are combined together to create an “experience” and workflow for a worker. A sales person might use the CRM to keep track of his/her leads and sales, but will use a Reporting modules to see sales and Communication modules to email information. On top of that, a salesperson is also doing these things in tandem to try and accomplish something bigger than the individual task. Furthermore, the salesperson is not going to get a specific “sales” CRM (although they do exist).</p><p>Each of those teams will have several people doing very different things with the data. A Customer Care rep will look at the customer information only to validate an identity and then look at orders, whereas a Salesperson will want to see when the customer’s birthday is in order to send a surprise. As thus, you often have several different groups which need to use the same application, often with different needs. However, we need a singular app or platform with views that accommodate each particular user need to mold to the task at the right time.</p><p>We need to balance the organization of information, action buttons, and pacing to match the needs of the user.</p><p>Another critical piece of information on these software pieces, is that often they are not purchased by the people who use them. So, if you are using a SAAS software the app needs to “look impressive” for the purchaser, and perform impressive to keep the team happy. The SAAS software also comes with the challenge of needing to be customizable for various types of users, which means that customization on these types of projects will be key, for sales, support and performance of the software.</p><h3><strong>Integration and the evaluation of the whole experience.</strong></h3><p>Now, the challenge becomes distilling this down to something digestible, but there is one more topic to cover: Integration. With Enterprise applications in particular, there needs to be integration points and consideration of the whole experience. As stated above, the Enterprise applications are very rarely used in isolation for a specific task, and more often than not are used in tandem.</p><p>Think about the Salesperson example above. We need to not only consider the application we are working on, but also how the network effect limits or prohibits productivity as a whole. If I am creating new orders, and my order system and my CRM are not connected, then I have segregated data, but I also duplicate the work by reentering the contact information. We want to be able to look at the entire experience to see how the tools interact with one another, so as not to create work silos that tank productivity and extensibility of the data.</p><p>When we are thinking of evaluation methods, we will want to be able to create artifacts to review the following in order to evaluate the experience:</p><p><strong>1) User Journey and Context</strong></p><figure><img alt="User Flow" src="https://cdn-images-1.medium.com/max/1024/1*UhOfUSw8z6FNnDCmlV-D5Q.jpeg" /><figcaption>User Journey with error correction plans</figcaption></figure><p><strong>2) Service Design and Operations Flow</strong></p><figure><img alt="Service Blueprint" src="https://cdn-images-1.medium.com/max/1024/1*WxFMJfVdSjGYiFdijYH87g.jpeg" /><figcaption>Service Blueprint to show service and flow across the organization</figcaption></figure><p><strong>3) Data Objects, Application Ecosystems and Relationships</strong></p><figure><img alt="Concept Model" src="https://cdn-images-1.medium.com/max/1024/1*ygFtU2U0DU0TzxJ3KWZSzw.jpeg" /><figcaption>Data concept model to demonstrate relationships of data objects</figcaption></figure><p><strong>4) Task Analysis and Opportunities for consolidation</strong></p><figure><img alt="Task analysis" src="https://cdn-images-1.medium.com/max/1024/1*9Zmn5xmX8iUQcZl4k3ib1A.png" /><figcaption>Task analysis across user groups</figcaption></figure><p><strong>5) UI Flows and Usability</strong></p><figure><img alt="UI Flow" src="https://cdn-images-1.medium.com/max/1024/1*_4eNAoHjAVxcDusdOJKtRg.png" /><figcaption>UI Flow for micro-task</figcaption></figure><figure><img alt="UI screen" src="https://cdn-images-1.medium.com/max/1024/1*0DwwYRlPNLwJtZoJWf9RIA.jpeg" /></figure><h3><strong>Break the experience down to the level of zoom</strong></h3><p><strong>1) Organization/System level </strong>— The highest levels of the software. This will involve understanding all the different user groups at a high level, task analysis and prioritization across all user groups, and data analysis of high level objects.</p><p><strong>2) User Level </strong>— This level involves breaking down a specific problem into its tasks, and understanding the issues that affect productivity. While you will need to understand data objects, in this case, they are typically a smaller set, and be able to organize the attribute level to organize the information. The journey of that particular flow and where there are problems within that journey are of greatest interest to pinpoint for deeper investigation, as well as the service pipeline that might affect your design.</p><p><strong>3) Task/UI level: </strong>Analysis at these levels occur when there is an application that is up and running well, but needs to be fine tunes. This is going to be actual usability testing for a flow, combined with contextual understanding and interviews with the user(s).</p><figure><img alt="Levels of Zoom : Organization, System, User, Task, UI" src="https://cdn-images-1.medium.com/max/1024/1*a0VBFalaCwGuVdTNn8rGvA.png" /></figure><p>These levels are cumulative, and in order to get to UI level or execution level details, you will need to work your way down. For example, I was on a project, and my creative brief from my boss was <em>“Salesforce… take a look at it.”</em> Seeing as her request was very broad, and had very little detail, I had to start at the organization level, and work my way down, by starting with identifying the issues that were the biggest across <em>all</em> the user groups, then finding out which of the tasks needed to be improved. After that I was able to tackle the UI pieces that I was responsible for myself in execution. To get from organization to UI takes a few rounds of refinement, but due to the complexity of the system, it helps break it into digestible chunks.</p><p>When you are approaching a system, if it is too big to digest in one round of work, you will need to break it down. You need to get down to the tasks or goals for you to solve first before you can solve. This can be a little different than Consumer level design, whereby the tasks are often simpler and linear, and you are usually solving for less complex user types and needs. Enterprise apps typically have lots of business rules, and complex user types doing lots of different functions, and it takes time to understand those, and decide where to start, therefore, the approach really should be multi-level.</p><p>In my experience of working on an internal applications and customized applications in particular, I have often walked into an organization where systems has been devoid of UX for a long time — which means the system needs to be analyzed starting the organization level and worked down to UI. The Enterprise product and tech teams were fielding requests, and collecting business requirements, and problem solving with the business owner directly. This typically means “add this button here so I can do x while I am on this screen.”</p><p>As of <a href="https://www.uxpin.com/enterprise-ux-design-2017-2018-industry-report">2018 survey by UX Pin </a>of 3,157 UX, Product and Engineers, <strong>only 26% of teams have had a UX practice for more than 5 years.</strong> In this same survey, the no 1 problem teams were working on was consistency. This can be due to the historic nature of other disciplines owning UX in pieces, but not looking at the entire experience.</p><p>Enterprise software can be an exciting new challenge for those designing consumer apps who are looking for new challenges. Hopefully, this article has given you a place to start when you have to get a handle on a large app, and form a plan of attack on approach.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=c299cf0a636a" width="1" height="1" alt=""><hr><p><a href="https://uxdesign.cc/breaking-down-an-enterprise-evaluation-part-1-the-unique-challenge-c299cf0a636a">Enterprise UX Design: Breaking down an evaluation</a> was originally published in <a href="https://uxdesign.cc/">UX Collective</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>