¿Existe un diseño estándar para agregar (editar)/eliminar/recargar un archivo? [cerrado]

Estoy creando una aplicación que almacena fotos de mis amigos en una base de datos.

Cada amigo tiene exactamente una foto de sí mismo en la base de datos, por lo que no habrá varias fotos de la misma persona.

Cada acción se compromete cuando el usuario presiona el botón Aceptar. De esta manera los usuarios tienen la opción de corregir errores.

Al realizar una nueva entrada (agregar una nueva imagen), el usuario debe tener las siguientes opciones:

  • subir archivo nuevo
  • eliminar archivo (en caso de que hayan cometido un error)

Cuando trabajan con un archivo existente, los usuarios deberían poder realizar las siguientes acciones:

  • reemplazar el archivo existente por uno nuevo
  • borrar archivo
  • "recargar" el archivo existente desde la base de datos*
  • exportar archivo desde la base de datos

* En caso de que los usuarios sobrescriban o eliminen el archivo original (pero luego se den cuenta de su error), pueden "recargar" el archivo original.

Después de buscar aquí preguntas similares, llegué a la siguiente implementación para ingresar nuevos archivos:

ingrese la descripción de la imagen aquí

Se explica por sí mismo, ya que este es el método que utilizan Google y muchos otros.

Cuando trabajo con datos existentes, tengo un problema. No sé cómo diseñar GUI para tener en cuenta las condiciones que enumeré antes. Lo mejor que se me ocurrió, como aficionado, fue esto:

ingrese la descripción de la imagen aquí

De esta manera, el usuario puede agregar un nuevo archivo (que debería sobrescribir el anterior) con el botón + . Si el usuario decide que fue un error, presionar el botón Actualizar puede "recargar" el archivo antiguo. El usuario puede eliminar el archivo presionando x . Si el usuario decide que la eliminación no es necesaria, al presionar el botón Actualizar se puede "recargar" el archivo antiguo. La exportación de la base de datos de formularios de imágenes se realiza con el botón inferior derecho.

PREGUNTAS:

  • ¿Existe una forma estándar de tratar con las operaciones de archivo descritas anteriormente?
  • Si no, ¿pueden mejorar mi diseño (soy desarrollador de software, no diseñador de gráficos/UX)?
¡Hola! Dado que su pregunta gira en torno al diseño Y la usabilidad, es posible que obtenga algunas buenas respuestas en ux.stackexchange.com si nadie aquí interviene.
Voto para cerrar esta pregunta como fuera de tema porque pertenece a otra pila y es posible que obtenga más ayuda profesional allí: ux.stackexchange.com

Respuestas (1)

He visto que algunas aplicaciones y sitios web hacen algo similar a lo que intentas hacer, pero no presentan tantas opciones en el nivel superior como tú, lo que en realidad facilita que el usuario tome decisiones ( El impacto de la opción es algo real a considerar al diseñar UX).

Algo que diga "Eliminar imagen" podría ser mejor que una "X", es más explícito. La "X" en el campo podría comunicar "despeje el camino fuera de este campo", que no es exactamente lo que está tratando de comunicar a su usuario.

También puede cambiar un poco su flujo para reducir la cantidad de decisiones que el usuario debe tomar en el nivel superior. Para ambos casos de uso, podría tener solo el botón más, o tal vez solo un botón "..." que significa "Examinar".

ingrese la descripción de la imagen aquí

Cuando el usuario presiona "...", se lo lleva a una pantalla o ventana emergente donde puede elegir cargar un nuevo archivo a la base de datos, usar un archivo que ya está en la base de datos o descargar uno de esos archivos. .

ingrese la descripción de la imagen aquí

Gracias por responder. He votado tu respuesta por ahora. Me pregunto si podría usar el ícono de la papelera en lugar de palabras, para poder ahorrar algo de espacio. De todos modos, veo algo en su diseño (primera imagen) que me asusta un poco: cuando el usuario elimina la imagen (haciendo clic en el botón "eliminar imagen"), ¿cómo se supone que debe "deshacer" la operación de tal manera que la imagen existente se "recarga"? Pido disculpas si no estoy claro, el inglés no es mi idioma nativo. PD: lo probé en UX SE pero no tuve suerte. Siento que pido imposibles, o la solución a mi problema es tan simple que nadie quiere molestar...
Si entiendo correctamente cómo funciona su sistema, incluso si eligen "eliminar" la imagen actual, todavía está en la base de datos, ¿sí? Si bien creo que "deshacer" es bueno, no creo que sea una funcionalidad esperada en este tipo de interfaz. Si aún pueden agregar esa misma imagen de la base de datos de todos modos, deshacer no es realmente necesario. Aunque esa es sólo mi opinión. :)
Si entiendo correctamente cómo funciona su sistema, incluso si eligen "eliminar" la imagen actual, todavía está en la base de datos, ¿sí? La imagen permanece en la base de datos siempre que no presionen Guardar , después de eso desaparece. Como ha asumido correctamente, sobrescribir la imagen existente o eliminarla, solo cambia el texto del archivo original del cuadro de texto que no ha cambiado. Para guardar los cambios, el usuario debe hacer clic en Guardar ; de lo contrario, no sobrescribiré ni eliminaré el archivo antiguo. Solo necesito una forma de ofrecer al usuario que conserve el archivo original en caso de eliminarlo/editarlo por error. Espero que las cosas estén más claras ahora.
Si aún pueden agregar esa misma imagen de la base de datos de todos modos, deshacer no es realmente necesario. Eso es cierto, su solución es muy buena para eso. Sin embargo, estoy creando una aplicación de escritorio en Windows y hay un cuadro de diálogo estándar para abrir el archivo. Es realmente un fastidio modificarlo para que se vea y se comporte como tu maqueta. Aún así, lo intentaré...
Es interesante. La mayoría de las aplicaciones que he usado que te permiten asignar una imagen de perfil (twitter, instagram, stackoverflow) no incluyen la funcionalidad que te permite guardar lo que se va a sobrescribir. Por lo general, hacer clic con el botón derecho en "guardar como" (que ni siquiera siempre está disponible) es la única forma de guardar lo que está a punto de sobrescribir. No digo que el hecho de que otras aplicaciones lo hagan de esta manera significa que usted debe hacer lo mismo, pero hay algo que decir sobre las expectativas de los usuarios. A menos que su jefe le diga que es una característica imprescindible. En cuyo caso ignora todo lo que he dicho. :)