Analysis: Domain Model

Domain models are a useful way for technologists to model the business or domain they use. Domain modeling describes all of the objects, actors, and relationships in the system.

domain model analysis

I have found that it is not common for people to create domain models anymore, and instead use shortcuts to put the model in code or in the data model. The code and the data model have a different purpose. By putting the domain model in the code it melds the technology, architecture, and domain. This creates a domain model that is brittle and impossible to visualize.

To help me understand how the technologists view the domain, I create my own domain model. I draw an abstract model by analyzing the relationship of features in the system’s user interface. I use various shapes for the objects and actors and lines to show the relationships among the shapes.

Domain Model Diagram

After drawing this picture, I begin to learn more about how the technologists view the domain. Using this diagram, I can ask questions and clarify if this is the way the system is built.

I have used this technique successfully to identify mismatches between the real domain and the way the system has been architected. In some cases it is straightforward to fix and in other cases it was a legacy we had to live with.

In any case, having a tool to analyze how the technologists see the domain helps in communicating the design, requirements, and work to be done.

Happy drawing!

Copyright 2015 Frictionless Design LLC

By |April 29th, 2015|Analysis|0 Comments

Analysis: Interactions

Interactions analysis is used to understand the strengths and constraints of your technology to meet the needs of the user to accomplish their work.

analysis interactions

I have worked for several companies that had old technologies and wanted to modernize. The question we considered; in moving from a native Windows application to a web-based trading application, what would the user gain or lose?

This analysis requires understanding the users needs and goals, as well as what they are accustomed to in the old technology.

  1. Create a list of what the user needs (not features). Let’s use the trading application as an example.
    • In order to get work done,  users will need, for example, to display around 50 data elements across thousands of records. The current application has a custom grid.
    • Users work together in teams and therefore require their information to be in sync at all times.
    • Users have desktops with 3 to 6 monitors and are comfortable with the data grid stretching out across all monitors.
    • Users rarely get up from their desks, but when they do, they need to be made aware of the status of their trades as things can change quickly.
  2. Match the user needs with the specs of the technologies.
    • Depending on the technology, there are different strengths and limitations.
    • Each of the technologies may be architected differently and provide different features to meet the user’s needs.
    • Examples:
      • Native Windows applications are .NET Windows Presentation Foundation (WPF) and .NET Windows Forms.
      • HTML 5 and CSS 3 are cross-browser standards.
      • Mobile operating systems such as iOS, Android, and Windows Phone.
  3. Find examples, demos, and products that accomplish the interactions you are looking for.
  4. Prototype outstanding concerns.
    • If you cannot find any demos exercising the feature that you want, you may have to create your own demos and tests.
    • Example:
      • When trying […]
By |April 24th, 2015|Analysis|0 Comments

Analysis: Workflow Analysis

The Workflow Analysis is a tool to document and enumerate the workflows around products and services of the company that are touched by end-users. The workflow analysis follows key workflows through the organization’s products and services entering, crossing boundaries, and exiting upon conclusion of the work. The workflows may occur across personas, departments, and organizations. An example of a workflow might be on-boarding a new customer. After the sale has been done and the contract signed, how do you get the customer set up with your system. Follow the workflow from the signed contract through until the customer is up and running. The point is to follow the trail and visualize how the workflow happens today.

workflow analysis fin

Begin  by mining what your company knows about the user. Start by interviewing people in each department. Have them describe how the users interact and what they think the user is trying to accomplish. Once you have interviewed people internally, you can now interview users to find out what they are trying to accomplish.

Both sets of interviews can be consolidated into a list of key workflows.  A list of 10 to 15 workflows is enough to gain an understanding. More than 15 workflows would be too much.

I recommend taking these 10 to 15 workflows and prioritizing them according to your business and the stakeholders’ priorities. Be focused here so you are working on the highest priority workflows first. Take the top 3 to 5 and document them in detail. By the time you get through 3 to 5 workflows, you will learn a lot and your viewpoint will change significantly on the other 10.

Each workflow should be documented by showing all the tools, communication, and events that help the […]

By |April 17th, 2015|Analysis|0 Comments

Analysis: Day-in-the-life

The day-in-the-life walk-through of a persona provides documentation and context of the users’ work throughout the day. The day-in-the-life walk-through focuses on the user, independent of your company’s particular interest, from the time they wake up in the morning until they go to bed. The walk-through is at high-level, “5000 feet”, and shows the typical flow of work.

day in the life

The day-in-the-life walk-through is paired with the persona to provide more context into the users’ lives. This information helps the team members who are not participating in the research get a better sense of what the users do all day, what tools they use, who they talk to, and should give them a sense of when and where the solution resides. It is important for the team to understand how what they are doing fits into the big picture.

I worked on a timekeeping application and a financial advisors application. Both of these are in very different industries, however, many team members in both cases forgot or did not know that their users did not work all day in the tool they were building. In both cases, users wanted to get in and out as quickly as possible to get back to doing “real” work.

The team needs to know the context of the work that their tool and service will be in. This helps everyone to make better decisions and helps meet the end-users needs and desires.

How can you do a day-in-the-life walk-through? In the user research process, be sure to find out what the user’s typical day is like. When they wake up in the morning, do they start work right away? Within minutes of rolling […]

By |April 9th, 2015|Analysis|0 Comments

Analysis: Personas

Personas are developed from data collected about targeted users. The patterns that emerge from your research create the user archetype- the persona.

persona

Creating personas serves several purposes. Personas help remove the tendency of the team to make assumptions about the user or see themselves as the user. Personas also provide team members an accurate short cut to reference a group of users. Personas are also a great tool for sharing user information with people not present for user interviews and observations, and new team members learning about the products target audience.

Personas

How can you create a persona? I would start by looking at the demographic data you have collected on your users. Group the users by like characteristics such as the part of the organization, their role, their place in the process, the numbers of transactions, the amount of work or any other quantitative measures that may separate or group them. Create a bulleted list of the goals and needs of these users. The goals and needs should focus on the work being done, not on your product and service. The idea of the persona is to give you a better sense of who you are working with, not how they use your product. The goals describe what the persona is try to achieve while doing their job. The needs describe the information, tools, people or other things that are required to complete their work. Lastly, create a bulleted list on why your organization cares about this persona. Are they the targeted users? Are they the buyers?  Are they the influencers? Do they represent future income?

At this point, some people like to get more creative and add personal narratives, pictures and personal names to the […]

By |April 2nd, 2015|Analysis|0 Comments