UX Archives - SD Times https://sdtimes.com/tag/ux/ Software Development News Thu, 03 Nov 2022 20:32:19 +0000 en-US hourly 1 https://wordpress.org/?v=6.1.1 https://sdtimes.com/wp-content/uploads/2019/06/bnGl7Am3_400x400-50x50.jpeg UX Archives - SD Times https://sdtimes.com/tag/ux/ 32 32 SD Times Open-Source Project of the Week: Ballerine https://sdtimes.com/software-development/sd-times-open-source-project-of-the-week-ballerine/ Fri, 04 Nov 2022 13:00:58 +0000 https://sdtimes.com/?p=49472 Ballerine is an open-source infrastructure for user identity and risk management that helps companies verify customer identity by composing verification processes through modular building blocks, components, and third-party integrations. “The goal is to allow any company to manage user identity and risk in a way that suits them and their unique changing needs,” the project’s … continue reading

The post SD Times Open-Source Project of the Week: Ballerine appeared first on SD Times.

]]>
Ballerine is an open-source infrastructure for user identity and risk management that helps companies verify customer identity by composing verification processes through modular building blocks, components, and third-party integrations.

“The goal is to allow any company to manage user identity and risk in a way that suits them and their unique changing needs,” the project’s GitHub page states. 

It allows for multiple vendors accessible in one UI and case management dashboards, customizable UX and UI, and more.

With Ballerine Web & Mobile SDK Flows users can generate custom-made, branded flows to collect KYC/KYB documents and other user information. 

Web SDK offers pre-made KYC/KYB Templates and UI packs, customizable UI and flow to fit the desired experience and brand. 

The post SD Times Open-Source Project of the Week: Ballerine appeared first on SD Times.

]]>
Great Expectations in the customer experience https://sdtimes.com/softwaredev/great-expectations-in-the-customer-experience/ Wed, 04 May 2022 15:41:34 +0000 https://sdtimes.com/?p=47425 Henry Ford once said “If I had asked people what they wanted, they would have said faster horses.” Achieving a good customer experience (CX) is a fine line that comes down to building what the customer wants and building what might solve a problem the customer doesn’t yet know they have.  When companies focus on … continue reading

The post Great Expectations in the customer experience appeared first on SD Times.

]]>
Henry Ford once said “If I had asked people what they wanted, they would have said faster horses.” Achieving a good customer experience (CX) is a fine line that comes down to building what the customer wants and building what might solve a problem the customer doesn’t yet know they have. 

When companies focus on CX, they are able to create a unique and differentiated offering that is hard to replicate. This, in turn, leads to increased customer loyalty and brand equity.

The pandemic has forced people to practice social distancing and stay home, resulting in a drop in offline channel sales. In contrast, the pandemic has driven consumers to primarily shop online.

What the customers do know they want, is a constantly fast and reliable CX. 

According to the report The Future of CX: 2022, customers will expect companies to respond to their queries within the first hour, deliver a personalized experience, be proactive in offering help, and be accessible across all devices and the social media platforms that customers prefer by the end of this year. Over the course of the study, Freshworks surveyed over 4,500 businesses and analyzed 107 million customer interactions to understand the key driver of customer satisfaction. 

“It’s hard to predict a user’s journey. They might see an ad on Instagram, move to the website, chat with an agent, visit a physical store before finally making a purchase, and then take to social media to share their experiences. They expect to be able to shift channels at any point in their journey,” the report stated. 

The benefits of meeting the customers where they are most comfortable clearly show. For example, the services booking platform Klook saw increased customer retention by 40%. Sixty-eight percent of WhatsApp users believe that the platform is the most convenient way to engage with a brand. 

Also, 61% of customers admire companies that use a smart mix of self-service and humans who can support them with empathy and speed. 

To deliver an excellent customer experience, companies need to keep up with the ever-changing customer expectations. This is where customer experience management (CEM) comes into the picture. CEM is a process that helps businesses track and manage the customer experience that helps businesses deliver a great customer experience by understanding customer needs and expectations and designing customer-centric processes. 

Jason Wong, a distinguished VP and analyst on the software design and development team at Gartner said that design teams should be leading the charge for ensuring great CX, yet many organizations don’t allocate enough resources to this, especially those that didn’t start out as digital-native. 

“Design should be ongoing as well to really understand the implications of not only the behavioral patterns, the usage patterns of the application, but taking into account new technologies that might be coming down the pipeline whether it’s web XR, or conversational, or IoT, and then think how do we actually create value here?” Wong said. “That’s something that very few companies do well.”

It’s the digital-native teams that use quick prototyping and A&B testing within the production environments to see what are the differences. On the other hand, in mainstream enterprises transitioning from project-centric delivery to product-centric delivery, design is still often not as embedded within the teams, and also not at a strategic enough level where they’re doing that ongoing user research and analysis of taking back into production, but also testing new concepts upfront, according to Wong. 

“A lot of the problem is proving out the value of UX; like how do you show that if we don’t do this UX, we don’t get this value? So it’s hard for a lot of organizations to invest heavily in UX,” Wong added. 

The skills that are necessary within a UX team also differ based on how complex the application is. At the top of these design teams are usually the experience lead that has a broad set of skills to help a product team. So the experience researcher is in there understanding the user. They’re not only doing interviews, but almost like anthropologists they’re going out and observing in the wild, what’s happening, and identifying motivations.

“They’re finding out instance like why are mobile field service people still reluctant to use their mobile apps in the field, and they wait until they go back to the depot or the warehouse in order to enter in their information? Maybe it’s because they had dirty hands? Like, those are things that the experience researcher would pick up on. So instead of us giving him a graphical interface, we need to have it voice-enabled. or maybe we should make it into a head-mounted display: a Google Glass or HoloLens or something like that, for them to have hands free access,” Wong said. “So that’s the type of thing that needs to be done upfront, but then on an ongoing basis as well, as new technologies emerge. So it’s not one app anymore. Oftentimes, we are going from one experience to another digital experience.” 

