Linear Background

Required Fields: Balancing speed with data integrity in effective issue management

I conceptualized an experience to balance the needs of the office admin users, who wanted to set certain issue fields as required to be filled out so that they can get standardized data back— with field users, who may not have all the information to fill in at a given time.

Role

Design Lead

Responsibilities

Visual Design,
UI & UX Design,
Product strategy

Timeline

November - Jan 2023

Problem

Issue management is not standardized because the data capture is not uniform from the field

Contractors and subcontractors were using Autodesk Build for issue management under the promise of connected construction to power their projects with accurate from the ground. However, contractors were spending too much time triaging information from various sources or having to do back an forth to get the right data, without getting reliable information back from the field.

Our customers wanted to have a foolproof way of getting the data back from the field, without overburdening the field users to fill out more information than they need to. Customers had setup extensive reports via APIs and data connectors to get all the information they need from Issues. Without a foolproof way, they would not be able to adopt the Issues tool.

Research & Insights

Admins want foolproof data back

"If you don't require those fields, then still people will only fill in what they instantly know or instantly want to think about. And if something is taking effort, they’re like, I'm going to do that later. And they will never do it again. So we really want like a foolproof system".

BIM Manager

Dura Vermeer (General Contractor)

01 Not getting the right information issues leads to communication loss for Admins

Field users don't have all the information

“Sometimes you leave the sub blank on purpose. Cause you're just not sure who you're supposed to assign it to. You need to look that one up, but you still want to make the issue. So you create the issue with the sub blank,”

Brian, QA/QC Manager

Vaughn (General Contractor)

02 Not knowing the required information but being blocked leads to placeholder data and at worst, delay in issue creation

Goals

Provide control to admin users without taking away the issue creation speed for the field users

The team needed a way to create issues without forcing too many required fields, as well as not blocking users.

Ideating possible solutions

Brainstormed a hero concept -

enforce on status change

Solution

An elegant way to save issues as drafts until required fields are complete

We allowed admins to setup fields as required, but the experience was tailored to the field users, so that, if left unfilled, did not block the user from creating the issue. The issues were just created as "Drafts".

Before

All fields were optional, so any field except title and type could be left blank.

We allowed admins to setup fields as required, but the experience was tailored to the field users, so that, if left unfilled, did not block the user from creating the issue. The issues were just created as "Drafts".


Before

All fields were optional, so any field except title and type could be left blank.

After

All issue types containing required fields will be created as drafts until the required fields are filled out.

The ability to make fields required (Admin-only)

After

Easy process to make a field required on the web

Storyboarding

Storyboards to narrow down the preferred enforcement approach

Initially, the team had thought that the hero concept of enforcing upon any status change was valid. However, there were differences in stakeholder opinions about the timing of enforcement. We needed to align on an enforcement approach that was also aligned with other stakeholder teams (platform team, Issues for Model Coordination and Design Collaboration). I put together storyboards as research prototypes to get feedback on the preferred approaches, both from internal teams and external customers.

Systems modeling

Understanding the end-end flow based on technical constraints

Once we got feedback from research, we uncovered that both our approaches proposed were not fully satisfactory, and we needed to allow users to skip required fields at creation, but enforce them prior to achieving Open status for an issue. We then mapped the possible approaches of enforcing the required fields, system response and constraints. In collaboration with the PM, I designed conceptual system diagrams to determine the optimal strategy for enforcing required fields.

Technical constraints

Drafts is fine, but when do we actually enforce the required fields?

When do we actually enforce the required fields?

Iteration

Conceptualizing possible approaches based on technical constraints

I then explored concepts to illustrate the two main approaches outlined above, for both the questions. I also aligned with the other teams involved (platform team) for sign-off on the approaches.

Approach 1:

Retaining the same status but enforcing required fields based on user choices. In this scenario, the initial status is 'open,' and the Back-End is saved as 'open.' However, the status change occurs only when a user attempts to bypass a required field. Automatic status change to Open.

Approach 2:

Assigning a distinct status (draft) to issues with required fields prior to creation, irrespective of user choices regarding field completion. Manually activating the issue status change to Open.

Concept testing

Sought user feedback on the data categorization and user notification approaches

We then sought user feedback on the preferred approach for issue creators and learned that the approach 1 is preferred (minimal change for users). Users also preferred that the issue would be opened automatically if the required fields are filled out.

