CHAPTER 1 1
WHAT IS MEANT BY OBJECTS? 1
1-1£(r)Introduction 1
1-2£(r)Information Elements in an Object Landscape 4
1-3£(r)Objects in a Dynamic Operating Environment 8
1-4£(r)Understanding the Way Objects Work 11
9-7£(r)Using the Blackboard for Interfacing to the Database 12
1-5£(r)The Concept of a Class and its Implications 13
1-6£(r)Semantics and the Process of Instantiation 16
1-7£(r)Object-Oriented vs£(r)Record-Based Models 18
1-8£(r)Fine-Tuning the Class Characteristics 21
CHAPTER 2 24
THE CONCEPT OF INHERITANCE: 24
A CORNERSTONE IN OBJECT SOLUTIONS 24
2-1£(r)Introduction 24
2-2£(r)Inheritance,Specialization,and Generalization 25
2-3£(r)Metarules,Constraints,and Equilibration 28
2-4£(r)The Concept of Mapping 30
2-5£(r)Data Abstraction and Procedural Abstraction 32
2-6£(r)Object Encapsulation and Polymorphism 34
2-7£(r)Concurrency and Dynamic Binding 36
CHAPTER 3 38
CONSTRUCTING THE OBJECT-ORIENTED 38
ENVIRONMENT 38
3-1£(r)Introduction 38
3-2£(r)Handling Object-Oriented Messages 40
3-3£(r)Message Passing and Linguistic Requirements 41
3-4£(r)Referential Integrity and Garbage Collection 43
3-5£(r)Objects and the Trend Towards Parallelism 46
3-6£(r)Multimedia,Versioning,and Ad-Hoc Queries 47
3-7£(r)Serving the Enduser through Visualization 49
CHAPTER 4 52
4-1£(r)Introduction 52
CHALLENGES WITH OBJECT-ORIENTED DATABASES 52
4-2£(r)Database Access and Query Relevance 53
4-3£(r)Hypermedia and Semantic Modeling 57
4-4£(r)The Overriding Need for Software Reusability 60
4-5£(r)The Design ofReusable Modules 62
4-6£(r)Software Reuse and Cultural Issues 64
5-1£(r)Introduction 66
WHY AN OBJECT DATABASE? 66
CHAPTER 5 66
5-2£(r)A New Look at the Database Utility 67
5-3£(r)The Role of Metamodels in Virtual Homogeneity 70
5-4£(r)Applications Domains for Object Databases 72
5-5£(r)Handling ofAd Hoc Queries 74
5-6£(r)Is Complexity the Best Solution? 76
CHAPTER 6 80
OBJECT-ORIENTED PARADIGMS AND LONG 80
TRANSACTIONS 80
6-1£(r)Introduction 80
6-2£(r)An Object-Oriented Paradigm in the Database 81
6-3£(r)Database-Wide Object Identification 82
6-4£(r)Object Classification in a Distributed Environment 84
6-5£(r)Transaction Processing in an Object Database 86
6-6£(r)Making Sense of Database Heterogeneity 87
6-7£(r)Handling Long Transactions 89
APPROACHES TO OBJECT-ORIENTED 92
PROGR AMMING 92
7-1£(r)Introduction 92
CHAPTER 7 92
7-2£(r)What is Object-Oriented Programming? 93
7-3£(r)Algorithmic and Heuristic Approaches 94
7-4£(r)Object Programming and Metaprogramming 96
7-5£(r)Concepts Associated with New Programming Policies 98
7-6£(r)A Modern Methodology versus the Waterfall Model 101
8-1£(r)Introduction 104
META-PROGRAMMING IN AN OBJECT 104
ENVIONMENT 104
CHAPTER 8 104
8-2£(r)Object-Oriented Linguistic Solutions 105
8-3£(r)Object SQL£¨OSQL£(c) 107
8-4£(r)OSQL Primitives and Functions 109
8-5£(r)Dynamic Processing of Object Properties 111
8-6£(r)An Artifact in the Object Environment 114
8-7£(r)Physical Memory,Logical Memory,and Programming 116
CHAPTER 9 119
OBJECTS AND THE PROCESS OF PROTOTYPING 119
9-1£(r)Introduction 119
9-2£(r)The Role of Prototyping in an Object Environment 120
9-3£(r)Performance,Content,and Usage 121
9-4£(r)Prototype:A Software Emulator 123
9-5£(r)Do Prototypes,Not Stereotypes 126
9-6£(r)Object-Oriented Blackboards 127
CHAPTER 10 132
PROTOTYPING THE DISTRIBUTED SOLUTION 132
10-1£(r)Introduction 132
10-2£(r)Prototypes and Software Quality 133
10-3£(r)Graphical Approaches to Aid Human-Machine 135
Communication 135
10-4£(r)Developing Graphics Interfaces 137
10-5£(r)The Role of Knowledge Abstraction 138
10-6£(r)Goals ofKnowledge Elicitation 139
10-7£(r)The Ptech Shell 141
10-8£(r)Classification and Method Selection 143
CHAPTER 11 145
THE NUTS AND BOLTS OF OBJECT 145
PROGRAMMING 145
11-1£(r)Introduction 145
11-2£(r)Basic Concepts of Object Programming 146
11-3£(r)Typing and Instantiation 148
11-4£(r)Role of a Data Manipulation Language 150
11-5£(r)C??for Object-Oriented Software 152
11-6£(r)Emerging Features of C?? 154
11-7£(r)Program Design With C?? 155
12-1£(r)Introduction 158
CHAPTER 12 158
SPATIAL AND TEMPORAL SEMANTICS 158
12-2£(r)Time and Space 159
12-3£(r)Finite or Infinite Space? 160
12-4£(r)Structure and Behavior 162
12-5£(r)Computer-Generated Space 164
12-6£(r)Logical and Physical Space 167
CHAPTER 13 169
HANDLING TEMPORAL DATABASES 169
13-1£(r)Introduction 169
13-2£(r)Modeling Temporal Data 170
13-3£(r)Decision Space and Object Orientation 171
13-4£(r)Establishing and Maintaining Temporal Relations 173
13-5£(r)Temporal Logic 174
13-6£(r)Patterns in Semantic Representation 175
13-7£(r)Patterning and Fuzzy Engineering 178
CHAPTER 14 181
BEYOND RELATIONAL DATABASE MANAGEMENT 181
SYSTEMS 181
14-1£(r)Introduction 181
14-2£(r)Multidatabases 182
14-3£(r)Knowledge Engineering and Semantics 183
14-4£(r)Commodity Software for Heterogeneous Databases 185
14-5£(r)Architecturing a Long-Transaction Environment 186
14-6£(r)Why are Companies Interested in Object DBMS? 188
14-7£(r)Integrative Capabilities and Semantics Content 190
14-8£(r)Synchronization of Updates 191
CHAPTER 15 194
LIMITATIONS IN RELATIONAL DATABASES 194
15-1£(r)Introduction 194
15-2£(r)Strengths and Weaknesses of Relational Databases 195
15-3£(r)Contributions of the Relational Model 198
15-4£(r)Premises of Relational and Object-Oriented Solutions 200
15-5£(r)The Quest for Rigorous Solutions 202
15-6£(r)Consistency,Concurrency,and Storage Hierarchy 204
15-7£(r)Physical Aspects of a Multidatabase 206
CHAPTER 16 210
DBMS FOR OBJECT-ORIENTED DATABASES 210
16-1£(r)Introduction 210
16-2£(r)The Notion ofa Modern Database Management System 212
16-3£(r)The Entity-Relationship Model 214
16-4£(r)Characteristics of Object-Oriented DBMS 215
16-5£(r)Reasons for the Advent of Object DBMS 218
16-6£(r)Choosing Among Object-Based Commodity Software 219
16-7£(r)Merging Data Processing and Knowledge Engineering 219
in Database Management 222
16-8£(r)The Big Computer Companies Join the Object 222
DBMS Market 224
CHAPTER 17 227
ONTOS AND GEMSTONE 227
17-1£(r)Introduction 227
17-2£(r)The Ontos Approach to Database Management 228
17-3£(r)Benefits from the Implementation ofan Object DBMS 230
17-4£(r)Features ofa Second Generation Object DBMS 232
17-5£(r)The Gemstone Approach to Database Management 234
17-6£(r)The Virtual Schema Designer 236
CHAPTER 18 238
VERSANT AND OBJECT STORE 238
18-1£(r)Introduction 238
18-2£(r)Architecture ofthe Versant Object DBMS 239
18-3£(r)Designer,Repository Builder,and Administrator 241
18-4£(r)Distributed Characteristics and the Versant Repository 243
18-5£(r)The ObjectStore DBMS 245
18-6£(r)Minimizing Overhead Requirements 247
18-7£(r)Collection Management and Directory Control 249
19-1£(r)Introduction 251
CHAPTER 19 251
OBJECT ODB AND PEGASUS 251
19-2£(r)The Open ODB Object DBMS 252
19-3£(r)Roles ofthe Object Manager 254
19-4£(r)Access Flexibility and SQL Extensions 256
19-5£(r)Pegasus,for Transdatabase Solutions 258
19-6£(r)Heterogeneous Object SQL 260
19-7£(r)Cooperative Information Management 261
20-1£(r)Introduction 261
CHAPTER 20 264
OBJECT-ORIENTED DBMS MADE IN JAPAN 264
20-2£(r)An Overriding Demand for Practical Applications 265
20-3£(r)The Mandrill Approach to Multimedia Database Management 268
20-4£(r)Generalization and Specialization in Mandrill 270
20-5£(r)Object Manager,Object Selector,and Methods Trigger 273
20-6£(r)Object Database Management by Odin 274
20-7£(r)The Management Information Base£¨MIB£(c)by Mitsubishi 277
CHAPTER 21 280
OBJECTS AND DATA LEVEL PAR ALLELISM 280
21-1£(r)Introduction 280
21-2£(r)Parallel Data Algorithms and Architectures 281
21-3£(r)The Practical Efiects ofParallelism 283
21-4£(r)Dataflow and Interdatabase Communications 285
21-5£(r)Recursive Data Parallelism 287
21-6£(r)Associative Storage and Array Logic 290
21-7£(r)Can Classical DP Answer the Challenge? 291
CHAPTER 22 294
THE CHALLENGE OF HIGH PERFOR MANCE 294
COMPUTING 294
22-1£(r)Introduction 294
22-2£(r)Objects in a Hypercube Architecture 295
22-3£(r)Solutions for Input/Output-Intensive Applications 296
22-4£(r)Data Parallelism on a Hypercube 297
22-5£(r)A Hypercube Database Management Solution 299
22-6£(r)Spatial Object Management Enriched by Knowledge 299
Engineering 301
22-7£(r)New Perspectives in Computation 303
INDEX 305
ACKNOWLEDGMENTS 313