Often, the design aspect of building applications is outsourced and organizations bring in a design agency to come and help with the user research. But this can be flawed because the company needs to take it upon itself to understand the users and to understand the ongoing process, Wong explained. 

Reliability is the biggest consideration for good CX

Good CX can mean a lot of things but the biggest part of that is making sure your app is running as intended in the first place, according to Mehdi Daoudi, the CEO and co-founder of Catchpoint. 

Customers now expect apps to be more reliable than ever before. If an app crashes, it is now seen as a reflection of the company behind the app, and not just the app itself.

“Let’s say you have to take Uber three times a day because you have to go and drop the kids off at school, go to work, and then hire another Uber in the afternoon at 3pm. So the reliability concept is how consistent are you capable to delivering a great user experience throughout the day for 365 days a year?,” Daoudi said. 

Today, the expectations of customers are extremely high no matter what type of app they’re on.

“We are working with a few luxury brands these days, and interestingly enough, some have told us ‘well our customers are special. They don’t care about performance.’ Actually, you know, your customers, like every other customer is used to Google and Amazon. And they’re used to a great user experience, which is a fast user experience. The reason why Amazon is so good, or Shopify is so good is because they fundamentally care about speed performance. And that’s the name of the game,” Daoudi added. 

One approach is to not put all the eggs in one basket and instead to opt for running an app on a hybrid cloud. Another way to improve reliability is to invest in the monitoring and visibility of one’s app, but also to make sure that the tools are being used in the right way. 

Companies need to start measuring their performance, and then setting goals such as how do we lower the flow in an e-commerce site from a minute to just five seconds. Some companies such as Shopify do a great job at that. They have developer experience teams that are continuously monitoring, Daoudi added. 

The performance space is also a great place for marketing and engineering teams to collaborate and to avoid implementing something that might seem like a feature of better CX but would actually make performance take a hit. 

“What you don’t want is to add 15 tracking pixels, for example, to slow down the website or I’ve seen that a few times where the graphic team gives a 10 meg file a picture because it’s beautiful, but well, 10 meg file is a little bit too much for a website. I mean nobody has a screen that can take full advantage of those things,” Daoudi said. 

CX is also about good employee experience

Many applications now are dual-purpose: to serve the customer but also to ensure that employees can find out what customers want easily. 

“With the interaction between a customer and a customer service rep, you have your mobile app, you have your web portal for the customer. And then on the back end, you have the support service system for the rep. But that interfaces into the portal and into the chatbot.

And not only do you need the information to sync, but you also need the ability for the employee to understand the context really quickly,” Gartner’s Wong said. 

Also, the use of smart bots and AI can automate, predict customer behavior, and scale customer services. Businesses are beginning to realize that bots can help keep pace with customer demands efficiently by personalizing the experience for their customers and they can augment the experience for employees. Brands have reported a 7% increase in customer satisfaction (CSAT) scores as a result of successful bot implementations, according to the Future of CX: 2022 report. 

Whereas consumer-facing bots are common, new agent-assistant bots come with AI features like process automation for repetitive support tasks or article suggestions for the next steps customers should take. 

AI in customer experience is now able to analyze data and find correlations that a human might not be able to discern. For example, a human customer support agent might not be able to tell that a customer who is asking for a refund is more likely to purchase a product in the future if they receive their refund quickly. But an AI system can analyze the data and reach that conclusion. 

In addition, AI can automate customer support tasks like answering simple questions and responding to customer inquiries. This frees up human customer support agents to handle more complex issues. AI can also be used to proactively reach out to customers who are at risk of churning. For example, an AI system can analyze a customer’s purchase history and support interactions to identify when a customer is unhappy. The AI system can then reach out to the customer proactively to try to solve the issue before the customer decides to churn.

The post Great Expectations in the customer experience appeared first on SD Times.

]]>
Merging UX design with low-code & no-code platforms https://sdtimes.com/lowcode/merging-ux-design-with-low-code-no-code-platforms/ Tue, 12 Oct 2021 18:01:51 +0000 https://sdtimes.com/?p=45535 You probably haven’t gone a day without seeing a new article about a new low-code or no-code product (LCNC) that is going to revolutionize the way you build apps, save you enormous time, and with that, cost savings that justify learning, implementing, and deploying this new tooling. Quantifying the value of tools like this is … continue reading

The post Merging UX design with low-code & no-code platforms appeared first on SD Times.

]]>
You probably haven’t gone a day without seeing a new article about a new low-code or no-code product (LCNC) that is going to revolutionize the way you build apps, save you enormous time, and with that, cost savings that justify learning, implementing, and deploying this new tooling. Quantifying the value of tools like this is different for every team, as everyone has different pain points and usually, there is a mismatch in what the delivery team sees as pain points, and what management sees as pain points.

One significant pain point that executives and management are concerned about is user experience. For the last 10 years, promoting the value of user experience (or more recently simply “design”) has gone beyond just the UX design team in an organization to management teams and even the board room. The reason? Revenue. Higher customer satisfaction delivers higher returns, and a great digital product experience is driving this. In their 2018 “The business value of design” report, McKinsey sees a two-to-one improvement in revenue, and a 21% increase to shareholders for companies that are strong in UX practice vs. companies that are not. At the same time, IDC forecasts that close to 60% of part-time application developers will be low-code developers by 2025 and, that correspondingly, roughly one-third of full-time application developers will be low-code developers by 2025. This means LCNC tools aren’t going away, and drive for more design is top of mind at the top of every organization. 

Defining Low-Code vs. No-Code