However, from engineering discussions with both web and mobile engineers, the approach 1 of creating an issue as open will not be possible on web. Applying validation "if" required fields are skipped will require on-the-fly and refactoring of a lot of code on other teams, which was not possible at this time, given our timeline.

We then decided to go for approach 1 on mobile and approach 2 on web, given that many users are creating issues from mobile.

Storyboarding

Storyboards to narrow down the preferred enforcement approach

Initially, we had thought that the hero concept of enforcing upon any status change was valid. However, we learned from our discovery research that could cause users to ignore issues altogether and perpetually be in draft state. We needed an enforcement approach before the issue was in Open status.

Systems modeling

Understanding the end-end flow based on technical constraints

Once we got feedback from research, we uncovered that both our approaches proposed were not fully satisfactory, and we needed to allow users to skip required fields at creation, but enforce them prior to achieving Open status for an issue. We then mapped the possible approaches of enforcing the required fields, system response and constraints. In collaboration with the PM, I designed conceptual system diagrams to determine the optimal strategy for enforcing required fields.

De-risking with data

Do what's possible within the technical constraints, but be informed

Upon further discussions, I gathered that we need to drop approach 2 altogether because of edge cases. I also gathered additional data to de-risk the solution approach: I extrapolated the legacy product data and found that the number of fields that were going to be made required is low, aka the proportion of issues will be impacted by this change is lower than we had imagined. Secondly, we were going to introduce this feature only on "issues types" and users had ~20 or so issue types on a given project. The impact foot print of risk should be managed by that as well. Finally, some of the edge cases were only on web and so we considered implementing this only on mobile.

Launch

Conclusion

Apart from a few edge cases surrounding editing previously filled required fields, bulk importing issues with required fields, and bulk editing the status or issue type, the implementation was pretty smooth. We then extended this to 8 other tools within the Autodesk Issues ecosystem, for al the teams who wanted to consume the updated Issues library. More and more customers have been editing fields (requiring or un-requiring them) within a particular Issue type.

Iteration

Conceptualizing possible approaches based on technical constraints

I then explored concepts to illustrate the two main approaches outlined above, for both the questions. I also aligned with the other teams involved (platform team) for sign-off on the approaches.

Approach 1:

Enforcing required fields based on user choices. The status changes to 'draft' when a user attempts to bypass a required field.

Approach 2:

Assigning a distinct "draft" status to issues with required fields, treating them as a special case, irrespective of user choices regarding field completion.

Concept testing

Sought user feedback on data categorization and user notification

We then sought user feedback on the preferred approach for issue creators and learned that the approach 1 is preferred (minimal change for users). Users also preferred that the issue would be opened automatically if the required fields are filled out.

However, from engineering discussions with both web and mobile engineers, the approach 1 of creating an issue as open will not be possible on web. Applying validation "if" required fields are skipped will require on-the-fly and refactoring of a lot of code on other teams, which was not possible at this time, given our timeline.

We then decided to go for approach 1 on mobile and approach 2 on web, given that many users are creating issues from mobile.

De-risking with data

Do what's possible within the technical constraints

Upon further discussions, I gathered that we need to drop approach 2 altogether because of edge cases. I also gathered additional data to de-risk the solution approach: I extrapolated the legacy product data and found that the number of fields that were going to be made required is low, aka the proportion of issues will be impacted by this change is lower than we had imagined. Secondly, we were going to introduce this feature only on "issues types" and users had ~20 or so issue types on a given project. The foot print of the that should be managed by that as well. Finally, we were considering if this can be allowed on mobile, as the majority of issues were created from using a mobile device.

Launch

Conclusion

Apart from a few edge cases surrounding editing previously filled required fields, bulk importing issues with required fields, and bulk editing the status or issue type, the implementation was pretty smooth. We then extended this to 8 other tools within the Autodesk Issues ecosystem, for al the teams who wanted to consume the updated Issues library. More and more customers have been editing fields (requiring or un-requiring them) within a particular Issue type.

I am a designer who believes in close collaborations to
push the boundaries of what is possible.

Ask me about ☕️ Chai, 🖋️Calligraphy and 🎻Violin!

© 2023 Meera Ramachandran

I am a designer who believes in close collaborations to
push the boundaries of what is possible.

Ask me about ☕️ Chai, 🖋️Calligraphy and 🎻Violin!

© 2023 Meera Ramachandran

I am a designer who believes in close collaborations to
push the boundaries of what is possible.

Ask me about ☕️ Chai, 🖋️Calligraphy and 🎻Violin!

© 2023 Meera Ramachandran