para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1...

24
modelos para sistemas de información Una visión integrada: UML, AEM, Statemate y Entidades Dinámicas Guillermo Bustos R. EDICIONES UNIVERSITARIAS DE VALPARAÍSO Pontificia Universidad Católica de Valparaíso

Transcript of para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1...

Page 1: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

modelospara sistemasde información

Una visión integrada:UML, AEM, Statematey Entidades Dinámicas

Guillermo Bustos R.

ED IC IONES UN IVERS ITAR IAS DE VALPARA ÍSOPont i f i c ia Un ive rs idad Ca tó l i ca de Va lpara íso

Page 2: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

© Guillermo Bustos Reinoso, 2010Registro de Propiedad Intelectual Nº 197.269

ISBN: 978-956-17-0653-8

Derechos ReservadosEdición 2015: 500 ejemplares

Ediciones Universitarias de ValparaísoPontificia Universidad Católica de Valparaíso

Calle 12 de Febrero 187, Valparaíso, ChileTeléfono (56) 32 227 3087 - Fax (56) 32 227 3429

Correo electrónico: [email protected]

PortadaObra sin título de la artista viñamarina Pamela Brito Rojas,

quien gentilmente autorizó su reproducción para este libro.

Impresión Salesianos S.A.

HECHO EN CHILE

ESTE LIBRO HA SIDO SELECCIONADO EN ELCONCURSO DE PUBLICACIONES ACADÉMICAS DE LA

PONTIFICIA UNIVERSIDAD CATÓLICA DE VALPARAÍSOVICE RECTORÍA ACADÉMICA

SERIE ARBITRADA

Page 3: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

iii

Tabla de Contenidos

LISTA DE ABREVIATURAS .......................................................................................................................................... 1

INTRODUCCIÓN ............................................................................................................................................................. 3

CAPÍTULO 1 ~ MMOODDEELLAADDOO DDEE SSIISSTTEEMMAASS ............................................................................................................ 11

1.1 DEFINICIÓN DE MODELO .................................................................................................................................... 11

1.2 LA NECESIDAD DEL MODELO ........................................................................................................................... 12

1.2.1 PRINCIPIOS DE MODELADO ................................................................................................................................... 14 1.2.2 PROBLEMAS DEL MODELADO ................................................................................................................................ 15

1.3 CARACTERÍSTICAS DE LOS MODELOS .......................................................................................................... 17

1.3.1 CARACTERÍSTICAS DESEABLES DE LOS MODELOS ................................................................................................ 17 1.3.2 CRITERIOS DE CALIDAD DE LOS MODELOS ............................................................................................................ 20 1.3.3 ALGUNAS PROPIEDADES DE LOS MODELOS ........................................................................................................... 23

1.4 PROPIEDADES DE SISTEMAS Y DIMENSIONES DE MODELADO ............................................................. 29

1.4.1 PROPIEDADES GENERALES DE LOS SISTEMAS ........................................................................................................ 29 1.4.2 DESCOMPOSICIÓN DE LOS SISTEMAS ..................................................................................................................... 30 1.4.3 DIMENSIONES DEL MODELADO ............................................................................................................................. 32

1.5 PATRONES DE MODELOS .................................................................................................................................... 39

1.6 PARADIGMAS DE MODELADO ........................................................................................................................... 40

1.6.1 PARADIGMA DE PROCESO ...................................................................................................................................... 41 1.6.2 PARADIGMA DE OBJETO ........................................................................................................................................ 42 1.6.3 COMPARACIÓN Y ESPECTRO ENTRE LOS PARADIGMAS .......................................................................................... 42

1.7 MAPAS DE MODELOS............................................................................................................................................ 43

1.8 BIBLIOGRAFÍA COMENTADA ............................................................................................................................ 46

PPAARRTTEE II •• LLAASS VVIISSTTAASS PPAARRCCIIAALLEESS ......................................................................................................................... 49

CAPÍTULO 2 ~ DDIIAAGGRRAAMMAASS EENNTTIIDDAADD--RREELLAACCIIOONNAAMMIIEENNTTOO YY DDEE CCLLAASSEESS .............................................. 51

2.1 DIAGRAMA ESTÁTICO ......................................................................................................................................... 53

2.1.1 ENTIDAD/CLASE .................................................................................................................................................... 54 2.1.2 RELACIONAMIENTO/ASOCIACIÓN ......................................................................................................................... 55 2.1.3 CARDINALIDAD DE LOS RELACIONAMIENTOS Y MULTIPLICIDAD DE LAS ASOCIACIONES ...................................... 57 2.1.4 CLASIFICACIÓN DE RELACIONAMIENTOS/ASOCIACIONES ..................................................................................... 61 2.1.5 ATRIBUTO ............................................................................................................................................................. 66

2.2 ASPECTOS AVANZADOS DEL DIAGRAMA ESTÁTICO ................................................................................ 71

2.2.1 RESTRICCIÓN ......................................................................................................................................................... 71 2.2.2 ATRIBUTO GLOBAL/ATRIBUTO DE CLASE ............................................................................................................. 72 2.2.3 JERARQUÍA DE TIPOS ............................................................................................................................................. 73

Page 4: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

T A B L A D E C O N T E N I D O S

iv

2.3 DIAGRAMA ENTIDAD-RELACIONAMIENTO ................................................................................................. 85

2.3.1 ENTIDAD AGREGADA ............................................................................................................................................ 86 2.3.2 ATRIBUTOS EN EL DIAGRAMA ENTIDAD-RELACIONAMIENTO ............................................................................... 87 2.3.3 REPRESENTACIONES ALTERNATIVAS .................................................................................................................... 91 2.3.4 APLICACIÓN DE CRITERIOS DE CALIDAD AL DIAGRAMA ENTIDAD-RELACIONAMIENTO ....................................... 93 2.3.5 JERARQUIZACIÓN .................................................................................................................................................. 98

2.4 DIAGRAMA DE CLASES ...................................................................................................................................... 106

2.4.1 ATRIBUTOS EN EL DIAGRAMA DE CLASES ........................................................................................................... 107 2.4.2 IDENTIFICADOR DE OBJETOS ............................................................................................................................... 108 2.4.3 ASOCIACIONES EN EL DIAGRAMA DE CLASES ..................................................................................................... 109 2.4.4 OPERACIONES ..................................................................................................................................................... 112 2.4.5 ESTRUCTURAS TODO/PARTE ............................................................................................................................... 113 2.4.6 JERARQUÍAS DE TIPOS EN EL DIAGRAMA DE CLASES .......................................................................................... 119

2.5 PATRONES PARA EL DIAGRAMA ESTÁTICO .............................................................................................. 121

2.6 APLICACIÓN DE CRITERIOS DE CALIDAD AL DIAGRAMA ESTÁTICO .............................................. 122

2.6.1 CRITERIO DE TEMPORALIDAD ............................................................................................................................. 123 2.6.2 CRITERIO DE MINIMALIDAD ................................................................................................................................ 125 2.6.3 CRITERIO DE EXPRESIVIDAD ............................................................................................................................... 126 2.6.4 CRITERIO DE SIMPLICIDAD .................................................................................................................................. 131

2.7 CONSIDERACIONES FINALES .......................................................................................................................... 134

2.8 RESUMEN ................................................................................................................................................................ 137

2.9 BIBLIOGRAFÍA COMENTADA .......................................................................................................................... 137

2.10 EJERCICIOS ......................................................................................................................................................... 139

CAPÍTULO 3 ~ DDIICCCCIIOONNAARRIIOO DDEE DDAATTOOSS ............................................................................................................ 149

3.1 ELEMENTOS DE UN DICCIONARIO DE DATOS ........................................................................................... 151

3.2 RELACIONES DEL DICCIONARIO DE DATOS CON OTROS MODELOS ESTÁTICOS ........................ 160

3.2.1 DIAGRAMA ENTIDAD-RELACIONAMIENTO Y EL DICCIONARIO DE DATOS ........................................................... 160 3.2.2 DIAGRAMA DE CLASES Y EL DICCIONARIO DE DATOS ......................................................................................... 164

3.3 CONSIDERACIONES FINALES .......................................................................................................................... 166

3.4 BIBLIOGRAFÍA COMENTADA .......................................................................................................................... 166

