Red de conocimiento informático - Conocimiento del nombre de dominio - ¿Qué tipo de proceso de diseño es eficiente, preciso y rápido?

¿Qué tipo de proceso de diseño es eficiente, preciso y rápido?

Para establecer un marco de proceso unificado ágil, sugiero que las empresas de software puedan establecer un marco de proceso unificado ágil basado en sus propias condiciones reales y basado en un proceso unificado (como RUP) que cumpla con ISO 9001. SW-CMM y CMMI SE/SW y otros sistemas de procesos de software organizacional, incluidos procesos ágiles (como XP, Scrum) y procesos pesados ​​(como TSP). A este sistema de proceso híbrido/integrado lo llamo "Marco de proceso unificado ágil" (AUPF).

1. Madurez y diversidad de procesos

En los últimos años, la mejora de los procesos de software ha recibido una atención cada vez mayor en China y hubo un aumento en el número de organizaciones que realizan evaluaciones comerciales de SW-CMM. Hasta ahora, casi doscientas empresas de software en todo el país han pasado las evaluaciones SW-CMM y CMMI en todos los niveles (1 2 3). Por un lado, esto muestra que SW-CMM y CMMI, que originalmente eran estándares militares estadounidenses (ahora se han convertido en estándares internacionales aceptados a nivel mundial), no son inalcanzables. Por otro lado, también muestra que es necesario fortalecer la gestión estandarizada del desarrollo de software. y mejorar la madurez del proceso han sido ampliamente reconocidos por la industria.

Silla de baño para bebés Promoción de temporada calurosa Invasión administrativa de la ciencia Desastre Blog de belleza Las finales se llevan a cabo en Beijing, se reducen las tarifas de telefonía móvil

Al mismo tiempo, la "fiebre ágil" y " La fiebre de unificación" en la industria internacional del software también continúa calentándose. En la década de 1990, los métodos de desarrollo de software liviano representados por DSDM, Scrum, FDD, Crystal, ASD y No solo se ganaron el apoyo activo de muchos clientes, administradores y desarrolladores de software, sino que también fueron ferozmente refutados por los mantenedores de procesos tradicionales. El establecimiento de la Agile Alliance y la publicación del "Manifiesto de desarrollo de software ágil" en febrero de 2001 marcaron la cima de este "movimiento ágil". Como producto de proceso comercial que absorbe la experiencia en procesos de industrias clave como las telecomunicaciones y la defensa nacional, así como de muchas empresas de software de renombre internacional como IBM, HP y Microsoft, Unified Process RUP también ha logrado un éxito generalizado en todo el mundo. Una encuesta realizada en 2002 por una conocida agencia de consultoría a 200 administradores de SI/TI en industrias relacionadas con el software en todo el mundo mostró que la tasa de uso de RUP alcanzó el 51%, que es mucho más alto que SW-CMM (27%) e ISO. 9000 (26%); y en 2003, alrededor del 50% de los encuestados esperaba que más del 50% de sus proyectos utilizaran métodos ágiles, y el 14% de los encuestados creía que todos sus proyectos utilizarían métodos ágiles [2].

Reconocer la diversidad de los procesos de software es tan importante como perseguir su madurez. "No hay una talla única", resulta que no existe una plantilla de proceso que sea uniformemente adecuada para todos los proyectos. Debido a los diferentes contextos de los procesos de software (como negocios, recursos, equipos, cultura), diferentes niveles (como procesos organizacionales, procesos de proyectos, procesos de equipo, procesos individuales) y diferentes tipos de desarrollo (como nuevos productos, reutilización, servicios, líneas de productos), no es sorprendente que tantas metodologías de procesos aparecieran al mismo tiempo.

2. Análisis comparativo de metodologías de procesos

Entonces, ¿cuáles son las características de los procesos ágiles y unificados, y en qué se diferencian de los procesos tradicionales? A continuación utilizamos SW-CMM como referencia para seleccionar las tres metodologías de proceso más típicas (XP, RUP y TSP) para el análisis comparativo.

SW-CMM es un conjunto de puntos de referencia utilizados para evaluar la madurez de los procesos de las organizaciones de software. Aclara lo que la organización debe hacer para implementar sistemáticamente mejoras en los procesos de software y mejorar la madurez de los procesos, pero no especifica. cómo hacerlo. Sus objetivos son generalmente aplicables a todas las organizaciones o proyectos de software. La mayoría de las prácticas clave utilizadas para lograr los objetivos también son adecuadas para proyectos de pequeñas y medianas empresas, y el objetivo principal de muchas de las subprácticas de las prácticas clave es. para ejemplificar cómo implementarlo en grandes proyectos de contratos gubernamentales y de defensa para lograr el objetivo general, solo tiene un valor de referencia para proyectos de pequeñas y medianas empresas.

Además de la atención insuficiente a la integración de procesos, la principal deficiencia de SW-CMM es que carece de algunos elementos importantes de los procesos de software modernos. Su KPA se centra principalmente en documentos estáticos de procesos tradicionales (como diseños, documentos de requisitos, contratos, planes y). informes, etc.), sólo unos pocos KPA enfatizan los artefactos evolutivos (como requisitos, modelos de diseño, código fuente, etc.), el nivel de automatización del entorno de desarrollo y los procesos basados ​​en la arquitectura. [6]