To understand the difference between a low-code tool and a no-code tool, here are definitions that you can use:

  • Low-Code platforms accelerate app delivery by dramatically reducing the amount of hand-coding required in the user interface and connections to databases and back-end services. The code output from these tools can be handed off to development teams to finish the application. 
  • No-Code platforms enable anyone in an enterprise to build applications in a visual, WYSIWYG environment. Typical no-code development platforms include strict guidelines in the app dev process, with the guarantee that anything the platform can build will be runnable and usable without any professional development to finish the application.

Note: Many vendors today lump tooling like API Management and RPA (Robotic Process Automation) into the LCNC category. For the purposes of this article, LCNC tooling is specific for app dev, with code output or a running app that a dev team can continue work on or a citizen developer can deploy to their stakeholders.

While there are dozens and dozens of products in this space, here are a handful of vendors in each category to help you differentiate vendor capability as you do your own research for your needs.

Figure 1: Example of vendors in the LCNC category.

Measuring the Value of User Experience Design

Justifying the time and cost of design can be challenging, as the returns aren’t always as clear before a product is delivered to market. However, there are enough case studies, analyst reports and anecdotal experiences to quantifiably demonstrate the value of user experience design. When starting a new project, start with KPIs in two areas that can be tracked over time to demonstrate value – reduced cost and increase revenue.

Figure 2: KPIs that measure value of user experience investment.

When a product has market success from an exceptional user experience, word of mouth and product recommendation brings a “viral” effect, potentially propelling a product into a different realm of growth than ever anticipated.

The Design Challenge in Low-Code & No-Code

While user experience design is proven to be a key differentiator in the market success of an application, the trend of LCNC development tools mostly ignore the level of customization and experience that a design team and stakeholders would consider differentiating and exceptional. The success of this new product category largely depends on the tooling have strict rules, or guardrails, that the user must live within to deliver a positive outcome. These guardrails usually include:

  • Limited app layout capability or a templated driven design
  • Limited responsive design for mobile / tablet UX
  • Limited theming and branding
  • Limited custom interactions
  • Limited UI controls or no extensibility to add your own UI controls
  • Zero integration with design tools

The benefit of accelerated time to market is potentially significantly higher, but the experience, which is driving the higher revenue KPIs, is usually lost in this process. 

The Future: Merging Low-Code & No-Code with Design

To overcome the lack of design capability in LCNC tools, a new category of tooling has emerged that bridges the need for an exceptional user experience plus the time/cost savings and accelerated time to market that LCNC tools promise. These new digital product design platforms level up the importance of standardized design practices (like design systems, UI kits, user testing and design tooling) and merge them with standardized development practices (like DevOps, developer IDE’s and code generation). 

Figure 3: Example of the tool chain in a digital product design platform.

While still in their infancy, the necessity of high-fidelity, designed experiences in both internal applications and public-facing apps is forcing the merge of these practices and tools in the enterprise. The gap in the LCNC space is that these tools usually start with some sort of workflow UI or developer-focused experience like an of screen/code builder, while a structured UX process always starts with customer research, then prototypes, then user testing, in an iterative process that includes stakeholders the entire time before developers ever write a single line of code. 

With digital product design platforms, digital product teams and experience the full iterative lifecycle of design and development plus the exceptional results that can deliver viral adoption of their products. 

To give you an idea of what this process might look like, here are two end-to-end scenarios that describe what this future of application development will look like:

  • A design team kicks off user research and a prototyping phase of a new app with stakeholders. The design team is using a vector-based design tool like Sketch, Figma or Adobe XD to design prototypes. After a series of iterations with stakeholders, the design is handed off to a development team, who then imports the approved vector designs directly into their LCNC tooling, eliminating 100% of hand-coding of screen design or UI interactions. 
  • Your LCNC tool imports your organization’s design system, including all the vector representations of UI controls and UI patterns, into the LCNC Toolbox. The design and development team are collaborating with stakeholders in a co-editing experience that is not just building a prototype but building real app code that a development team can merge with their codebase in their IDE and source control system of choice. 

Both scenarios will save months of development time, result in zero UX bugs, ensuring higher customer satisfaction, and reduce time to market with significant cost savings. Plus, the application produced is pixel-perfect to the design, which was tested with and approved by stakeholders.

The key to this process is more integration / extensibility of tooling rather than a ‘single tool’ that solves all the problems in delivering digital products. The “platform” should be looked at as more of a standardized tool chain than a single product. Today there are tools like Figma that have extensions to integrate UI controls directly from GitHub, and platforms like Indigo.Design that can do user testing and even generate usable, testable code from a vector tool like Sketch. However, the success of this app development future depends not only on more integration points in these tools to improve handoffs from phase to phase, but more importantly, the cultural change in design and development teams to work together to accelerate business outcomes vs. sticking with the old way of siloed software development.

 

The post Merging UX design with low-code & no-code platforms appeared first on SD Times.

]]>
Reclaim the lost art of critique https://sdtimes.com/softwaredev/reclaim-the-lost-art-of-critique/ Tue, 05 Oct 2021 13:00:17 +0000 https://sdtimes.com/?p=45457 When it comes to design, UX professionals are acutely aware of the importance of empathy. Understanding the pain points for the end user is key to creating the products that will serve their needs. Increased empathy ensures that a true view of those pain points is attained and there are many tools and best practices … continue reading

The post Reclaim the lost art of critique appeared first on SD Times.

]]>
When it comes to design, UX professionals are acutely aware of the importance of empathy. Understanding the pain points for the end user is key to creating the products that will serve their needs. Increased empathy ensures that a true view of those pain points is attained and there are many tools and best practices that enable this. But there is a blind spot that has grown out of all this goodness, which is forgetting to apply that very same principle to our colleagues, stakeholders and peers. 