3.5 EJERCICIOS ........................................................................................................................................................... 167

CAPÍTULO 4 ~ DDIIAAGGRRAAMMAA DDEE TTRRAANNSSIICCIIÓÓNN DDEE EESSTTAADDOOSS,, SSTTAATTEECCHHAARRTT YY DDIIAAGGRRAAMMAA DDEE MMÁÁQQUUIINNAA DDEE EESSTTAADDOOSS............................................................................................................................................ 171

4.1 DIAGRAMA DE TRANSICIÓN DE ESTADOS .................................................................................................. 172

4.1.1 MÁQUINA SECUENCIAL DE ESTADOS FINITOS ..................................................................................................... 172 4.1.2 ESTADO ............................................................................................................................................................... 174 4.1.3 TRANSICIÓN ........................................................................................................................................................ 175 4.1.4 EVENTO ............................................................................................................................................................... 176 4.1.5 ACCIÓN ............................................................................................................................................................... 177 4.1.6 CONSIDERACIONES ADICIONALES ....................................................................................................................... 179 4.1.7 JERARQUIZACIÓN ................................................................................................................................................ 181 4.1.8 VERIFICACIONES DEL DIAGRAMA DE TRANSICIÓN DE ESTADO ........................................................................... 183 4.1.9 TABLA DE TRANSICIÓN DE ESTADOS ................................................................................................................... 184

Page 5: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

T A B L A D E C O N T E N I D O S

v

4.2 STATECHART .......................................................................................................................................................... 187

4.2.1 NOTACIONES DEL STATECHART ............................................................................................................................ 188 4.2.2 JERARQUIZACIÓN DE ESTADOS ............................................................................................................................ 189 4.2.3 ESTADOS CONCURRENTES ................................................................................................................................... 190 4.2.4 CONDICIÓN .......................................................................................................................................................... 198 4.2.5 TRANSICIÓN MÚLTIPLE ....................................................................................................................................... 199

4.3 DIAGRAMA DE MÁQUINA DE ESTADOS ....................................................................................................... 201

4.3.1 NOMENCLATURA DEL DIAGRAMA DE MÁQUINA DE ESTADOS ............................................................................ 202 4.3.2 NOTACIÓN DEL DIAGRAMA DE MÁQUINA DE ESTADOS ...................................................................................... 202 4.3.3 SEMÁNTICA DEL DIAGRAMA DE MÁQUINA DE ESTADOS ..................................................................................... 203 4.3.4 ACCIONES EN LOS ESTADOS ................................................................................................................................ 203 4.3.5 SECUENCIACIÓN DE ACCIONES EN LAS TRANSICIONES ........................................................................................ 204 4.3.6 ACTIVIDAD EN LOS ESTADOS .............................................................................................................................. 205 4.3.7 TRANSICIÓN INTERNA A ESTADOS ....................................................................................................................... 206 4.3.8 ESTADO FINAL .................................................................................................................................................... 207

4.4 APLICACIÓN DE CRITERIOS DE CALIDAD .................................................................................................. 208

4.4.1 CRITERIO DE SIMPLICIDAD .................................................................................................................................. 209

4.5 CONSIDERACIÓN FINAL .................................................................................................................................... 209

4.6 BIBLIOGRAFÍA COMENTADA .......................................................................................................................... 210

4.7 EJERCICIOS ........................................................................................................................................................... 212

CAPÍTULO 5 ~ RREEDD DDEE PPEETTRRII ................................................................................................................................. 219

5.1 REGLAS DE FUNCIONAMIENTO DE UNA RED DE PETRI ......................................................................... 220

5.2 INTERPRETACIÓN DE LA RED DE PETRI ..................................................................................................... 224

5.3 ASPECTOS AVANZADOS DE LA RED DE PETRI .......................................................................................... 225

5.3.1 ANOTACIONES EN LAS CONEXIONES ................................................................................................................... 226 5.3.2 RAMAS RESTAURADORAS ................................................................................................................................... 227

5.4 APLICACIÓN DE CRITERIOS DE CALIDAD .................................................................................................. 231

5.4.1 CRITERIO DE EXPRESIVIDAD ............................................................................................................................... 231 5.4.2 OTROS CRITERIOS ............................................................................................................................................... 231

5.5 JERARQUIZACIÓN ............................................................................................................................................... 232

5.5.1 CLASES DE RED DE PETRI .................................................................................................................................... 232 5.5.2 RED CANAL/ACTIVIDAD Y JERARQUIZACIÓN ...................................................................................................... 233

5.6 CONSIDERACIONES FINALES .......................................................................................................................... 235

5.7 BIBLIOGRAFÍA COMENTADA .......................................................................................................................... 237

5.8 EJERCICIOS ........................................................................................................................................................... 237

CAPÍTULO 6 ~ DDIIAAGGRRAAMMAA DDEE AACCTTIIVVIIDDAADDEESS ................................................................................................... 247

6.1 ACTIVIDAD ............................................................................................................................................................ 248

6.2 TRANSICIÓN .......................................................................................................................................................... 249

6.3 COMPONENTES ORGANIZATIVOS ................................................................................................................. 249

6.3.1 NODOS DECISIÓN/UNIÓN .................................................................................................................................... 250 6.3.2 NODOS FORK/JOIN .............................................................................................................................................. 252

Page 6: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

T A B L A D E C O N T E N I D O S

vi

6.4 ASPECTOS AVANZADOS DEL DIAGRAMA DE ACTIVIDADES ................................................................ 254

6.4.1 OTRAS FORMAS DE SINCRONIZACIÓN ................................................................................................................. 254 6.4.2 CONTRACCIONES ................................................................................................................................................. 255 6.4.3 REPETICIÓN DE ACTIVIDADES ............................................................................................................................. 258 6.4.4 PARTICIONES ....................................................................................................................................................... 260 6.4.5 OTRAS NOTACIONES ........................................................................................................................................... 263

6.5 APLICACIÓN DE CRITERIOS DE CALIDAD .................................................................................................. 265

6.5.1 CRITERIO DE SIMPLICIDAD .................................................................................................................................. 266

6.6 JERARQUIZACIÓN ............................................................................................................................................... 266

6.7 CONSIDERACIONES FINALES .......................................................................................................................... 268

6.8 BIBLIOGRAFÍA COMENTADA .......................................................................................................................... 270

6.9 EJERCICIOS ........................................................................................................................................................... 270

CAPÍTULO 7 ~ DDIIAAGGRRAAMMAA DDEE PPRROOCCEESSOOSS DDEE CCOONNTTRROOLL .............................................................................. 279

7.1 CONTROLADOR .................................................................................................................................................... 280

7.2 CONTROLADO ....................................................................................................................................................... 281

7.3 TERMINADOR ....................................................................................................................................................... 282

7.4 FLUJO DE CONTROL ........................................................................................................................................... 283

7.5 ORGANIZACIÓN TEMPORAL ........................................................................................................................... 285

7.6 APLICACIÓN DE CRITERIOS DE CALIDAD AL DIAGRAMA DE PROCESOS DE CONTROL ........... 288

7.7 CONSIDERACIONES FINALES .......................................................................................................................... 289

7.8 BIBLIOGRAFÍA COMENTADA .......................................................................................................................... 290

7.9 EJERCICIOS ........................................................................................................................................................... 291

CAPÍTULO 8 ~ DDIIAAGGRRAAMMAASS DDEE IINNTTEERRAACCCCIIÓÓNN ................................................................................................ 297

8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN .......................................................... 297

8.1.1 COMPONENTE ...................................................................................................................................................... 298 8.1.2 ACTOR ................................................................................................................................................................. 299 8.1.3 MENSAJE ............................................................................................................................................................. 299

8.2 DIAGRAMA DE COMUNICACIÓN .................................................................................................................... 303

8.2.1 VÍA DE COMUNICACIÓN ...................................................................................................................................... 304 8.2.2 NUMERACIÓN DE MENSAJES ............................................................................................................................... 305

8.3 DIAGRAMA DE SECUENCIA .............................................................................................................................. 307

8.3.1 LÍNEA DE VIDA Y CAJA DE ACTIVACIÓN ............................................................................................................. 307

8.4 DIAGRAMA DE SECUENCIA AVANZADO ...................................................................................................... 309

