Ciclo de vida del desarrollo de software

El ciclo de vida del desarrollo de software (en inglés: SDLC – Systems Development Life Cycle) es la estructura que contiene los procesos, actividades y tareas relacionadas con el desarrollo y mantenimiento de un producto de software, abarcando la vida completa del sistema, desde la definición de los requisitos hasta la finalización de su uso.

Se trata de evitar los costes de rectificar errores de implementación mediante un método que permita a los programadores adelantarse para mejorar sus resultados finales.

Este sistema de desarrollo (o ciclo de vida del proceso de software), necesita de varios pasos imprescindibles para garantizar que los programas ofrezcan una buena experiencia al usuario, seguridad, eficiencia, estabilidad y fiabilidad de uso.

Diagrama de SDLC - Ciclo de vida del desarrollo de software

Descarga tus eBooks gratis

  • Easy, fast, and secure software development
  • Overcoming security challenges with DevSecOps
  • Azure DevOps + GitHub Futures
  • Drive DevOps adoption with GitHub and Visual Studio

Las fases de SDLC

El SDLC es parte del ADN computacional de Ungoti y por este motivo apoyamos el ciclo de vida completo del proyecto a través de las siguientes fases:

Comunicación

Este es el momento en el que un cliente solicita un producto de software determinado. Nos contacta para plasmar sus necesidades concretas y presenta su solicitud de desarrollo de software.

Teamwork
Ideas planifica

Planificación y análisis

El desarrollo de software comienza con una fase inicial de planificación incluyendo un análisis de requisitos. Nos fijamos en los requisitos que piden los clientes para estudiar cuales están poco claros, incompletos, ambiguos o contradictorios. Se indaga en profundidad y se hacen demostraciones prácticas incluyendo a los usuarios clave. Los requisitos se agrupan en requisitos del usuario, requisitos funcionales y requisitos del sistema. La recolección de todos los requisitos se lleva a cabo: estudiando el software actual que tengan, entrevistando a usuarios y desarrolladores, consultando bases de datos o mediante cuestionarios.

En la siguiente fase se fija el alcance del proyecto y se plasma por escrito en un documento.

Descarga tus eBooks gratis

Estudio de viabilidad

Después de la recolección de requisitos, se idea un plan para procesar el software. Se analiza que parte del software cubre los requisitos de cada usuario. Se investiga la viabilidad financiera y tecnológica. Se utilizan algoritmos para saber si el proyecto de software es factible o no.

Ideas inspira
Buscador

Análisis del sistema

En este paso el equipo del proyecto asigna recursos y planifica el tiempo de duración del proyecto. Se buscan limitaciones del producto y se identifican los impactos del proyecto sobre toda la organización en su conjunto.

Diseño

En esta fase ya se comienza a visualizar la solución con la ayuda de las anteriores fases. Se hace un diseño lógico y otro físico. Se crean metadatos, diagramas o pseudocódigos. La duración de esta fase varía de un proyecto a otro.

Especialistas en SharePoint
automatización

Codificación

Esta fase también denominada ‘fase de programación’ o ‘fase de desarrollo’ es en la que elige el lenguaje de programación más conveniente, y se desarrollan programas ejecutables y sin errores de manera eficiente. Nuestro enfoque es construir trozos de funcionalidad. Por lo tanto, entregar unidades de funcionalidad concisa. Al final de esta fase se puede obtener un PMV (Producto mínimo viable) o el software completamente desarrollado y listo para implementarse.

Integración

El Software puede necesitar estar integrado con bibliotecas, bases de datos o con otros programas. Esta fase del SDLC integra el software con las entidades del mundo exterior.

Apps clave para el digital workplace
Ideas checklist

Pruebas

Esta fase junto con la fase de desarrollo entra en un ciclo continuo hasta que se completan el desarrollo y las pruebas. Probamos, probamos y luego volvemos a probar tanto como sea necesario hasta que la funcionalidad sea del 100%.

Además se hacen evaluaciones para evitar errores, incluyendo la evaluación de módulos, programas, productos, y finalmente evaluación con el cliente final. Encontrar errores y su arreglarlos a tiempo es la clave para conseguir un software confiable y eficiente.

Descarga tus eBooks gratis

Implementación

