By continuing to use our site, you consent to the processing of cookies in order to operate the site and analyze its effectiveness. The conditions for cookie processing can be found in the Privacy Policy. If you do not want your data to be processed, please leave the site. You can prevent cookie processing through your browser.
Designing complex
systems: 100+ features
accessed every day
Analytics | Design | UX/UI | Programming
We are a full-service digital agency, so our clients often have us design complex systems that combine a large number of functions, roles and tasks. We use our expertise both for our clients' projects and for internal ones, which this case is about.
About a Client
Create a multifunctional system to manage the agency resources and projects.
It has been designed for different roles within the agency: project managers, service managers, financial department, and other specialists.
The system's
jobs-to-be done
  • 1
    Сreation and approval
    of cost estimates
  • 2
    Tracking of agency finance
  • 3
    Project cost controls, margin monitoring,
    target delivery dates management
  • 4
    Pushing projects to invoicing
    and closure
Solution: Kozara
We created Kozara more than 10 years ago. This is our internal product, which has gone all the way from a resource tracker to a full-scale system used by everyone in the company on a daily basis.

It serves a great basis to demonstrate how we design services of this level of complexity.
Kozara start page
Stage 1:
Collecting requirements
At this stage, we collect all system requirements and jobs to be done from all intended users.

Stage result if a documented scope of work including:
Architecture of roles in the system
Functions of the roles
Patterns of interaction between the functions and the roles
Objects that each role interacts with
Kozara is primarily a tool
for managers, which makes following functions a center of the system:
  1. Project initiation
  2. Automated tracking of projects status, profitability, deadlines and expenses
  3. Creation and validation of estimates
  4. Accounting for project resources

All roles and their functions within the system
are connected by automated process flows, already built into the system. Example: the estimate is initiated
by a project manager and pushed to validation. The system automatically identifies the appropriate approvers
and pushes the roles to complete the approval jobs,
at the end informing Finance.
User needs. Collecting jobs and suggestions are the critical minimum. To build a product to be loved,
we go proactive and motivate users to dream a better process.

Logs. Complex projects are bursting with requests, some of which may contradict each other. Detailed backlog
and sprint-based releases are key to keep every data piece mapped.
Musts to address at this stage
Stage 2:

Starts with an integrated flowchart of all requirements, roles, functions and tasks. We use the Business Process Modeling Notation (BPMN) as a basis.

In addition, we use a trace matrix to map how functions affect each other and avoid errors at the implementation stage.

How does it work?

  • Table column 1 holds a name of the function or changes
  • Lines list all the system-related items divided into sections
  • New changes go into the beginning of the line. Then, sequentially we reflect how the interaction happens with the rest of the system elements
* Business Process Modeling Notation (BPMN) is a flowchart method that displays the stages of a business process from start to finish. BPMN diagrams clearly demonstrate the detailed sequence of work actions and the movement of information flows that are necessary to complete the process.
Example of the trace matrix for one of the Kozara functions
Stage 3: 
Design and prototyping
Prototypes are built with A/B tests in mind. The target here is the user-friendliness and intuitive user understanding of the interfaces we create.
We rely not only on our experience, but also on the best practices
in the market, UX design trends and new cases in the industry.

For example, UX patterns benefit from such websites as Really Good UX,
UX Archive, and CollectUI. Well-known task trackers, Google or Yandex,
demos of paid apps and websites are great for multifunctional system interfaces.
Once we assembled the first frames, we jumped to customers and users tests.
All test comments were segmented to critical and nice-to-haves” and logged.
Musts to address at this stage:
The user's
natural language
In the interfaces, we use the terms that our future users prefer, to avoid misunderstandings.
To make it easier for new users, we leave tips for them
next to each section.
over simplicity
A complex system is overloaded with functions and roles, so it
is important to implement
not just a set of steps users go through, but keep the jobs they run in mind and business processes those jobs are a part of.
Complex projects have quite lengthy backlogs. Every new function has potentially tons
of inter-related connections. Keep this in mind, as well as future scaling requirements
as the system grows.
Stage 4:
We have the future users of the system test each function built for its role. Any hick-ups
in usability or flow are eliminated prior to going live. For Kozara, the tests are run
with the agency employees.
usability testing
The user performs a specific task and comments on the process simultaneously. After the experience, an employee provides an overall system interaction opinion. The tests are screen casted are processed to the task lists. Product owner prioritizes the task lists, and the product team pushes those to back-log.
usability testing
The user performs a specific task and comments on the process simultaneously. After the experience, an employee provides an overall system interaction opinion. The tests are screen casted are processed to the task lists. Product owner prioritizes the task lists, and the product team pushes those to back-log.
System use and performance is tracked via mapped events across key system functions. If changes are made to a function, we compare analytics of use of each function release to see how users react to changes.
Kozara is now a product supported by a separate team within our agency. We are constantly adding new features for managers, experts, service directors, and the operations department. UX and design teams focus on making the interfaces simpler and more intuitive, so that the entire agency team enjoys Kozara as a support to their day-to-day work.
Design is one of keys to success in creating and user acceptance of complex systems. On average
this stage takes 25-30% of the overall project time. Although one might have an idea to skip and save on it, we highly recommend to focus on this stage before going into development. User tests run at this stage save big budgets on remodeling a developed solution.
Do you have a similar task?

© 2001–2024 Convergent
All rights reserved
Moscow, 115 114