Que Computadora Comprar

De Procesos de Software

Hay 4 actividades de los procesos básicos que son aplicables a todos los procesos de software.

1) Especificación de software:

El software debe definir la funcionalidad del software y las limitaciones en su funcionamiento.

2) Desarrollo de software:

El software debe ser desarrollado de acuerdo con su especificación.

3) Software de validación:

El software debe realizar todas las funciones que el cliente quiere.

4) evolución del software:

El software debe desarrollar para satisfacer las cambiantes necesidades de los clientes.

En proceso de software que no hay tal cosa como un “derecho” o caso “equivocado”. Diferentes procesos de software se dividen estas actividades de diferentes maneras. El momento y el resultado de la actividad de cada uno varía según el proceso de software. Utilizando diferentes procesos diferentes tipos de producto de software puede ser producido por una organización. Sin embargo, puede que sea posible para una aplicación particular, algunos procesos son más adecuados que otros tipo de procesos. Si el proceso se utiliza mal, esto probablemente disminuya la calidad o la utilidad del producto de software a desarrollar.

Debido a que hay un número de procesos diferentes modelos se utilizan, es imposible producir datos fiables para la distribución de costes a través de estas actividades. Sin embargo, el software cambia por lo general toma más del 60% de los costos totales de software. Este porcentaje aumenta a medida que más y más software que se produce y tiene que ser mantenida. Diseño de software para el cambio es vital.

Los procesos complejos de software incluyen una variedad de actividades. Los procesos tienen las siguientes características o atributos:

1) Comprensibilidad:

¿Hasta qué nivel es el proceso definido explícitamente y lo fácil que es entender la definición del proceso?

2) Visibilidad:

¿La actividad de los procesos culminan en resultados claros para que el progreso si el proceso es visible desde el exterior.

3) Compatibilidad:

¿Hasta qué nivel pueden ser las actividades del proceso con el apoyo de las herramientas CASE

4) Aceptación:

Es el proceso aceptable y utilizable por los ingenieros responsables de la producción del producto de software?

5) Confiabilidad

Es el proceso desarrollado de tal manera que los errores de proceso se evitan o atrapado antes de que como resultado errores de productos?

6) Robustez:

¿Puede el proceso de seguir adelante a pesar de los problemas inesperados?

7) Capacidad de mantenimiento:

¿Puede el progreso del proceso para reflejar los cambiantes requisitos de la organización o mejoras en los procesos identificados?

8) Rapidez:

¿Qué tan rápido puede el proceso de transferencia de un sistema a partir de la especificación dada se completará

Es imposible optimizar todos los atributos de proceso simultáneamente. Si un proceso de rápido desarrollo que se necesita, entonces puede ser necesario reducir la visibilidad de los procesos, lo que significa un proceso visible la producción de documentos a intervalos regulares. Esto ralentizará el proceso.

Hay una gran variedad de diferentes modelos generales o paradigmas de desarrollo de software:

1) El enfoque en cascada:

Esto lleva a las acciones anteriores y los representa como fases del proceso por separado, como especificación de requisitos, diseño de software, implementación, prueba y así sucesivamente. Después de cada etapa se especifica que es “firmado” y el desarrollo pasa a la siguiente etapa.

Este es el primer modelo explícito del proceso de desarrollo de software se deriva de procesos de ingeniería. Esto fue aceptado con entusiasmo por la gestión de proyectos de software. Se ofrece un medio de hacer el proceso de desarrollo más visibles. Debido a la cascada de una fase a otra, este modelo se conoce como el “modelo de cascada”.

2) el desarrollo evolutivo:

Este enfoque entrelaza las acciones de la especificación, desarrollo y validación. Un sistema inicial se desarrolló rápidamente a partir de definiciones muy abstractos. Esta se define entonces con información del cliente para producir un sistema que satisface la necesidad del cliente. El sistema puede entonces ser transportados. Alternativamente, se puede volver a cabo utilizando un enfoque más planificada para producir un sistema más robusto y fácil de mantener.

El desarrollo evolutivo basado en la idea de diseñar una implementación inicial, la exposición de este comentario de usuario y perfeccionamiento de éstos a través de muchas versiones hasta que un adecuado sistema ha sido desarrollado. En lugar de tener acciones separadas especificación, desarrollo y validación, éstos se llevan a cabo al mismo tiempo que una retroalimentación rápida a través de estas actividades.

3) la transformación formal:

Este enfoque se basa en el desarrollo de una especificación formal del sistema matemático y la transformación de esta especificación, utilizando métodos matemáticos para un programa. Estos valores son la “corrección preservar”, esto significa que puede estar seguro de que el programa desarrollado cumplir con sus especificaciones.

4) Sistema de montaje de los componentes reutilizables:

Esta técnica supone que las partes del sistema ya existe. El proceso de desarrollo del sistema se centra en la integración de estas partes en lugar de desarrollarlos desde cero.

El puño de estos dos enfoques, a saber, enfoque en cascada y el desarrollo evolutivo son ampliamente utilizados para el desarrollo de los sistemas de práctica. Algunos sistemas han sido construidos con la preservación de la corrección, transformaciones, pero esto es todavía un proceso experimental.