Creative tension between cross-functional teams can be a positive thing but only if we understand one another’s goals and know how to critique work and receive criticism in a constructive way. In short, we can be tough on ideas, while being kind to our colleagues. Being able to retain the ability to assess and reassess our work as designers for the good of our craft and our customers, while enhancing trust and respect within our teams, is good for business. To help you get the best out of critique workshops, here’s my top tips for creating an effective and robust review framework. 

1. Define a framework for feedback sessions

In my 20 years of experience, I’ve learned that setting the scene for feedback sessions is essential for getting the most out of all involved. Not only does it provide clear boundaries for criticism, it also ensures that there is a natural progression that aligns with a product roadmap, resulting in a deployable solution when the sessions are done. My tried and trusted trio of feedback stages are as follows:

Session one: Where are we directionally? 

The first session or design sprint should focus on whether the initial brief has been captured. It’s not about what buttons should do or what icons should look like. It’s a simple assessment from key stakeholders that should determine whether we have begun designing against the core business objectives for the solution. The result of this session should be an emphatic green light that allows us to begin the journey towards a minimal viable product. 

Session two: Is everything functionally there? 

This session has to focus on the key requirements of the solution. We’re still not thinking about the aesthetic minutiae, but rather ensuring that the functional components of the solution, i.e. core features, are in place. We have to ensure nothing has been neglected at this stage.  

Session three: Let’s get detailed 

Now we can begin to drill down into text changes, icons, buttons and menus. This is the stage to painstakingly pore over details and dig deep into why we feel the way we do about the smallest of design choices, then fine-tune some more.

The point of the three stages is to avoid an infinite review loop. Once a session is done, and a direction agreed upon, we move on. If feedback that fits the context of session one is given in session three, we are simply too far along our roadmap to go and back to the drawing board. This is why it is essential that all stakeholders are represented at each stage.

2. Avoid feedback pitfalls

There are three main errors we can make when it comes to feedback. Firstly, we can seek to progress our design without asking for feedback at all. This is undoubtably the most damaging approach, as if we don’t take the initiative to ask for feedback, we miss a huge opportunity. We can’t assume that we’ve designed the perfect solution so we must take advantage of colleagues’ experience and expertise to inform our decisions. Remember that all of us are better than any one of us. 

Secondly, we can ask for feedback without listening. Sometimes, review sessions can be looked on as a box-ticking exercise, especially when we feel that those giving the feedback are not close enough to our work to understand the desired outcomes or reasoning behind our design choices. Going into feedback sessions with this mindset is a fatal mistake. By not listening to colleagues, we miss valuable insights that can improve our designs. Those invited to critique our work will also likely pick up on our disinterest and will not feel comfortable sharing their thoughts. 

Lastly, we can ask for feedback to receive praise or validation when we feel we have done a good job. No matter how valid the points, this approach ensures that we are not in the proper mindset to hear them, which can lead to key flaws being missed and, crucially, failure to fulfill customer requirements. 

3. Embrace criticism and increase your value 

We need to remember that there is an essential business case for identifying flaws at the earliest possible opportunity. The earlier we discover them, the easier and cheaper they are to fix. Discovering an error at the design stage is far less costly than when a solution is in development, where remediation is around 15 times more expensive. The cost also scales with each progression along the product roadmap. For example, a flaw that is only realized when a solution reaches production can be 100 times more costly to fix than one surfaced at the design stage, as this will require significant re-work and integration by engineers.  

One of the best tools in our toolbox for catching design errors are design peer reviews at critical points in the product development lifecycle. Putting time into making these as effective as possible is not only important for efficiency gains, but they are also an essential component in raising an organization’s bottom line. 

4. Use data to back up design decisions

Before beginning our design work, we will have workshopped ideas, undertaken user testing and followed UX best-practice in gathering feedback. At this stage, it is essential that we accurately record feedback data, as this will be our ultimate ally when we are challenged on our design decisions. 

Data allows us to address concerns with empathy, rather than taking them personally, and the confidence to show why the decisions we made were right, or at least taken in accordance with customer requirements. Each design of a feature does not need to be backed up by data when there are well-understood design paradigms that inform it. For example, an application with multiple menus does not require us to justify the design of each menu when we know that a certain style meets functional requirements for 99% of users. 

If a challenge surfaces an unprecedented issue, then we have to be open to the possibility that an oversight has occurred. In this instance, we need to spin up a basic prototype and present it to users along with the original design for some AB testing to gather fast feedback. 

This is where an agile approach is essential. Adopting this approach means that we are not scared of failure, which is essential for innovation. We need to try things out when there is a case for doing so but fail early and fail fast when we do, which is why effective feedback is so essential for businesses. 

The post Reclaim the lost art of critique appeared first on SD Times.

]]>
Wind River acquires Particle Design https://sdtimes.com/softwaredev/wind-river-acquires-particle-design/ Mon, 20 Sep 2021 16:37:57 +0000 https://sdtimes.com/?p=45306 Wind River has announced that it completed the acquisition of the UI/UX design company Particle Design which brings UI/UX capabilities to the new Wind River Studio offering.  Particle Design offers end-to-end UX research services that employ a range of methodologies  from ethnographic research to user evaluations and usability testing; its design services include prototyping, interaction … continue reading

The post Wind River acquires Particle Design appeared first on SD Times.

]]>
Wind River has announced that it completed the acquisition of the UI/UX design company Particle Design which brings UI/UX capabilities to the new Wind River Studio offering. 

Particle Design offers end-to-end UX research services that employ a range of methodologies  from ethnographic research to user evaluations and usability testing; its design services include prototyping, interaction design, and wireframing.

RELATED CONTENT: New Wind River Studio release delivers automation across SDLC

The new Wind River Studio is a cloud-native platform for the development, deployment, operations, and servicing of mission-critical intelligent systems through one source. 

The acquisition will expand the UI/UX capabilities to include cognitive UI, which uses AI/ML to predict and anticipate the needs and behaviors of the user bringing a more contextual, personalized, intelligent assistant-type UX. 

