Object Database Development: Concepts and Principles / Edition 1

Object Database Development: Concepts and Principles / Edition 1

by David W. Embley
     
 

ISBN-10: 0201258293

ISBN-13: 9780201258295

Pub. Date: 10/17/1997

Publisher: Addison-Wesley

FEATURES:
Takes an object-oriented approach to modeling and developing database applications. Provides a seamless way to move from analysis through specification and design into implementation. Focuses on concepts and principles that provide a sound theoretical foundation for database application development. Presents several case studies (Oracle, UniSQL, O2,

Overview

FEATURES:
Takes an object-oriented approach to modeling and developing database applications. Provides a seamless way to move from analysis through specification and design into implementation. Focuses on concepts and principles that provide a sound theoretical foundation for database application development. Presents several case studies (Oracle, UniSQL, O2, ObjectStore, and Ode), that show how to turn theory into practice.

Product Details

ISBN-13:
9780201258295
Publisher:
Addison-Wesley
Publication date:
10/17/1997
Pages:
878
Product dimensions:
6.59(w) x 9.50(h) x 1.53(d)

Table of Contents

Preface iii
1 Introduction
1(18)
1.1 Databases and Database Systems
2(2)
1.2 Database Applications
4(1)
1.3 Object Technology
5(1)
1.4 Database Application Development
6(3)
1.5 Overview of the Book
9(6)
1.6 Chapter Summary
15(1)
1.7 Bibliographic Notes
16(2)
1.8 Exercises
18(1)
Part I Preliminaries 19(260)
2 Conceptual Fundamentals
19(50)
2.1 Abstraction
20(4)
2.2 ADT View of a Database
24(1)
2.3 Data Models
25(15)
2.3.1 Entity-Relationship Model
25(7)
2.3.2 Object-Role Model
32(3)
2.3.3 Relation Schemes
35(3)
2.3.4 Implementation Schemes
38(2)
2.4 Data Languages
40(15)
2.4.1 Updates
40(1)
2.4.2 Relational Algebra
41(7)
2.4.3 SQL
48(7)
2.5 Chapter Summary
55(2)
2.6 Bibliographic Notes
57(1)
2.7 Exercises
57(12)
3 Physical and System Fundamentals
69(46)
3.1 Secondary Storage
70(3)
3.2 File Organization
73(13)
3.2.1 Sequential Files
73(5)
3.2.2 Hashing
78(2)
3.2.3 B(+)-tree Indexes
80(6)
3.3 Query Optimization
86(6)
3.3.1 Query Rewriting
88(3)
3.3.2 Cost Estimation
91(1)
3.4 Transaction Processing
92(11)
3.4.1 Crash Recovery
93(4)
3.4.2 Concurrency Control
97(6)
3.5 Chapter Summary
103(2)
3.6 Bibliographic Notes
105(1)
3.7 Exercises
105(10)
4 Conceptual Modeling
115(64)
4.1 Object-Relationship Modeling
119(21)
4.1.1 Objects and Relationships
119(2)
4.1.2 Object and Relationship Sets
121(4)
4.1.3 Constraints
125(4)
4.1.4 Generalization Specialization
129(5)
4.1.5 Aggregation
134(1)
4.1.6 High-Level Object and Relationship Sets
135(5)
4.2 Object-Behavior Modeling
140(16)
4.2.1 States and Transitions
140(2)
4.2.2 Concurrency
142(3)
4.2.3 Exceptions
145(1)
4.2.4 Priority and Real-Time Constraints
146(3)
4.2.5 High-Level States and Transitions
149(4)
4.2.6 Behavior Generalization Specialization
153(3)
4.3 Object-Interaction Modeling
156(10)
4.3.1 Interactions
156(3)
4.3.2 Interaction Sequences
159(1)
4.3.3 Active Object Interactions
160(3)
4.3.4 Database Update Interactions
163(2)
4.3.5 High-Level Interactions
165(1)
4.3.6 Real-Time Interactions
165(1)
4.4 Summary Example
166(4)
4.5 Chapter Summary
170(2)
4.6 Bibliographic Notes
172(1)
4.7 Exercises
173(6)
5 Theoretical Preliminaries
179(48)
5.1 Predicate Calculus
181(9)
5.1.1 Syntax
181(3)
5.1.2 Semantics
184(4)
5.1.3 Counting Quantifiers
188(2)
5.2 Theoretical Foundations for Databases
190(22)
5.2.1 Model Theory
190(4)
5.2.2 Relational Calculus
194(6)
5.2.3 Proof Theory and Datalog
200(12)
5.3 Chapter Summary
212(3)
5.4 Bibliographic Notes
215(1)
5.5 Exercises
216(11)
6 Modeling Theory
227(52)
6.1 Application-Model Formalization
229(22)
6.1.1 Application-Model Predicates
229(2)
6.1.2 Application-Model Rules
231(10)
6.1.3 Valid Interpretations
241(10)
6.2 Metamodel Formalization
251(18)
6.2.1 Static Formalization of Syntax
251(10)
6.2.2 Dynamic and Temporal Formalization of Semantics
261(8)
6.3 Chapter Summary
269(3)
6.4 Bibliographic Notes
272(1)
6.5 Exercises
272(7)
Part II Preparation 279(404)
7 Analysis
279(58)
7.1 System Needs and Feasibility Assessment
281(3)
7.2 Analysis Methods
284(9)
7.3 Application-Model Integration
293(12)
7.3.1 An Approach to Integration
293(3)
7.3.2 Integration Example
296(9)
7.4 Analysis Validation
305(15)
7.4.1 Reviewing Application Analysis Models
306(6)
7.4.2 Object Classification
312(8)
7.5 Chapter Summary
320(4)
7.6 Bibliographic Notes
324(1)
7.7 Exercises
324(13)
8 Specification
337(84)
8.1 System Boundary
340(10)
8.2 A Formal Specification Language
350(30)
8.2.1 Declarations
351(7)
8.2.2 General Constraints
358(3)
8.2.3 Queries and Expressions
361(2)
8.2.4 State Nets
363(4)
8.2.5 Update and Assignment Statements
367(4)
8.2.6 Interactions, Parameters, and Local Declarations
371(4)
8.2.7 Control Structures
375(5)
8.3 Functional Specification
380(19)
8.4 Interface Specification
399(9)
8.4.1 Insertion Interactions
400(3)
8.4.2 Retrieval Interactions
403(3)
8.4.3 Deletion Interactions
406(1)
8.4.4 Modification Interactions
407(1)
8.5 Chapter Summary
408(3)
8.6 Bibliographic Notes
411(1)
8.7 Exercises
412(9)
9 Data Design--Reduction
421(90)
9.1 Hypergraphs
424(7)
9.2 Functional Dependencies
431(1)
9.3 Motivational Example
432(2)
9.4 Functional Dependency Theory
434(25)
9.4.1 FD Implication
434(8)
9.4.2 Semantic Equivalence
442(11)
9.4.3 Roles and Congruency
453(6)
9.5 Head Reduction
459(4)
9.6 Tail Reduction
463(7)
9.7 Equivalence-Class Transformations
470(9)
9.8 Redundant Nonfunctional Relationship Sets
479(4)
9.9 Reducible Nonfunctional Relationship Sets
483(5)
9.10 Embedded Functional Dependencies
488(5)
9.11 Chapter Summary
493(4)
9.12 Bibliographic Notes
497(1)
9.13 Exercises
498(13)
10 Data Design--Synthesis
511(84)
10.1 Motivating Examples
513(10)
10.2 Join Dependencies
523(2)
10.3 Redundancy
525(2)
10.4 Flat-Scheme Synthesis
527(11)
10.5 Interscheme Dependencies
538(3)
10.6 Properties of Flat Schemes
541(11)
10.7 Cost Analysis
552(15)
10.7.1 Space
556(6)
10.7.2 Time
562(5)
10.8 Nested-Scheme Synthesis
567(6)
10.9 Cost Analysis for Embedded Functional Dependencies
573(5)
10.10 Chapter Summary
578(5)
10.11 Bibliographic Notes
583(1)
10.12 Exercises
584(11)
11 Object-Module Design
595(88)
11.1 Object Modules
596(7)
11.1.1 Classes, Types, Variables, and Values
598(1)
11.1.2 Encapsulation
599(4)
11.2 Computations and Methods
603(4)
11.3 Generalization Specialization Patterns
607(5)
11.3.1 Enumeration Types
608(2)
11.3.2 Generated Value-Set Types
610(2)
11.4 Data-Structure Patterns
612(2)
11.5 State-Net Patterns
614(20)
11.5.1 Abstract Data Types
614(8)
11.5.2 Queued Concurrent Requests
622(4)
11.5.3 Transaction Processing
626(4)
11.5.4 Multiprocessing and Distributed Processing
630(4)
11.6 Visibility and Views
634(12)
11.7 Inheritance
646(3)
11.8 Example
649(14)
11.9 Chapter Summary
663(5)
11.10 Bibliographic Notes
668(1)
11.11 Exercises
669(14)
Part III Production 683(146)
12 Implementation
683(50)
12.1 ODMG
685(2)
12.2 ODMG ODL
687(12)
12.3 ODMG OQL
699(4)
12.4 ODMG C++
703(20)
12.4.1 C++ ODL
704(5)
12.4.2 C++ OML and OQL
709(14)
12.5 Development Methodology
723(2)
12.6 Chapter Summary
725(3)
12.7 Bibliographic Notes
728(1)
12.8 Exercises
728(5)
13 Relational DBMS Case Study
733(18)
13.1 Initial Analysis
735(2)
13.2 Congruency Validation
737(1)
13.3 Interface Specification
737(5)
13.4 Hypergraph Reductions
742(1)
13.5 Scheme Generation
742(5)
13.6 Code Generation
747(1)
13.7 Chapter Summary
748(3)
14 Object-Relational DBMS Case Study
751(18)
14.1 Application-Model Integration
752(5)
14.2 Generalization Specialization Transformations
757(1)
14.3 Nested-Scheme Generation
758(1)
14.4 Behavior Transformations
759(6)
14.5 Database Interface
765(3)
14.6 Chapter Summary
768(1)
15 Object-Oriented DBMS Case Study I
769(14)
15.1 Complex Computations
771(2)
15.2 Active Objects
773(1)
15.3 Design Adjustments
773(4)
15.4 Database Updates
777(3)
15.5 Active-Object Design and Implementation
780(1)
15.6 Chapter Summary
781(2)
16 Object-Oriented DBMS Case Study II
783(22)
16.1 Ontological Analysis
787(1)
16.2 Formalization of General Constraints
787(2)
16.3 Approximate Representation
789(2)
16.4 Implementation Model
791(4)
16.5 Nuances
795(4)
16.6 Implementation Polymorphism
799(4)
16.7 Chapter Summary
803(2)
17 Active Object-Oriented DBMS Case Study
805(24)
17.1 Behavior Analysis
806(3)
17.2 Interface Specification
809(1)
17.3 Functional Specification
810(4)
17.4 State-Net Transformations
814(4)
17.5 Data Design and Implementation
818(7)
17.6 Behavior Implementation
825(1)
17.7 Chapter Summary
826(3)
Appendix A OSM Graphical Notation 829(3)
Appendix B OSM-L Grammar 832(10)
Appendix C Answer to Selected Exercises 842(17)
Bibliography 859(10)
Index 869

Customer Reviews

Average Review:

Write a Review

and post it to your social network

     

Most Helpful Customer Reviews

See all customer reviews >