Para aprobar la evaluación lo antes posible, las personas suelen adoptar o imitar el proceso PSP/TSP también desarrollado por SEI. TSP, construido sobre PSP, es probablemente el proceso de trabajo pesado más riguroso hasta el momento. Para mejorar la madurez y previsibilidad del proceso, TSP enfatiza la medición integral y precisa del proceso, que se basa en la producción de una gran cantidad de tablas y documentos de datos complejos y engorrosos y la coordinación de procesos fijos y estilizados, de modo que el El costo de capacitación e implementación es alto.

RUP es un marco de proceso de software con una arquitectura basada en componentes, basada en casos de uso y un desarrollo incremental iterativo como características básicas. Puede usarse ampliamente en proyectos de varios tipos y tamaños. Estrechamente relacionado con la gestión de requisitos, la gestión de cambios de configuración, el modelado visual OOAD * UML, la inspección de calidad continua y otras prácticas juntas encarnan las mejores prácticas del desarrollo de software moderno. RUP define cuatro etapas: inicio, refinamiento, construcción y entrega, y nueve categorías de trabajo que incluyen modelado de negocios, requisitos, análisis y diseño, implementación, pruebas, implementación, gestión de cambios de configuración, gestión de proyectos y entorno. Las etapas corresponden a la división de los hitos principales. Las actividades del flujo de trabajo de diferentes tipos de trabajo se llevan a cabo simultáneamente en las iteraciones del ciclo de vida. La intensidad de ejecución específica se puede ajustar según sea necesario, y los roles, actividades y artefactos también se pueden configurar de manera flexible. Debido a que RUP proporciona contenido extremadamente rico, a menudo se malinterpreta como un proceso pesado. Al personalizar el marco general de RUP, eliminar elementos innecesarios para proyectos específicos y absorber otros métodos ágiles, puede personalizar completamente un proceso RUP ágil y liviano (como el complemento XP de RUP).

Programación Extrema Entre sus 12 prácticas, las pruebas primero, la integración continua, el diseño simplificado, las especificaciones de código, los clientes en el sitio, la semana laboral de 40 horas, los pequeños lanzamientos, etc., existen desde hace mucho tiempo y no son inventos nuevos, pero XP los combina. mediante una integración inteligente llevada al extremo. Prácticas como la propiedad colectiva del código, la programación en pares, la refactorización, las metáforas de sistemas y los juegos de planificación no son aplicables en todas las situaciones, y el uso inadecuado a menudo tendrá el efecto contrario. SW-CMM y XP son complementarios, y autoridades como Barry Boehm y Watts Humphrey creen que XP y SW-CMM son filosóficamente compatibles [5]. La principal diferencia es que este último se centra más en cuestiones de implementación de procesos en la gestión organizacional, mientras que XP se centra en técnicas de desarrollo y ejecución de procesos específicos y no contiene la infraestructura crítica considerada por SW-CMM para institucionalizar buenas prácticas de ingeniería y gestión.

Muchos equipos pueden obtener buenos resultados inesperados al practicar XP bajo ciertas condiciones, pero el alcance de aplicación de XP puro y puro también puede ser muy pequeño. El proyecto del sistema de nómina C3 de Chrysler es probablemente la historia de éxito de XP más citada, pero de hecho el proyecto tuvo problemas más tarde debido a problemas de comunicación entre el equipo de desarrollo y los gerentes. Un proyecto XP clásico tiene problemas con sus elementos centrales de comunicación, algo en lo que realmente vale la pena pensar. [7]

XP está centrado en el código y las actividades de codificación y diseño están integradas, lo que debilita la arquitectura. Esta es la mayor diferencia con RUP, que está centrado en la arquitectura y no tiene modelado ni implementación de negocios. , gestión de procesos y otros conceptos. Los dos también tienen muchas similitudes: ambos utilizan tecnología OO (que reemplaza los métodos estructurados tradicionales), ciclos de iteración evolutiva (que reemplazan los modelos tradicionales en cascada), enfatizan el riesgo y, bajo la premisa de garantizar la entrega continua de los productos disponibles, hacen lo mejor que pueden. Reducir artefactos de proceso innecesarios y minimizar métricas y documentación para ganar resiliencia y adaptabilidad. Debido a que RUP y XP combinan métodos de desarrollo específicos, tienen mejor operatividad que TSP.

El proceso ágil y unificado cumple con la mayoría de los objetivos de SW-CMM y los requisitos de KPA de nivel 2 y 3, y básicamente no involucra KPA de nivel 4 y 5.

Sin embargo, obedecer un marco de proceso de alta calidad como SW-CMM no necesariamente conduce al desarrollo de productos de alta calidad. Un proceso verdaderamente de alta calidad que produce productos de alta calidad debe evaluarse como un proceso maduro [6]. De hecho, muchas organizaciones internacionales que adoptan RUP han alcanzado o superado el nivel 3 de SW-CMM. Pasar la evaluación SW-CMM requiere que las organizaciones realicen muchos esfuerzos complejos y de alto costo en la institucionalización de procesos, pero no existe una conexión inevitable entre la efectividad de la mejora de procesos y la complejidad y el alto costo. La diversidad de opciones de procesos y la versatilidad de los objetivos de SW-CMM determinan la diversidad de enfoques de mejora de procesos.

Había demasiado contenido, así que tuve que buscarlo en línea:

Sitio web de origen: "ERP Chief Designer Forum" (Ferry Search) [Columna ágil]

Involucrando: Soluciones ERP||Análisis de requisitos||Modelado de negocios||Análisis de sistemas||Supervisión de la información;