Specifically, I have numerous buttons that will be changing color based on state information from operator input and input from various subcomponents and sensors. I would like to use UML or some other type of design diagrams to be able to capture the color transition.

Some folks have suggested sequence diagrams, but I haven't been able to find any good examples that show how to incorporate this design artifact. I would really like to head in this direction to help developers.

Are sequence designs in fact, appropriate, or is there a more appropriate design?

  • meta.programmers.stackexchange.com/questions/6483/…
    – gnat
    Commented May 28, 2014 at 16:18
  • no desire for this question to be shut down by being perceived as an "Primarily opinion-based" question...I am new to the field of HMI/GUI design, so if there are definitive books, blogs, or papers that address this subject I welcome that insight. I failed to overturn that information so I am seeking concrete guidance on this topic as simple state charts and sequence diagrams seem to be failing. Thank you again.
    – JustADude
    Commented May 28, 2014 at 17:22

1 Answer 1


Use wireframes. Basically a drawing or artificial screenshot of the UI in each state, with transitions marked with the user input that causes the transition. These tend to be clear to both designers and coders.

  • Thanks for the guidance. After taking a brief look at wireframes I may need you to elaborate on "transitions". I didn't see that feature discussed in any great detail, and it is capturing that transition information is what I'm after, e.g. changing the color of the buttons based on event information - either use pressing or external input information. Thanks again for your guidance.
    – JustADude
    Commented May 28, 2014 at 21:35
  • 1
    When we've used them, we just use arrows between two wireframes with the key that causes the transition between them. You can do the same for other events as well.
    – user53141
    Commented May 29, 2014 at 2:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.