Winston W. Royce

format_list_bulleted Contenido keyboard_arrow_down
ImprimirCitar
Royce en agosto de 1990

Winston Walker Royce (15 de agosto de 1929 - 7 de junio de 1995) fue un informático estadounidense, director del Centro de Tecnología de Software de Lockheed en Austin, Texas. Fue pionero en el campo del desarrollo de software, conocido por su artículo de 1970, del cual se extrajo erróneamente el modelo de cascada para el desarrollo de software.

Biografía

Nacido en 1929, Royce ingresó en el Instituto Tecnológico de California, donde obtuvo su licenciatura en física, su maestría en ingeniería aeronáutica y, en 1959, su doctorado en ingeniería aeronáutica con Julian David Cole, con la tesis Flujo transónico sobre un cuerpo de revolución delgado y sin sustentación.Royce comenzó su carrera como profesor asistente en el Instituto de Tecnología de California. En 1961, empezó como gerente de proyectos en la división aeroespacial de TRW. Su primer proyecto se centró en el diseño de un sistema de planificación de misiones y selección de órbitas para naves espaciales. En los años siguientes, participó en la investigación y el desarrollo de varios sistemas de software grandes y complejos, y comenzó a desarrollar nuevas metodologías para mejorar la gestión de proyectos de software. En 1970 publicó su influyente artículo "Gestión del desarrollo de grandes sistemas de software", en el que presentó varios modelos de gestión de proyectos, incluyendo los que hoy conocemos como cascada, iterativo y ágil. En 1985, recibió el Premio de Sistemas de Información de la AIAA. Durante la década de 1980, fue director del Centro de Tecnología de Software de Lockheed en Austin, Texas. Se jubiló en 1994 y falleció al año siguiente en su casa de Clifton, Virginia.Su hijo mayor es Walker Royce, economista jefe de software de la división Rational de IBM, autor de "Software Project Management: A Unified Framework" y uno de los principales contribuidores a la filosofía de gestión inherente al Proceso Unificado Rational de IBM.

Trabajo

Gestión del desarrollo de sistemas de software grandes

El modelo de cascada para el desarrollo de software se atribuye erróneamente a Royce. Barry Boehm escribió en 1987:
El papel de Royce en 1970 se considera generalmente como el papel que definió el modelo de "caída" escénica del proceso de software. Pero es sorprendente ver tanto que los papeles anteriores de Benington y Hosier tenían buenas aproximaciones al modelo de cascada, y que el papel de Royce ya incorpora prototipado como un paso esencial compatible con el modelo de cascada.
De hecho, Royce demostró que, si bien el desarrollo de grandes sistemas de software requería un enfoque más exhaustivo, existía un riesgo inherente en un enfoque secuencial de una sola pasada. Propuso un enfoque iterativo y abogó por que los proyectos pasaran por esto al menos dos veces.
Figura Royce 1 modelo
Figura 4 modelo Royce
Royce comenzó su artículo de 1970, «Gestión del desarrollo de grandes sistemas de software», con una declaración sobre el origen de sus ideas:
Voy a describir mis opiniones personales sobre la gestión de grandes desarrollos de software. He tenido varias tareas durante los últimos nueve años, principalmente relacionadas con el desarrollo de paquetes de software para la planificación de misiones espaciales, el mando y el análisis posterior al vuelo. En estas asignaciones he experimentado diferentes grados de éxito con respecto a llegar a un estado operativo, a tiempo y dentro de costos. Me he perjudicado por mis experiencias y voy a relacionar algunos de estos prejuicios en esta presentación.
Royce había determinado que el desarrollo de programas informáticos, independientemente de su tamaño o complejidad, podía dividirse en dos etapas: análisis y codificación. Para proyectos pequeños de desarrollo de software, estos dos pasos eran suficientes, pero no para el desarrollo de sistemas de software más grandes. Estos requieren muchos pasos adicionales, lo que confiere al desarrollo un carácter iterativo.Para ilustrar este desarrollo iterativo, Royce propuso varios enfoques, aunque nunca utilizó el término «cascada» ni lo defendió como una metodología eficaz. El primer uso del término «cascada» podría haber sido un artículo de 1976 de Bell y Thayer.Royce imaginó el modelo de la cascada con los siguientes siete pasos:
  • Requisitos de sistemas
  • Requisitos de software
  • Análisis
  • Diseño de programas
  • Codificación
  • Pruebas, y
  • Operación
Los llamó «pasos de implementación para desarrollar un programa informático extenso para su entrega a un cliente». Royce previó una deficiencia importante en esta metodología, que describió como:
La fase de prueba que se produce al final del ciclo de desarrollo es el primer evento para el cual se distinguen el tiempo, almacenamiento, transferencias de entrada/salida, etc.. Estos fenómenos no son precisamente analizables. No son las soluciones a las ecuaciones diferenciales parciales estándar de la física matemática, por ejemplo. Sin embargo, si estos fenómenos no satisfacen las diversas limitaciones externas, se requiere invariablemente un gran rediseño. Un simple parche octal o redo de algún código aislado no solucionará este tipo de dificultades. Es probable que los cambios de diseño necesarios sean tan disruptivos que los requisitos de software en los que se basa el diseño y que proporciona la racionalidad de todo son violados...
Según Royce, en el modelo de proceso, «las iteraciones de diseño nunca se limitan al paso sucesivo», y para ese modelo, la ausencia de iteración es «arriesgada y propicia el fracaso». Como alternativa, Royce propuso un desarrollo más incremental, donde cada paso siguiente se vincula con el anterior. El modelo de cascada «clásico» se muestra en la figura 2. Los modelos se van refinando gradualmente hasta llegar a la figura 10. Royce comenta sobre el modelo de la figura 4:
Creo que el enfoque ilustrado es fundamentalmente racional.