“In the new intelligent machine economy that we’re enabling with our customers, the user experience is more important than ever. We’re thrilled to welcome the industry-leading Particle design team to Wind River,” said Kevin Dallas, president and CEO of Wind River. “The graphical, natural, and cognitive UI/UX expertise that Particle brings to Wind River Studio will further advance our mission of enabling our customers to realize the AI-infused, digital future of the planet.”

The post Wind River acquires Particle Design appeared first on SD Times.

]]>
Balancing user experience and performance https://sdtimes.com/mobile/balancing-user-experience-and-performance/ Tue, 22 Jun 2021 15:40:38 +0000 https://sdtimes.com/?p=44462 Mobile apps have changed our world— from how we pay bills to how we date or order food, to even the ways we play games. They’ve opened up seemingly limitless possibilities, thanks to the talent of the developer community. Building the next killer app requires the creation of features that attract and delight while still … continue reading

The post Balancing user experience and performance appeared first on SD Times.

]]>
Mobile apps have changed our world— from how we pay bills to how we date or order food, to even the ways we play games. They’ve opened up seemingly limitless possibilities, thanks to the talent of the developer community.

Building the next killer app requires the creation of features that attract and delight while still supporting millions of concurrent users— and doing so without compromising the experience. And unfortunately, companies often underestimate just how difficult it can be to strike a balance between performance and experience until they are so far down a path that it is difficult to course correct. As a result, some fantastic ideas never reach their full potential.

Building for Scale: A Critical Factor

The desire to acquire users as fast as possible with a compelling feature set often leads to limitations on the backend. It’s no surprise that when performance suffers, users migrate away from the app out of frustration and/or viral growth sputters. One of the most important things I’ve learned from building multiple companies is that we need to reverse this thinking. Architect based on the assumption of success from the get-go. It’s easier and cleaner to build for scale early than trying to cobble your infrastructure together like Lego bricks as you go.

A developer should always be thinking about what happens when you get a thousand users, ten thousand users, millions? What is the minimum viable product? With my most recent company, for example, we wanted to know how many people we could fit into a single chat room without it falling apart. We understood that sending a single line of text to someone is pretty simple, but having 10,000 people in a single chat room is not. Every time you send a message, that message is broadcast 10,000 times. If you add features like read receipts or typing indicators on top of it, everything becomes exponentially more costly and more complicated. And we had to account for that before we released a commercial offering.

To solve for this, we conducted some early experiments with consumer applications that our friends were building. This allowed us to quickly build and test how things were going in ways that we couldn’t simulate on our own— which ultimately led to three major overhauls in our infrastructure to ensure that we could support the massive global adoption we were striving for.  We aimed big and we built to match that thinking. 

Accounting for Complications

Getting a bit more granular about what organizations should be considering as they create the next big thing, I’ll highlight some of the issues we faced as we developed our product and feature set. While not an extensive list, these problems are common for many different types of applications.

Global User Base

We had to make sure that every layer— mobile devices, to caching, the performance queue, task management, the data reads and writes and so forth— had to scale horizontally. It also had to scale across different geographies to handle a global user base so that no matter where someone was located, they could chat simultaneously without lag. Solving this problem required quite a bit of effort and engineering time.

Traffic Patterns

Expanding this further, there was also the challenge of traffic patterns. This was a big unknown because customers across different verticals can have very different traffic patterns, just as application deployments in different parts of the world do. Solving for this required not only understanding what the traffic patterns were, but also what features given customers would use more or less of, as well as how many users are typically in the group channels simultaneously. There’s a lot going on at once, and each of these pieces needed to be accounted for as we built for strong, reliable performance.

Use Case Coverage

Ensuring our infrastructure was capable of supporting a very wide range of use cases, from community chat to live streamed events, to doctor-patient consults to delivery applications, with their respective patterns involved a lot of servers and experimentation with autoscaling to adjust for high to low volume traffic fluxuations.

Pushing through boundaries, we’ve been able to accomplish engineering feats that weren’t possible previously, such as enabling up to 20,000 users to engage in real-time private group chats. But it took a commitment to scalability from very early on in our company’s lifecycle and a willingness to try and fail until we got it right. We refused to compromise performance to push a feature— and this approach continues. Because we put in the infrastructure work early on, we are able to move very quickly today and can consistently innovate.

And Then Come the Features

Building for scale and performance may not be sexy or appealing, particularly from the beginning, but it is critically important to design for this in early stages of development. . When the number of concurrent users grows, the user experience can be significantly impacted if the infrastructure doesn’t support user volumes to scale with the growth.  Support for a high number of concurrent users is not easily architected into your solution after the fact. 

The chat space, for example, is moving really quickly. It’s not just Facebook Messenger driving the trend; it’s everyone from Slack to TikTok. Pretty much every app now demands some level of real-time interaction capabilities to appeal to consumers, and this is pushing companies to constantly roll out new features to stave off competitive pressure while attracting and retaining users. People also expect all of their favorite applications to have similar features. Think about read receipts. This was not a popular or common feature early on, but now almost every messaging app has them because users expect them. It’s part of the constant evolution of the user experience.

To address this, companies perpetually have to ask “How do we layer in features to make sure we deliver the high quality experience that users want and expect? And how do we do that without compromising scalability and performance?” This is where true value creation comes into play.

The end goal is a seamless experience existing within the application, one that can be tailored for specific verticals if need be. To do this, the secret sauce is in the configuration and a common, scalable infrastructure layer that can host and scale with new features and  services as they are created. If you’ve built a robust infrastructure, one that can scale horizontally, the performance impact of adding new features is minimized. Utilizing a common infrastructure layer also means you can more efficiently add new features and services without having to rebuild and test the underlying infrastructure for scalability every time. 

Developer Support Required

