Está en la página 1de 21

1

GUÍA Nº 9

Curso
Análisis y Diseño de Sistemas

Tema
Implementación

La unidad didáctica de Análisis y Diseño, pertenece al semestre


académico III, de la escuela de tecnologías de la información,
Sumilla Permite al estudiante desarrollar un sistema informático, teniendo a
UML como estándar para modelar aplicaciones de negocios;
construye diagramas para casos reales y específicos usando como
software StarUML o ArgoUML; crea un proyecto innovador empleando
las herramientas de UML y lo publica en un blog.
ii

Tabla de Contenidos

Implementación ........................................................................................................................ 3

1. Implementación – Diagrama de Implementación ..................................................... 5

2. Implementación – Modelo de Implementación ......................................................... 6

3. Implementación – Artefactos contenidos ................................................................... 7

3.1. Implementación – Componentes ............................................................................. 8

3.2. Implementación – Subsistemas de Implementación ................................................ 9

3.3. Implementación – Interfaces ................................................................................... 9

3.4. Implementación – Descripción de la Arquitectura ................................................ 10

3.5. Implementación – Diagrama de Componentes ...................................................... 10

3.6. Implementación – Diagramas de Despliegue ........................................................ 11

3.7. Plan de Integración de Construcciones .................................................................. 12

4. Miembros Participantes ............................................................................................ 13

4.1. Arquitecto de Software .......................................................................................... 13

4.2. Diseñador ............................................................................................................... 14

4.3. Implementador ....................................................................................................... 14

4.4. Integrador............................................................................................................... 15

4.5. Revisor Técnico ..................................................................................................... 16

5. Flujo de la Implementación - Actividades ............................................................... 16

5.1. Flujo de la Implementación – Implementación de la Arquitectura ....................... 17

Referencias ............................................................................................................................. 19

Apéndice A.............................................................................................................................. 20
3

Implementación

Explica cómo desarrollar, organizar, realizar pruebas de unidad e integrar los

componentes implementados basándose en las especificaciones de diseño.

La finalidad de la implementación es:

✓ Definir la organización del código, en términos de los subsistemas de

implementación organizados en capas.

✓ Implementar los elementos de diseño en términos de los elementos de

implementación (archivos de origen, binarios, programas ejecutables y

otros).

✓ Probar y desarrollar componentes como unidades.

✓ Integrar los resultados producidos por los implementadores individuales (o

equipos) en un sistema ejecutable.

La implementación está relacionada con otras disciplinas:

✓ La disciplina de requisitos describe cómo capturar los requisitos que debe

cumplir la implementación en un modelo de guion de uso.

✓ La disciplina de análisis y diseño describe cómo desarrollar un modelo de

diseño. El modelo de diseño representa la intención de la implementación y es la

entrada principal de la disciplina de implementación.

✓ La disciplina de prueba describe cómo realizar el test de integración para cada

compilación durante la integración del sistema. También describe cómo realizar

las pruebas del sistema para verificar que todos los requisitos se han cumplido,

así como la forma en que se detectan y remiten los defectos. (Pressman, 2020)

✓ La disciplina de entorno describe cómo desarrollar y mantener

artefactos de soporte que se utilicen durante la implementación, como la

descripción del proceso, las directrices de diseño y las de programación.


4

✓ La disciplina de despliegue describe cómo utilizar el modelo de

implementación para producir y entregar el código al cliente final.

✓ La disciplina de gestión de proyectos describe la mejor forma de planificar el

proyecto. Algunos aspectos importantes del proceso de planificación son el plan

de iteración, la gestión de cambios y los sistemas de seguimiento de defectos.

Figura 1. Implementación – Visión General. Fuente: Manual de El lenguaje


Unificado de modelado por James Rumbaugh Ivar Jacobson Grady Booch)

Figura 2. Implementación – Visión General según los modelos.


(Manual de El lenguaje Unificado de modelado por James Rumbaugh Ivar Jacobson
Grady Booch)
5