8.4.1 INVARIANTES DE ESTADO ................................................................................................................................... 309 8.4.2 REUTILIZACIÓN DE INTERACCIONES .................................................................................................................... 310 8.4.3 FRAGMENTOS COMBINADOS ............................................................................................................................... 310

8.5 DIAGRAMAS DE COMUNICACIÓN VS. DE SECUENCIA ............................................................................ 312

Page 7: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

T A B L A D E C O N T E N I D O S

vii

8.6 MENSAJERÍA AVANZADA EN LOS DIAGRAMAS DE INTERACCIÓN .................................................... 313

8.6.1 MENSAJES ITERADOS .......................................................................................................................................... 313 8.6.2 AUTO-MENSAJES ................................................................................................................................................ 314 8.6.3 MENSAJES CONDICIONADOS ............................................................................................................................... 314

8.7 CENTRALIZACIÓN/DESCENTRALIZACIÓN DEL CONTROL ................................................................... 316

8.8 DIAGRAMA DE INTERACCIÓN GLOBAL ....................................................................................................... 318

8.9 CONSIDERACIONES FINALES .......................................................................................................................... 320

8.10 RESUMEN .............................................................................................................................................................. 321

8.11 BIBLIOGRAFÍA COMENTADA ........................................................................................................................ 321

8.12 EJERCICIOS ......................................................................................................................................................... 322

CAPÍTULO 9 ~ DDIIAAGGRRAAMMAA DDEE FFLLUUJJOO DDEE DDAATTOOSS ............................................................................................. 331

9.1 PROCESO ................................................................................................................................................................ 332

9.2 FLUJO DE DATOS ................................................................................................................................................. 333

9.2.1 FLUJOS DE DATOS Y LA TRANSFORMACIÓN SEMÁNTICA ..................................................................................... 334 9.2.2 FLUJO DE DATOS MÚLTIPLE ................................................................................................................................ 336 9.2.3 FLUJOS DE DATOS Y PROCESOS ........................................................................................................................... 337

9.3 DEPÓSITO DE DATOS .......................................................................................................................................... 339

9.3.1 NECESIDAD DE LOS DEPÓSITOS ........................................................................................................................... 339 9.3.2 ACCESO A LOS DEPÓSITOS .................................................................................................................................. 340

9.4 TERMINADOR ....................................................................................................................................................... 344

9.5 CORRECTITUD DEL DIAGRAMA DE FLUJO DE DATOS ........................................................................... 346

9.5.1 IDENTIFICACIÓN DE PROCESOS ............................................................................................................................ 346 9.5.2 FLUJO DE CONTROL ............................................................................................................................................. 347 9.5.3 CONSISTENCIA LÓGICA ....................................................................................................................................... 348

9.6 ASPECTOS AVANZADOS DEL DIAGRAMA DE FLUJO DE DATOS .......................................................... 349

9.6.1 DIAGRAMAS DE FLUJO DE DATOS FÍSICO Y LÓGICO ............................................................................................ 349 9.6.2 COMPLEJIDAD EN LOS DIAGRAMAS DE FLUJO DE DATOS .................................................................................... 352

9.7 JERARQUIZACIÓN DEL DIAGRAMA DE FLUJO DE DATOS .................................................................... 355

9.7.1 REGLAS DE BALANCEO DE LOS DIAGRAMAS DE FLUJO DE DATOS JERARQUIZADOS ........................................... 357 9.7.2 CONSTRUCCIÓN DE DIAGRAMAS DE FLUJO DE DATOS JERARQUIZADOS ............................................................. 361

9.8 APLICACIÓN DE CRITERIOS DE CALIDAD AL DIAGRAMA DE FLUJO DE DATOS .......................... 369

9.8.1 CRITERIO DE MINIMALIDAD ................................................................................................................................ 369 9.8.2 CRITERIO DE EXPRESIVIDAD ............................................................................................................................... 370 9.8.3 CRITERIO DE SIMPLICIDAD .................................................................................................................................. 370

9.9 CONSIDERACIONES FINALES .......................................................................................................................... 372

9.10 BIBLIOGRAFÍA COMENTADA ........................................................................................................................ 374

9.11 EJERCICIOS ......................................................................................................................................................... 375

CAPÍTULO 10 ~ EESSPPEECCIIFFIICCAACCIIÓÓNN DDEE PPRROOCCEESSOOSS ............................................................................................ 381

10.1 ESENCIA DE LA ESPECIFICACIÓN ............................................................................................................... 382

Page 8: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

T A B L A D E C O N T E N I D O S

viii

10.2 RELACIÓN ENTRE EL DIAGRAMA DE FLUJO DE DATOS Y LA ESPECIFICACIÓN DE PROCESOS ......................................................................................................................................................................................... 383

10.3 PRE Y POST CONDICIONES ............................................................................................................................. 384

10.3.1 PRE-CONDICIÓN ................................................................................................................................................ 386 10.3.2 POST-CONDICIÓN .............................................................................................................................................. 389 10.3.3 ALTERNATIVAS EN LAS PRE Y POST CONDICIONES ........................................................................................... 390 10.3.4 SECUENCIACIÓN DE PROCESOS .......................................................................................................................... 391 10.3.5 SIGNIFICACIÓN DE LAS PRE Y POST CONDICIONES ............................................................................................ 392 10.3.6 COMPLEJIDAD EN LAS PRE Y POST CONDICIONES .............................................................................................. 393

10.4 OTRAS FORMAS DE ESPECIFICACIÓN DE PROCESOS ........................................................................... 394

10.4.1 TABLAS DE DECISIÓN ........................................................................................................................................ 395 10.4.2 GRÁFICOS .......................................................................................................................................................... 396 10.4.3 LENGUAJE ESTRUCTURADO............................................................................................................................... 397 10.4.4 DIAGRAMA DE FLUJO DE CONTROL ................................................................................................................... 401 10.4.5 LENGUAJE NARRATIVO ..................................................................................................................................... 401

10.5 BIBLIOGRAFÍA COMENTADA ........................................................................................................................ 403

10.6 EJERCICIOS ......................................................................................................................................................... 403

CAPÍTULO 11 ~ DDIIAAGGRRAAMMAA DDEE CCAASSOOSS DDEE UUSSOO ................................................................................................ 411

11.1 SISTEMA ................................................................................................................................................................ 412

11.2 ACTOR ................................................................................................................................................................... 413

11.3 CASO DE USO ....................................................................................................................................................... 416

11.4 ASOCIACIÓN DE COMUNICACIÓN ............................................................................................................... 419

11.5 ASPECTOS AVANZADOS DEL DIAGRAMA DE CASOS DE USO ............................................................. 420

11.5.1 RELACIONES ENTRE CASOS DE USO .................................................................................................................. 420 11.5.2 JERARQUÍAS DE ACTORES Y DE CASOS DE USO ................................................................................................. 431

11.6 PATRONES PARA EL DIAGRAMA DE CASOS DE USO ............................................................................. 433

11.7 APLICACIÓN DE CRITERIOS DE CALIDAD ................................................................................................ 435

11.7.1 CRITERIO DE MINIMALIDAD .............................................................................................................................. 435 11.7.2 CRITERIO DE EXPRESIVIDAD ............................................................................................................................. 436 11.7.3 CRITERIO DE SIMPLICIDAD ................................................................................................................................ 438

11.8 PROCEDIMIENTO DE CONSTRUCCIÓN ...................................................................................................... 441

11.9 CONSIDERACIONES FINALES ........................................................................................................................ 443

11.10 BIBLIOGRAFÍA COMENTADA ...................................................................................................................... 445

11.11 EJERCICIOS ....................................................................................................................................................... 446

CAPÍTULO 12 ~ DDOOCCUUMMEENNTTAACCIIÓÓNN DDEE CCAASSOOSS DDEE UUSSOO .................................................................................. 451

12.1 RELACIÓN ENTRE EL DIAGRAMA Y LA DOCUMENTACIÓN DE CASOS DE USO ........................... 452

12.2 DOCUMENTACIÓN COMPLETA DE CASOS DE USO (FULLY DRESSED) ............................................. 454

