Design

How we approach UX @ MichiganLabs

July 29, 2019
How we approach UX @ MichiganLabs

At Michi­gan Soft­ware Labs, we focus on build­ing supe­ri­or user expe­ri­ences (UX) for our clients and their cus­tomers. While there are count­less ways to define the UX design process, this one stands out: Design is the process design teams use to cre­ate prod­ucts that pro­vide mean­ing­ful and rel­e­vant expe­ri­ences to users.” This all-encom­pass­ing process includes every­thing from brand­ing and usabil­i­ty to acces­si­bil­i­ty and function.

To break the UX process down fur­ther, there are three basic P’s to keep in mind: Peo­ple, Prod­uct, and Process. Let’s start with the first.

The Prod­uct

For a prod­uct to suc­ceed, it needs to be attrac­tive and easy to use. We avoid a beau­ty for beauty’s sake” design men­tal­i­ty in favor of sim­plic­i­ty and sub­stance and sim­plic­i­ty. To get there, we believe the UX and soft­ware devel­op­ment process­es should almost always go hand in hand.

At Michi­gan­Labs this means:

  • Under­stand­ing our clients’ pri­or­i­ties first
  • Solic­it­ing user feedback
  • Design­ing in a man­ner that opti­mizes the soft­ware imple­men­ta­tion process
  • Employ­ing, and often exceed­ing, UX design standards
  • Sup­port­ing and help­ing clients under­stand how the prod­uct will evolve over time

The Process

There’s no sub­sti­tute for a but­toned-up UX design process. At Michi­gan­Labs, we fol­low these steps:

  • Once we under­stand what suc­cess looks like for the prod­uct owner(s), we write user sto­ries and/​or gath­er design requirements
  • Cre­ate wire­frames or low-fideli­ty designs, if needed
  • Seek user-feed­back at all stages
  • Begin the high-fideli­ty design process
  • Fol­low an iter­a­tive, Agile process to get ongo­ing feed­back from users and prod­uct owners
  • Make updates based on user and devel­op­er feedback

Note that design isn’t sim­ply hand­ed off” to the devel­op­ment team — it is a liv­ing, con­tin­u­al process of updat­ing. While design is a means to an end prod­uct, it’s doesn’t nec­es­sar­i­ly mir­ror the final prod­uct. Rather, it offers a use­ful path.

To bet­ter under­stand that path, here are 6 Lean UX process stages we tend to follow:

  • Solve prob­lems togeth­er: Ensure every mem­ber of your team is present dur­ing brain­storm­ing for new projects. 
  • Give your teams prob­lems to solve, not solu­tions to imple­ment. The out­come will be a far more effi­cient and pro­duc­tive team cre­at­ing high­er qual­i­ty prod­ucts and experiences. 
  • Sketch: Intro­duce the team to sketch­ing in order to help them visu­al­ize their ideas and come to a consensus. 
  • Pro­to­type: Get to a prod­uct expe­ri­ence as quick­ly as pos­si­ble. Use pro­to­types of vary­ing fideli­ties to get a sense of what your product’s expe­ri­ence will be and val­i­date that with cus­tomers to ensure you’re head­ed down the right path. 
  • Pair your devel­op­ers and design­ers: Have devel­op­ers and design­ers pair up to cre­ate the user inter­faces. Each will learn from the oth­er and build the trust nec­es­sary for greater team col­lab­o­ra­tion and productivity. 
  • Cre­ate a style guide: Cod­i­fy your design ele­ments in pat­tern libraries and code repos­i­to­ries so cre­at­ing new pages and work­flows in your prod­uct is as easy as pick­ing the pieces from the style guide. It also allows the team to quick­ly piece togeth­er expe­ri­ences for pro­to­types and empow­ers your devel­op­ers to build inter­faces with­out con­stant review with the UX designer.

The Peo­ple

The process and final prod­uct are only as good as the peo­ple work­ing on it. To max­i­mize results, we define the design and deliv­ery lead roles a bit dif­fer­ent­ly than oth­er companies:

  • A UX design­er pairs with a deliv­ery lead on every project 
  • The deliv­ery lead works close­ly with the prod­uct owner(s) and soft­ware devel­op­ers, while the UX design­er offers tech­ni­cal support
  • The UX design­er uses research to under­stand the user and the prob­lem to be solved. This includes client strat­e­gy sessions.
  • The UX design­er also stew­ards the design process. This means using appro­pri­ate fonts, brand­ing ele­ments, col­ors, acces­si­bil­i­ty, and more.

Con­tin­u­al­ly learning

A strong UX process is high­ly adapt­able, nev­er rigid. Agile and iter­a­tive in nature, it is capa­ble of new learn­ings and cre­ative solu­tions not only between, but also with­in, each project we under­take. The end result is design that is usable, acces­si­ble, and attractive.

For more UX think­ing from our team, check out this acces­si­bil­i­ty post by Iulia Rontu.

Mark Johnson
Mark Johnson
Co-founder & Managing Partner

Stay in the loop with our latest content!

Select the topics you’re interested to receive our new relevant content in your inbox. Don’t worry, we won’t spam you.

Time Check
Development

Time Check

June 6, 2019

Read Karl's blog post about an interesting development challenge related to time.

Read more
Michigan Software Labs #65 on Inc. Regionals Fastest-Growing Companies
Press Release

Michigan Software Labs #65 on Inc. Regionals Fastest-Growing Companies

March 11, 2022

Inc. magazine today revealed that Michigan Software Labs is No. 65 on its third annual Inc. 5000 Regionals Midwest list, the most prestigious ranking of the fastest-growing private companies based in Iowa, Illinois, Indiana, Kansas, Michigan, Minnesota, Missouri, North Dakota, Nebraska, Ohio, South Dakota, and Wisconsin. Born of the annual Inc. 5000 franchise, this regional list represents a unique look at the most successful companies within the Midwest region economy’s most dynamic segment–its independent small businesses.

Read more
Application Architecture with SwiftUI
Development iOS

Application Architecture with SwiftUI

June 15, 2022

An overview of mobile application system architecture using SwiftUI

Read more
View more articles