Case Study
Resolving taxpayer disputes fairly
Making it more accessible to file and manage a tax dispute electronically

The client
United States Tax Court
DAWSON (Docket Access Within a Secure Online Network)
Challenge
Thousands of U.S. taxpayers exercise their right to dispute Internal Revenue Service (IRS) tax claims by bringing their cases to the federal U.S. Tax Court (USTC) each year. Established by an act of Congress in 1924, USTC serves as an independent agency without ties to the Executive Branch. While USTC is based in Washington, DC, Judges and Special Trial Judges travel to 74 U.S. cities to preside at trial. USTC also serves U.S. taxpayers living abroad. In 2022, 29,293 cases were dismissed, settled, and tried in USTC.
The process of suing the U.S. government can be complex and stress-producing, and it was made more so by a decades-old legacy system that originated before the web existed. This management system was reaching its end of life in 2017.
USTC sought a reliable partner to help modernize its legacy software system and create an intuitive, user-friendly case filing and management system. Flexion was awarded the contract in September 2018.
Our approach
The transition to the new system, DAWSON, was complicated by an out-of-date software system and a Non-Disclosure Agreement (NDA). The NDA prevented our team from seeing any part of the existing UI or system data, and we were required to discuss user needs in a technology-agnostic way.
At Flexion, we deploy several collaborative strategies that spring from agile, Lean, and design thinking practices. These strategies help us improve the number of options we keep open as we work toward a viable solution. This rich toolbox and our deep bench helped us find the best solution for this (and every other) client.
(The DAWSON Electronic Filing and Case Management System is named in honor of Chief Judge Howard A. Dawson, Jr., who served USTC as Chief Judge for three terms.)
Here are some of the strategies we deployed:
Solving one problem at a time using “vertical slices.”
Using this technique, we take the smallest piece of user-facing functionality and then design and launch a specific solution to the stated problem. Solving for a narrow slice of integrated components means we can develop a workable solution quickly without creating the complete solution. Our “just in time” approach helped keep options open for each new challenge and didn’t force the project down a path that might be right for solving one part of the problem but not all.
Experimenting with options
We also deployed Option-enabling Architecture (OeA) for the first time on this project. This general-purpose strategy, applied to most of our products, combines simplifying boundaries between parts of the project and managing dependencies so that changes to less-important parts do not adversely impact the most important parts of a system. This allows us to experiment with options in one place without impacting the whole.
Building relationships that reward curiosity and lead to trust
We used several relationship-building techniques to create a safe environment for users to share information. To better understand the circumstances that led to existing processes, we took the time to learn about the organization’s history. We were also careful to verify that we understood what the client said. As we learned about the legacy system, we adopted the practice of asking questions and listening to the answers without judgment or commentary. We also gave everyone on the team space to have their epiphanies by not enforcing dogmatic expectations.
We employed other relationship-building techniques, including:
- Embracing the user’s skepticism about a new system and not taking criticism personally.
- Walking users through “why” their answers are vital as you ask questions.
- Involving users early and often in design feedback sessions.
- Encouraging ownership to contribute to the new design and helping them see how we incorporated their needs and ideas.
We made the most of many Amazon Web Services (AWS) solutions
Using Terraform to manage and deploy the cloud infrastructure, we deployed several AWS solutions and other technologies for various purposes. This included but was not limited to using OpenSearch to index and search records, AWS DynamoDB to store case and user records, and AWS Cognito to manage user accounts and authentication.
Technology stack
Outcomes
Our team’s work throughout this project has resulted in a successfully re-imagined and re-implemented system for USTC with modern, efficient, user-centered capabilities. We are adding functionality based on user feedback, reflecting our earned ability to be open to hearing and responding to client and user needs. Using our iterative method, we can quickly support client and user needs as circumstances change.
Using agile development processes, Flexion worked with the USTC system to modernize its outdated software and streamline its electronic documentation system. Many manual tasks have been offloaded to DAWSON, saving countless person-hours and reducing the opportunity for human error in USTC workflows. Work done in DAWSON has positively affected some USTC processes, making them more efficient and in tune with users’ needs.
Two of the more innovative solutions we enacted resulted in these gains:
Reduced the size of the code base
Both the browser and the server (node.js) ran in JavaScript. Using one language in both places reduced the size of the code base and eliminated the need to context-switch between languages.
Provided high-test coverage
The team used comprehensive automated tests to make big changes to the codebase with confidence that there wouldn’t be any regressions, while linters and validators automatically alerted us to issues.
DAWSON is now cloud-based, accessible from anywhere in the world, and ready to handle all communication. Not only does DAWSON allow USTC to own the system fully, but USTC is empowered to respond more quickly to changing conditions with features, fixes, and more.
USTC continues to use technology to improve the agency’s resilience. The Court renewed our contract in 2023 and we are adding new features to enhance workflow, evolving again to respond to new system complexities as they rise. At this more mature stage, we have already earned the client’s trust and work to maintain it daily. In addition, we have found it valuable to look backward to see if any parts of the system need refactoring — a term that means updating an aspect of the system to meet emerging needs. And we are in an excellent position to help the client imagine even more possibilities.
Ready to change the way you’re doing business?
Contact us to talk about how Flexion can help your organization re-imagine and re-implement your legacy application.
A proud AWS partner.
