Buenas prácticas para el desarrollo de sistemas y software

Una introducción a IBM Rational Solutions for Systems and Software

Los autores Graham Bleakley, Keith Collyer y Joanne Scouler presentan una explicación fácil de entender de las buenas prácticas para IBM® Rational® Solutions for Systems and Software Engineering. El artículo describe el propósito, señala el contenido y explica el soporte de estándares regulatorios.

Dr Graham Bleakley, Rational Principal Consultant, IBM

author photoDr. Graham Bleakley originally studied Mechanical Engineering at Southbank University, this was followed by a PhD in Model Based Systems Engineering and Process for Safety Critical Systems at City University. After going back to Southbank University for 2 years to run and teach the Computer Aided Engineering degree, he left and joined I-Logix in 2000, working as an Application Engineer/Consultant with companies such as BAE, Thales,Selex, MBDA and Alcatel. He has written and presented a number of technical papers at INCOSE as well for other publications on the themes of Model Based Systems Engineering. He is currently a principal consultant in IBM Rational where, when not consulting, he works on Model Based System Engineering Process definition and Architectural Frameworks, being one of the lead architects on the OMG UPDM submission.



Keith Collyer, PhD, Senior Solution Manager, Electronics and Medical Devices Industry Solutions, IBM

author photoDr. Keith Collyer is a subject matter expert in requirements and systems engineering. He trained as an electronic engineer and later moved into software development. His interest in the "people" aspects led him into project management, quality assurance, and processes, never losing sight of the need to develop systems that meet real needs. Throughout much of his career, he has concentrated on helping both large and small organizations introduce requirements management. The key aspects of this are ensuring that the client understands the needs for and benefits from requirements management, clarifying and defining with the client the processes involved, including the necessary information and inter-relationships, and defining an IBM Rational DOORS implementation to best support the client's needs.



Joanne L. Scouler, Curriculum Architect, IBM

Author1 photoJoanne Scouler is a curriculum architect at IBM, where she does business planning and course development for systems engineering software. She has developed and taught training courses on Rational Rhapsody software over the past six years. Her background in embedded systems and software modeling training has involved working with diverse clients, including Raytheon, Draper Lab, Pratt & Whitney, Zoll Medical, and Kollmorgren. Prior to IBM, Joanne worked at Telelogic, Hewlett-Packard, 3Com Corporation, Symantec, and Addison-Wesley. She holds a BA from McGill University.



17-09-2013

Este artículo describe IBM® Rational® Solutions for Systems and Software Engineering y diferencia soluciones específicas de la industria y explica cómo soportan estándares regulatorios. También describe las prácticas incorporadas en las soluciones y proporciona una guía sobre cómo utilizarlas.

Soluciones de IBM Rational

Una solución de Rational consta de un conjunto de herramientas de Rational, servicios y contenido de práctica — un conjunto de prácticas que proporcionan la guía del proceso para soportar la solución. Las soluciones específicas de la industria descritas en este artículo son:

  • Solución de IBM Rational para la industria aeroespacial y de defensa (conformidad DO-178B/C)
  • Solución de IBM Rational para ingeniería automotriz (conformidad ISO-26262)
  • Solución de IBM Rational para dispositivos médicos

Cómo se entregan las prácticas

Cada solución tiene contenido de práctica que ha sido desarrollado y probado para proporcionar una solución completa de gestión del ciclo de vida para una industria particular. El contenido de práctica describe cómo desarrollar un producto o sistema utilizando Rational y herramientas de terceros. Puede descargar los tipos de contenido de práctica publicados desde la página web de IBM Rational Solution Process Assets (vea Recursos).

El contenido de práctica se crea y se gestiona con IBM® Rational® Method Composer, que tiene un lenguaje de dominio basado en Unified Method Architecture (UMA). La terminología utilizada en el contenido de práctica se deriva de UMA.

Práctica o proceso

Existe una distinción importante entre prácticas y procesos. Las prácticas son lo que debe hacer; el proceso es la estructura para hacer las tareas. El proceso define el orden en el cual aplicar las prácticas y hacer el trabajo, de forma que obtenga resultados de ingeniería significativos. Las prácticas aprovechan el proceso de ingeniería de software y sistemas de IBM que explica las tareas y el orden en el que se deben realizar para crear productos de trabajo específicos. Las fases generales clave del proceso son:

  • Preparación del proyecto
  • Análisis de requisitos
  • Análisis funcional
  • Síntesis de diseño
  • Implementación
  • Prueba de unidad

