We make a consumer electronics product with some real-time constraints, usually timings and latencies that are acceptable in the user interface. The software engineering team is guided by user experience designers who specify these latencies but have no experience in software design, or the usual tools & methods normal in software companies. We need a simple tool the designers can use to specify sequences and timings in a formal way and the specification needs to be something we can import into the test system to use for automated validation.
PlantUML looks promising and something like the example below would suffice, but the timing specification in the group name can be made to work but is a bit of a kludge. If the requirements do grow, and they almost certainly will, this approach will scale badly. Can anyone suggest something better?
autonumber 1 1 "<b>[000]"
user -> UI: click
group fade 500ms
UI -> Audio: Fade volume down
Audio -> UI: Fade done
end
group track switch 100ms
UI -> Audio: next track
Audio -> FileSystem: File stream open
FileSystem -> Audio: File stream opened
Audio -> UI: stream started
end
group fade 500ms
UI -> Audio: Fade volume up
Audio -> UI: Fade done
end
Aucun commentaire:
Enregistrer un commentaire