Updated: March 19, 2021

Designing Intelligent Systems


This section covers the design concepts for intelligent business systems and machine learning in SAP business software.

Guiding Principles

A properly designed intelligent SAP system extends the cognitive capabilities of a human user. As with past generations of tools, our aim should be to empower users and improve the outcome of human work. To achieve this goal, we propose the following guiding principles for designing intelligent systems at SAP.

Principle 1: Human in control. In a business environment, actions triggered in a system have a tangible outcome in the real world that impacts the goals and profits of the company. Because the responsibility and accountability for these actions still lies with the human user, humans must always remain in control of the outcome.

Principle 2: Augment human capabilities. To gain the user’s trust and foster successful adoption, an intelligent system should aim to upskill human experts, rather than replacing them. Providing better transparency and efficient tools for decision making process, integrating user feedback, and presenting information in a way that makes it easier understand are all measures that extend the power and reach of the individual. By contrast, hiding information, simplifying the truth, or reducing the number of options without sufficient transparency puts the user at the mercy of the system. The user must be able to understand and control the intelligent system.

Principle 3: Ethically aligned design. Machines do what they are told to do – there is no moral judgement in an algorithm. Designers and builders of advanced AI systems are stakeholders in the moral implications of their use, misuse, and actions, with a responsibility and opportunity to shape those implications. We need to establish clear and binding ethical rules that intelligent systems must obey. We support the IEEE Global Initiative for Ethically Aligned Design.

Principle 4: Efficient automation. There’s a common misconception that artificial intelligence inevitably means automation. But this depends on the business case and what you want to achieve through automation. We believe that intelligent systems should reduce the effort a user needs to invest to get something done. This means defining the right level of automation for each use case. Where full automation is not feasible, we should aim for greater efficiency. By combining automation with better use of existing information, transparency, and learning effects, intelligent systems can help users to obtain the same result with fewer steps.

Levels of Automation

Automation levels define how autonomously the AI operates, and how much the user has to do manually. As such, the automation level influences the user’s task and the extent of the user’s responsibility. Different automation levels can require different interactions.

Level 0 – No Automation
Users complete all aspects of a task manually, but might be notified about certain events or changes by the system. Users can also call on assistive functions to verify or proof their work.

Level 1 – Assisted Operation
The system actively supports the user by suggesting or recommending possible solutions and actions.

Level 2 – Partially Automated
The system actively evaluates and prepares suitable solutions, but leaves their execution to the user. The user has access to all the relevant information, and must edit or create the data manually.

Level 3 – Highly Automated
The system actively evaluates and presents solutions, which then just need to be reviewed and approved by the user. The user is still the verifying instance, but is not the executing operator.

Level 4 – Fully Automated
The AI has full autonomy (within the boundaries of its task) and operates independently. A human operator is only consulted if errors or conflicts arise. Nevertheless, all actions and decisions must be transparent, traceable and reversible for human auditors.

Why do automation levels matter?

Automation levels help to introduce AI and grow its complexity in stages, without excluding users and losing their trust. The extent of automation and the maximum desirable automation level is always defined by the customer. An intelligent system should allow customers to choose and configure the appropriate level. That’s why defining possible automation levels upfront is important for the design of every intelligent system or design pattern.

General Concepts

Depending on the use case and desired output, machine learning tasks can be grouped into several broad categories (such as classification, regression, or clustering tasks). In addition, the concrete approach for implementation can impact the UI in a very specific way.

There are two important aspects to consider when designing intelligent systems that employ machine learning models: explainable AI and establishing a feedback loop.

Explainable AI: How to build trust and empower the user

One of the key guiding design principles for intelligent systems is empowering the end user. This can be achieved by providing sufficient information about the underlying model, and explaining the reasoning behind the results of an algorithm. Empowerment helps to build trust between human and machine.
Read more about explainable AI

Feedback loop: How to learn from the user and for the user

Different types of algorithm may require the feedback from the end user to reinforce the underlying data model. A carefully designed feedback loop is a challenging design task that can involve several new user roles (such as data scientists) and specialized UIs (for example, for feedback monitoring and analysis).

Application-Specific Patterns

This section provides a very general overview of the typical machine learning task types.

Categorization and classification: Assign datasets to predefined groups.
Example: As a service agent, I want to classify the priority of incoming requests (high/medium/low) based on their content to improve customer service.

Clustering: Discover new groups (clusters) and distribute data between them.
Example: As a system administrator, I want to analyze the existing technical role assignments across users to cluster them and create different business roles.

Detection and matching: Assign relationships and detect similarities and anomalies in a given dataset.
Example: As a master data specialist, I want to reduce the number of duplicates in the system during consolidation.

Predictions: Predict future data based on patterns identified in past data, taking into account all potentially relevant information.
Example: As a master data manager, I want to estimate the potential number of change requests my team will need to process in the next quarter to leverage the workload.

Recommendations: Propose datasets or actions based on the current context.
Example: As a material requirements planner, I want to see potential solutions for resolving a material shortage issue.

Relevance and ranking: Distinguish between relevant and less relevant datasets of the same type in relation to the current context.
Example: As a purchaser, I want to see the top X suppliers for a specific product, in the context of a given purchasing request.

Simulation: Explore the outcome of changing variables in a dataset to play out different what-if scenarios.
Example: As a transportation planner, I want to simulate different transportation plan options for a set of freight units.

Related Links

External Links

Intelligent System Design
(blog series on experience.sap.com)