El diseño de la IU también llamado diseño de la usabilidad es una acción principal de la ingeniería de software. El
diseño de la usabilidad incorpora elementos estéticos (como distribución, color, gráficos, mecanismos de interacción,
etc.), elementos ergonómicos, por ejemplo: distribución y colocación de la información, metáforas, navegación por la IU,
etc. y elementos técnicos como patrones de la IU y patrones reutilizables. En general, la IU es un subsistema único
dentro de la arquitectura general de la aplicación.
El diseño de interfaces externas requiere información definitiva sobre la entidad a la que se envía información o desde
la que se recibe. En todo caso, esta información debe recabarse durante la ingeniería de requerimientos y verificarse una
vez que comienza el diseño de la interfaz. El diseño de interfaces externas debe incorporar la revisión en busca de
errores y cuando sea necesario las medidas de seguridad apropiadas.
El diseño de las interfaces internas se relaciona de cerca con el diseño de componentes. Las realizaciones del diseño
de las clases de análisis representan todas las operaciones y esquemas de mensajería que se requieren para permitir la
comunicación y colaboración entre las operaciones en distintas clases. Cada mensaje debe diseñarse para que contenga
la información que se requiere transmitir y los requerimientos específicos de la función de la operación que se ha
solicitado. Si para el diseño se elige el enfoque clásico de un proceso de entrada-salida, la interfaz de cada componente
del software se diseña con base en las representaciones del flujo de datos y en la funcionalidad descrita en una narrativa
de procesamiento.