Martin, James

Análisis y diseño orientado a objetos / James Martin, James J. Odell. - México : Prentice Hall, 1994 - 546 p.

CONTENIDO
PARTE I ¿POR QUE TANTO ENTUSIASMO?
1 Una revolución industrial en el software 3
Tecnologías killer 5
Integración de las tecnologías killer 10
Quitándose anteojeras 11
Todo tipo de computación 12
El paradigma de la integración 13
2 Introducción básica 17
¿Qué es un objeto? 17
¿Qué es un tipo de objeto? 18
Métodos 19
Encapsulado 19
Mensajes 21
BLOB 23
¿Qué es una clase? 23
Herencia 24
Percepción y realidad 25
Criaturas autocontenidas 28
Bloques de construcción de la naturaleza 29
Referencias 31
3 ¿Por qué orientado a objetos? 33
La verdadera ingeniería del software 33
Características de las técnicas OO 35
Resumen de los beneficios de la tecnología OO 36
Medida de la complejidad de un programa 40
Reutilización 42
Beneficios diversos 42
Un cambio en nuestra forma de pensar 45
Referencias 46
4 El futuro del software 49
Introducción 49
Discos ópticos 50
La necesidad de herramientas poderosas 50
Evolución de la producción de software 51
El uso inhumano de los seres humanos 52
Reacción en cadena 53
Estándares de los depósitos 55
Software en paquetes 56
Reutilización 57
Paralelismo 62
Redes y distribución de objetos 63
Interacción para la computación entre empresas 64
Rapidez de interacción 65
La necesidad de un desarrollo rápido 66
Estándares internacionales para las clases reutilizables 67
Generación de código a partir del modelo empresarial 68
Evolución de la técnica de programación 69
Pirámides de complejidad 71
Referencias 71
PARTE II PANORAMA DEL ANALISIS Y EL DISEÑO 5
5 Modelos OO 75
Modelos de la realidad 75
Herramientas 76
Dos tipos de modelos 77
Analogía de análisis y diseño 78
Ingeniería de la información 81
Adecuación de sistemas anteriores 81
6 Análisis de la estructura de objetos 85
Objetos y tipos de objetos 85
Asociaciones de objetos 87
Jerarquías de generalización 88
Jerarquías compuestas 90
Diagramas de la relación entre los objetos 90
Esquemas de objetos 93
7 Análisis del comportamiento de objetos 95
Estados de un objeto 95
Eventos 97
Tipos de eventos 98
El ciclo vital de un objeto 100
Interacciones entre tipos de objetos 102
Operaciones 103
Fuentes externas de eventos 104
Reglas de activación 105
Condiciones de control 105
Subtipos y supertipos de eventos 106
Esquemas jerárquicos 106
Aislamiento de la causa y el efecto 107
Modularización clara 109
La analogía del análisis y el diseño 109
Diagramas de flujo de objetos 111
8 Diseño de la estructura y el comportamiento de un objeto 117
Clase 118; ¿Cuál es la diferencia entre operación y método? 119
Herencia de clase 122
Selección del método 123
Polimorfismo 123
"Igual que, excepto..." 128
9 Estándares recomendados de diagramación 113
Una forma de lenguaje 131
Diagramas convencionales 133
Diagramas orientados a objetos 133
Cuadros con esquinas redondeadas o rectangulares 133
Realidad e información relativa a la realidad 138
Objetos y operaciones externos 139
Líneas y flechas 140
Exclusividad mutua 140
Restricciones de cardinalidad 142
Expansión y contracción 145
Uso de ventanas para mayor claridad 146
Subtipos y supertipos 146
Diagramas de ramificación 148
Tipos e instancias 149
Subconjuntos de asociaciones 149
Diagramas de composición 149
Tipos de objetos derivados 152
Diagramas de relación entre los objetos 152
Eventos 153
Eventos de reloj 154
Esquemas de actividad 154
Condiciones de control 154
Omisión de eventos y condiciones de control 154
Reglas de activación 156
Procesamiento paralelo 157
Guardias 159
Nivelación 159
Estados 159
Subestados 161
Enlace de actividades y cambios de estado 162
Referencias 166
10 Lenguajes de programación orientados a objetos 167
Génesis de la tecnología OO 167
La evolución de lenguajes no tipificados a tipificados 168
Tipos de datos abstractos (TDA) 170
Implantaciones orientadas a objetos y basadas en objetos 178
Referencias 180
11 Herramientas CASE 183
Variedad de herramientas 184
Categorías de las herramientas CASE 185
Modelos perspicaces 185
Síntesis del diseño y generación de códigos 186
Precisión en la diagramación 188
Diagramas para el desarrollo OO 189
Depósito 190
Más que un diccionario 191
Inteligencia en el depósito 194
Depósito OO para técnicas no OO 194
Consistencia entre los diagramas 195
Consistencia entre los distintos analistas 196
Consistencia entre los distintos proyectos 196
Reutilización máxima 197
Tres fuentes de componentes reutilizables 200
Referencias 201
12 Estándares para la interacción de objetos 203
El grupo de administración de objetos 203
Arquitectura para la administración de objetos 204
Solicitudes y respuestas estándar 206
Interfaz con software no OO 208
Referencias 209
13 Bases de datos orientadas a objetos 211
Breve historia del desarrollo de las bases de datos 212
Un modelo conceptual unificado 219
Arquitectura de una base de datos OO 221
Desarrollo con bases de datos OO 223
Tres enfoques de la construcción de bases de datos OO 223
Independencia de datos versus encapsulado 224
Complejidad de la estructura de datos 225
Rendimiento 225
Evasión de la redundancia 226
Diferencias entre las bases de datos por relación y las bases de datos orientadas a objetos 226
Resumen 229
Referencias 230
14 Ingeniería de la información orientada a objetos 233
Ingeniería de la información 233; Ingeniería de la información mediante técnicas OO 238
Análisis para la reutilización 241
Referencias 245
PARTE III FUNDAMENTOS DEL ANALISIS DE LA ESTRUCTURA DE LOS OBJETOS
15 Conceptos y objetos 247
Conceptos 249
Intensidad y extensión del concepto 253
Objetos 257
Conjuntos 259
Resumen 262
Referencias 262
16 Administración de la complejidad de un objeto 265
Abstracción 265
Generalización 266
Composición 269
Resumen 273
Referencias 274
17 Concepto versus tipo de objeto 277
18 Tipos de objetos y asociaciones 279
Asociaciones 279
Relaciones 280
Funciones 283
Resumen 284
Referencias 285
19 Funciones 287
Funciones y sus inversas 287
Restricciones de cardinalidad 289
Dominio y rango de una función 292
Funciones ocupadas con argumentos 296
Funciones de varios argumentos 297
Funciones básicas y para cálculos 298
Resumen 300
Referencias 301
20 Relaciones 303
Cardinalidad de una relación 303
Relaciones como tipos de objetos 304
Otros aspectos de las relaciones 311
Resumen 316
Referencias 317
21 Supertipos y subtipos 319
Conjuntos que incluyen a otros conjuntos 319
Particiones de tipos 323
Particiones completas versus incompletas 325
Niveles de partición 329
Subtipos de una relación 332
Resumen 334
Referencias 335
PARTE IV FUNDAMENTOS DEL ANALISIS COMPORTAMIENTO DE OBJETOS
22 Aspectos del comportamiento 339
Estructura y comportamiento de objetos 339
Máquinas de estado finito 342
Esquemas de eventos 348
Resumen 353
Referencias 354
23 Tipos de eventos, reglas de activación, condiciones de control y operaciones 357
Tipos de eventos 357
Operaciones 364
Condiciones de control 368
Reglas de activación 373
Resumen 377
Referencias 378
24 Análisis del comportamiento de objetos 379
Análisis del comportamiento de objetos mediante esquemas de eventos 379
Eventos y análisis de objetos 400
Resumen 402
Referencia 403
25 Diagramas de flujo de objetos 405
Una visión funcional de alto nivel 405
Productos 408
Actividades 414
Resumen 425
Referencias 426
PARTE V DISEÑO
26 Diseño orientado a objetos: Asociación con las estructuras de los lenguajes de programación OO 429
Asociación a partir de esquemas con código OO 429
Asociación a partir de los tipos de objetos 430
Asociación a partir de los objetos 431
Asociación a partir de las funciones básicas 436
Asociación a partir de las jerarquías de generalización 442
Asociación a partir de las funciones calculadas 444
Asociación a partir de los tipos de objetos calculados 448
Referencias 449
27 Diseño orientado a objetos: asociación con el comportamiento de un lenguaje de programación OO 451
Asociación a partir de operaciones 451
Asociación a partir de las reglas de activación 452
Asociación a partir de tipos de eventos 454
Asociación a partir de esquemas de eventos 454
Un planificador de eventos 456
Una última reflexión acerca de los lenguajes de programación OO 459
28 Diseño orientado a objetos: Consideraciones en lenguajes no OO 461
Asociaciones OO para los lenguajes de programación imperativos 461
Asociaciones OO para las bases de datos por relación 463
Referencias 467
29 Administración de un proyecto OO 469
Factores humanos clave en los proyectos de análisis y diseño OO 469
Comunidad de usuarios 470
Equipo de proyecto comunitario de los sistemas de información 471
Administración del proyecto 472
Evolución del sistema 473
Un ejemplo de experiencia en la industria 475
Referencias 476
PARTE VI APENDICES
A Glosario de términos 479
B Esquemas de objetos y diagramas de entidad - relación 489
Esquemas de objetos contra diagramas de entidad-relación 489
Ramificaciones de los tipos de objetos para el diseño OO 492
Garantizando que los diagramas de ER soporten el diseño OO 495
Resumen 497
Referencias 497
C Conceptos compuestos 499
Tipos de objetos en términos de otros tipos de objetos 499
Expresión de los tipos de objetos calculados 501
Expresión de funciones 506
Expresión de tipos de objetos como funciones con argumentos proporcionados 513
Resumen 516
Referencias 518
D Modelos y metamodelos 519
Niveles de modelado 519
Representación de tipos de objetos 524
Resumen 532
Referencia 534
E Estado: Una colección de tipos de objetos versus una colección de atributos 535
Indice 539

9688803626


PROGRAMACION ORIENTADA A OBJETO
DISEÑO DE SOFTWARE
DISEÑO ORIENTADO A OBJETOS
HERRAMIENTA CASE
BASE DE DATOS ORIENTADAS A OBJETOS

004.415.2.045 M363