Estas metodologías tradicionales imponen una disciplina de trabajo sobre el proceso de desarrollo del software, con el fin de conseguir Aplicaciones más eficiente. Para ello, se hace énfasis en la planificación total de todo el trabajo a realizar y una vez que está todo detallado, comienza el ciclo de desarrollo del Aplicativo que se va entregar con el de Entregar un producto de alta calidad.
Se centran especialmente en el control del proceso, mediante una rigurosa definición de roles, actividades, artefactos, herramientas y notaciones para el modelado y documentación detallada. Además, las metodologías tradicionales no se adaptan adecuadamente a los cambios, por lo que no son métodos adecuados cuando se trabaja en un entorno, donde los requisitos no pueden predecirse o bien pueden variar.
Un ciclo de vida de desarrollo del sistema (SDLC) se refiere a un proceso de construcción o mejora de sistemas de información, y los modelos y metodologías que utilizamos para hacer estos sistemas. Se utilizan no solo para desarrollar sino también para mantener y reemplazar los sistemas de información existentes. Tener una forma estructurada de desarrollar estos sistemas ofrece una serie de ventajas, tales como: facilitar el proceso de construcción de un sistema, ayudar a reducir las fallas y satisfacer las necesidades específicas del usuario final. La mayoría de los SDLC seguirán etapas predefinidas similares al diagrama a continuación.
Entre las metodologías tradicionales o pesadas podemos citar:
- RUP (Rational Unified Procces)
- Cascada (cascade methodology)
- MSF (Microsoft Solution Framework)
- RAD (Desarrollo rápido de aplicaciones)
- Win-Win Spiral Model
- Iconix
- TOGAF (The Open Group Architecture Framework).
- Initiating, Diagnosing, Establishing, Acting & Learning ( IDEAL).
- Método en V
- SSADM (systems analysis and design methodology)
La gran Mayoría de Metodologías desarrollan y comprende siete fases:
- Definir los requisitos del proyecto
- Crea la propuesta
- Desarrollar y aprobar las especificaciones funcionales
- Desarrolle el software y realice la versión Alpha
- Pruebe la garantía de calidad y realice la versión beta
- Realizar el lanzamiento final
- Realice mejoras y ofrezca soporte continuo
- Las siguientes secciones describen cada una de estas siete fases con mayor detalle.
Fase 1 - Definir los requisitos del proyecto
En la primera fase, colaboramos con nuestros clientes para asegurarnos de que entendemos cómo funciona su negocio, sus objetivos y su plan de marketing. Así es como nos aseguramos de comprender completamente los requisitos del proyecto.
Una vez que comprendamos los desafíos y las necesidades específicas de su negocio, definimos el alcance del proyecto y comenzamos a identificar el enfoque de desarrollo y las tecnologías apropiadas. Esto crea la base para el éxito colaborativo a través de la eficiencia, la gestión del trabajo y los productos finales con una calidad excepcionalmente alta.
Naturalmente, si nuestros clientes pueden proporcionar una RFP detallada (solicitud de propuesta) o especificaciones detalladas del proyecto antes de que comience el proyecto, podemos omitir la mayoría o todas las tareas en esta fase y avanzar al documento de propuesta.
Fase 2: crear la propuesta
En la siguiente fase, usamos la información que recopilamos en la Fase 1 para redactar una propuesta detallada. Cada propuesta contiene lo siguiente:
Nuestra visión para el proyecto en su conjunto, incluidos los objetivos para el producto final, una descripción de la funcionalidad del producto final, todas las restricciones (incluido el entorno de trabajo, el presupuesto y el calendario) y cualquier otro requisito que deba cumplirse.
Nuestra estimación del tamaño del proyecto, las horas de trabajo necesarias y el costo previsto para el desarrollo de software.
Nuestro borrador del plan para el proyecto, que incluye un cronograma aproximado y una lista de todos los hitos más importantes.
Una vez que el cliente ha aprobado nuestra propuesta, pasamos a la Fase 3.
Fase 3 - Desarrollar y aprobar las especificaciones funcionales
El cliente puede sugerir cambios, correcciones o adiciones al documento de propuesta. Siempre tratamos de modificar el alcance del proyecto según sea necesario antes de que el trabajo de desarrollo comience, ya que esta es la mejor manera de evitar gastos innecesarios y mantenerse dentro del presupuesto del proyecto. Nos involucramos en un riguroso proceso de ida y vuelta que da como resultado nuestro documento de especificación funcional. Contiene el conjunto completo de especificaciones detalladas para el producto final que estamos desarrollando. Incluye todos los requisitos de fiabilidad, rendimiento y la interfaz de usuario, así como cualquier característica no funcional.
El documento también contiene una descripción de los componentes principales de la arquitectura del software y cómo esos componentes interactúan entre sí. Tener un diseño completo claramente establecido por escrito nos ayuda a evitar tener que hacer cambios de última hora después de que los recursos ya se hayan invertido en el desarrollo de software no deseado. También nos ayuda a mantener el cronograma, ya que los cambios de última hora en la arquitectura del software pueden ser difíciles y lentos de implementar. Cuando seguimos un plan claro, también sabemos que el producto final se integrará fácilmente con los sistemas existentes de nuestros clientes.
A lo largo del proyecto, el plan y la estimación se revisan según sea necesario para que nuestro cliente siempre tenga información precisa sobre el alcance, el presupuesto y el plazo del proyecto, así como nuestro progreso en el cumplimiento de los hitos claramente definidos.
Una vez que el cliente indica la aprobación del documento de especificación funcional al firmarlo, podemos pasar a la siguiente fase en la que realmente comenzamos a desarrollar el software. Una vez que esa fase ha comenzado, cualquier cambio en el alcance del proyecto debe ser solicitado y discutido mediante el uso de nuestro formulario para solicitudes de cambio.
Fase 4: desarrollar el software y llevar a cabo la versión Alpha
El desarrollo del software comienza una vez que todos los requisitos del proyecto y la arquitectura del software se han definido claramente por escrito.
Para cada proyecto, identificamos entregas intermedias que se comparten con el cliente en fechas de hito definidas o antes. Esto le permite al cliente monitorear nuestro progreso. Los clientes pueden revisar cada módulo, elemento o sistema a medida que se completa y asegurarse de que esté alineado con sus objetivos y en camino para crear un producto final que satisfaga sus necesidades comerciales. Una revisión cuidadosa de estos entregables intermedios es importante, ya que puede facilitar la identificación de cualquier error o problema lo antes posible.
Recuerde que cuanto más avanza el proyecto, más costoso se vuelve corregir los errores. Nuestros ingenieros de software prueban los errores inmediatamente después de completar la programación del código, buscando errores lógicos relativamente menores. También prueban las clases para verificar la funcionalidad y confiabilidad a nivel de unidades. Una vez que algunos programas que pertenecen a un solo módulo han pasado esas pruebas, se prueban juntos para la función modular. Del mismo modo, una vez que varios módulos hayan pasado esas pruebas, se agrupan para realizar pruebas más grandes que garanticen que cumplan los requisitos del proyecto. De esta manera, eventualmente todo el sistema pasa pruebas exigentes de funcionalidad y podemos estar seguros de que el producto final satisface las necesidades del cliente.
Una vez que se han completado estas pruebas, llevamos a cabo la versión alfa en la que se entrega el software al cliente para una revisión exhaustiva.
Fase 5: prueba de aseguramiento de la calidad y realiza la versión beta
Después de la versión alfa, realizamos pruebas exhaustivas para garantizar la calidad y llevamos a cabo la versión beta. Todo el código del software se verifica por su funcionalidad, confiabilidad y consistencia. Nuestro equipo de garantía de calidad busca cualquier desviación de nuestros procedimientos estándar y se asegura de que el producto final cumpla con todas las especificaciones. Si se encuentran errores u otros errores, se corrigen inmediatamente para cumplir con los requisitos del proyecto.
Una vez que nuestro equipo de garantía de calidad ha completado sus pruebas internas, el software se implementa en el sitio del cliente para las pruebas beta. De esta forma, el software se puede observar en su entorno previsto, donde el cliente puede probarlo y revisarlo tanto como lo desee dentro del período de tiempo predeterminado que se estableció en el plan del proyecto. Los comentarios del cliente se utilizan para la depuración final y las pruebas adicionales, según sea necesario.
Una vez que la versión beta ha sido aprobada, se convierte en la versión final y el proyecto pasa a la fase de la versión final.
Fase 6 - Realice el lanzamiento final
La sexta fase, la versión final, implica entregar la aplicación de software personalizada al cliente e implementarla en el sitio. Nuestros técnicos instalan el software y realizan todas las configuraciones necesarias para el lanzamiento exitoso de un producto. Luego supervisamos de cerca el rendimiento del sistema para poder ofrecer asistencia inmediata si hay algún problema. La completa satisfacción de nuestros clientes es nuestra principal prioridad en esta y todas las demás fases. Nuestros profesionales amables y expertos capacitan a los empleados del cliente según sea necesario, asegurándose de que tengan todos los conocimientos necesarios. También entregan manuales de usuario u otra documentación técnica que se describió cuando se definió el alcance del proyecto.
Fase 7: realizar mejoras y ofrecer soporte continuo
Orienta Software continúa brindando soporte técnico continuo mucho después de que se haya implementado el proyecto original. Durante un período de tiempo preestablecido, corregimos cualquier error u otro error de forma totalmente gratuita. También seguimos comprometidos a mejorar las aplicaciones de software en reconocimiento de los cambios en la tecnología de la información. Dichas mejoras son críticas para mantener su aplicación de software relevante para su mercado y útil para los usuarios finales. Con este fin, podemos celebrar acuerdos adicionales con nuestros clientes para proporcionar servicios adicionales de mejora y soporte, asegurando que nuestras aplicaciones de software personalizadas sigan siendo útiles para nuestros clientes en los años venideros.
Comentarios