12.2.1 CONSTRUCCIÓN DE ESCENARIOS Y EXCEPCIONES ............................................................................................. 458 12.2.2 ESTRUCTURAS DE CONTROL ............................................................................................................................. 459 12.2.3 RELACIONES DE INCLUSIÓN Y EXTENSIÓN ENTRE CASOS DE USO ..................................................................... 461 12.2.4 RELACIONES DE GENERALIZACIÓN ENTRE CASOS DE USO ................................................................................ 462 12.2.5 CASOS ESPECIALES DE DOCUMENTACIÓN ......................................................................................................... 467

Page 9: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

T A B L A D E C O N T E N I D O S

ix

12.3 OTRAS FORMAS DE DOCUMENTACIÓN ..................................................................................................... 468

12.4 CONSIDERACIONES FINALES ........................................................................................................................ 470

12.5 BIBLIOGRAFÍA COMENTADA ........................................................................................................................ 471

12.6 EJERCICIOS ......................................................................................................................................................... 471

PPAARRTTEE IIII •• EELL TTOODDOO IINNTTEEGGRRAADDOO ......................................................................................................................... 481

CAPÍTULO 13 ~ IINNTTEEGGRRAACCIIÓÓNN DDEE MMOODDEELLOOSS PPOORR PPRROOCCEESSOOSS:: AANNÁÁLLIISSIISS EESSTTRRUUCCTTUURRAADDOO MMOODDEERRNNOO YY EENNFFOOQQUUEE SSTTAATTEEMMAATTEE .................................................................................................................. 483

13.1 ANÁLISIS ESTRUCTURADO MODERNO ...................................................................................................... 483

13.1.1 CONSISTENCIA ENTRE DIAGRAMA DE FLUJO DE DATOS Y DICCIONARIO DE DATOS ......................................... 484 13.1.2 CONSISTENCIA ENTRE DIAGRAMA DE FLUJO DE DATOS Y ESPECIFICACIÓN DE PROCESOS ................................ 484 13.1.3 CONSISTENCIA ENTRE ESPECIFICACIÓN DE PROCESOS, DIAGRAMA DE FLUJO DE DATOS Y DICCIONARIO DE DATOS ......................................................................................................................................................................... 486 13.1.4 CONSISTENCIA ENTRE DICCIONARIO DE DATOS, DIAGRAMA DE FLUJO DE DATOS Y ESPECIFICACIÓN DE PROCESOS .................................................................................................................................................................... 488 13.1.5 CONSISTENCIA ENTRE DIAGRAMAS ENTIDAD-RELACIONAMIENTO Y DE FLUJO DE DATOS Y DICCIONARIO DE DATOS ......................................................................................................................................................................... 489 13.1.6 CONSISTENCIA ENTRE ESPECIFICACIÓN DE PROCESOS Y DIAGRAMAS ENTIDAD-RELACIONAMIENTO Y DE FLUJO DE DATOS .................................................................................................................................................................... 491 13.1.7 CONSISTENCIA ENTRE DIAGRAMAS DE FLUJO DE DATOS, DE PROCESOS DE CONTROL Y DE TRANSICIÓN DE ESTADOS ...................................................................................................................................................................... 492 13.1.8 CONSISTENCIA ENTRE ESPECIFICACIÓN DE PROCESO Y DIAGRAMA DE PROCESOS DE CONTROL ...................... 495 13.1.9 EVALUACIÓN FINAL .......................................................................................................................................... 496

13.2 ENFOQUE STATEMATE .................................................................................................................................... 497

13.2.1 CONSISTENCIA ENTRE DIAGRAMA DE PROCESOS DE CONTROL Y STATECHART .................................................. 498 13.2.2 CONSISTENCIA ENTRE STATECHART Y DICCIONARIO DE DATOS ......................................................................... 499 13.2.3 EVALUACIÓN FINAL .......................................................................................................................................... 500

13.3 BIBLIOGRAFÍA COMENTADA ........................................................................................................................ 500

13.4 EJERCICIOS ......................................................................................................................................................... 501

CAPÍTULO 14 ~ IINNTTEEGGRRAACCIIÓÓNN DDEE MMOODDEELLOOSS PPOORR OOBBJJEETTOO--PPRROOCCEESSOO:: EENNTTIIDDAADDEESS DDIINNÁÁMMIICCAASS .. 511

14.1 CONCEPTO DE ENTIDAD DINÁMICA ........................................................................................................... 511

14.1.1 CICLO DE VIDA DE UNA ENTIDAD DINÁMICA .................................................................................................... 512

14.2 MODELADO ESTÁTICO .................................................................................................................................... 519

14.2.1 RELACIONES DINÁMICO-ESTÁTICAS ................................................................................................................. 520

14.3 MODELADO FUNCIONAL ................................................................................................................................. 523

14.3.2 DIAGRAMA DE FLUJO DE DATOS PARA EL CICLO DE VIDA GENÉRICO ............................................................... 526 14.3.3 OTRAS RELACIONES ENTRE LOS MODELOS ....................................................................................................... 526

14.4 INTEGRACIÓN DE MODELOS ......................................................................................................................... 527

14.5 EVALUACIÓN FINAL ......................................................................................................................................... 527

14.6 BIBLIOGRAFÍA COMENTADA ........................................................................................................................ 529

14.7 EJERCICIO ........................................................................................................................................................... 529

Page 10: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

T A B L A D E C O N T E N I D O S

x

CAPÍTULO 15 ~ IINNTTEEGGRRAACCIIÓÓNN DDEE MMOODDEELLOOSS PPOORR OOBBJJEETTOOSS:: LLEENNGGUUAAJJEE UUNNIIFFIICCAADDOO DDEE MMOODDEELLAADDOO .................................................................................................................................................................. 537

15.1 INTRODUCCIÓN AL LENGUAJE UNIFICADO DE MODELADO ............................................................. 538

15.1.1 OBJETIVOS DEL LENGUAJE UNIFICADO DE MODELADO .................................................................................... 539 15.1.2 BLOQUES DE CONSTRUCCIÓN DEL LENGUAJE UNIFICADO DE MODELADO ........................................................ 539 15.1.3 JERARQUIZACIÓN DE MODELOS ........................................................................................................................ 541

15.2 REGLAS DE INTEGRACIÓN ............................................................................................................................. 543

15.2.1 CONSISTENCIA ENTRE LOS DIAGRAMAS DE CLASES Y DE SECUENCIA/COMUNICACIÓN .................................... 543 15.2.2 CONSISTENCIA ENTRE LOS DIAGRAMAS DE CLASES Y DE INTERACCIÓN GLOBAL ............................................. 544 15.2.3 CONSISTENCIA ENTRE LOS DIAGRAMAS DE CLASES Y DE MÁQUINA DE ESTADOS ............................................ 545 15.2.4 CONSISTENCIA ENTRE LOS DIAGRAMAS DE CLASES Y DE CASOS DE USO ......................................................... 547 15.2.5 CONSISTENCIA ENTRE LOS DIAGRAMAS DE CLASES Y DE ACTIVIDADES ........................................................... 549 15.2.6 CONSISTENCIA ENTRE DIAGRAMAS DE SECUENCIA ........................................................................................... 549 15.2.7 CONSISTENCIA ENTRE LOS DIAGRAMAS DE SECUENCIA Y DE INTERACCIÓN GLOBAL ....................................... 550 15.2.8 CONSISTENCIA ENTRE LOS DIAGRAMAS DE SECUENCIA/COMUNICACIÓN Y DE MÁQUINA DE ESTADOS ............ 551 15.2.9 CONSISTENCIA ENTRE LOS DIAGRAMAS DE SECUENCIA/COMUNICACIÓN Y DE CASOS DE USO ......................... 553 15.2.10 CONSISTENCIA ENTRE LOS DIAGRAMAS DE SECUENCIA/COMUNICACIÓN Y DE ACTIVIDADES ........................ 556 15.2.11 CONSISTENCIA ENTRE LOS DIAGRAMAS DE INTERACCIÓN GLOBAL Y DE MÁQUINA DE ESTADOS ................... 557 15.2.12 CONSISTENCIA ENTRE LOS DIAGRAMAS DE INTERACCIÓN GLOBAL Y DE CASOS DE USO ................................ 558 15.2.13 CONSISTENCIA ENTRE LOS DIAGRAMAS DE INTERACCIÓN GLOBAL Y DE ACTIVIDADES ................................. 558 15.2.14 CONSISTENCIA ENTRE LOS DIAGRAMAS DE MÁQUINA DE ESTADOS Y DE CASOS DE USO ............................... 559 15.2.15 CONSISTENCIA ENTRE LOS DIAGRAMAS DE MÁQUINA DE ESTADOS Y DE ACTIVIDADES ................................. 559 15.2.16 CONSISTENCIA ENTRE LOS DIAGRAMAS DE CASOS DE USO Y DE ACTIVIDADES .............................................. 560 15.2.17 CONSISTENCIA ENTRE DIAGRAMAS DE ACTIVIDADES ..................................................................................... 561 15.2.18 CONSISTENCIAS PARA LA DOCUMENTACIÓN DE CASOS DE USO ...................................................................... 562

