Proceso para el desarrollo de un Proyecto de Software
por Felipe Alarcón
1. 1. Requisitos: Tiene como meta definir y delimitar la funcionalidad del sistema
1.1. Es la base de la negociación con el cliente, basados en la identificación de necesidades del cliente (requerimientos).
1.2. Guía el desarrollo de los demás procesos, medinate el análisis de requerimientos.
1.3. Son la base para la creación de los manuales de usuario
1.4. Destinación de recursos humanos y logísticos para el desarrollo del software.
2. 2. Análisis: Define la estructura general de un sistema y varía de acuerdo con el tipo de sistema a desarrollarse así como su extensibilidad minimizando de esta manera los efectos de cambios futuros
2.1. Debe ser visto como un modelo conceptual y lógico del sistema
2.2. Arquitectura del sistema, directamente relacionado con la naturaleza del problema, enfocandoce en que debe hacer el sistema.
2.3. Definición del modelo de proyecto ha desarrollar
2.3.1. Primer proyecto de su tipo.
2.3.2. Segundo proyecto de su tipo.
2.3.3. Variación de un proyecto.
2.3.4. Proyecto de reescritura de legado.
2.3.5. Proyecto de creación de software reutilizable.
2.3.6. Proyecto de mejora de sistemas o mantenimiento.
2.4. Definición de diagramas de clases, secuencias así como objetos, clases y funiones.
3. 3. Diseño La cual tiene como objeto extender la arquitectura del software previamente definida en el proces de análisis.
3.1. Define todo lo necesario para alcanzar el desarrollo del códicgo del software.
3.2. Diseño de Objetos: Face en la cual se refinan las estructuras de la arquitectura del análisis especificando el detalle de cada clase (diseño de objetos).
3.2.1. Selección de algoritmos.
3.2.2. Estructuras de datos.
3.3. Diseño de sistema: El cual se debe orientar al ambiente donde se implementará, por lo cual se hace necesario conocer las restricciones técnicas bajo las cuales se tiene desplegar el sistema.
3.3.1. Requisitos de rendimiento.
3.3.2. Uso de memoria.
3.3.3. Protocolos de comunicación.
3.3.4. Propiedades del lenguaje de programación.
3.3.5. Sistema de manejo de bases de datos.
3.3.6. Hardware y Software
4. 4. Implementación: Se basa en el modelo de diseño para para generar el código final del sistema
4.1. Elección del lenguaje de programación, la cual influye en el modelo de diseño, motivo por el cual en la face de diseño no se debe depender de de los detalles del lenguaje considerando posibles cambios en el lenguaje de programación.
4.2. Bases de datos: Estas son parte integral de los sistermas de software, por lo cual se debe contemplar el diseño de las bases de datos en la generación del sistema final.
5. 5. Integración: Es uno de los aspectos mas importantes en el desarrollo de software.
5.1. Se hace necesario mantener una buena modularidad en el sistema.
5.2. Las extenciones deben desarrollarse con base en componentes independientes.
6. 6. Pruebas: Es el responsable de constatar la calidad del sistema.
6.1. Validación: Permite establcer si el sistema corresponde a las especificaciones del cliente.
6.2. Verificación: permite establecer si se esta construyendo el sistema correctamente, iniciando desde el nivel mas bajo al mas alto.
6.3. Pruebas unitarias.
6.4. Pruebas de integración y aceptación.
6.4.1. Instalación del software.
6.4.2. Documentación del proceso.