Rational ClearCase es una familia de herramientas de software que admite la gestión de configuración de software (SCM) del código fuente y otros activos de desarrollo de software . También es compatible con la gestión de datos de diseño de artefactos de diseño electrónicos, lo que permite el desarrollo conjunto de hardware y software. ClearCase incluye control de revisiones y constituye la base para la gestión de la configuración en empresas grandes y medianas, y se adapta a proyectos con cientos o miles de desarrolladores. Está desarrollado por IBM .
Autor (es) original (es) | Software Atria |
---|---|
Desarrollador (es) | IBM |
Versión inicial | 1992 |
Lanzamiento estable | 9.1.0 [1] / 1 de diciembre de 2020 |
Sistema operativo | |
Plataforma | [2] |
Tipo | Gestión de configuración de software |
Licencia | EULA de IBM |
Sitio web | www |
ClearCase admite dos modelos de administración de configuración: UCM (administración de cambios unificada) y ClearCase base . UCM proporciona un modelo listo para usar, mientras que ClearCase base proporciona una infraestructura básica (UCM se basa en ClearCase base). Ambos se pueden configurar para soportar una amplia variedad de necesidades.
ClearCase puede acomodar archivos binarios grandes, una gran cantidad de archivos y depósitos de gran tamaño. Admite la ramificación, el etiquetado y el control de versiones de directorios. Utiliza el sistema de archivos MultiVersion ( MVFS ), que es un sistema de archivos virtual que muestra versiones específicas de los datos almacenados. En particular, admite vistas dinámicas que pueden mostrar una combinación arbitraria de archivos locales y remotos. [4] [5]
Historia
ClearCase fue desarrollado por Atria Software y lanzado por primera vez en 1992 [6] en Unix y más tarde en Windows. Algunos de los desarrolladores de Atria habían trabajado en un sistema similar anterior: DSEE ( Domain Software Engineering Environment) de Apollo Computer . Después de que Hewlett-Packard comprara Apollo Computer en 1989, esos desarrolladores se fueron para formar Atria. [7] [8] [9] Atria más tarde se fusionó con Pure Software para formar PureAtria. [10] Esa empresa fue adquirida por Rational Software , que fue comprada por IBM en 2003. [11] IBM continúa desarrollando y comercializando ClearCase. En septiembre de 2016, IBM anunció una asociación estratégica con HCL Technologies que permitirá un desarrollo acelerado.
DSEE introdujo muchos conceptos que fueron adoptados por ClearCase. El sistema de archivos Apollo Domain permitió que los programas de manejo especiales intervinieran durante el acceso a los archivos. DSEE hizo uso de esta función para sustituir de forma invisible una copia versionada cuando se abrió un archivo en particular. [12] Con la especificación de versiones residente en el entorno del usuario, todos los accesos a los archivos versionados fueron redirigidos, incluidos los accesos mundanos como la impresión, la visualización en un editor de texto genérico, etc.
DSEE se basó en gran medida en un archivo que describía todos los módulos de software y sus dependencias. El archivo tenía que generarse manualmente, lo que era un impedimento importante para su uso en sistemas grandes. Sin embargo, una vez generado, permitió a DSEE calcular la forma óptima de realizar una compilación, reutilizando todos los módulos que se habían procesado previamente y cuyas especificaciones de versión coincidían con las especificaciones de la compilación.
DSEE también introdujo la "especificación de versión", que se denominó "hilo". Esta era una lista de posibles versiones que podrían estar en el entorno del usuario o en una compilación. Una innovación importante fue el uso de firmas de compilación y firmas de lanzamiento de software en el hilo. Los elementos de un hilo podrían ser:
- Cualquier copia reservada para su edición (es decir, extraída)
- La última versión (generalmente solo para desarrolladores)
- Una versión ramificada de un archivo (una versión en una línea alternativa de desarrollo).
- Una versión etiquetada (para desarrolladores que trabajan en un nivel de revisión en particular)
- La versión utilizada en la compilación XYZ.
- La versión utilizada en la versión de software xyz
Los hilos se procesaron de arriba a abajo para cada archivo. Un hilo de desarrollador puede tener "reservado" en la parte superior, seguido de una versión etiquetada. Para corregir una versión existente, el hilo estaría "reservado", luego la firma de la versión.
En ausencia de la redirección de archivos invisible del sistema de archivos del dominio Apollo, ClearCase utiliza el sistema de archivos virtual proporcionado por la función MVFS que se describe a continuación. El concepto de "hilo" corresponde a la vista dinámica . El soporte para objetos derivados en una vista es similar al concepto de DSEE.
Infraestructura
El sistema de base de datos que usa ClearCase es RDM Embedded de Raima . En la terminología de ClearCase, una base de datos individual se denomina VOB ( V ersionado O bject B ase). En esta capa, el mantenimiento se lleva a cabo utilizando herramientas Raima. Alrededor de esta capa, se utiliza un conjunto de interfaces con herramientas complementarias para administrar el sistema de base de datos físico, lo que requiere habilidades específicas de administrador de base de datos .
El servicio más importante es Atria Location Broker Daemon (ALBD), que gestiona todas las comunicaciones (LAN) entre ordenadores. A partir de la versión 7, la plataforma del servidor ejecuta Websphere Application Server con una aplicación de servidor llamada Change Management Server (CM Server), que sirve a los clientes de ClearCase a través del protocolo HTTP. (Antes de la versión 7, existía un servicio web mediante el cual los usuarios podían acceder a ClearCase a través de sus navegadores). Desde entonces, el servidor CM ha sido reemplazado por ClearCase Remote Client Wide-Area Network Server (servidor CCRC WAN), que continúa basándose en la aplicación Websphere. Servidor.
Puntos de vista
Una característica distintiva de ClearCase es el sistema de archivos MultiVersion (MVFS), un sistema de archivos en red patentado que puede montar VOB como un sistema de archivos virtual a través de una vista dinámica , seleccionando un conjunto consistente de versiones y permitiendo la producción de objetos derivados . Esta fue una desviación del modelo de repositorio y caja de arena porque habilitó la administración temprana de artefactos (es decir, antes de que se registren) y no se limitó a la administración de estos elementos de configuración de primer orden.
ClearCase también admite vistas instantáneas, que son copias de los datos del repositorio. A diferencia de las vistas dinámicas, las vistas instantáneas se mantienen en un sistema de archivos local (específico del SO) y no requieren acceso a la red. En cambio, una vista instantánea almacena una copia de los datos VOB localmente en la computadora del usuario. Las vistas instantáneas se pueden usar mientras se está desconectado de la red y luego se sincronizan con el VOB cuando se restablece la conexión. Este modo de funcionamiento es similar al del software CVS (Concurrent Versions System).
Los tipos de vista dinámica e instantánea son compatibles con el cliente local de ClearCase (CCLC). El cliente remoto ClearCase (CCRC) admite tipos de vista análogos: la vista automática y la vista web. Ambos se basan en copias, pero la vista automática utiliza MVFS para admitir grupos de objetos VOB locales que se pueden compartir.
Desde la perspectiva de la computadora cliente, una vista de ClearCase parece ser simplemente otro sistema de archivos. Los archivos y directorios nuevos creados en una vista de ClearCase se denominan "vista privada" para indicar que son específicos de la vista y no están controlados por versiones. Esta característica permite que los sistemas de compilación funcionen en la misma estructura del sistema de archivos que el código fuente y garantiza que cada desarrollador pueda compilar de forma independiente. En cualquier momento, un objeto de vista privada se puede agregar al control de código fuente y convertirse en un objeto versionado, haciéndolo visible para otros usuarios.
Los desarrolladores suelen tener una o más vistas a su disposición. A veces es práctico compartir puntos de vista entre desarrolladores, pero compartir ramas es la práctica más común. Una jerarquía de ramas suele ser útil: un proyecto de desarrollo completo puede compartir una rama de desarrollo común, mientras que un equipo más pequeño puede compartir una sub-rama, y cada desarrollador tiene su propia rama privada. Siempre que un cambio en una rama se considere lo suficientemente estable, se puede fusionar con la rama principal.
La especificación de configuración
Bajo ClearCase base, cada vista está controlada por su especificación de configuración asociada , comúnmente conocida como especificación de configuración . Se trata de una colección de reglas (almacenadas internamente en un archivo de texto, pero compiladas antes de su uso) que especifica qué versiones de elementos (archivos o directorios) se mostrarán en una vista. Para determinar qué versión, si alguna, de un elemento debe ser visible, ClearCase atraviesa la especificación de configuración línea por línea de arriba a abajo, deteniéndose cuando se encuentra una coincidencia e ignorando las reglas posteriores. Una especificación de configuración también puede hacer referencia a otras especificaciones de configuración por medio de una declaración 'incluir'.
En el modelo de gestión de UCM, las especificaciones de configuración no necesitan crearse ni mantenerse manualmente: las generan y mantienen las operaciones de ClearCase UCM.
Construye
El sistema de archivos en red proporcionado por MVFS permite la auditoría de compilación . Las vistas compiladas que usan MVFS pueden monitorear y registrar las operaciones de E / S de archivos realizadas durante el proceso de compilación y asociar cada evento de este tipo con el comando que lo activó. Esto permite a ClearCase producir una lista de materiales a la que llama Registro de configuración (CR) para todas las compilaciones y habilitar la trazabilidad para fines de administración de configuración de software o como parte de un proceso de administración del ciclo de vida de la aplicación más amplio . La auditoría de compilación se realiza con herramientas de línea de comandos, como las herramientas de creación integradas ( omake , clearmake ) o mediante el comando clearaudit , que puede invocar otra herramienta de compilación, como Unix make (1).
La base de objetos con versión (VOB) que almacena versiones de elementos de archivo y elementos de directorio también almacena objetos derivados y metadatos asociados con estos tipos de objetos.
El artefacto de lista de materiales producido como resultado de la auditoría de compilación se conoce como Registro de configuración . Contiene:
- El procedimiento de compilación: el método (script, makefile, etc.) que invocó la compilación.
- Entradas: todos los archivos (y sus versiones específicas) que se utilizaron para una compilación en particular.
- Salidas: Todos los archivos de objetos derivados (DO) (y cualquier DO dependiente) producidos como resultado de la compilación.
La información de dependencia se almacena en un registro de configuración que se puede mostrar para cada objeto derivado. El registro de configuración se puede utilizar para crear otra vista que muestre todos los archivos que se han leído previamente durante el tiempo de compilación. El registro de configuración también se puede utilizar para aplicar una etiqueta a los archivos (y versiones) que se leyeron durante la compilación.
MVFS permite que los objetos derivados que se crearon en una vista dinámica se "copien" automáticamente en otra vista dinámica que requiera "exactamente el mismo" objeto derivado. Se considera que dos objetos derivados son "exactamente iguales" si tienen el mismo registro de configuración (es decir, lista de materiales ). Los objetos derivados que se pueden compartir están físicamente presentes en el servidor VOB, no en las vistas que los hacen referencia. Esta función se denomina guiño en objetos derivados y requiere que se utilice la herramienta clearmake o omake para las compilaciones.
Las vistas dinámicas de ClearCase son más lentas que los sistemas de archivos locales, incluso con una buena infraestructura de red. Las compilaciones posteriores repetidas pueden ejecutarse más rápido, debido a la evasión de compilación habilitada por el sustituto de marca de ClearCase . Debido a que MVFS requiere acceso al servidor cada vez que se accede a un archivo, el rendimiento del sistema de archivos depende de la capacidad del servidor.
Tipos de clientes
Originalmente, ClearCase solo admitía clientes completos ("fat") que se ejecutaban de forma nativa en Unix y Windows. En la versión 7, se introdujo ClearCase Remote Client (CCRC). Se basa en el software Eclipse y se suministra en versiones de Eclipse completamente empaquetadas, como complemento para Eclipse y para otros entornos como Visual Studio.
Cliente | Tipo de conexión de red | Conexión al repositorio de objetos controlados por fuente | Tipos de vista | Interfaces de usuario |
---|---|---|---|---|
Cliente local de ClearCase (CCLC) | LAN solamente | Conexión RPC a una base de objetos versionados (VOB) | Instantánea dinámica | ClearTeam Explorer (GUI), herramienta de limpieza (CLI) |
Cliente remoto ClearCase (CCRC) | WAN y LAN | conexión http (s) a un VOB a través de un servidor CCRC WAN | Automático, web | ClearTeam Explorer (GUI), rcleartool (CLI) |
Integraciones
Otros productos de Rational Software, en particular ClearQuest y Rational Team Concert, están integrados con ClearCase. ClearCase también está integrado con Microsoft Visual Studio, Cadence Virtuoso y Eclipse IDE a través de un complemento.
Replicación de la base de datos
ClearCase MultiSite permite a los desarrolladores de diferentes ubicaciones utilizar la misma base de objetos con versión de ClearCase (VOB). Cada ubicación (sitio) tiene su propia copia (réplica) del VOB. La sincronización de datos a través de cualquier protocolo puede ser unidireccional o bidireccional. Los patrones de sincronización pueden ser uno a uno (dos réplicas intercambian datos), anillo (sincronización por turnos), uno a varios (replicación desde un VOB "concentrador") o varios a varios (cada réplica intercambia datos con todas las demás réplicas).
Lanzamientos
V9.1.0 (diciembre de 2020):
- Vea las novedades de IBM Rational ClearCase 9.1.0 .
V9.0.2 (enero de 2020) y versiones menores posteriores:
- Vea las novedades de IBM Rational ClearCase 9.0.2 .
V9.0.1 (junio de 2017) y versiones menores posteriores:
- Vea las novedades de IBM Rational ClearCase 9.0.1 .
V9.0 (marzo de 2016) y versiones menores posteriores:
- Soporte para lanzar GUI de ClearTeam Explorer (Eclipse) desde comandos de Cleartool.
- Autenticación con tarjeta inteligente de ClearCase Remote Clients en Windows mediante CCRC WAN Servers que se ejecutan en Unix y Linux.
- Para admitir compilaciones de productos extremadamente grandes, el tamaño del archivo de base de datos que se utiliza para almacenar registros de configuración para la vista de compilación puede superar los 4 GB.
- Mayor capacidad de los servidores de Windows para alojar más bases de objetos con versiones (VOB).
- Asignación de dominio explícito de ramas que se crean en réplicas VOB.
- Mejoras de rendimiento.
V8.0.1 (junio de 2013) y versiones menores posteriores:
- Administración de ACL detallada y basada en roles en objetos del sistema de archivos ("elementos" de ClearCase).
- Vistas automáticas, una vista compatible con WAN que utiliza el sistema de archivos multiversion ClearCase (MVFS) para proporcionar acceso dinámico a versiones de elementos VOB.
- Vea las novedades de IBM Rational ClearCase 8.0.1 .
V8.0 (octubre de 2011) y versiones menores posteriores:
- ClearTeam Explorer (CTE): una única GUI para todos los tipos de plataforma, cliente y vista de ClearCase.
- Detección y prevención de "gemelos malvados": los "gemelos malvados" son dos elementos del mismo nombre que se han creado en diferentes versiones del mismo elemento de directorio. Cuando se intenta fusionar las versiones del directorio, los elementos se revelan como "gemelos malvados".
- La interfaz de gestión de cambios (CMI): CMI proporciona una interfaz genérica para asociar tareas con versiones de elementos y actividades de UCM. CMI se puede configurar para dar soporte a los proveedores de tareas ClearQuest, Rational Team Concert y JIRA.
- Soporte para tipos de elementos Unicode
- rcleartool (herramienta de limpieza remota), una interfaz de línea de comandos compatible con WAN para CCRC. (cleartool es la función de línea de comandos de ClearCase para implementaciones de LAN).
Ver también
- Lista de software de control de revisiones
- Comparación de software de control de revisiones
- ClearQuest racional
Notas
- ^ "Lista de arreglos y documento de descarga para ClearCase" .
- ^ a b "IBM Rational ClearCase e IBM Rational ClearQuest V9.0 ofrecen mejoras en la solución de gestión de configuración y cambios colaborativos empresariales para equipos de desarrollo de software y sistemas" . IBM . 15 de marzo de 2016.
- ^ "Instalación y uso de extensiones z / OS" .
- ^ "El sistema de archivos de múltiples versiones" . Software racional. 2003. Archivado desde el original el 28 de abril de 2005.
- ^ "Acerca del sistema de archivos MultiVersion (MVFS)" . IBM - Grupo de software. 15 de febrero de 2007.
- ^ "ClearCase - Sistema de gestión de configuración de software de Atria Software Inc. - Nuevos productos: Herramientas de desarrollo - Artículo breve - Anuncio de producto" . Revista de software. 15 de septiembre de 1992 . Consultado el 1 de diciembre de 2007 .
- ^ "Fechas clave en el historial de gestión de configuración de hardware / software" . CM Crossroads LLC. 2007.
- ^ Michael Bucken (agosto de 1995). "El desarrollo complejo le otorga a Atria un rol de IS; el movimiento del vendedor Unix caliente a Windows y NT abre las puertas de IS - Perfil de la empresa" . Revista de software.
- ^ Andrew DeFaria (21 de diciembre de 2004). "Re: cvs vs. clearcase?" .
- ^ Lawrence M. Fisher (7 de junio de 1996). "Software puro para comprar Astria en oferta de acciones" . The New York Times . Consultado el 1 de diciembre de 2007 .
- ^ "IBM Reports 2003 Resultados del primer trimestre" . IBM. 14 de abril de 2003 . Consultado el 9 de enero de 2008 .
- ^ David c. Lubkin (junio de 1991). "DSEE: una herramienta de gestión de configuración de software" . Diario de Hewlett-Packard . Consultado el 17 de julio de 2010 .
Referencias
- Posner, John (1994). "Guía del usuario de CASEVision / ClearCase, número de documento: 007-2369-001" . Silicon Graphics, Inc. Archivado desde el original el 2 de noviembre de 2007.
enlaces externos
- Página web oficial
- Centro de conocimiento de Rational ClearCase
- Base de conocimientos de las soluciones Rational ClearCase
- Consultores y recursos de Rational ClearCase
- Hoja de referencia de Rational ClearCase