El estereotipo a usar para cada tipo de elemento es el que aparece indicado en la primera fila de la tabla correspondiente. Por ejemplo, `Participante (estereotipo "Participante")'. Ese es el tipo de elemento que debe seleccionarse (de la "Toolbox" correspondiente) para crear el elemento.
Aunque no se indique explícitamente en la normativa, cualquier tipo de elemento se puede agrupar por subsistemas, utilizando para la nomenclatura de dichos elementos los dos niveles de numeración (YYY-XXX, donde YYY corresponde al subsistema y XXX al elemento en cuestión). En la normativa se indica en aquellos en los que es aconsejable (siempre y cuando existan subsistemas), pero se pueden usar ambas alternativas en cualquier tipo de elemento, agruparlos por subsistemas (YYY-XXX) o no (XXX).
Con carácter general para todos los estereotipos usados en los aplicativos software, las relaciones a incluir deben ser únicamente las descritas en esta normativa. La inclusión de otro tipo de relaciones puede dar lugar a errores a la hora de generar la documentación asociada o al exportar la información a otras herramientas. Si bien en cada uno de los estereotipos se describen las relaciones que debe tener con el resto, en caso de duda, en el apartado correspondiente a las matrices de trazabilidad se puede consultar la obligatoriedad de cada una de las relaciones, en la tabla con las comprobaciones a realizar (aquellas relaciones que no aparezcan en la tabla no son obligatorias).
No deberán embeberse unos elementos del modelado dentro de otros, salvo en los casos contemplados en la normativa, como puede ser el caso de los procesos de negocio asociados a casos de uso concretos.
En todos los elementos modelados, pero sobre todo en las clases y tablas, existen muchos más campos en cada uno de los estereotipos correspondientes además de los que aparecen en este documento. Es recomendable, aunque no vayan a ser revisados o incluidos en la documentación asociada, incluir la mayor cantidad de información posible, y cuanto más detallada mejor, puesto que será de gran ayuda tanto a la hora de consultar la información en el futuro como por ejemplo para generar código fuente o scripts de manera automática.
Por último el campo estado debe cumplimentarse conforme a las siguientes instrucciones:
Participante (estereotipo "Participante") | ||||
---|---|---|---|---|
Nomenclatura | PARXXX - Nombre (XXX será un número de tres dígitos que no podrá repetirse para dos elementos del mismo tipo. En caso de ser necesario se podrán utilizar más de tres dígitos. Esto será de aplicación para todos los elementos excepto que se indique lo contrario.) | |||
Observaciones | Para diferenciar claramente a los actores (y sistemas) de los participantes y evitar confusiones, se ha optado por modelar a los participantes relacionados con el aplicativo con un estereotipo propio, que visualmente además se diferencia del estereotipo "Actor": |
Se ha creado un estereotipo que modifica al predefinido de Enterprise Architect (Actor). Este estereotipo está disponible en la plantilla dentro de "Modelado del Sistema" (Toolbox). | ||||
Relaciones | Los participantes estarán relacionados con los diferentes elementos del modelado de una u otra manera según el tipo de participante:
| |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | PARXXX - Nombre |
Descripción | X | Description |
Estado | X | Status | Approved Proposed N/A | Aunque sólo aparece N/A, se contemplan en realidad las diferentes variantes: - N/A - Borrado lógico - N/A - Borrador - N/A - Previo normativa - N/A Esto será de aplicación para todos los elementos excepto que se indique lo contrario. |
Alias | X | Alias | PARXXX |
Versión (versión y release) | X | Version | vXXrXX | En el último apartado de este documento se recoge la información relacionada con el versionado y la entrega. Esto será de aplicación para todos los elementos excepto que se indique lo contrario. |
Interesado | X | Modelado del Sistema (interesado) | Sí No | Indica si el participante debe tener acceso a la documentación asociada a la aplicación. |
Departamento |
Modelado del Sistema (Departamento) |
Nombre |
Modelado del Sistema (Nombre) |
Rol |
Modelado del Sistema (Rol) |
Teléfono |
Modelado del Sistema (Teléfono) |
Objetivo del Sistema (estereotipo "Feature") | ||||
---|---|---|---|---|
Nomenclatura | OBJXXX - Nombre | |||
Observaciones |
Relaciones | Los objetivos estarán relacionados con los diferentes tipos de requisitos (excepto con los de información) como se verá al llegar a ellos. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | OBJXXX - Nombre |
Descripción | X | Description |
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | OBJXXX |
Prioridad | X | Priority | Low Medium High |
Versión(versión y release) | X | Version | vXXrXX |
Requisito Funcional (estereotipo "Requirement") | ||||
---|---|---|---|---|
Nomenclatura | RFXXX - Nombre | |||
Observaciones |
Relaciones | Los requisitos funcionales estarán relacionados con los objetivos que los originaron. Se debe usar el tipo de enlace "Realization" con origen en el requisito funcional y destino en el objetivo. Los requisitos funcionales estarán relacionados además con los requisitos de información y con los casos de uso, como se verá al llegar a ellos. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | RFXXX - Nombre |
Descripción | X | Description |
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | RFXXX |
Prioridad | X | Priority | Low Medium High |
Versión(versión y release) | X | Version | vXXrXX |
Requisito de Integración (estereotipo "Requirement") | ||||
---|---|---|---|---|
Nomenclatura | RINTXXX - Nombre | |||
Observaciones |
Relaciones | Los requisitos de integración estarán relacionados con los objetivos que los originaron. Se debe usar el tipo de enlace "Realization" con origen en el requisito de integración y destino en el objetivo. Los requisitos de integración estarán relacionados además con los requisitos de información y con los casos de uso, como se verá al llegar a ellos. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | RINTXXX - Nombre |
Descripción | X | Description |
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | RINTXXX |
Prioridad | X | Priority | Low Medium High |
Versión(versión y release) | X | Version | vXXrXX |
Requisito no Funcional (estereotipo "Requirement") | ||||
---|---|---|---|---|
Nomenclatura | RFNXXX - Nombre | |||
Observaciones |
Relaciones | Los requisitos no funcionales estarán relacionados con los objetivos que los originaron. Se debe usar el tipo de enlace "Realization" con origen en el requisito no funcional y destino en el objetivo. Los requisitos no funcionales estarán relacionados además con los requisitos de información y con los casos de uso, como se verá al llegar a ellos. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | RFNXXX - Nombre |
Descripción | X | Description |
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | RFNXXX |
Prioridad | X | Priority | Low Medium High |
Versión(versión y release) | X | Version | vXXrXX |
Requisito de Información (estereotipo "Requirement") | ||||
---|---|---|---|---|
Nomenclatura | RIXXX - Nombre | |||
Observaciones |
Relaciones | Los requisitos de información estarán relacionados con los requisitos (funcionales, no funcionales y/o de integración) que los originaron, se debe usar el tipo de enlace "Realization" con origen en el requisito de información y destino en el requisito que lo originó. Los requisitos de información podrán estar también relacionados con otros requisitos de información (un requisito de información es parte de otros más amplios). Se debe usar el tipo de enlace "Realization" con origen en el requisito de información que forma parte de otro más amplio. Podrán existir requisitos de información que sólo tengan relación con otros requisitos de información, siempre que estos últimos tengan relación con otros requisitos funcionales, no funcionales y/o de integración. Los requisitos de información estarán relacionados además con las tablas, como se verá al llegar a ellas, aunque puede darse el caso de que haya requisitos de información sin tablas asociadas (por ejemplo los datos del usuario pueden leerse de un certificado digital), en ese caso deberá indicarse en el requisito de información (en la descripción) explicando donde estará almacenada la información asociada a dicho requisito de información. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | RIXXX - Nombre |
Descripción | X | Description |
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | RIXXX |
Prioridad | X | Priority | Low Medium High |
Versión(versión y release) | X | Version | vXXrXX |
Subsistema (estereotipo "Package") | ||||
---|---|---|---|---|
Nomenclatura | SUBXXX - Nombre | |||
Observaciones |
Relaciones | Los subsistemas podrán estar relacionados con otros subsistemas (un subsistema es usado por otros). Se debe usar el tipo de enlace "Realization" con origen en el subsistema que es usado por otro. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | SUBXXX - Nombre |
Descripción | X | Description |
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | SUBXXX |
Complejidad | X | Complexity | Easy Medium Dificult |
Versión(versión y release) | X | Version | vXXrXX |
Actor (estereotipo "Actor") | ||||
---|---|---|---|---|
Nomenclatura | ACTXXX - Nombre | |||
Observaciones |
Relaciones | Los actores estarán relacionados con los casos de uso en los que intervienen, como se verá al llegar a ellos. También podrán estar relacionados con otros actores. Un actor es una instancia concreta de otro actor más genérico (un médico de un hospital concreto por ejemplo es una instancia del tipo de actor médico), o bien un actor es una ampliación de otro (por ejemplo disponiendo de más permisos). En el primer caso se debe usar el tipo de enlace "Generalization" con origen en el actor que es una instancia de otro más genérico. En el segundo caso se debe usar el tipo de enlace "Realization" con origen en el actor que amplía al otro. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | ACTXXX - Nombre |
Descripción | X | Description |
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | ACTXXX |
Versión(versión y release) | X | Version | vXXrXX |
Sistema (estereotipo "Actor") | ||||
---|---|---|---|---|
Nomenclatura | SISXXX - Nombre | |||
Observaciones | Según UML, un actor modela un rol externo jugado por un usuario o cualquier otro sistema, es decir, que con el estereotipo "Actor" se podrían modelar ambos, usuarios y sistemas. Sin embargo, para diferenciar claramente ambos tipos de actores y evitar confusiones, se ha optado por usar para los sistemas que interactúan con el aplicativo una nomenclatura propia. | |||
Relaciones | Los sistemas estarán relacionados con los casos de uso en los que intervienen, como se verá al llegar a ellos. También se relacionarán con las interfaces a través de servicios consumidas por la aplicación, identificando al sistema que provee la interfaz consumida, como se verá al llegar a ellos. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | SISXXX - Nombre |
Descripción | X | Description |
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | SISXXX |
Versión(versión y release) | X | Version | vXXrXX |
Caso de Uso (estereotipo "UseCase") | ||||
---|---|---|---|---|
Nomenclatura | CUYYY-XXX - Nombre (YYY coincidirá con el número asociado al subsistema al que pertenece el caso de uso (SUBYYY - Nombre), XXX será un número de tres dígitos que no podrá repetirse. En caso de ser necesario se podrán utilizar más de tres dígitos.). En el caso de no agrupar los casos de uso por subsistemas se usará la notación habitual con sólo un nivel (CUXXX). | |||
Observaciones | Se ha incluido un ejemplo de secuencia normal en todos los casos de uso de la plantilla. Se ha incluido un ejemplo de secuencia alternativa en el caso de uso "CU001-002 - Listado" de la plantilla. Se ha incluido un ejemplo de excepción en el caso de uso "CU001-001 - Alta" de la plantilla. Se ha incluido un ejemplo de extend en el caso de uso "CU001-004 - Modificacion" de la plantilla. Los casos de uso que extienden a otros normalmente empiezan su secuencia normal a partir del último paso de la secuencia normal del caso de uso al que extienden, pero puede darse el caso de que no sea así, empezando desde un paso intermedio de la secuencia normal, o incluso desde un paso cualquiera de otra secuencia. El caso de uso extendido debe incluirse como una referencia en el primer paso de la secuencia normal como se puede ver en el ejemplo, y en el caso de que no se inicie desde el último paso de la secuencia normal del caso de uso extendido, se indicará además el paso desde el que se inicia (y la secuencia si no es la normal). Se ha añadido un ejemplo de include en los casos de uso "CU001-002 - Listado" y "CU001-003 - Busqueda" de la plantilla. Para cada include, en el caso de uso incluido, debe especificarse una secuencia alternativa que debe tener como punto de entrada el primer paso de la secuencia normal. El caso de uso que lo incluye debe añadirse como una referencia en el primer paso de la secuencia alternativa como se puede ver en el ejemplo. Del mismo modo, en el caso de uso que incluye al otro, el caso de uso incluido debe añadirse también como una referencia en el paso correspondiente. | |||
Relaciones | Los casos de uso estarán relacionados con los requisitos (funcionales, no funcionales y/o de integración) que los originaron. Se debe usar el tipo de enlace "Realization" con origen en el caso de uso y destino en el requisito que lo originó. Los actores y sistemas estarán relacionados con los casos de uso en los que intervienen. Se debe usar el tipo de enlace "Association". Los casos de uso estarán relacionados además con las pantallas e informes, las interfaces a través de servicios, las clases, los casos de prueba y los casos de prueba funcionales de interoperabilidad, como se verá al llegar a cada uno de estos elementos. Los casos de uso podrán también interaccionar entre sí mediante extensión e inclusión. Para representarlo se deben usar los tipos de relación "extend" e "include" respectivamente, con origen en el caso de uso que extiende o incluye al otro. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | CUYYY-XXX - Nombre |
Descripción | X | Description |
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | CUYYY-XXX |
Complejidad | X | Complexity | Easy Medium Dificult |
Versión(versión y release) | X | Version | vXXrXX |
Precondición |
Constraint (Type = Pre-Condition) | Precondicion | Se debe incluir la descripción en el campo correspondiente. Si hay más de una al resto se le añadirá una pequeña descripción a continuación de "Precondicion" | ||
Postcondición |
Constraint (Type = Post-Condition) | Postcondicion | Se debe incluir la descripción en el campo correspondiente. Si hay más de una al resto se le añadirá una pequeña descripción a continuación de "Postcondicion" | ||
Secuencia normal | X | Scenarios (Type = Basic-Path) | Secuencia normal | Se deben incluir la descripción en el campo "Description" y los pasos en "Structured Specification" tomando como referencia el ejemplo de la plantilla. |
Secuencia alternativa |
Scenarios (Type = Alternate) | Secuencia alternativa - Nombre | Se deben incluir la descripción en el campo "Description" y los pasos en "Structured Specification", así como el punto de entrada, todo ello tomando como referencia el ejemplo de la plantilla. Puede haber más de una en cada caso de uso. | |
Excepción |
Scenarios (Type = Exception) | Excepcion - Nombre | Se deben incluir la descripción en el campo "Description" y los pasos en "Structured Specification", así como el punto de entrada, todo ello tomando como referencia el ejemplo de la plantilla. Puede haber más de una en cada caso de uso. |
Pantalla (estereotipo "Screen") | ||||
---|---|---|---|---|
Nomenclatura | PANTXXX - Nombre | |||
Observaciones |
Relaciones | Las pantallas estarán relacionadas con los casos de uso de los que derivan. Se debe usar el tipo de enlace "Realization" con origen en la pantalla y destino en el caso de uso que la originó. También se relacionarán con otras pantallas e informes utilizando el tipo de enlace "Association". Se deberá indicar para cada una de estas relaciones su nombre y una breve descripción de la misma, así como el sentido. Se han incluido ejemplos en la plantilla en el diagrama de navegabilidad. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | PANTXXX - Nombre |
Descripción | X | Description |
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | PANTXXX |
Complejidad | X | Complexity | Easy Medium Dificult |
Versión(versión y release) | X | Version | vXXrXX |
Informe (estereotipo "Class" - "model document") | ||||
---|---|---|---|---|
Nomenclatura | INFXXX - Nombre | |||
Observaciones |
Relaciones | Los informes estarán relacionados con los casos de uso de los que derivan. Se debe usar el tipo de enlace "Realization" con origen en el informe y destino en el caso de uso que lo originó. También se relacionarán con pantallas utilizando el tipo de enlace "Association". Se deberá indicar para cada una de estas relaciones su nombre y una breve descripción de la misma, así como el sentido. Se han incluido ejemplos en la plantilla en el diagrama de navegabilidad. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | INFXXX - Nombre |
Descripción | X | Description |
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | INFXXX |
Complejidad | X | Complexity | Easy Medium Dificult |
Versión(versión y release) | X | Version | vXXrXX |
Interface (estereotipo "Interface") | ||||
---|---|---|---|---|
Nomenclatura | INTXXX - Nombre | |||
Observaciones | En la etapa de análisis deberían aparecer los servicios asociados a cada interfaz. No es necesario llegar al máximo nivel de detalle, que se incluiría durante el diseño del sistema, pero sí al menos indicar aquellos servicios relevantes desde el punto de vista funcional. | |||
Relaciones | Los interfaces estarán relacionados con los casos de uso de los que derivan. Se debe usar el tipo de enlace "Realization" con origen en el interfaz y destino en el caso de uso que lo originó. Cada interfaz tiene asociado un elemento del tipo "Exposed Interface", del tipo "Provided" si es un interfaz que el aplicativo provee y del tipo "Required" si es un interfaz que el aplicativo consume. En el caso de interfaz de consumo de servicios, deberá asociarse también el interfaz al sistema que proporciona dicho servicio usando el tipo de relación "Association". Los interfaces estarán relacionados además con las clases que los implementan y con los casos de prueba (de cualquier tipo; software, de integración y funcionales de interoperabilidad), como se verá al llegar a estos elementos. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | INTXXX - Nombre |
Descripción | X | Description |
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | INTXXX |
Complejidad | X | Complexity | Easy Medium Dificult |
Versión(versión y release) | X | Version | vXXrXX |
Servicios | Sólo en entregas asociadas a la fase de Diseño del Sistema | Details (Operations) |
Se debe incluir el nombre (Name), el alcance (Scope) y la descripción (Notes) de manera obligatoria, y el tipo (Type) y los parámetros (Nombre, tipo y descripción en los campos "Parameter", "Type" y "Notes" respectivamente dentro de la pestaña "Parameter") si se conocen. Junto con la descripción (también en "Notes") debe ir una estimación de uso (en la plantilla se puede ver un ejemplo). Esto será obligatorio en el caso de consumo de servicios y aconsejable en el caso de provisión. También es necesario indicar el tipo de servicio (HTTP, FTP, SOAP u Otro). También en el campo "Notes". |
Clase (estereotipo "Class") | ||||
---|---|---|---|---|
Nomenclatura | CLYYY-XXX - Nombre(YYY coincidirá con el número asociado al subsistema al que pertenece la clase (SUBYYY - Nombre), XXX será un número de tres dígitos que no podrá repetirse. En caso de ser necesario se podrán utilizar más de tres dígitos.). En el caso de no agrupar las clases por subsistemas se usará la notación habitual con sólo un nivel (CLXXX). | |||
Observaciones | En la etapa de análisis deberían aparecer además de las clases y las relaciones existentes entre ellas, los principales atributos y métodos de las mismas. No es necesario llegar al máximo nivel de detalle, que se incluiría durante el diseño del sistema, pero sí al menos indicar aquellos métodos y atributos relevantes desde el punto de vista funcional. En el caso de clases de los tipos interface y enumeration, los estereotipos a usar serán "Interface" y "Enumeration" respectivamente, será la única diferencia. Se utilizan estos estereotipos en estos casos para permitir tanto la generación de código como la ingeniería inversa. Todo lo demás (nomenclatura, campos obligatorios, etc.) es idéntico al resto de clases. | |||
Relaciones | Las clases estarán relacionadas con los casos de uso que las originaron, se debe usar el tipo de enlace "Realization" con origen en la clase y destino en el caso de uso que la originó. Las clases estarán también relacionadas con las interfaces a través de servicios que implementan, se debe usar el tipo de enlace "Realization" con origen en la clase y destino en el interfaz que implementa. Las clases estarán relacionadas entre sí mediante diversos tipos de relaciones. Podrán existir clases que sólo tengan relación con otras clases, siempre que estas últimas tengan relación con casos de uso. Dentro de la plantilla, en el diagrama "Clases SUB001 - Subsistema 1 (Logico)" se puede ver un ejemplo de las diferentes relaciones descritas para las clases. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | CLYYY-XXX - Nombre | En el caso de las clases, la nomenclatura es de obligado cumplimiento para el campo alias, pero no para el campo nombre. Los elementos incluidos en la plantilla a modo de ejemplo sirven únicamente como referencia para el modelado, normalmente el nombre de las clases seguirá la nomenclatura habitual de cada aplicativo (convenciones Java, Visual Basic, etc.). |
Descripción | X | Description |
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | CLYYY-XXX |
Complejidad | X | Complexity | Easy Medium Dificult |
Versión(versión y release) | X | Version | vXXrXX |
Alcance | X | Scope | Package Private Protected Public |
Atributos | Sólo en entregas asociadas a la fase de Diseño del Sistema | Details (Attributes) |
Se debe incluir el nombre (Name), el alcance (Scope) y, la descripción (Notes) de manera obligatoria, y el tipo (Type) si se conoce. | ||
Métodos | Sólo en entregas asociadas a la fase de Diseño del Sistema | Details (Operations) |
Se debe incluir el nombre (Name), el alcance (Scope) y la descripción (Notes) de manera obligatoria, y el tipo (Type) y los parámetros (Nombre, tipo y descripción en los campos "Parameter", "Type" y "Notes" respectivamente dentro de la pestaña "Parameter") si se conocen. |
Tabla (estereotipo "Table") | ||||
---|---|---|---|---|
Nomenclatura | TABYYY-XXX - Nombre(YYY coincidirá con el número asociado al subsistema al que pertenece la tabla (SUBYYY - Nombre), XXX será un número de tres dígitos que no podrá repetirse. En caso de ser necesario se podrán utilizar más de tres dígitos.). En el caso de no agrupar las tablas por subsistemas se usará la notación habitual con sólo un nivel (TABXXX). | |||
Observaciones | En la etapa de análisis deberían aparecer además de las tablas y las relaciones existentes entre ellas, los principales campos de las mismas. No es necesario llegar al máximo nivel de detalle (restricciones, índices, triggers, etc.), que se incluiría durante el diseño del sistema, pero sí al menos indicar aquellos elementos relevantes desde el punto de vista funcional | |||
Relaciones | Las tablas estarán relacionadas con los requisitos de información que las originaron. Se debe usar el tipo de enlace "Realization" con origen en la tabla y destino en el requisito de información que la originó. Las tablas estarán relacionadas entre sí mediante diversos tipos de relaciones. Dentro de la plantilla, en el diagrama "Modelo de Datos (Fisico)" se puede ver un ejemplo detallado. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | TABYYY-XXX - Nombre | En el caso de las tablas, La nomenclatura es de obligado cumplimiento para el campo alias, pero no para el campo nombre. Los elementos incluidos en la plantilla a modo de ejemplo sirven únicamente como referencia para el modelado, normalmente el nombre de las tablas seguirá la nomenclatura específica para base de datos del SAS. |
Descripción | X | Description |
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | TABYYY-XXX |
Complejidad | X | Complexity | Easy Medium Dificult |
Versión(versión y release) | X | Version | vXXrXX |
Campos | Sólo en entregas asociadas a la fase de Diseño del Sistema | Table Detail (Columns) |
Se debe incluir el nombre (Name), el tipo ("Type" y además "Length" y "Scale" cuando aplique) y la descripción de manera obligatoria, y las columnas "PK" y "Not Null" cuando aplique. | ||
Restricciones | Sólo en entregas asociadas a la fase de Diseño del Sistema | Table Detail (Constraints) |
Se debe incluir el nombre (Name), el tipo (Type), la descripción (Notes) y, cuando aplique, los campos relacionados (Involved Columns) y/o la condición (Condition). Se modelarán de igual manera índices y triggers (en el campo "Statement" deberá incluirse la sentencia completa de creación del trigger). |
Caso de Prueba (estereotipo "Caso de Prueba") | ||||
---|---|---|---|---|
Nomenclatura | CPYYY-XXX - Nombre(YYY coincidirá con el número asociado al subsistema al que pertenece el caso de prueba (SUBYYY - Nombre), XXX será un número de tres dígitos que no podrá repetirse. En caso de ser necesario se podrán utilizar más de tres dígitos.). En el caso de no agrupar los casos de prueba por subsistemas se usará la notación habitual con sólo un nivel (CPXXX). | |||
Observaciones | Se ha creado un estereotipo que amplía al predefinido de Enterprise Architect ("Use Case" - "testcase"). Este estereotipo está disponible en la plantilla dentro de "Modelado del Sistema" (Toolbox). Como ejemplos de secuencia alternativa y excepción se pueden tomar los mismos que en los casos de uso. | |||
Relaciones | Los casos de prueba estarán relacionados con los casos de uso cuyo comportamiento comprueban. Se debe usar el tipo de enlace "Realization" con origen en el caso de prueba y destino en el caso de uso. Los casos de prueba podrán estar relacionados con las interfaces a través de servicios cuyo comportamiento comprueban. Se debe usar el tipo de enlace "Realization" con origen en el caso de prueba y destino en la interfaz a través de servicios. No es necesario indicar que web services del interfaz a través de servicio están asociadas al caso de prueba. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | CPYYY-XXX - Nombre |
Descripción | X | Description |
En este apartado se incluirán en caso de ser necesario las evidencias asociadas a las pruebas llevadas a cabo por el proveedor. | |||
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | CPYYY-XXX |
Complejidad | X | Complexity | Easy Medium Dificult |
Versión(versión y release) | X | Version | vXXrXX |
Prueba de autorización | X | Modelado del Sistema (Prueba de autorizacion) | Sí No | Indica si el caso de prueba pertenece al conjunto de casos de prueba de autorización. |
Resultado de la ejecución del proveedor |
Modelado del Sistema (Resultado ejecucion proveedor) | Favorable No favorable | Indica el resultado de la ejecución del caso de prueba por parte del proveedor (obligatorio en la entrega asodicada a la fase de construcción) | ||
Smoke test | X | Modelado del Sistema (Smoke test) | Sí No | Indica si es un caso de uso del tipo Smoke test |
Precondición |
Constraint (Type = Pre-Condition) | Precondicion | Se debe incluir la descripción en el campo correspondiente. Si hay más de una al resto se le añadirá una pequeña descripción a continuación de "Precondicion" | ||
Criterios de aceptación |
Constraint (Type = Post-Condition) | Criterios de Aceptacion | Se debe incluir la descripción en el campo correspondiente. | ||
Secuencia normal | X | Scenarios (Type = Basic-Path) | Secuencia normal | Se deben incluir la descripción en el campo "Description" y los pasos en "Structured Specification" tomando como referencia el ejemplo de la plantilla. |
Secuencia alternativa |
Scenarios (Type = Alternate) | Secuencia alternativa - Nombre | Se deben incluir la descripción en el campo "Description" y los pasos en "Structured Specification", así como el punto de entrada, todo ello tomando como referencia el ejemplo de la plantilla. Puede haber más de una en cada caso de uso. | ||
Excepción |
Scenarios (Type = Exception) | Excepcion - Nombre | Se deben incluir la descripción en el campo "Description" y los pasos en "Structured Specification", así como el punto de entrada, todo ello tomando como referencia el ejemplo de la plantilla. Puede haber más de una en cada caso de uso. |
Caso de Prueba de Integración (estereotipo "Caso de Prueba") | ||||
---|---|---|---|---|
Nomenclatura | CPIXXX - Nombre | |||
Observaciones | Se ha creado un estereotipo que amplía al predefinido de Enterprise Architect ("Use Case" - "testcase"). Este estereotipo está disponible en la plantilla dentro de "Modelado del Sistema" (Toolbox). Se han incluido los siguientes casos de prueba predefinidos: BDU:
ESB:
MACO:
REST:
| |||
Relaciones | Los casos de prueba de integración estarán relacionados con las interfaces a través de servicios cuyo comportamiento comprueban. Se debe usar el tipo de enlace "Realization" con origen en el caso de prueba de integración y destino en la interfaz a través de servicios. En los casos de prueba asociados a servicios concretos dentro de una interfaz no es necesario llegar al detalle de crear una relación entre el caso de prueba y el web service concreto del interfaz, basta con la relación entre el caso de prueba y la interfaz. Es en el caso de prueba concreto asociado a cada servicio donde se detalla el servicio que se está probando. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | CPIXXX - Nombre |
Descripción | X | Description |
En este apartado se incluirán en caso de ser necesario las evidencias asociadas a las pruebas llevadas a cabo por el proveedor. | |||
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | CPIXXX |
Complejidad | X | Complexity | Easy Medium Dificult |
Versión(versión y release) | X | Version | vXXrXX |
Prueba de autorización | X | Modelado del Sistema (Prueba de autorizacion) | Sí No | Indica si el caso de prueba pertenece al conjunto de casos de prueba de autorización. |
Resultado de la ejecución del proveedor |
Modelado del Sistema (Resultado ejecucion proveedor) | Favorable No favorable | Indica el resultado de la ejecución del caso de prueba por parte del proveedor (obligatorio en la entrega asodicada a la fase de construcción) | ||
Smoke test | X | Modelado del Sistema (Smoke test) | Sí No | Indica si es un caso de uso del tipo Smoke test |
Precondición |
Constraint (Type = Pre-Condition) | Precondicion | Se debe incluir la descripción en el campo correspondiente. Si hay más de una al resto se le añadirá una pequeña descripción a continuación de "Precondicion" | |
Criterios de aceptación |
Constraint (Type = Post-Condition) | Criterios de Aceptacion | Se debe incluir la descripción en el campo correspondiente. | ||
Secuencia normal | X | Scenarios (Type = Basic-Path) | Secuencia normal | Se deben incluir la descripción en el campo "Description" y los pasos en "Structured Specification" tomando como referencia el ejemplo de la plantilla. |
Secuencia alternativa |
Scenarios (Type = Alternate) | Secuencia alternativa - Nombre | Se deben incluir la descripción en el campo "Description" y los pasos en "Structured Specification", así como el punto de entrada. Se puede tomar como ejemplo el caso de prueba de la plantilla "CP001-001 - Alta". Puede haber más de una en cada caso de uso. | ||
Excepción |
Scenarios (Type = Exception) | Excepcion - Nombre | Se deben incluir la descripción en el campo "Description" y los pasos en "Structured Specification", así como el punto de entrada, todo ello tomando como referencia el ejemplo de la plantilla. Puede haber más de una en cada caso de uso. |
La forma de trabajar con los casos de prueba predefinidos es la siguiente:
CPI-ESB1 - Mensaje correcto -> CPI001 - Mensaje correcto SERVICIO1
CPI002 - Mensaje correcto SERVICIO2
-
Caso de Prueba Funcional de Interoperabilidad (estereotipo "Caso de Prueba") | ||||
---|---|---|---|---|
Nomenclatura | CPFIXXX - Nombre | |||
Observaciones | Se ha creado un estereotipo que amplía al predefinido de Enterprise Architect ("Use Case" - "testcase"). Este estereotipo está disponible en la plantilla dentro de "Modelado del Sistema" (Toolbox). | |||
Relaciones | Los casos de prueba funcionales de interoperabilidad estarán relacionados con las interfaces a través de servicios cuyo comportamiento comprueban. Se debe usar el tipo de enlace "Realization" con origen en el caso de prueba funcional de interoperabilidad y destino en la interfaz a través de servicios. No es necesario indicar que web services del interfaz a través de servicio están asociadas al caso de prueba funcional de interoperabilidad. Los casos de prueba funcionales de interoperabilidad podrán estar relacionados con los casos de uso cuyo comportamiento comprueben. Se debe usar el tipo de enlace "Realization" con origen en el caso de prueba funcional de interoperabilidad y destino en el caso de uso. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | CPFIXXX - Nombre |
Descripción | X | Description |
En este apartado se incluirán en caso de ser necesario las evidencias asociadas a las pruebas llevadas a cabo por el proveedor. | |||
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | CPFIXXX |
Complejidad | X | Complexity | Easy Medium Dificult |
Versión(versión y release) | X | Version | vXXrXX |
Prueba de autorización | X | Modelado del Sistema (Prueba de autorizacion) | Sí No | Indica si el caso de prueba pertenece al conjunto de casos de prueba de autorización. |
Resultado de la ejecución del proveedor |
Modelado del Sistema (Resultado ejecucion proveedor) | Favorable No favorable | Indica el resultado de la ejecución del caso de prueba por parte del proveedor (obligatorio en la entrega asodicada a la fase de construcción) | ||
Smoke test | X | Modelado del Sistema (Smoke test) | Sí No | Indica si es un caso de uso del tipo Smoke test |
Precondición |
Constraint (Type = Pre-Condition) | Precondicion | Se debe incluir la descripción en el campo correspondiente. Si hay más de una al resto se le añadirá una pequeña descripción a continuación de "Precondicion" | ||
Criterios de aceptación |
Constraint (Type = Post-Condition) | Criterios de Aceptacion | Se debe incluir la descripción en el campo correspondiente. | ||
Secuencia normal | X | Scenarios (Type = Basic-Path) | Secuencia normal | Se deben incluir la descripción en el campo "Description" y los pasos en "Structured Specification" tomando como referencia el ejemplo de la plantilla. |
Secuencia alternativa |
Scenarios (Type = Alternate) | Secuencia alternativa - Nombre | Se deben incluir la descripción en el campo "Description" y los pasos en "Structured Specification", así como el punto de entrada, todo ello tomando como referencia el ejemplo de la plantilla. Puede haber más de una en cada caso de uso. | ||
Excepción |
Scenarios (Type = Exception) | Excepcion - Nombre | Se deben incluir la descripción en el campo "Description" y los pasos en "Structured Specification", así como el punto de entrada, todo ello tomando como referencia el ejemplo de la plantilla. Puede haber más de una en cada caso de uso. |
Excepción (estereotipo "Excepcion") | ||||
---|---|---|---|---|
Nomenclatura | EXCXXX - Nombre | |||
Observaciones | Se ha creado un estereotipo que amplía al predefinido de Enterprise Architect ("Class" - "exception"). Este estereotipo está disponible en la plantilla dentro de "Modelado del Sistema" (Toolbox). | |||
Relaciones | Las excepciones estarán relacionadas con las clases que las generan, se debe usar el tipo de enlace "Usage" con origen en la clase que genera la exepción y destino en la excepción. Las excepciones podrán estar relacionadas entre sí mediante diversos tipos de relaciones, al igual que ocurre con las clases. Podrán existir excepciones que sólo tengan relación con otras excepciones, siempre que estas últimas tengan relación con clases. | |||
Campo | Obligatorio | Ubicación | Formato | Observaciones |
Nombre | X | Name | EXCXXX - Nombre | En el caso de las excepciones, la nomenclatura es de obligado cumplimiento para el campo alias, pero no para el campo nombre. Los elementos incluidos en la plantilla a modo de ejemplo sirven únicamente como referencia para el modelado, normalmente el nombre de las clases seguirá la nomenclatura habitual de cada aplicativo (convenciones Java, Visual Basic, etc.). |
Descripción | X | Description |
Estado | X | Status | Approved Proposed N/A |
Alias | X | Alias | EXCXXX |
Complejidad | X | Complexity | Easy Medium Dificult |
Versión(versión y release) | X | Version | vXXrXX |
Causa | X | Modelado del Sistema (Causa) |
Causa de la excepción. | ||
Mensaje | X | Modelado del Sistema (Mensaje) |
Mensaje de error reportado. |