cap 2 sommervile
Procesos de Software
Un proceso de software es un conjunto de actividades relacionadas que conduce a la
producción de un producto de software.
Hay muchos procesos de software diferentes, pero todos tienen que incluir cuatro actividades
que son fundamentales para la ingeniería del software:1. Especificación del software: La funcionalidad del software y las limitaciones en su
operación debe ser definido.
2. Diseño e implementación de software: El software para cumplir con la especificación
debe ser producido.
3. La validación del software: El software debe ser validado para asegurarse de que hace lo
que el cliente quiere.
4. La evolución del software: El software debe evolucionar para satisfacer las necesidadescambiantes de los clientes.
Por supuesto, se trata de actividades complejas en sí mismas e incluyen actividades
secundarias como la validación de requisitos, diseño arquitectónico, las pruebas unitarias, etc
Hay también están apoyando las actividades del proceso, como la documentación y la gestión
de configuración de software.Cuando describimos y discutimos los procesos, por lo general hablamos de las actividades en
estos procesos, tales como la especificación de un modelo de datos, el diseño de una interfaz
de usuario, etc, y el ordenamiento de estas actividades. Sin embargo, así como actividades,
descripciones de procesos. También puede incluir:
1. Productos, que son los resultados de una actividad del proceso. Por ejemplo, el resultado de
la actividad de diseño arquitectónico puede ser un modelo del software arquitectura.
2. Roles, que reflejan las responsabilidades de las personas involucradas en el proceso.
Ejemplos de funciones son jefe de proyecto, administrador de configuración, programador, etc
3. Prey postcondiciones, que son declaraciones que son verdaderas antes y después de un actividad del proceso se ha promulgado o producido un producto. Por ejemplo, antes que
comience el diseño arquitectónico, una condición previa puede ser que todos los requisitos
hayan sido aprobado por el cliente; una vez finalizada esta actividad, una postcondición
podría ser que los modelos UML que describen la arquitectura han sido revisados
.
No existe un proceso ideal y la mayoría de las organizaciones han desarrollado sus propios
procesos de desarrollo de software. Los procesos han evolucionado para tomar ventaja de las
capacidades de las personas de una organización y las características específicas de los
sistemas que se están desarrollando.
Para algunos sistemas, tales como sistemas críticos, se requiere un proceso de desarrollo muy
estructurado.
Para los sistemas de negocios, con los requisitos que cambian rápidamente, una menos
formal, flexible
proceso es probable que sea más eficaz.
A veces , los procesos de software se clasifican ya sea como procesos conducidos o ágil.Procesos de Plan de guiado son procesos en los que todas las actividades de proceso se
planeado de antemano y el progreso se mide en contra de este plan. En los procesos ágiles ,
que discuto en el capítulo 3 , la planificación es gradual y es más fácil cambiar la
proceso para reflejar la evolución de las necesidades del cliente , cada enfoque es adecuado
para diferentes tipos de software .
Procesos de software se pueden mejorar por la estandarización de procesos en el que se
reduce la diversidad de procesos de software a través de una organización. Esto conduce a una
mejor comunicación y una reducción en el tiempo de formación, y hace que el soporte de
procesos automatizados más económico. La estandarización es también un primer paso
importante ...
Regístrate para leer el documento completo.