To build for both performance and experience, developer support is key. Companies should be saying, “We want you to help make our tools better. To do that, we will give you the easiest to use, very best tools.”

In the early days of my company, we were all developers at heart. As we grew, we understood how instrumental and beneficial developer support was to our growth, and we strive very hard to create a positive developer experience today. For about 95% of our feature set, we try to really focus on giving developers the power to incorporate it into their apps in unique and interesting ways. 

Developers fuel innovation so any company that hopes to tap into the genius of this community should make an SDK or UIKit that appeals to developers. After all, we have entered the API economy where developers are expected to integrate new capabilities at an incredible pace. Let’s strive to make it as easy as possible to build the most modern features for their applications— without compromising scalability and performance for a compelling user experience. Balance is key, and partnering with developers is how we achieve it.

The post Balancing user experience and performance appeared first on SD Times.

]]>
UI testing a key part of delivering good user experiences https://sdtimes.com/test/ui-testing-a-key-part-of-delivering-good-user-experiences/ Thu, 04 Feb 2021 16:39:05 +0000 https://sdtimes.com/?p=42917 User experience has always been an important factor in the success of an application, but in an increasingly digital-only world, its importance is only increasing.  If all goes perfectly, the user doesn’t think about what’s going on behind the scenes. When a button does what it’s supposed to when it’s clicked on, the user goes … continue reading

The post UI testing a key part of delivering good user experiences appeared first on SD Times.

]]>
User experience has always been an important factor in the success of an application, but in an increasingly digital-only world, its importance is only increasing. 

If all goes perfectly, the user doesn’t think about what’s going on behind the scenes. When a button does what it’s supposed to when it’s clicked on, the user goes about their day, possibly even completing a transaction on the site. But when that button takes several seconds to do anything — or, worst-case scenario, never actually does anything — the user will be frustrated, and perhaps jump to a competing site. 

According to Eran Bachar, senior product management lead at software company Micro Focus, UI testing is the part of the process that tests for usability, which encompasses making sure that customers who are going to use the application understand the different flows. Another element of UI testing, especially in the web and mobile space, is testing user experience. “If you’re waiting more than two seconds for a specific operation to be completed, that can be a problem, definitely. The moment when you click on a button, when you click on an icon, when you click on any element, you should have a very, very fast responsive kind of an action,” Bachar said.

Clinton Sprauve, director of product marketing at testing company Tricentis added: “The goal of UI testing is to understand all aspects from a UI perspective on the business process side, but also on the technical side to make sure there aren’t any things that are wrong from a functional testing point.”

RELATED CONTENT:
How to solve your UI testing problems
There’s more to testing than simply testing

UI testing may be the tip of Mike Cohn’s popular Testing Pyramid — which is a triangle that describes how long to spend doing each phase of testing — but that doesn’t mean UI testing can be ignored and just slapped onto the end of a testing cycle. 

“I believe UI testing is too often an afterthought during product development, and is often placed much too late in the development life cycle,” Jon Edvald, CEO and co-founder of automation platform Garden. “It can be a serious drag on productivity and release cycles to do UI testing — and in fact any type of testing — too late in the process. The later an issue is discovered, the more costly the feedback loop becomes, with all the context switching involved and the terribly slow iteration speeds.” 

Google’s Web Vitals
One measurement that can be used to quantitatively measure user experience is Google’s Web Vitals. According to Guillermo Rauch, CEO of front-end web development company Vercel, these Web Vitals were the first metrics created that focused entirely on user experience. One of the Web Vitals is Largest Contentful Paint (LCP), which measures “how fast the meaningful part of the page took to load,” he explained. Rauch pointed out that everyone has likely visited a website where it looks like everything had loaded, but the content is still being loaded, so images, videos, or sometimes text might show up five seconds after everything else. 

“So this Largest Contentful Paint metric allows us to say how long did it take for us to load what the user is actually interested in? So when you talk about a visual storefront, it’s not just text, it’s also the picture of the coat that you want to buy,” Rauch explained. 

First Input Delay is another Web Vital that measures how long it takes from the user pressing a button, for example, to the site reacting. “If I tap on ‘buy’ is it reacting immediately? We take that for granted, but we’ve all been to websites where we tap and it doesn’t do anything so we kind of intuitively tap again. But a big percentage of users don’t tap again. So they just leave the website. We’re now starting to measure these user experience metrics very diligently,” Rauch said.

Another reason to care about these Web Vitals is that they’re not just used by development teams to measure how happy their users are, but Google can use them to determine search engine rank, Rauch said. In other words, a website that has poor Web Vitals may rank lower, even if they’ve done the proper search engine optimization (SEO) for their site. 

Get key stakeholders involved in the process
Involving product users in UI testing is an important part of the process for companies developing products. At Sorenson, which develops communications products that serve the Deaf community, QA engineering manager Mark Grossinger, who is Deaf, explained that this is an important part of his team’s testing process. His team is constantly reevaluating the needs of its users so that it knows what tools and features to provide, and UI testing is an important step in the process. 

In order to do their UI testing, Sorenson works closely with the Deaf community, as well as other Deaf employees within the company. It’s important for them to do this because as Grossinger describes, “if you have a hearing individual who does not know what a Deaf person needs or how they would use a product, how would they develop it?” 

One example of where that feedback loop made a big contribution was in developing video mail, which Sorenson calls SignMail. “As a hearing person, you can leave a voicemail if your recipient doesn’t answer your call,” Grossinger said. “In the past, there was no equivalent for the Deaf community, so we developed that feature. Now, if a Deaf person is unable to answer a call, the interpreter (or a Deaf caller) can leave a video mail (in American Sign Language), which gives the Deaf person a functionally equivalent message.” 

Another example that Grossinger noted was developing the Group Call feature. He explained that hearing individuals can utilize conference calls if they want to talk with multiple people, so Sorenson used feedback from its customers to create an equivalent feature. 