1. Implementación – Diagrama de Implementación

Los diagramas de implementación permiten visualizar la arquitectura física del

hardware, el software y los artefactos del sistema.

Los diagramas de implementación pueden entenderse como lo contrario de los casos

de uso, porque ilustran la forma física del sistema, en lugar de representar

conceptualmente los usuarios y dispositivos que interactúan con el sistema.

En la documentación de sistemas los diagramas de implementación son un elemento

importante que puede ser útil a la hora de planificar proyectos complejos con artefactos,

como archivos ejecutables, archivos de datos, documentos XML y archivos de

configuración que en última instancia se encontrarán en distintas plataformas de hardware.

Los diagramas de implementación claros y detallados también ayudan a los equipos

más grandes a entender el conjunto de la arquitectura del proyecto.

Los diagramas de implementación se utilizan para visualizar la topología de los

componentes físicos de un sistema, donde se implementan los componentes de

software.

Los diagramas de implementación se utilizan para describir la vista de

implementación estática de un sistema. Los diagramas de implementación se componen

de nodos y sus relaciones.

La arquitectura del software alude a “la estructura general de éste y a las formas

en las que ésta da integridad conceptual a un sistema”. En su forma más sencilla, la

arquitectura es la estructura de organización de los componentes de un programa

(módulos), la forma en la que éstos interactúan y la estructura de datos que utilizan.

Sin embargo, en un sentido más amplio, los componentes se generalizan para que

representen los elementos de un sistema grande y sus interacciones. (Pressman, 2020)


6

2. Implementación – Modelo de Implementación

El modelo de implementación representa la composición física de la

implementación en términos de subsistemas de implementación, y elementos de

implementación (directorios y archivos, incluyendo código fuente, datos y archivos

ejecutables).

El modelo de implementación puede tener las siguientes propiedades:

✓ Introducción: Una descripción textual que sirve como breve introducción al

modelo.

✓ Subsistemas de implementación: Los subsistemas del modelo, que representan

una jerarquía.

✓ Elementos de implementación: Los elementos del modelo, propiedad de los

subsistemas.

✓ Relaciones: Las relaciones del modelo, propiedad de los subsistemas de

implementación.

✓ Diagramas: Los diagramas del modelo, propiedad de los subsistemas de

implementación.

✓ Vista de implementación: La vista de implementación del modelo, que es una

vista de la arquitectura que muestra las capas y los subsistemas de implementación.

El objetivo:

✓ El modelo de implementación identifica los componentes físicos de la

implementación para que puedan comprenderse y gestionarse mejor.

✓ El modelo de implementación define las principales unidades de integración

alrededor de las cuales se organizan los equipos, así como las unidades que se

pueden versionar, desplegar y reemplazar separadamente. (Kimmel, 2021)


7

✓ Un modelo de implementación más detallado también puede incluir un código

fuente de nivel bajo y archivos derivados, y sus relaciones con el modelo de

diseño.

✓ Estos detalles se recomiendan sólo si tiene sincronización automatizada entre el

modelo y los archivos.

Figura 3. Modelo de Implementación.

Tomado de Implementación, por Universidad Rey Juan Carlos

3. Implementación – Artefactos contenidos

✓ Elemento de comprobabilidad. Este artefacto es un elemento de implementación

especializado que realiza el comportamiento específico de la prueba al que da soporte

el software.

✓ Elemento de implementación. Estos artefactos son los componentes físicos que forman

una implementación, que incluyen archivos y directorios. Incluyen los archivos de

código de software (origen, binario o ejecutable), los archivos de datos y los archivos

de documentación, como los archivos de ayuda en línea. (Kimmel, 2021)


8

✓ Prueba de fragmento para simulación. Este artefacto es un elemento de

implementación especializado que se utiliza para efectuar pruebas, que simula un

componente verdadero.

✓ Subsistema de implementación. Este artefacto consta de un conjunto de elementos de