15.3 EVALUACIÓN FINAL ......................................................................................................................................... 565

15.4 BIBLIOGRAFÍA COMENTADA ........................................................................................................................ 567

15.5 EJERCICIOS ......................................................................................................................................................... 568

PLANTEAMIENTO DE CASOS ................................................................................................................................. 583

GLOSARIO .................................................................................................................................................................... 587

BIBLIOGRAFÍA ............................................................................................................................................................ 595

Page 11: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

1

Lista de Abreviaturas

AEM = Análisis Estructurado Moderno

CASE = Computer Aided Software Engineering

CU = Caso de Uso

DAct = Diagrama de Actividades

DCla = Diagrama de Clases

DCom = Diagrama de Comunicación

DCU = Diagrama de Casos de Uso

DD = Diccionario de Datos

DER = Diagrama Entidad-Relacionamiento

DFD = Diagrama de Flujo de Datos

DIG = Diagrama de Interacción Global

DInt = Diagrama de Interacción

DME = Diagrama de Máquina de Estados

DoCU = Documentación de Caso de Uso

DPC = Diagrama de Procesos de Control

DSec = Diagrama de Secuencia

DTE = Diagrama de Transición de Estados

ED = Entidad Dinámica

EP = Especificación de Proceso

ES = Enfoque STATEMATE

MEF = Máquina de Estados Finitos

PPC = Pre y Post Condiciones

RP = Red de Petri

SCH = StateCHart

UML = Unified Modeling Language

Page 12: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

2

Page 13: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

3

Introducción

a construcción de modelos es un proceso que nace con la observación del mundo. Modelamos o representamos el mundo observado en nuestras mentes y esto nos parece perfectamente natu-

ral. Las pinturas rupestres en las cuevas de Altamira demuestran la cuidada representación de los animales de hace más de 15.000 años. Hoy contamos con una multitud de lenguajes de representa-ción en las más diversas áreas del conocimiento. Todos hemos debido interpretar modelos: cuando seguimos el plano de calles de una ciudad en un dispositivo móvil, cuando vemos una animación com-putarizada de los espacios interiores de un edificio, cuando apreciamos los detalles de un automóvil a esca-la, o cuando interpretamos una in-fografía en un periódico.

En todos estos casos ocurre al-go como lo ilustrado en la figura de la derecha (¡que también es un mo-delo!).

El modelador interpreta la rea-lidad que percibe, en los términos de algún lenguaje, y construye un modelo. Un lenguaje, para estos efectos, es el conjunto de símbolos y reglas que permite la comunicación. El modelo puede estar contenido en la mente del modelador, o en algún medio externo, como un dibujo, o una representación matemática. Si el modelo está en un

medio externo, un lector del modelo reinterpreta el modelo, en los términos del mismo lenguaje en que fue construido, y recrea la realidad original en su men-te. Por ejemplo, si un modelador desea comunicar la cercanía de un restauran-te, puede construir el modelo de la figura a la izquierda. Un lector entonces, reconociendo el símbolo de los cubiertos del lenguaje utilizado, interpreta en-tonces que existe cerca un lugar para almorzar.

En este libro proponemos entregar un lenguaje para la construcción de modelos de sistemas de información. La realidad a representar son los sistemas de información que nos rodean perma-nentemente: desde la operación de un microondas, pasando por un celular, hasta un sistema tran-saccional en un banco. Los modeladores y lectores somos las personas que necesitamos comunicar nuestras percepciones acerca de estos sistemas. Informalmente, el lenguaje está constituido por los distintos diagramas (notaciones y reglas) presentados en los capítulos de este libro.

Cabe hacer notar que cuando los modelos se utilizan para diseñar un sistema de información, como por ejemplo, cuando proponemos un procedimiento automatizado para la emisión de factu-

L

MODELO

objeto

objeto

objeto

REALIDAD LENGUAJE INTERPRETACIÓN MODELADOR

INTERPRETACIÓN

LECTOR LENGUAJEREALIDAD RECREADA

Page 14: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

I N T R O D U C C I Ó N

4

ras y control de cuentas en una pequeña empresa, el sistema no existe, pero se propone su existen-cia en la forma de un modelo. El modelador no representa un sistema de la realidad, sino que un sistema concebido en su mente. En este caso, el modelo consituye una representación que orienta la construcción del sistema en la realidad.

En este contexto, caben las interrogantes ¿cómo podemos construir un modelo correcto? ¿Cómo podemos evitar cometer errores? ¿Qué debemos hacer para que el lector no mal interprete el modelo? No es fácil responder a estas preguntas, ya que de acuerdo a una famosa cita, todos los modelos están incorrectos, pero algunos son útiles1. La realidad presenta un nivel de detalle que sobre-pasa largamente nuestra capacidad de comprensión y representación. Además, la interpretación del modelador “interfiere” en este proceso, con lo cual se consigue una concepción interpretada de la realidad. Un proceso inverso ocurre en la reinterpretación de un modelo. Esto es lo que intenta-mos mostrar en la figura de la página anterior: el objeto es un círculo en la realidad, pero es apenas un hexágono cuando modelado, y es finalmente un octágono cuando se recrea.

Además, el modelador está permanentemente tomando decisiones sobre qué incluir o desta-car en un modelo, pensando en los lectores del mismo. Una historia anecdótica2 cuenta de una em-presa consultora de rediseño de procesos de negocio que, después de varios meses de trabajo sobre un proceso de ventas de una gran empresa química, presentó dos modelos al directorio: en un lado de la sala había un diagrama de flujo de casi 25 metros de largo, que representaba el proceso actual, y en la muralla opuesta un diagrama de unos 18 metros, que describía el nuevo proceso. El presi-dente del directorio esperó a que los consultores terminaran su exposición y les preguntó: “Si eso es un buen proceso, favor explíqueme por qué”. Claramente el detalle del modelo era inapropiado para la audiencia.

Modelos para Sistemas de Información

En lo que respecta a los lenguajes o modelos para sistemas de información cabe destacar dos hitos históricos. El primero se produce en 1989 cuando Edward Yourdon sintetiza los desarrollos de los 20 años anteriores en una metodología y un conjunto de modelos para sistemas de información denominándolos Análisis Estructurado Moderno3 (AEM). Este hito es importante porque sentó las bases de la integración de modelos de distintas perspectivas, definiendo consistencia entre ellos, dentro del paradigma de proceso. Posteriormente, en 1997, se lanza el estándar UML4 o Lenguaje Unificado de Modelado, que estandarizó los diagramas de las distintas dimensiones o perspectivas, bajo el paradigma de la orientación a objetos. Este estándar continúa en evolución, enriqueciéndose gradualmente. Sobre estos dos grandes pilares presentamos los diferentes modelos para sistemas de información.

1 Charles Box en su artículo “Robusteness in the Strategy of Scientific Model Building” de 1979.

2 Tomada de (White, 2008).

3 Ver (Yourdon, 1993).

4 Del inglés Unified Modeling Language. Ver www.uml.org.

Page 15: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

I N T R O D U C C I Ó N

5

¿Qué Aporta este Libro?

Son escasos los libros en lengua inglesa, que presenten sistemáticamente los principales modelos utilizados para sistemas de información5. En español no existen. La mayoría de los textos revisan unos pocos modelos relacionados por aspectos comunes o por paradigma, o simplemente describen en forma superficial varios modelos, dentro de distintas metodologías de análisis y diseño de sis-temas de información.

Nuestro libro viene a llenar este vacío. Este libro se caracteriza por:

• Presentar en profundidad cada modelo, detallando los elementos y sus relaciones, preparando al lector para poder utilizarlos en la práctica.