While Sorenson specifically serves the Deaf community, Grossinger noted that the need to involve the people who would be using the product is key no matter who the user base is. “When you’re developing software, you need to have people within whatever community you’re serving, whether it’s accessibility or something else,” Grossinger said. “You need to get those people to give authentic feedback. If you don’t, you could end up developing software or an app that doesn’t meet the intended user’s needs. So, I think that from the beginning of any project, when you’re at the drawing board and beginning the innovation process, you need to talk about the stakeholders and the features they need.”

According to Grossinger, diversity is the key to successful UI testing. This includes, not just a diverse development team, but diversity among all departments of the company, such as sales and marketing. 

“Sometimes on a smaller team you notice that details can get missed without having that diversity,” said Grossinger. “Diversity also means thinking about various demographics: older populations, younger populations, socioeconomic status, education levels, people who are savvy with technology and those who are not. All those perspectives need to be included in the project development.” 

Manual vs. automated UI testing
While automated testing has been a big buzzword around the industry, it hasn’t quite made its way fully into UI testing yet. 

“It’s unfortunately quite common for most or even all UI testing to be manual, i.e. performed by developers and/or testers, essentially clicking or tapping around a UI, often following predefined procedures that need to be performed any time a change has been made,” said Garden’s Edvald. “This may be okay-ish for small and simple applications but can quickly balloon into a massive problem when the UI gets more complex and has a lot of variations.”

Edvald described his experience witnessing this firsthand when doing development for the menstrual period tracking app Clue. According to Edvald, it was important to the company to have the app available to as many different users as possible, so it is supported on a variety of devices, from “ancient Android phones to the latest iPhones, tons of different screen sizes and operating system versions, many different languages etc.” 

Having all of these different devices, with varying screen sizes and operating systems, led to massive complexity when it came to testing. Manual testing wasn’t going to be possible because a QA team wouldn’t be able to manually test every possible combination at the speed with which the app was being developed and released. To solve the problem, they hired a quality engineer and put more effort into automation. 

“Being able to programmatically run a large number of tests is critical when an application reaches some level of complexity and variation,” said Edvald. “Even for less extreme scenarios, say web applications that have fewer dimensions to test, the cost-benefit quickly starts to tip in favor of greater automation. It’s usually a good idea to also do some level of manual, exploratory testing, but it’s possible to greatly reduce the surface area to cover, and thus the time and resources involved.”

While automating UI testing is the ideal, it’s not always practical for every organization out there. For many organizations, there just isn’t the expertise to do all of the automation, and do it properly. 

According to Tricentis’ Sprauve, most companies still rely on manual testing for that reason. For example, they will have QA testers sitting in front of a computer and manually performing test steps. “One of the issues with UI automation in some instances is what’s known as flaky tests,” Sprauve said. “That could either be because of the type of the tool that you’re using, or it’s because of a lack of skills of how you build that automation. So one of the biggest challenges is how do I build consistent and resilient automation that won’t break when there are changes or if there are changes, how quickly can we recover to make sure that we get those items addressed so that we’re not just spending time making sure our automation is working versus actually testing. So that’s one of the biggest challenges that an organization faces.”

Michael O’Rourke, senior product manager at Micro Focus, noted that most customers average around 30% to 40% automation, and they only have a few customers that are more than 80% automated. “It takes a lot of work to be able to get to that and it involves a lot of different types of transformations that need to be incorporated in there,” said O’Rourke. “Those customers that put more emphasis on automation are generally the ones that are going, but when it comes to different time constraints, some customers find it easier to be able to only automate certain tests, but then still leave some manual processes behind, which is why it generally ends up roughly around 40%.” 

Other than the challenges with complexity and automation, another common challenge for QA teams is maintenance. According to O’Rourke, sometimes a developer may make a change to the UI and then when it gets sent back to the QA person, the test fails. “And they’ll spend a lot of time trying to troubleshoot to figure out what happens because the UI change obviously wasn’t properly documented or told to the QA team. That’s where a lot of the challenges come because they have to go back and modify a lot of the scripts and do a lot of maintenance on it anytime it changes,” he said. 

This is especially challenging early on in product life cycles when a product is being developed, O’Rourke explained. “This could be a very big problem for a lot of those different customers who have to frequently test continuously over and over again where breaks are and then go back and adjust tests,” he added.

Vercel’s Rauch predicts that going forward, the web will just keep becoming more user personalized and user experience will continue being an important part of QA. “The core Web Vitals are here to stay, they’re great for developers, they’re great for business people to find this alignment, but more important than that, it’s not just those core Web Vitals,” Rauch said. “I think measuring user experience especially in ways that are unique to your product and unique to your channels is also going to be very, very important. This is just again, the name implies, these are vital signs. This is just like measuring your heart rate, but also if you want to have a great fitness performance, you gotta measure a lot of other things, not just your heart rate.” 

The post UI testing a key part of delivering good user experiences appeared first on SD Times.

]]>
Infragistics’ Indigo.Design App Builder preview released https://sdtimes.com/low-code/infragistics-indigo-design-app-builder-preview-released/ Wed, 20 Jan 2021 13:59:14 +0000 https://sdtimes.com/?p=42718 The developer preview of Indigo.Design App Builder by Infragistics is now available. It is a digital design platform that streamlines app creation from design to code by enabling collaboration between designers and developers, according to the company.  Creating the user interface of an application takes up to 60% of the total time spent on an … continue reading

The post Infragistics’ Indigo.Design App Builder preview released appeared first on SD Times.

]]>
The developer preview of Indigo.Design App Builder by Infragistics is now available. It is a digital design platform that streamlines app creation from design to code by enabling collaboration between designers and developers, according to the company. 

Creating the user interface of an application takes up to 60% of the total time spent on an application, research firm Gartner explained, and the chance for time-consuming mistakes increases as the application is being sent back and forth between the two sides. 