La Figura 1 muestra la conexión entre la práctica y el proceso. La práctica aquí es desarrollo para seguridad funcional de vehículos automotrices según ISO 26262.

La parte del proceso en esta práctica es: "Desarrollar diseño de arquitectura de software según ISO-26262", y muestra las tareas específicas para completar la actividad "6,7 diseño de arquitectura de software". Una actividad es simplemente un flujo de tareas presentadas de forma ordenada.

En el contenido publicado, puede hacer clic en la tarea llamada Analyze SW safety para obtener más información sobre cómo completar la tarea. La tarea se muestra en la Figura 1.

Figura 1. Proceso con tareas para desarrollar el diseño de la arquitectura de software en ISO 26262 de la solución Rational para la ingeniería automotriz
Software architectural design activity diagram

En la tarea Analyze SW safety , es llevado a una página web que describe los roles, las entradas y salidas requeridas, la descripción de la tarea y los enlaces a las prácticas y guías correspondientes. En esta tarea, las prácticas (llamadas Key Considerations) son Safety and Reliability Analysis y High Fidelity Modeling. Puede enlazarse directamente con las prácticas relevantes desde la tarea. La Figura 2 muestra los detalles de la tarea.

Figura 2. Elementos de la tarea Analyze SW safety
Analyze task with description, purpose, etc.

Personalización del contenido de práctica

Puede desarrollar sus propios activos personalizados, tales como sitios web publicados y plantillas de elementos de trabajo. Las plantillas de elementos de trabajo son conjuntos de tareas agrupadas de forma lógica derivadas de una práctica que puede ser instanciada en IBM® Rational Team Concert.™

También puede personalizar el contenido de práctica para que se ajuste al proceso de su organización, tal como un proceso ágil o iterativo. Las plantillas de elementos de trabajo derivadas de una práctica se pueden ajustar a un proceso ágil o iterativo, según cómo esté configurado su proceso. La personalización depende del rol del individuo, de la fase del proceso de desarrollo y de lo que se quiera lograr.

Varias plantillas de elementos de trabajo pueden ser parte de una plantilla de proceso, que es una forma de comenzar un proyecto en Rational Team Concert de forma que soporte un dominio particular. Normalmente, una plantilla de proceso de Rational Team Concert contiene varias plantillas de elementos de trabajo y define varios roles, una estructura de equipo y una estructura de gestión de proyecto básica.


Introducción al contenido básico de la práctica

Para entender las bases del contenido de práctica, comience con el IBM Rational Solution for Systems and Software Engineering. Cuando abre la categoría Practices , ve que las prácticas están organizadas en secciones tituladas Enterprise, Systems Development y Software Development. Estas secciones lo dirigen a diferentes áreas de interés. Por ejemplo, la categoría Enterprise aborda la forma en que se mide el rendimiento y está diseñada para gestores de proyectos y aquellos interesados en las mejoras generales del proceso.

Puede ver el mismo contenido o contenido similar en otras formas para obtener una perspectiva distinta. Por ejemplo, si selecciona un rol, puede ver todas las tareas relevantes asociadas con ese rol. Cuando abre la categoría llamada Delivery Processes, ve dos secciones: SE – Use case focused y Systems Engineering workflow. En ambas secciones, ve la estructura de desglose del trabajo. La primera sección, SE – Use case focused, sigue el proceso general de alto nivel o el flujo de trabajo descrito anteriormente en este documento. Systems Engineering workflow también se basa en el flujo de trabajo general, presentado en la tradición del proceso V de ingeniería en sistemas estándar clásico. La Figura 3 muestra la página de bienvenida de Rational Solution for Systems and Software Engineering.

Figura 3. Página de vista general de Rational Solution for Systems and Software Engineering
Welcome page for Systems and Software Engineering

Cada una de las prácticas para las diferentes industrias (automotriz, médica y aeroespacial) está escrita en el lenguaje de la industria. Cada una de las prácticas incluye los detalles sobre qué tareas se deben realizar. Un conjunto de enlaces incorporados en las prácticas permiten la navegación hacia otro contenido, tales como mentores de herramientas y guías, que le enseñan cómo realizar una tarea. Las prácticas reutilizan mentores de herramientas para capturar métodos comunes para manejar tareas que son comunes para todas las industrias.

Uso de las prácticas

