I am working on an In Vehicle Infotainment System. This is one particular use case I am finding difficult to think in terms of UX :

  1. There is an IVI system attached in car which can take commands over Internet.

  2. User sitting in the back has a smart phone with a particular App installed that sends commands to the car over Internet.

  3. IVI system can move the windows up or down based on the command.

  4. I have to decide how the UI in the Phone should look like. I thought of a slider kind UI like this. User can slide them up or down to slide the Car windows up or down.

Problem :

Commands travel as follows:

  1. Phone UI to central server through Internet
  2. Central server to respective car IVI through Internet
  3. IVI to the actual car control unit through CAN protocol
  4. Window actually slides

This takes considerable time to complete.

So the speed with which user actually slides in UI is not really shown onto the actual windows behavior. It just doesn't feel intuitive to do.

In fact there need to be back updates to the APP if someone manually changes the window height, which just complicates it more.

Can someone provide some feedback about how I could proceed ?

In general how would UX designers approach the problem when there is a delay in what user can do and the time in which the change actually takes place ?

If someone could quote some similar problem statement/solution in other real world scenario also would be great.

Edit : Rationale behind this feature

  1. Assume you went to some shopping mall. While shopping you realize you might have forgotten to close your windows. In that case, instead of going out and confirming the same, user can just take his phone out and see if window is actually closed or not, and close if required.

Yes, I agree that in this case user would just need a 'CloseAllWindows' kind of button instead of sliding the window to some specific height. But we went on to provide the sliding part as well, just in case for the 'Geeky' ones out there :P

[ Beat this for a rationale : Switching a bulb Big Bang Theory Way ]

Moreover, its not just that this App do only sliding the window up/down. It gives you complete view and control of the car as such. Remote lock/unlock and what not, but Alas, everything with a considerable delay.

Thus, my question was rather in general terms, how UX engineers design when there is a mismatch in what user can do with the UI and how fast the response is visible in the system.

  • Would this delay be both in local (in the car) and for remote use? Commented Mar 4, 2013 at 19:56
  • @StewartDean Yes, coz primary source of connection is internet.
    – Amit Tomar
    Commented Mar 5, 2013 at 5:06
  • So blutooth is out? That's the standard solution for local communication. Using the internet to talk to your car in the car appears to be a bit of a clunky technical solution. Commented Mar 5, 2013 at 23:54
  • @StewartDean No, not for everything. We might very well be using Bluetooth for other requirements. But it has limitations in terms of distance. You can see the edit for the exact use case Internet is specifically required.
    – Amit Tomar
    Commented Mar 6, 2013 at 4:49

2 Answers 2


I'm struggling to understand the rationale for this feature to start off with.. Why on earth would a user take out their smart phone, find and then open up the app, find and select the appropriate function (assuming there would be various functions in this app), interact with it to open/close the window and then wait for a while for it to take effect? When alternatively, they can just move their hand and press a button for immediate action. Has there been any research to verify the need for this feature?

I think as UE/UI designers, part of what we do is to question if a piece of functionality is actually enhancing the user's experience in any way or is it simply functionality for the sake of functionality?

To answer your broader question about how to tackle with delays, I would suggest that it needs to have discrete steps rather than live sliders. This way once a change is status has been initiated, you can show a spinner or some sort of a device to indicate that the action is taking place in the background.

  • I have edited the question for the rationale part you asked. I did think about the discrete step kind of UI. Thanks, it will add to my point when I will be presenting it as an alternate approach.
    – Amit Tomar
    Commented Mar 4, 2013 at 15:02
  • 1
    Your rationale for the use of the app makes all the difference.. If the use case is not to perform immediate actions as such but to provide an overall security/status view of the car, then the lag really makes no difference at all. If I'm in the mall and I closed all the windows using the app, then it doesn't matter if it took 30 secs after that for them to actually close. The UI in the app should be based around those discrete actions, which would add genuine value to the user and would not require live, immediate feedback. Commented Mar 4, 2013 at 15:21

When I'm not sure how to proceed on a UX problem, I like to ask myself: how does this relate to the original value proposition? How is the experience that I'm designing creating value for the user?

If the value is created by having a real-time one-to-one mapping of finger-slide to window movement, then the problem is basically unsolvable with current technology. Even with zero server lag, fingers move at variable speeds while car windows don't.

If the value is created by having the ability to move the windows to a certain height, and a real-time interaction isn't important to the user, then it makes more sense to present it as a deferred action in the UI:


download bmml source – Wireframes created with Balsamiq Mockups

I think the big question to answer, though, is: how does this UX add value beyond what a car's window buttons already provide? That interface has the advantage of being directly wired to the car, so it's always going to have less lag. What does your interface provide that's better?

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.