Indigo.Design aims to solve this problem with its cloud-based WYSIWYG drag and drop tool to allow teams to build and process their UI/UX designs in real-time and offering the ability to use the tools that teams prefer. 

“Indigo.Design streamlines app creation and eliminates costly and avoidable re-work that prevent applications from getting to market quickly,” Infragistics wrote in a post.

Teams can also turn they’re real-time designs into production-ready HTML, TypeScript and CSS for Angular. In 2021.

The company stated that later this year, the tool will additionally generate code for React, Web Components and Blazor. App Builder will be fully integrated within Indigo.Design in April 2021. Currently, App Builder is compatible with the design tools Adobe XD, Sketch & Figma.

“We created App Builder to address the inefficiencies that often result from designers and developers working in separate tools and in silos, and the miscommunication that often plagues handoffs,” said Jason Beres, the head of UX tools and the senior vice president at Infragistics. “While most low-code apps on the market were built specifically for developers–or used to activate citizen developers–App Builder provides a single common platform for collaborative app design and development. This approach empowers and enables designers and developers to streamline app creation, from design to code.”

The post Infragistics’ Indigo.Design App Builder preview released appeared first on SD Times.

]]>
SD Times news digest: Electron JS 11.0 released, CodeBot UX is available to early access users, and Build.security emerges from stealth https://sdtimes.com/software-development-programming/sd-times-news-digest-electron-js-11-0-released-codebot-ux-is-available-to-early-access-users-and-build-security-emerges-from-stealth/ Tue, 24 Nov 2020 15:21:52 +0000 https://sdtimes.com/?p=42230 The new version of Electron JS includes upgrades to Chromium 87, V8, 8.7, and Node.js 12.18.3 as well as support for Apple silicon and general improvements. Other improvements include an added V8 crash message and location information to crashReport parameters and improved performance for sending wide objects over the context bridge. Additional details on all … continue reading

The post SD Times news digest: Electron JS 11.0 released, CodeBot UX is available to early access users, and Build.security emerges from stealth appeared first on SD Times.

]]>
The new version of Electron JS includes upgrades to Chromium 87, V8, 8.7, and Node.js 12.18.3 as well as support for Apple silicon and general improvements.

Other improvements include an added V8 crash message and location information to crashReport parameters and improved performance for sending wide objects over the context bridge.

Additional details on all of the changes are available here.

No Code App Generator, CodeBot UX is available to early access users
With CodeBot, users can generate full-stack applications from a domain model, while its newly engineered UX components allow users a smoother and centralized approach towards app generation.

CodeBot UX supports UML models including class diagrams, state machines and wireframes. From these, CodeBot generates a database schema, API documentation, server-side code, client-side code including domain classes, CRUD functions and usage examples.

CodeBot can also automatically host one’s generated web application in the cloud with the click of a button. CodeBot UX initially targets React, but will soon build equivalent user interfaces for React Native, Vue.js and Angular.

Build.security emerges from stealth with $6 million in backing
Build.security aims to dramatically simplify the process of building authorization and cutting down development time with its open policy agent-powered authorization policy management platform.

“build.security’s innovative approach allows developers to focus on developing apps at unprecedented speed without the burden of Role-Based Access Control (RBAC) and Attribute-Based Access Control (ABAC) implementation weighing them down,” said George Kurtz, the CEO and cofounder of CrowdStrike.

The company’s solution offers a unified pane of glass that enables developers to easily author, evaluate, distribute and monitor policies at scale, policy-as-code, which allows developers to express authorization policies with a no-code drag-and-drop policy builder or through a low-code declarative language.

Additional details are available here.

The post SD Times news digest: Electron JS 11.0 released, CodeBot UX is available to early access users, and Build.security emerges from stealth appeared first on SD Times.

]]>
The RUF framework creates a holistic customer experience report https://sdtimes.com/ux/the-ruf-framework-creates-a-holistic-customer-experience-report/ Thu, 05 Nov 2020 16:00:39 +0000 https://sdtimes.com/?p=41999 Tim Jones, founder & CEO of app screenshot generator LaunchMatic, shared a story from when he served as growth product manager at Keepsafe Software. He and his team were struggling to create a holistic customer experience report that could be presented to the executive team. “We were receiving tens of thousands of support emails, app … continue reading

The post The RUF framework creates a holistic customer experience report appeared first on SD Times.

]]>
Tim Jones, founder & CEO of app screenshot generator LaunchMatic, shared a story from when he served as growth product manager at Keepsafe Software. He and his team were struggling to create a holistic customer experience report that could be presented to the executive team.

“We were receiving tens of thousands of support emails, app reviews, app ratings, and non-support user inquiries every month and the fragmentation between all of them lead to no actionable data to influence our product decisions,” said Jones.

RELATED CONTENT: Digital experience monitoring more necessary than ever in an increasingly digital world

Jones found success in using the RUF framework to sort and organize monitoring data to create actionable insights. With RUF (Reliability, Useability and Functionality), data points are sorted into three categories: reliability, usability, and functionality.

Reliability would include data points like app uptime, bugs, and app performance. Usability would include data such as user experience issues, complexity of the app, and users who can’t find features. Functionality would include data points like what customers are asking for or missing features. 

According to Jones, each of these high-level categories can also be filtered into more specific sub-categories. For example, sub-categories for reliability could be broken down further into crashes, screen stuttering, and long load times. 

“What this enabled us to do was consolidate tens of thousands of data-points into one report that could visualize problem areas, while also letting Product Managers dig deeper to read each individual ticket/review. This fundamentally changed the way Keepsafe prioritized feedback, giving each of these users a voice in what we planned in future sprints,” said Jones.

The post The RUF framework creates a holistic customer experience report appeared first on SD Times.

]]>