implementación. Estructura el modelo de implementación dividiéndolo en

componentes más pequeños que se pueden integrar y probar separadamente.

3.1. Implementación – Componentes

✓ Es el empaquetamiento físico de los elementos del modelo de diseño.

✓ Estereotipos estándar: <<executable>>, <<file>>, <<library>>, <<table>>,

<<document>>

✓ Relación de traza con las clases de diseño.

✓ Un componente puede implementar varios elementos.

✓ Proporcionan las mismas interfaces que los elementos que implementan.

✓ Dependencias de compilación.

Figura 4. Modelo de Diseño Vs. Modelo de Implementación con componentes.


Tomado de Implementación, por Universidad Rey Juan Carlos.
9

3.2. Implementación – Subsistemas de Implementación

Organizan los elementos del modelo de implementación. Se entienden

como “mecanismos de empaquetamiento” del lenguaje de implementación:

paquete en Java, proyecto en VisualBasic, directorio de ficheros en C#, paquete en

Rational Rose, etc.

Los subsistemas de implementación tienen una relación de traza 1 a 1 con

los subsistemas de diseño. El subsistema de implementación debe:

✓ Definir dependencias sobre otros subsistemas o interfaces de otros subsistemas.

✓ Proporcionar las interfaces que han de ser proporcionadas por el sistema.

✓ Definir qué componentes, u otros subsistemas de implementación, deben

proporcionar las interfaces proporcionadas por el subsistema. (Kimmel, 2021)

Figura 5. Subsistemas de Implementación.

Tomado de Implementación, por Universidad Rey Juan Carlos.

3.3. Implementación – Interfaces

✓ Operaciones implementadas por componentes y subsistemas de Implementación.

✓ Dependencias de uso.
10

Figura 6. Diseño Vs Implementación con Interfaces.

Tomado de Implementación, por Universidad Rey Juan Carlos

3.4. Implementación – Descripción de la Arquitectura

✓ Descomposición del modelo en subsistemas, sus interfaces y dependencias entre

ellos.

✓ Componentes clave:

✓ Traza de las clases de diseño significativas para la arquitectura.

✓ Componentes ejecutables.

✓ Componentes generales y centrales de los que dependen muchos otros.

3.5. Implementación – Diagrama de Componentes

✓ Se utilizan para modelar la vista de implementación estática de un sistema.

✓ Contienen:

✓ Componentes.

✓ Interfaces.

✓ Relaciones de dependencia, generalización, asociación y realización.

✓ Notas y restricciones.
11

✓ Paquetes o subsistemas

Figura 7. Diagrama de Componentes.

Tomado de Implementación, por Universidad Rey Juan Carlos

3.6. Implementación – Diagramas de Despliegue

✓ Se utilizan para modelar los aspectos físicos de los sistemas orientados a

objetos

✓ Muestra la configuración de nodos que participan en la ejecución y de los

componentes que residen en ellos.

✓ Contienen:

✓ Nodos.

✓ Relaciones de dependencia y asociación.

✓ Notas y restricciones.
12

✓ Componentes que residen en algún nodo. (Kimmel, 2021)

Figura 8. Diagrama de Despliegue C/S.

Tomado de Implementación, por Universidad Rey Juan Carlos.

3.7. Plan de Integración de Construcciones

✓ El software se construye en pequeños incrementos o pasos para tener

pequeños problemas de integración y pruebas.

✓ Concepto de “Construcción”: versión ejecutable del sistema.

✓ Varias construcciones en una iteración.

✓ Cada construcción es somete a pruebas de integración.

✓ Es necesario Control de versiones por si la construcción falla, volver a la

anterior.

✓ Beneficios del enfoque incremental:

✓ Versión ejecutable muy pronto para enseñar y discutir.

✓ Más fácil localizar defectos.

✓ Pruebas de integración tienden a ser más minuciosas.

✓ Plan de integración describe construcciones necesarias en una iteración:

✓ Funcionalidad esperada: lista de casos de uso o escenarios o parte de ellos.


13

✓ Requisitos adicionales.

✓ Subsistemas y componentes necesarios para implementar esa funcionalidad.

4. Miembros Participantes

4.1. Arquitecto de Software

Este rol dirige el desarrollo de la arquitectura de software del sistema,

que incluye la promoción y la creación de soporte para las decisiones técnicas clave

que restringen el diseño global y la implementación para el proyecto.

El arquitecto de software tiene la responsabilidad global de dirigir las

principales decisiones técnicas, expresadas como la arquitectura de software. Esto

habitualmente incluye la identificación y la documentación de los aspectos

arquitectónicamente significativos del sistema, que incluye las "vistas" de requisitos,

diseño, implementación y despliegue del sistema.

El arquitecto también es responsable de proporcionar el fundamento de estas

decisiones, equilibrando las preocupaciones de los diferentes interesados, reduciendo

los riesgos técnicos, y garantizando que las decisiones se comunican, y validan con

eficacia, y que se acatan. (Schmuller, 2021)

Figura 9. Arquitecto de Software – Relaciones. (https://cgrw01.cgr.go.cr/rup/RUP.es)


14

4.2. Diseñador

Este rol dirige el diseño de una parte del sistema, dentro de las restricciones

de los requisitos, arquitectura y proceso de desarrollo para el proyecto.

Realiza: Decisiones de realización de servicio de documentos. Especificación

de componentes (SOA).

El diseñador identifica y define las responsabilidades, operaciones, atributos

y relaciones de los elementos de diseño. El diseñador se asegura de que el diseño

sea coherente con la arquitectura de software, y que esté detallado hasta un punto en

que pueda proceder la implementación.

Figura 10. Diseñador – Relaciones.

(https://cgrw01.cgr.go.cr/rup/RUP.es)

4.3. Implementador

Este rol desarrolla los componentes de software y efectúa las pruebas de

desarrollador para la integración en subsistemas más grandes, de acuerdo con

los estándares adoptados de proyecto.

Cuando los componentes de prueba, como controladores o fragmentos

para simulación, deben crearse para dar soporte a las pruebas, el implementador
15

también es responsable del desarrollo y las pruebas de los componentes de

prueba y los subsistemas correspondientes. (Schmuller, 2021)

Figura 11. Implementador – Relaciones.

(https://cgrw01.cgr.go.cr/rup/RUP.es)

4.4. Integrador

Este rol dirige la planificación y la ejecución de la integración del elemento

de implementación para producir compilaciones.

Los implementadores proporcionan sus elementos de implementación

probados en un espacio de trabajo de integración, donde los integradores los

combinan para producir una compilación.

Un integrador también es responsable de planificar la integración, que se

produce en los niveles de subsistema y del sistema, y cada uno tiene un espacio de

trabajo de integración separado.


16

Los elementos probados se entregan de un espacio de trabajo de desarrollo

privado del implementador a un espacio de trabajo de integración del

subsistema, donde los subsistemas de implementación integrados se proporcionan

del espacio de trabajo de integración del subsistema al espacio de trabajo de

integración del sistema. (Schmuller, 2021)

Figura 12. Integrador – Relaciones. (https://cgrw01.cgr.go.cr/rup/RUP.es)

4.5. Revisor Técnico

Este rol contribuye con información técnica de retorno sobre los productos de

trabajo del proyecto.

Esta información de retorno debe ser oportuna y apropiada.

Figura 13. Revisor Técnico – Relaciones. (https://cgrw01.cgr.go.cr/rup/RUP.es)

5. Flujo de la Implementación - Actividades

✓ Implementación de la arquitectura.

✓ Integrar el sistema.
17

✓ Implementar un subsistema.

✓ Implementar una clase.

✓ Realizar prueba de unidad. (Booch, 2021)

5.1. Flujo de la Implementación – Implementación de la Arquitectura

✓ Identificar componentes significativos. 1 a 1.

✓ Asignar componentes ejecutables a nodos: clases activas.

Figura 14. Modelo de Diseño Vs. Modelo de Implementación.

Por Universidad Rey Juan Carlos

Una arquitectura de implementación se crea asignando los bloques de

construcción lógicos de una aplicación (la arquitectura lógica) a un entorno informático

físico de modo que se cumplan los requisitos de calidad del servicio especificados en el

escenario de implementación. El escenario de implementación se traduce en una arquitectura

de implementación, como se muestra en la siguiente figura. (Booch, 2021)


18

Figura 15. Arquitectura de Implementación.

(https://docs.oracle.com/cd/E19528-01/820-0888/aauco/index.html)
19

Referencias

Pressman R. (2020) Ingeniería de Software, Un enfoque práctico, 7ma.

edición. Editorial McGraw- Hill.

Kimmel P. (2021) Manual de UML: Guía de Aprendizaje. Editorial McGraw-

Hill.

Schmuller, J. (2021) Aprendiendo UML en 24 horas. Editorial Prentice Hall.

Booch, R. (2021): El Lenguaje Unificado de Modelado. 2ªedición.

DiagramasUML (2021). Diagrama de estados Consultado el 10 de marzo de

2022. https://diagramasuml.com/estados/

Microsoft. (2020) La guía sencilla para la diagramación de UML y el modelado de la base

de datos. Consultado el 13 de enero de 2022.

https://www.microsoft.com/es-ww/microsoft-365/business-insights-

ideas/resources/guide-to-uml-diagramming-and-database-modeling
20

Apéndice A

Figura 1: Implementación – Visión General. Fuente: Manual de El lenguaje Unificado de

modelado por James Rumbaugh Ivar Jacobson Grady Booch) .............................................. 4

Figura 2: Implementación – Visión General según los modelos. Fuente: (Manual de El

lenguaje Unificado de modelado por James Rumbaugh Ivar Jacobson Grady Booch) .......... 4

Figura 3: Modelo de Implementación. Fuente: (Implementación – Universidad Rey Juan

Carlos) ..................................................................................................................................... 7

Figura 4: Modelo de Diseño Vs. Modelo de Implementación con componentes. Fuente:

(Implementación – Universidad Rey Juan Carlos) .................................................................. 8

Figura 5: Subsistemas de Implementación. Fuente: (Implementación – Universidad Rey

Juan Carlos)............................................................................................................................. 9

Figura 6: Diseño Vs Implementación con Interfaces. Fuente: (Implementación –

Universidad Rey Juan Carlos) ............................................................................................... 10

Figura 7: Diagrama de Componentes. Fuente: (Implementación – Universidad Rey Juan

Carlos) ................................................................................................................................... 11

Figura 8: Diagrama de Despliegue C/S. Fuente: (Implementación – Universidad Rey Juan

Carlos) ................................................................................................................................... 12

Figura 9: Arquitecto de Software – Relaciones. Fuente:

https://cgrw01.cgr.go.cr/rup/RUP.es ..................................................................................... 13

Figura 10: Diseñador – Relaciones. Fuente: https://cgrw01.cgr.go.cr/rup/RUP.es ............ 14

Figura 11: Implementador – Relaciones. Fuente: https://cgrw01.cgr.go.cr/rup/RUP.es .... 15

Figura 12: Integrador – Relaciones. Fuente: https://cgrw01.cgr.go.cr/rup/RUP.es ............ 16

Figura 13: Revisor Técnico – Relaciones. Fuente: https://cgrw01.cgr.go.cr/rup/RUP.es ... 16

Figura 14: Modelo de Diseño Vs. Modelo de Implementación. Fuente: Universidad Rey

Juan Carlos ............................................................................................................................ 17


21

Figura 15: Arquitectura de Implementación. Fuente: https://docs.oracle.com/cd/E19528-

01/820-0888/aauco/index.html .............................................................................................. 18

También podría gustarte