Aquí se instala el software, se evalúa la integración, la adaptabilidad, la portabilidad y se instalan las configuraciones posteriores necesarias.

Gestion de ideas - buena idea
Ideas adapta

Formación

Esta es la fase más interesante, ¡La formación! La adopción del usuario es muy importante y para ello ofrecemos capacitación inicial para cada usuario. Es importante comprobar el nivel de uso, la experiencia de usuario y resolver cualquier dificultad que pueda surgir a la hora de enfrentarse a un nuevo sistema o plataforma.

Mantenimiento y Funcionamiento

Por último, pero no menos importante el mantenimiento es uno de los elementos clave de éxito de cualquier proyecto. En esta fase se minimizan pequeños errores, se confirma el buen funcionamiento del software, su eficiencia y estabilidad. El proyecto ya está completado y necesitamos monitorear y mantener de forma continua para garantizar que el proyecto siga ejecutándose bien.

Ideas Single-signon
Personalizar

Si es necesario se dan nuevas formaciones, o se presta documentación sobre como operar y mantener el software en perfecto estado de funcionamiento. Se adaptan entornos del usuario o tecnológicos, dando mantenimiento al software, actualizando el código y configuración.
El software es efectivo cuando se usa de forma apropiada y por eso el mantenimiento y la mejora de los productos de software es crucial para poder corregir defectos que vayan surgiendo o para poder atender a los requisitos del software.

Soluciones de ciclos de vida de desarrollo de software

Mediante el soporte de Azure DevOps Server de Microsoft te proporcionamos control de versiones, informes, administración de requisitos, administración de proyectos, compilaciones automatizadas, pruebas y capacidades de administración de versiones. Cubriendo todo el ciclo de vida del software y habilitando las capacidades de DevOps.

En Ungoti te ayudamos a planificar de forma más inteligente, a colaborar mejor, a conseguir envíos y entregas inmediatas gracias a un moderno conjunto de servicios de desarrollo.

¿Quieres saber más?

La normativa IEEE/ISO/IEC 12207-2017 – ISO/IEC/IEEE

El ciclo de vida del software puede tener distintas metodologías pero una única normativa ISO/IEC/IEEE 12207:2017 que establece un:

Esta Norma Internacional establece un marco común para los procesos del ciclo de vida del software, con una terminología bien definida, que puede ser referenciada por la industria del software. Contiene procesos, actividades y tareas que deben aplicarse durante la adquisición de un sistema, producto o servicio de software y durante el suministro, el desarrollo, la explotación, el mantenimiento y la eliminación de los productos de software. Esto se logra mediante la participación de las partes interesadas, con el objetivo final de lograr la satisfacción del cliente. Esta Norma Internacional se aplica a la adquisición de sistemas, productos y servicios de software, al suministro, desarrollo, operación, mantenimiento y eliminación de productos de software y a la parte de software de cualquier sistema, ya sea realizada interna o externamente a una organización. El software incluye la parte de software del firmware. Se incluyen aquellos aspectos de la definición del sistema necesarios para proporcionar el contexto de los productos y servicios de software. Esta Norma Internacional también proporciona procesos que pueden emplearse para definir, controlar y mejorar los procesos del ciclo de vida del software dentro de una organización o un proyecto. Los procesos, actividades y tareas de esta Norma Internacional también pueden aplicarse durante la adquisición de un sistema que contenga software.

IEEE Standards Association

La normativa IEEE/ISO/IEC 12207-2017 – ISO/IEC/IEEE en relación a los procesos de ciclo de vida del software;

  • Se aplica a la adquisición de software, productos, servicios, suministro, desarrollo, operación, mantenimiento y eliminación de software interno o externo.
  • Incluye aspectos necesarios para proporcionar el contexto adecuado en relación a los productos y servicios de software.
  • Ayuda a definir y mejorar los procesos del ciclo de vida del software (IEEE) en general.
  • Tiene como objetivo principal lograr la máxima satisfacción del cliente, ofreciendo una excelente calidad en los productos y servicios de software.

Descarga tus eBooks gratis

Temas relacionados​

Desarrollo de Software

Diseña, crea, implementa y manten tu propio software personalizado.

Cloud Computing

Aumenta el potencial, el rendimiento, la calidad y la productividad de tu organización.​

Scroll al inicio