• Mostrar numerosos ejemplos para ilustrar los conceptos, así como casos más com-plejos con aplicación detallada.

• Utilizar un caso común para todos los modelos y en las diferentes integraciones des-critas.

• Describir los modelos siguiendo un marco conceptual original, que incluye, entre otros, el enriquecimiento de los modelos con criterios avanzados de calidad.

• Ofrecer una estrategia de integración (entidades dinámicas) que se encuentra entre los paradigmas de objeto y de proceso, que entrega otra visión de las posibilidades para relacionar los modelos de sistemas.

¿A Quién Interesa este Libro?

Este libro está concebido para servir a dos grandes categorías de público objetivo. Una de ellas la constituye los estudiantes de carreras de Ingenierías Informática, Industrial o afines, que pueden estudiarlo en cursos avanzados de modelado de sistemas de información, de software o de negocios. El libro ofrece la posibilidad de comprender, profundizar y comparar los modelos conocidos. In-cluimos dentro de esta categoría de público a los estudiantes de postgrado profesionalizante, que deban cursar asignaturas sobre modelado de sistemas de información. Estos estudiantes podrán concentrarse en aquellos modelos específicos de su interés.

La segunda categoría de público objetivo la constituyen los analistas de sistemas de infor-mación, de procesos de negocio o consultores de empresas, que aplican algunos de estos modelos en su trabajo profesional. Para ellos, este libro les ofrece un mejor entendimiento de los modelos y sus relaciones.

Para aquellos que ya poseen un conocimiento básico de los modelos presentados, este libro les proporciona nuevas descripciones de los modelos conocidos, así como comparaciones distintas a las usuales y relaciones nuevas entre conceptos ya establecidos. Todo esto les ayudará a mejorar la compresión del conjunto de modelos6 y sus posibilidades de uso en la práctica.

5 Ver por ejemplo (Davis, 1993), (Wieringa, 1998) y (Wieringa, 2003).

6 Aunque no estén de acuerdo con lo que exponemos.

Page 16: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

I N T R O D U C C I Ó N

6

Estructura del Libro

El libro comienza con un capítulo que describe los conceptos básicos del modelado de sistemas de información, sus características principales, las propiedades de los sistemas que se modelan, los paradigmas de modelado y un mapa situacional de los modelos. Este capítulo es en verdad algo abstracto, ya que es previo a la presentación de los modelos, sin embargo en cada capítulo referen-ciamos estos elementos para entender cómo aplican en lo específico.

La Parte 1 · Las Vistas Parciales está constituida por los capítulos del 2 al 12, que siguen la siguiente estructura:

1) Elementos del diagrama: Describimos los elementos básicos que constituyen los diagramas del modelo descrito.

2) Relaciones entre los elementos del diagrama: Presentamos las distintas relaciones posibles entre los elementos descritos, que estructuran los diagramas.

3) Aspectos avanzados del diagrama (si corresponde): Describimos algunas características más complejas de los diagramas.

4) Aplicación de los criterios avanzados de calidad (si corresponde): Mostramos las transfor-maciones posibles para mejorar la calidad de acuerdo a diferentes criterios.

5) Consideraciones finales: Indicamos algunas consideraciones especiales para el diagrama, que no tuvieron cabida en las otras secciones.

6) Bibliografía comentada: Comentamos algunos textos que exponen el modelo o integración descritos, con el propósito de orientar la continuación del estudio.

7) Ejercicios propuestos y resueltos: Enunciamos y resolvemos algunos ejercicios y dejamos otros para el desarrollo del lector.

Los capítulos de la Parte I consisten en lo que sigue.

El capítulo 2 presenta los denominados diagramas estructurales, es decir, los modelos de las propiedades estáticas de los sistemas: Diagrama Entidad-Relacionamiento (DER) y Diagrama de Clases (DCla). Como estos modelos están emparentados (el DCla se ha definido a partir del DER), ambos modelos los presentamos en conjunto, describiendo los conceptos básicos y avanzados co-munes a ambos diagramas, así como los conceptos específicos, particulares a cada diagrama.

En el capítulo 3 introducimos el Diccionario de Datos (DD). Este es un modelo complemen-tario de documentación para los otros modelos y se incorporó en el AEM. Presentamos la notación textual (más usada) y una notación gráfica alternativa.

El capítulo 4 presenta tres modelos dinámicos de comportamiento emparentados: el Dia-grama de Transición de Estados (DTE), el Statechart (SCH) y el Diagrama de Máquina de Estados (DME). Estos modelos se sustentan en la máquina secuencial de estados finitos de la teoría de autómatas y, a partir del DTE, los otros modelos han propuesto extensiones y modificaciones para aumentar su poder de expresión en la representación de comportamiento complejo de los sistemas. Los modelos se presentan siguiendo su línea evolutiva.

En el capítulo 5 introducimos la Red de Petri (RP). Aún cuando este modelo es formal, op-tamos por presentarlo informalmente, con la clase de sistemas de redes elementales o condi-ción/evento, que no es la categoría más conocida de las RP. Esto porque para sistemas de informa-ción no es necesaria la representación cuantitativa que ofrecen otras clases de RP. Optamos también

Page 17: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

I N T R O D U C C I Ó N

7

por la RP canal/actividad para jerarquizar las redes elementales. Este modelo se utiliza en la inte-gración de modelos denominada Entidades Dinámicas (ED).

El Diagrama de Actividades (DAct), que forma parte del estándar UML, lo describimos en el capítulo 6. Este es un modelo híbrido, ya que combina ideas de diversos modelos anteriores, lo-grando una síntesis apropiada para la representación procedimental de actividades. Es un diagra-ma particularmente flexible, ya que la necesidad de describir procedimientos puede originarse desde el algoritmo de una operación de un objeto en un sistema de software, hasta la lógica de tra-bajo de un proceso de negocio, por ejemplo.

El capítulo 7 introduce el Diagrama de Procesos de Control (DPC). Este diagrama sirve para la descripción de la coordinación y el control de procesos de un sistema de información. Es un mo-delo relativamente simple, que asume una concepción centralizada de control, como definida en el AEM.

El capítulo 8 presenta un conjunto de diagramas del UML, agrupados como diagramas de interacción. Estos modelos están enfocados en la representación de interacciones entre objetos. Los diagramas que revisamos son el Diagrama de Comunicación (DCom), el Diagrama de Secuencia (DSec) y el Diagrama de Interacción Global (DIG). Dos de estos modelos (DCom y DSec) tienen elementos comunes, así como características particulares a cada diagrama. El DIG es descrito muy brevemente, ya que tiene su mayor utilidad para efectos de integración.

El Diagrama de Flujo de Datos (DFD), modelo central del AEM, lo describimos en el capítu-lo 9. Este modelo representa claramente cómo los procesos se aplican a los datos, para realizar sus transformaciones en un sistema de información. Este modelo además, identifica flujos de datos y depósitos de datos, distinguiendo así los datos que fluyen por el sistema, de los datos que se regis-tran o mantienen en el sistema.

En el capítulo 10 presentamos la Especificación de Procesos (EP), como modelo complemen-tario específicamente para el DFD del capítulo anterior. Revisamos algunas formas de representa-ción, pero con un mayor énfasis en las pre y post-condiciones, que logran un alto nivel de abstrac-ción para la descripción de los procesos del DFD.

En el capítulo 11 describimos el Diagrama de Casos de Uso (DCU) del estándar UML. Este diagrama está orientado a la representación de las funcionalidades que el sistema ofrece al entorno en que opera. Asume una visión externa, desde el punto de vista de los usuarios o actores del sis-tema de información. Es un modelo abstracto y sintético, que requiere del complemento de una documentación de los casos de uso.

El capítulo 12 presenta la Documentación de Casos de Uso (DoCU), que complementa el DCU del capítulo 11. Describimos en detalle la forma completa (fully dressed), que define una plan-tilla a ser completada para cada caso de uso del DCU. La DoCU sirve para representar el detalle de lo que ocurre al interior de cada CU del DCU.

Los capítulos de la Parte II · El Todo Integrado, abordan las diferentes formas de integrar los modelos de la Parte I.