Ubique el contenido de práctica relacionado con su trabajo actual accediendo a los detalles de la jerarquía, en general, a través del flujo de trabajo definido. Alternativamente, la estructura está configurada de forma que pueda identificar el trabajo asociado con su rol. También puede acceder al contenido de práctica a través de los mentores de herramientas incorporados en las herramientas de Rational que usa.

Cuando utiliza una plantilla de elementos de trabajo en Rational Team Concert, crea un conjunto de elementos de trabajo para tareas detalladas en las prácticas. Distintas fases del desarrollo en el flujo de trabajo tienen distintas plantillas de elementos de trabajo, como se muestra en la Figura 4.

Figura 4. Panel de instrumentos del proyecto de Rational Team Concert con elementos de trabajo seleccionados y una lista desplegable mostrando plantillas de elementos de trabajo
Work item templates in ISO 26262 process template

Las plantillas proporcionan una forma rápida y sencilla de implementar el control del proyecto y asistir en la gestión del proyecto. Cada elemento de trabajo también contiene un enlace a la descripción original de la tarea, como se muestra en la Figura 5.

Figura 5. Ingeniería de sistemas para elementos de trabajo de desarrollo de productos en Rational Team Concert
Work item with link to task description

Las plantillas de elementos de trabajo se pueden utilizar de otras formas — por ejemplo, si hay una solicitud de cambio de requisitos, un ingeniero o gestor invoca una plantilla de elementos de trabajo que automáticamente crea un conjunto de elementos de trabajo para esa tarea, de forma que las piezas se puedan asignar a las personas apropiadas. Otro ejemplo: un líder de equipo podría crear una instancia de una plantilla de elementos de trabajo a fin de crear elementos de trabajo para iniciar las tareas relacionadas para implementar el historial de un usuario (caso de uso). El líder de equipo asigna las tareas a miembros del equipo.

Cómo se aplican las prácticas a soluciones específicas de la industria

Para aplicaciones aeroespaciales, un subconjunto de las prácticas básicas se correlaciona en detalle con el estándar DO-178B, llamado Integrated Software Development Process for DO-178B (ISDP-178). El documento de estándares DO-178B, Software Considerations in Airborne Systems and Equipment Certification exige la seguridad del software utilizado en sistemas aéreos. Las prácticas y los productos de trabajo relacionados se correlacionan con conjuntos de objetivos de DO-178B para mostrar conformidad con el estándar. La solución aeroespacial de Rational integra buenas prácticas y herramientas para facilitar el desarrollo de software de aviones certificable.

Para aplicaciones automotrices, Rational tiene contenido de práctica correlacionado con la infraestructura de proceso definida en el estándar de ISO 26262 "Road vehicles – Functional safety". El estándar ISO 26262 es una adaptación del estándar de seguridad funcional internacional IEC 61508 para sistemas electrónicos programables. ISO 26262 define la seguridad funcional para equipos automotrices aplicable durante el ciclo de vida de todos los sistemas automotrices electrónicos y eléctricos relacionados con la seguridad.

En la industria de dispositivos médicos, las prácticas, llamadas Prácticas de Control de Diseño, soportan diversos estándares de la industria, incluidos 21 CFR Part 820.30 y IEC62304. El control de diseño es un método para el desarrollo de sistemas que soporta la evaluación sistemática del diseño como una parte integral del desarrollo. Es un concepto fundamental de la guía de la Administración de Medicamentos y Alimentos (FDA) de EE. UU. para fabricantes de dispositivos médicos y es compatible con los requisitos de otras entidades regulatorias. El control de diseño se puede aplicar a cualquier método o ciclo de vida de desarrollo médico.

Cada una de las soluciones está estructurada de forma distinta, ya que las industrias tienen distintos métodos. Los objetivos definidos por los estándares se alcanzan con un conjunto de entregables producidos mediante el uso del proceso. Distintos estándares tienen distintas áreas de enfoque en términos del ciclo de vida del desarrollo de productos:

Automotriz

  • La solución automotriz cubre la gestión, las operaciones, la producción y el desarrollo de hardware y software, y discute la integración y la gestión a través del proceso. También hace referencia a herramientas de terceros que puede utilizar.
  • El estándar de seguridad automotriz (ISO 26262) se enfoca en todo el ciclo de vida del producto de una "función" o un "elemento" que tenga implicaciones de seguridad.

Industria aeroespacial y de defensa

  • La solución para la industria aeroespacial y de defensa utiliza un método de modelado para desarrollar software.
  • El estándar de seguridad de la industria aeroespacial y de defensa DO178C es sobre el desarrollo de software en el producto.

