During the design phase UML sequence diagrams are further refined with platfom dependent implementation details, like GUI details and data storage details. Now you also look at the non-functional requirements. Some examples:

Requirement: U003 Hint/Autosave possibility   

Autosave is a saving function which automatically saves the current progress of the puzzle, helping to reduce the risk of data loss.

 

For each user request (set digit, set color, apply logic and so on) the state of the board is "stringified" by a JSON object and the resulting character string is stored in the local storage of the browser.

The sudoku object represents the GUI, the model represents the domain model with the analysis classes.

 

Requirment: U001 Undo/Redo possibility

The user must have the possibility to rollback and rollforward user actions (keyboard-, mouse- and touchscreen events). Not that such a requirement has functional aspects as well.  The diagram below can help to clarify these aspects.

 

Functional aspects:

When the user (= actor) fires an action request (e.g. ..), the undostack from the current position is cleared. This means that when the user steps back to a previous state of the board and continues with other actions, the ...  are lost

UI guideline Selection before action !!!!