Tecnología

Inicio

Tipos de modelos de procesos de software

Tipos de modelos de procesos de software


Diseño, construcción y mantenimiento de programas requiere tiempo, dinero y, sobre todo, una metodología, una línea de ataque. De lo contrario, los miles y miles de tareas de ingeniería de software relacionados entre sí requiere que rápidamente ir mal. A medida que el software y sus usos han evolucionado y se multiplica, también lo han hecho los procesos utilizados para producirlo.

tipos

Hoy en día, de hecho, hay cientos de modelos de desarrollo, aunque en la práctica muchos son variantes de una docena de modelos tan básicas. Los más utilizados son: la cascada, espiral, de codificación y corrección, creación rápida de prototipos, comercial off-the-shelf (COTS) ajustar, prototipos de usar y tirar, la programación extrema (XP), el proceso unificado (UP), y el ágil proceso. La decisión sobre qué emplear depende en gran medida de las futuras necesidades del usuario final y expectativas, la complejidad del proyecto y el mantenimiento operativo posterior y las limitaciones de tiempo que enfrentan los ingenieros de software.

Significado

La escritura, montaje y pruebas de código es una tarea muy exigente, muy elaborada. La función que se está informatizado debe ser descompuesto en sus partes discretas, las tareas y operaciones de cada parte se tradujeron en líneas de código, y luego estos bloques de código integrados con sus bloques circundantes y el programa en su conjunto. Una vez que esté en funcionamiento, de problemas técnicos imprevistos invariablemente superficie que requiere parches y correcciones. Un programa con una larga vida útil operativa también debe actualizarse periódicamente.

Información de expertos

Ciertos modelos se adaptan a algunas organizaciones mejor que otros. ambientes que no cambian, Frank K y de la Escuela de Economía de Londres observó, tienen procedimientos operativos estándar muy específicas. Modelos que dependen de la documentación riguroso y meticuloso desarrollo como la cascada y el trabajo de caracol mejor aquí. Pero si el cambio constante es la norma, una organización está mejor servido por la rápida creación de prototipos. A veces, sin embargo, la organización aprende a medida que se mueve por delante, y los desarrolladores de software debe ocuparse de incógnitas. En este caso, la creación de prototipos de usar y tirar, el desarrollo exploratorio y procesos de software ágiles funcionan mejor.

Procesos estructurados

Minucioso y requiere mucho tiempo, el proceso en cascada "define antes de que se diseña" y "diseños antes codifica." necesidades de los usuarios están documentados y los requisitos de software identificado, a continuación, la arquitectura del sistema está diseñado; codificación y seguimiento de pruebas. Pero no es un proceso iterativo, uno donde las ideas de diseño y el código se revisan varias veces y refinado. A menudo vagas necesidades de los usuarios volverán a afectar a los desarrolladores. Tomando un enfoque más gradual, el proceso en espiral gestiona este y otros riesgos. Cada fase proporciona parte del software completado. Riesgos y limitaciones se analizan y exploran nuevos enfoques de antemano. Los desarrolladores, por tanto, con frecuencia se combinan ambos procesos.

Los procesos no estructurados

Los usuarios finales suelen presentar a los desarrolladores en el mejor de un conjunto incompleto de los requisitos iniciales. Por ello los diseñadores construir un prototipo con el cliente, probarlo, refinarlo y probar de nuevo hasta que el cliente está satisfecho. A veces los desarrolladores carecen incluso el sistema más rudimentario de los requisitos del usuario final en el arranque de un proyecto y, por lo tanto, depender de un control sobre la marcha, de codificación y fijar proceso exploratorio. COTS se utiliza cuando el tiempo y las restricciones de financiación tienen un gran peso. Aunque conveniente, ajustar el software off-the-shelf tiene un lado negativo: compromisos funcionales a menudo se deben realizar y superar los problemas de interoperabilidad.