El SDLC incluye una fase de diseño para modelar el funcionamiento de la aplicación y los aspectos de diseño. Algunos de los aspectos pueden incluir:
- IU: cómo interactuarán los clientes con el software y cómo responderá el software a determinadas entradas.
- Programación: el lenguaje de programación que se utilizará, así como la forma en que el software solucionará los problemas y realizará las tareas.
- Seguridad: las medidas que se tomarán para garantizar que la aplicación esté protegida. Esto incluye el cifrado SSL, la protección por contraseña y el almacenamiento seguro de datos.
- Comunicaciones: definir cómo se comunicará la aplicación con otros activos, como un servidor central.
- Arquitectura: incluye prácticas de la industria, plantillas, diseño general y lenguajes de programación específicos.
- Plataformas: describe la plataforma que alojará el software, por ejemplo, Apple, Windows, Android o Linux.
Después de haber definido el diseño, se puede crear un prototipo de una versión inicial del software con el fin de obtener una idea básica del aspecto de la aplicación, de cómo responderá y de sus capacidades. Esta es la fase en la que los programadores reciben retroalimentación de las partes interesadas para aprobar la aplicación. La creación de prototipos es mucho menos costosa que tener que realizar cambios en la fase de desarrollo.