1 of 40

Software Engineering

for Machine Learning Systems

Week seven: Design

Imperial DoC, Spring 2024

Andrew Eland

a.eland@imperial.ac.uk

CC BY-SA 4.0 (photos covered separately)

2 of 40

Design

3 of 40

User centered design

A design framework of process in which usability goals, user characteristics, environment, tasks and workflow of a product, service or process are given extensive attention at each stage of the design process.

andreweland.org/swemls a.eland@imperial.ac.uk

4 of 40

The design process

Discovery

Ideate

Prototype

Test

andreweland.org/swemls a.eland@imperial.ac.uk

5 of 40

The design process

Initial ideas

UX research led

Finished features

Visual design led

Early prototypes

Information architecture led

High fidelity prototypes

Interaction design led

andreweland.org/swemls a.eland@imperial.ac.uk

6 of 40

Discovery

The discovery phase involves learning how people currently behave, often in complex environments unfamiliar to the people building a product.

UX researchers will often build personas, descriptions of fictional people who may use our system, including their background and role, to help the team better understand their users.

They’ll use these personas to consider what users says, do, think and feel at many stages throughout a journey of interaction with the system.

andreweland.org/swemls a.eland@imperial.ac.uk

7 of 40

A snapshot of user interaction with the Streams product.

andreweland.org/swemls a.eland@imperial.ac.uk

8 of 40

9 of 40

Initial design prototypes are often sketched on paper for speed.

andreweland.org/swemls a.eland@imperial.ac.uk

10 of 40

Sketches become higher fidelity over time, and more attention is paid to visual design.

andreweland.org/swemls a.eland@imperial.ac.uk

11 of 40

12 of 40

Clarity Focus

Noise Uncertainty Patterns Insights

The design squiggle by Damien Newman

13 of 40

14 of 40

Design for machine learning

Machine learning models are inherently probabilistic, user experiences generally aren’t. It’s very easy to build an interface that overpromises, and hence breaks trust.

andreweland.org/swemls a.eland@imperial.ac.uk

15 of 40

andreweland.org/swemls a.eland@imperial.ac.uk

16 of 40

andreweland.org/swemls a.eland@imperial.ac.uk

17 of 40

Design for machine learning

Machine learning models are inherently probabilistic, user experiences generally aren’t. It’s very easy to build an interface that overpromises, and hence breaks trust.

Machine learning models can produce decisions that are difficult for users to understand. Often we’ll need to explain a decision to build and maintain trust, or comply with convention and regulations in our domain.

andreweland.org/swemls a.eland@imperial.ac.uk

18 of 40

19 of 40

Design for machine learning

Machine learning models are inherently probabilistic, user experiences generally aren’t. It’s very easy to build an interface that overpromises, and hence breaks trust.

Machine learning models can produce decisions that are difficult for users to understand. Often we’ll need to explain a decision to build and maintain trust, or comply with convention and regulations in our domain.

As the decisions made, or answers given, by machine learning systems become more ‘human’, the way in which users react changes. It becomes a new material for design.

andreweland.org/swemls a.eland@imperial.ac.uk

20 of 40

andreweland.org/swemls a.eland@imperial.ac.uk

21 of 40

22 of 40

23 of 40

Clarity Focus

Noise Uncertainty Patterns Insights

The design squiggle by Damien Newman

24 of 40

1984

andreweland.org/swemls a.eland@imperial.ac.uk

25 of 40

1989

andreweland.org/swemls a.eland@imperial.ac.uk

26 of 40

1989

andreweland.org/swemls a.eland@imperial.ac.uk

27 of 40

1990

andreweland.org/swemls a.eland@imperial.ac.uk

28 of 40

1991

andreweland.org/swemls a.eland@imperial.ac.uk

29 of 40

1991

andreweland.org/swemls a.eland@imperial.ac.uk

30 of 40

1995

andreweland.org/swemls a.eland@imperial.ac.uk

31 of 40

1995

andreweland.org/swemls a.eland@imperial.ac.uk

32 of 40

2014

andreweland.org/swemls a.eland@imperial.ac.uk

33 of 40

2014

andreweland.org/swemls a.eland@imperial.ac.uk

34 of 40

Coursework six:

Running in the live environment

35 of 40

Timeline

Lecture: design (you are here - assessment starts now)

Lab

No lecture

Possibly prizes??? (assessment ends 11am)

Coursework 6

andreweland.org/swemls a.eland@imperial.ac.uk

36 of 40

SLA for coursework 6

Maintain a better f3 score than the NHS model.

Alerts delivered within 3 seconds of having the necessary data.

Your mark will be the fraction of time during the testing period that your service meets the SLA.

Adherence to the SLA is recomputed with each new AKI event.

andreweland.org/swemls a.eland@imperial.ac.uk

37 of 40

Coursework 6 simulator

Running now!

env:

- name: MLLP_ADDRESS

value: GROUP_NAME-simulator.coursework6:8440

- name: PAGER_ADDRESS

value: GROUP_NAME-simulator.coursework6:8441

initContainers:

- name: copy-hospital-history

image: ...azurecr.io/coursework6-history

andreweland.org/swemls a.eland@imperial.ac.uk

38 of 40

Alerting

Alerts will be sent by email to each member of your team if:

There’s no pod running in your group’s namespace with the name aki-detection for 10 minutes.

Your pod doesn’t respond with HTTP 200 OK on /metrics on it’s declared port.

Your F3 score drops below the NHS F3 score.

Your latency rises above 3s.

Alerting rules are in gitlab. Feel free to add your own!

andreweland.org/swemls a.eland@imperial.ac.uk

39 of 40

Assessment period

The assessment period starts now. The first AKI event occurs just after 9:10am tomorrow morning.

We will be supporting the lab session on Friday as usual.

andreweland.org/swemls a.eland@imperial.ac.uk

40 of 40

Good luck.

a.eland@imperial.ac.uk

andreweland.org/swemls