Ingeniería de sistemas informáticos

A principios de la década de 1980, Winston Royce acuñó el término "ingeniería de sistemas de software" (SwSE) en uno de los seminarios del curso de Gestión de Adquisición de Software en el Defense Systems Management College de Fort Belvoir, Virginia.Según Richard H. Thayer, profesor emérito de ingeniería de software en la Universidad Estatal de California, Sacramento, la ingeniería de sistemas de software se ocupa de "aplicar los principios de la ingeniería de sistemas específicamente al desarrollo de sistemas de software grandes y complejos, lo que proporciona una herramienta poderosa para la gestión de procesos y productos". Los ingenieros de sistemas de software pueden asumir la responsabilidad de la "gestión técnica general del sistema y la verificación de los productos finales del sistema".

Arquitectura de software

En el artículo de 1991 «Arquitectura de software: Integración de procesos y tecnología», Royce describió la conexión entre la arquitectura y el proceso de desarrollo de software. Según Philippe Kruchten et al. (2006), este artículo fue el primero en «posicionar la arquitectura de software, tanto en el título como en la perspectiva, entre la tecnología y el proceso».

Véase también

  • Ciclo de vida de desarrollo de sistemas

Publicaciones

Royce publicó varios libros y artículos. Libros

  • 1959. Flujo transónico sobre un cuerpo de revolución no elevador y esbelto. Pasadena: California Institute of Technology, 1959.
  • 1997. Ingeniería de software Project Management2a edición. Con R. Thayer y Ed Yourdon.
Artículos, una selección:
  • 1970. "Managing the Development of Large Software Systems", Proceedings of IEEE WESCON 26 (agosto): 1–9.
  • 1989. "Centro de Tecnología de Software de Lockheed". En: Ingeniería moderna de software, fundaciones y perspectivas actuales. Peter A. Ng (ed.). Van Nostrand Reinhold Co. p. 561-578.
  • 1990. "[2]", 'Dr. Win Royce Process Round Table Aug. 10th 1990
  • 1991. "Problemas actuales". En: Aerospace Software Engineering, editado por Christine Anderson y Merlin Dorfman, 5–15. Washington, D.C.: American Institute of Aeronautics and Astronautics.
  • 1991. "Software Architecture: Integrating Process and Technology", con Walker Royce en TRW Búsqueda, vol. 14, no. 1, págs. 2 a 15.
  • 1992. "Status Report: Prototipado asistido por computadora". Con Walker Royce. En: IEEE Software Vol 9 (6): p. 77 a 81

Referencias

  1. ^ Dr. Winston W. Royce (1929–1995) en www.informatik.uni-bremen.de. Consultado el 27 de octubre de 2008.
  2. ^ [1] El tío Bob Martin menciona la promoción de la cascada de pajar a las 49:41 de esta charla. Consultado el 23 de febrero de 2020
  3. ^ a b c d e f g h Winston W. Royce (1970). "Managing the Development of Large Software Systems" en: Technical Papers of Western Electronic Show and Convention (WesCon) 25–28 de agosto de 1970, Los Ángeles, Estados Unidos.
  4. ^ Christine Anderson, Merlin Dorfman (1991) Ingeniería de software aeroespacial: una colección de conceptos
  5. ^ Ellis Horowitz (1975) Estrategias prácticas para desarrollar sistemas de software grandes. p. xii
  6. ^ "Home: El Instituto Americano de Aeronáutica y Astronáutica". www.aiaa.org. Archivado desde el original el 28 de abril de 2015.
  7. ^ Alan M. Davis, "Tracing: Una necesidad simple reflejada", en: IEEE Software, vol. 12, no. 5, págs. 6 a 7, Sept., 1995
  8. ^ Conoce a nuestros líderes de pensamiento en IBM Rational. Consultado el 27 de octubre de 2008.
  9. ^ Barry W. Boehm (1987). "Software Process Management: Lessons Learned from History" en ICSE '87 Proceedings of the 9th international conference on Software Engineering pp 296-298
  10. ^ Wasserfallmodell: Entstehungskontext, Markus Rerych, Institut für Gestaltungs- und Wirkungsforschung, TU-Wien. Acceso en línea 28 de noviembre de 2007.
  11. ^ Winston W. Royce en interaction-design.org. Consultado el 27 de octubre de 2008.
  12. ^ Bell, Thomas E. y T. A. Thayer. Requisitos de software: ¿Son realmente un problema? Proceedings of the 2nd international conference on Software engineering. IEEE Computer Society Press, 1976.
  13. ^ a b c Richard Hall Thayer (2002). "Software System Engineering: A Tutorial". En: Computadora, abril de 2002.
  14. ^ W.E. Royce y W. Royce, “Software Architecture: Integrating Process and Technology”, TRW Quest, vol. 14, no. 1, 1991, págs. 2 a 15.
  15. ^ Philippe Kruchten, Henk Obbink y Judith Stafford (2006). "El pasado, el presente y el futuro para la arquitectura del software." IEEE Software Vol 23 2). pág. 23
  16. ^ Royce Winston y W. W. Royce Lista de publicaciones del DBLP Bibliography Server.
Más resultados...
Tamaño del texto:
undoredo
format_boldformat_italicformat_underlinedstrikethrough_ssuperscriptsubscriptlink
save