Las integraciones de modelos, bajo el paradigma de proceso, de acuerdo al AEM y al enfo-que STATEMATE (ES), las presentamos en el capítulo 13. Indicamos los modelos que se utilizan y las reglas de consistencia entre estos modelos. El ES es entendido como una variante del AEM, al reemplazar el DTE por un SCH.

En el capítulo 14 describimos la integración de modelos, bajo un enfoque objeto-proceso, de acuerdo a las ED. Este enfoque está en algún punto intermedio entre los paradigmas de proceso y

Page 18: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

I N T R O D U C C I Ó N

8

de objeto, ya que no encapsula completamente, pero tampoco separa completamente los procesos de los datos. Indicamos los modelos utilizados y sus relaciones de consistencia.

Y el capítulo 15 presenta la integración de modelos por objetos, utilizando UML. Definimos un conjunto de reglas de consistencia pre-existentes y otras derivadas de metodologías y buenas prácticas. Indicamos las posibilidades de relacionar los distintos diagramas, como así mencionamos también las relaciones más indirectas.

Las figuras abajo describen la forma de seguir los capítulos del libro y los aspectos particu-lares a considerar en algunos de ellos, dependiendo de la estrategia de integración en que se esté interesado: AEM, ES, ED o UML. El capítulo 1 no es estrictamente requerido (por eso lo represen-tamos punteado), pero recomendamos comenzar la lectura con él. En todo caso, siempre es posible omitirlo y recurrir a él cuando se quiera profundizar en algún concepto mencionado en los capítu-los de la Parte I.

Cap. 1 ~ Modelado de Sistemas

AEM o ES

Cap. 2 ~ DER/DCla:Sólo aspectos comunes y

DER

Cap. 3 ~ DD

Cap. 4 ~ DTE/SCH/DME:Sólo DTE

Cap. 4 ~ DTE/SCH/DME:Sólo DTE y SCH

Cap. 7 ~ DPC

Cap. 9 ~ DFD

Cap. 10 ~ EP

Cap. 13 ~ Integración de Modelos por Procesos:

Sólo AEM

Cap. 13 ~ Integración de Modelos por Procesos:

Sólo ES

Cap. 1 ~ Modelado de Sistemas

ED

Cap. 2 ~ DER/DCla:Sólo aspectos comunes y

DER

Cap. 3 ~ DD

Cap. 5 ~ RP

Cap. 9 ~ DFD

Cap. 14 ~ Integración de Modelos por Objeto-

Proceso

Cap. 1 ~ Modelado de Sistemas

UML

Cap. 2 ~ DER/DCla:Sólo aspectos comunes y

DCla

Cap. 4 ~ DTE/SCH/DME

Cap. 6 ~ DAct

Cap. 8 ~ DInt

Cap. 15 ~ Integración de Modelos por Objetos

Cap. 11 ~ DCU

Cap. 12 ~ DoCU

AEM

AEM ES

ES

El orden que mostramos obedece a la secuencia de presentación de los capítulos del libro,

pero no es estrictamente necesario seguir esta secuencia. Sólo los capítulos 9 y 10 se deben leer en orden (por eso están enmarcados), ya que están estrechamente relacionados para AEM y ES. En el caso de UML, recomendamos leer en orden los capítulos 11 y 12, por la misma razón.

Page 19: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

I N T R O D U C C I Ó N

9

Finalmente, incluimos un glosario que presenta todas las definiciones destacadas en el libro y su correspondiente referencia al modelo de la cual fue tomada.

¿Cómo fue Escrito este Libro?

Muchos textos universitarios nacen motivados por la necesidad de compilar, estructurar y presen-tar conocimiento de forma didáctica y acorde a la situación particular de formación que se requiere. Este libro, en sus orígenes, no escapa a esta realidad. Sin embargo, hemos incorporado no sólo las contribuciones de diversos autores de los modelos, sino que también nuestra propia investigación en el área de modelos de sistemas de información y de procesos de negocio, tanto en los aspectos más teóricos, como en los aplicados a proyectos en que nos hemos involucrado.

La idea de este libro surgió en 2004, pero sólo quedó como una estructura general y un pri-mer borrador del capítulo de modelos estáticos. Recién lo retomamos en 2005, para concluir con una versión preliminar en 2006. En 2007 hicimos una revisión más sistemática y corregimos mu-chos errores, incluyendo algunas actualizaciones menores de los modelos. Luego de otra pausa, recién a fines de 2009 e inicios de 2010, lo llevamos a su forma final.

Van nuestros agradecimientos a los estudiantes de pre y postgrado de la Escuela de Inge-niería Industrial de la Pontificia Universidad Católica de Valparaíso, quienes sin saberlo, con sus inocentes y a veces muy perspicaces preguntas, nos obligaron a aclarar y mejorar definiciones y ejemplos permanentemente. También van nuestros agradecimientos a los distintos ayudantes de cátedra de Sistemas de Información y de Modelamiento de Sistemas de Información, quienes apor-taron anónimamente con ideas, ejercicios y creatividad a enriquecer este libro.

Un párrafo aparte para agradecer especialmente a Paula Jaar, quien leyó y aportó con cien-tos de observaciones detalladas para mejorar la claridad de la redacción y la consistencia de figu-ras, tablas, referencias, etc.

Agradecemos por último, todo el apoyo de la Escuela de Ingeniería Industrial de la Pontifi-cia Universidad Católica de Valparaíso, para que pudiéramos dedicarnos a redactar este libro, y a ActualiSAP Consultores que contribuyó decisivamente a financiar su primera impresión.

En esta reedición hemos introducido decenas de correcciones y pequeñas modificaciones a lo largo del documento. Esperamos haber mejorado el libro, aunque sólo sea marginalmente.

Asumimos la responsabilidad y pedimos disculpas por los errores y los problemas de re-dacción que aún persisten. Para paliar de alguna manera esta situación, seguimos manteniendo una página web para alojar las correcciones y/o modificaciones que puedan surgir y toda otra informa-ción relevante para el futuro de este libro. La sección correspondiente a este libro se encuentra en http://eii.pucv.cl/pers/gbustos/publicaciones.htm.

Page 20: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

I N T R O D U C C I Ó N

10

Page 21: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

11

Capítulo 1 ~ MMooddeellaaddoo ddee SSiisstteemmaass

l modelado de sistemas de información es un proceso complejo y exigente para un modelador. Implica la representación de un sistema en la forma de componentes definidos en uno o más

modelos. En el contexto de este libro, se espera que un modelador desarrolle una capacidad de abs-tracción, en términos de modelos conceptuales de los sistemas de información.

Para esto se necesita definir claramente qué se entiende por un modelo de un sistema y por qué la necesidad de contar con uno. Todo esto reconociendo los principios y también los problemas inherentes al modelado.

En este capítulo se caracterizan los modelos, se definen distintos criterios de calidad y las propiedades generales de los sistemas, y se presentan las dimensiones del modelado. Finalmente se introducen los paradigmas de modelado y un mapa preliminar de los modelos presentados en este libro.

1.1 Definición de Modelo

Para comprender de qué trata el modelado de sistemas es imprescindible conocer primero qué es un modelo.

Definición: Un modelo es una representación abstracta y simplificada de un sistema real, con la cual se puede explicar o probar su comportamiento como un todo o en par-

tes.

Supóngase que una persona desea comprar un departamento y encuentra en un periódico, en la sección inmobiliaria, el dibujo de un edificio cuyos departamentos están a la venta. Este dibujo es una representación abstracta y simplificada del edificio y puede servir para ver si es interesante visitar-lo: si tiene áreas verdes, si los departamentos tienen balcón o terraza, los accesos, etc. Este es un claro ejemplo de un modelo, ya que el dibujo no es el objeto real, sino algo que lo representa de una manera simplificada.

Existen modelos para diversos propósitos: un maniquí en una vitrina, la foto de un living, un mapa dibujado a mano para indicar cómo llegar a una dirección, el plano de una casa, el aero-modelo usado en pruebas aerodinámicas, un conjunto de ecuaciones que describen una onda elec-

E

Page 22: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

C A P . 1 ~ M O D E L A D O D E S I S T E M A S

12

tromagnética, etc. Por medio de modelos es posible anticipar o sustituir, hasta cierto punto, la exis-tencia de una realidad cualquiera.

A modo general, los modelos de sistemas de información representan:

• Componentes: Estos pueden ser de diversa naturaleza, dependiendo del modelo. Por ejemplo se tienen procesos, clases, casos de uso, entidades, etc. Un modelo entonces in-cluye un conjunto no vacío de componentes.

• Propiedades de los componentes: Los componentes poseen ciertas características o atri-butos que los describen adecuadamente en el modelo. Estas propiedades pueden mos-trarse en conjunto con los componentes o indicarse en otro modelo o documentación re-lacionada. Por ejemplo, un proceso (componente) tiene un procedimiento (propiedad), una clase (componente) presenta operaciones (propiedades), un caso de uso (componen-te) tiene una documentación (propiedad), etc. Un modelo entonces incluye propiedades de los componentes.

• Relaciones entre los componentes: Los componentes pueden relacionarse entre sí. Estas relaciones pueden ser de distinta naturaleza y representarse en conjunto o separada-mente de los componentes. Por ejemplo, un proceso (componente) puede consultar (re-lación) un depósito de datos (otro componente), una clase (componente) puede tener una asociación (relación) con otra clase, un caso de uso (componente) puede incluir (re-lación) a otro caso de uso, etc. Un modelo entonces incluye relaciones entre los compo-nentes.

Construir modelos no es una tarea fácil, por lo que parece razonable preguntarse: ¿Qué sig-nifica modelar? ¿Es realmente necesario modelar? ¿Cómo se debe modelar? ¿Por qué se debe mo-delar?

1.2 La Necesidad del Modelo

Cualquier proyecto humano que significa la construcción de algo, pasa necesariamente por una etapa previa que podría denominarse conceptualización: ¿Qué se quiere hacer? ¿Cómo será? ¿Qué debe incluir? ¿Cuánto tiempo tomará? La respuesta a estas preguntas reside, como un proceso na-tural, en un modelo.

La figura 1.1 muestra 3 proyectos de construcción de distinta envergadura. Supóngase que una persona quiere enfrentar el desafío de construir la casa del perro (a). Lo más probable es que se puede comenzar con tablas, clavos y algunas herramientas. En unas horas, y con poca planifica-ción, se puede lograr una casa razonablemente funcional para el perro, sin necesidad de la ayuda de otras personas. Si protege bien del frío y de la lluvia, el perro puede quedar satisfecho, sino puede rehacerse sin que esto signifique mucho esfuerzo. Es interesante notar que es poco probable que la persona construya una casa esférica, por ejemplo, sino que opte por alguna idea común o modelo mental que tenga (otras casas que conozca o que haya visto en una revista o tienda).

Page 23: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

C A P . 1 ~ M O D E L A D O D E S I S T E M A S

13

(a) (b) (c) Figura 1.1 – Ejemplos de proyectos: (a) casa del perro; (b) casa familiar; y (c) edificio de oficinas.

Distinta es la situación para abordar la construcción de una casa para la familia (b). En este caso no parece razonable comenzar con algunos materiales y herramientas, sino que es aconsejable tener una planificación previa. Lo más básico es tener algunos borradores para saber cómo sería la casa. Para satisfacer las necesidades de la familia y los estándares de vivienda, lo más probable es que requiera algunos planos arquitectónicos. Con estos planos se puede definir el uso de las habita-ciones de la casa y los detalles para la instalación eléctrica, sanitaria, de calefacción, etc. Además, permiten estimar cuánto tiempo tomará la construcción, los materiales requeridos y el trabajo que demandará. En general, la construcción será encargada a alguna empresa, con quien habrá que comunicarse por medio de los planos. Los errores en la construcción en este proyecto son más caros que con la casa del perro, por lo que debe planificarse con mayor detalle de manera se asegurar la satisfacción de la familia.

Si finalmente, se desea construir un edificio como el de (c), ya es impensable partir con un conjunto de materiales. Probablemente existan inversionistas que les interesará conocer cuál será el estilo del edificio, cuántos pisos tendrá, qué superficie considerará, qué infraestructura ofrecerá a sus usuarios, etc. Los inversionistas pueden incluso cambiar de opinión cuando el edificio ya esté en construcción, por lo que la planificación debe ser detallada y monitoreada todo el tiempo para acomodar estos cambios. Los errores de construcción ahora tienen costos altísimos, por lo que se requiere tener todo claro antes de proceder. Habrá muchos profesionales involucrados en la cons-trucción, por lo que los planos, maquetas y animaciones son indispensables para tratar aspectos de seguridad, ascensores, decoración, instalaciones eléctricas, de comunicaciones, iluminación, etc.

En estos 3 proyectos, siempre ha existido un modelo, es decir, una representación previa a la construcción. Lo que varía en cada proyecto es la formalización del modelo y el número de perso-nas que se comunican por medio de modelos. Para la casa del perro basta una imagen mental o un simple borrador a mano. Para la casa sirve un conjunto de planos. Para el edificio se necesitan pla-nos, maquetas, animaciones y croquis.

La construcción de modelos es una técnica de ingeniería ya probada y bien aceptada. Los modelos no sólo se utilizan para los ejemplos de construcción anteriores. Es inconcebible producir aeronaves o automóviles sin haber construido modelos previos, desde animaciones computaciona-les hasta modelos a escala. Diseñar un nuevo teléfono celular o un televisor, requieren también algún modelado para entender mejor el producto y poder comunicarlo a otros.

Entonces ¿por qué modelar sistemas? Para entender mejor el sistema que se quiere desarro-llar. Al modelar se logra:

• Visualizar cómo es un sistema o cómo se espera que sea.

Page 24: para sistemas de información - euv.cl · de información Una visión integrada: UML, AEM, ... 6.1 ACTIVIDAD ... 8.1 ELEMENTOS BÁSICOS DE LOS DIAGRAMAS DE INTERACCIÓN ...

C A P . 1 ~ M O D E L A D O D E S I S T E M A S

14

• Especificar la estructura o comportamiento del sistema.

• Tener una guía o marco para orientar la construcción del sistema.

• Documentar las decisiones que los modeladores han tomado.

El modelado es necesario no sólo para grandes proyectos. El ejemplo de la casa del perro también se beneficia con un modelo. Es claro que mientras más complejo sea el sistema, más impor-tante será el modelado del mismo, ya que es difícil comprender completamente sistemas complejos. Los seres humanos somos limitados para enfrentar la complejidad, de ahí que los modelos ayudan en este sentido, al presentar la realidad simplificada.

Finalmente, el modelo en su propósito simplificador de la realidad, aporta al intelecto del modelador, habilitando el trabajo de este último en niveles más abstractos y por ende, de mayor aplicabilidad. Por ejemplo, un modelador puede reconocer que un sistema que modeló anterior-mente se parece al que está modelando ahora, y puede reutilizar algunas ideas ya probadas en el modelo.

1.2.1 Principios de Modelado

El uso de modelos posee una larga historia. Esta experiencia sugiere algunos principios básicos del modelado de sistemas.

La Solución Sigue al Modelo

La elección de qué modelo crear tiene un profundo impacto en cómo el problema será atacado y cómo se llegará a la solución. Los modelos correctos iluminan los problemas más complejos, ofre-ciendo posibilidades de comprensión inimaginables de otra manera. Modelos incorrectos sólo con-funden, poniendo énfasis en aspectos irrelevantes.

Los modelos a utilizar influyen significativamente en la forma en que un modelador ve el sistema. Muchas veces los modelos se transforman en verdaderos paradigmas sobre lo que son los sistemas. Un modelador con una óptica de bases de datos tenderá a poner énfasis en modelos deta-llados de datos por sobre otros modelos. Un modelador formado en métodos estructurados tenderá a ver el sistema centrado en algoritmos que transforman flujos de datos que pasan por el sistema. Un modelador orientado a objetos, construirá una arquitectura de clases que interactúan atendien-do la funcionalidad del sistema. Cada una de estas formas puede ser adecuada para un sistema en particular, pero también puede no ser adecuada en otros.

La Precisión del Modelo

Todo modelo puede expresarse con diferentes niveles de precisión. Dependiendo de qué sistema se está modelando y a quién se desea comunicar el modelo, se puede optar por diferentes niveles de detalle.

Por ejemplo, para dar una visión global a un alto ejecutivo sobre un sistema, no es necesario describirle el detalle de cómo se accede al sistema y qué datos deben completarse en un formulario,