Dispositivos médicos

  • El estándar de dispositivos médicos IEC 62304 trata sobre el desarrollo de software incorporado para dispositivos médicos.
  • La sección de control del diseño de dispositivos médicos (FDA) no es específica para una tecnología, sino que está basada en entregables y en los objetivos y relaciones entre los entregables. Valida que haya desarrollado lo que dijo que iba a desarrollar.

El estándar ISO 26262 para la industria automotriz está creado en torno al proceso y los entregables, mientras que el estándar DO-178C para la industria aeroespacial y de defensa y el estándar IEC 62304 y el control de diseño para dispositivos médicos están enfocados en objetivos. ISO 26262 es un estándar prescriptivo, mientras que los otros son descriptivos.

Despliegue del contenido de práctica

El contenido de práctica está disponible para descargar de dos formas: como parte de la biblioteca de práctica o como un archivo WAR. El material de origen en la biblioteca de práctica de Rational Method Composer se puede modificar en Rational Method Composer para personalizar o añadir su propio material específico; por ejemplo, actividades y entregables para revisiones obligatorias de la compañía.

Si desea tener una vista previa del contenido de práctica de forma local, puede descargar el archivo .war, renombrarlo como archivo .zip, descomprimirlo y abrirlo utilizando un navegador de HTML estándar.

Si desea desplegar el contenido en Rational Team Concert para obtener todos los beneficios de combinar plantillas de procesos, plantillas de elementos de trabajo y contenido de práctica, descargue el archivo .war e instálelo en el servidor web de Rational Team Concert.


Conclusión

Este artículo describe el propósito y señala el contenido de IBM Rational Solution for Systems and Software Engineering. Ahora, está familiarizado con lo siguiente:

  • Seguir las buenas prácticas y los procesos de Rational para los estándares de la industria
  • Utilizar Rational Method Composer para capturar y modificar el contenido de práctica en las soluciones de la industria
  • Utilizar las plantillas de procesos para crear elementos de trabajo en Rational Team Concert para implementar procesos definidos
  • Enlazar desde plantillas de procesos al contenido de práctica
  • Definir la terminología relacionada con el contenido de práctica
  • Enlazar a materiales descargables en formato de origen o como un sitio web publicado

Recursos

Aprender

Obtener los productos y tecnologías

  • Descargue Rational Method Composer para probarlo sin costo.
  • Descargue Rational Team Concert desde Jazz.net y pruébelo gratis en hasta 10 proyectos por el tiempo que desee (es obligatorio registrarse).Si lo prefiere, puede probarlo también en el recinto de seguridad, sin instalarlo en su propio sistema.
  • Descargue versiones de prueba gratuitas de otro software de Rational.
  • Evalúe otro software IBM de la forma más conveniente para usted: descárguelo para probarlo, pruébelo online, utilícelo en un entorno de nube o pase algunas horas en el Recinto de Seguridad de la SOA aprendiendo cómo implementar eficientemente la arquitectura orientada al servicio.

Comentar

Comentarios

developerWorks: Ingrese

Los campos obligatorios están marcados con un asterisco (*).


¿Necesita un IBM ID?
¿Olvidó su IBM ID?


¿Olvidó su Password?
Cambie su Password

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


La primera vez que inicie sesión en developerWorks, se creará un perfil para usted. La información en su propio perfil (nombre, país/región y nombre de la empresa) se muestra al público y acompañará a cualquier contenido que publique, a menos que opte por la opción de ocultar el nombre de su empresa. Puede actualizar su cuenta de IBM en cualquier momento.

Toda la información enviada es segura.

Elija su nombre para mostrar



La primera vez que inicia sesión en developerWorks se crea un perfil para usted, teniendo que elegir un nombre para mostrar en el mismo. Este nombre acompañará el contenido que usted publique en developerWorks.

Por favor elija un nombre de 3 - 31 caracteres. Su nombre de usuario debe ser único en la comunidad developerWorks y debe ser distinto a su dirección de email por motivos de privacidad.

Los campos obligatorios están marcados con un asterisco (*).

(Por favor elija un nombre de 3 - 31 caracteres.)

Al hacer clic en Enviar, usted está de acuerdo con los términos y condiciones de developerWorks.

 


Toda la información enviada es segura.


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=90
Zone=Rational
ArticleID=962315
ArticleTitle=Buenas prácticas para el desarrollo de sistemas y software
publish-date=09172013