Математика

Физика

Химия

Биология

Техника и    технологии

OBJECT-ORIENED MODELING AND DESIGN -jAMES RUBAUGH 1991
The author and publisher of this book have used their best efforts in preparing this book. These efforts include the development, research, and testing of the theories and programs to determine their effectiveness. The author and publisher make no warranty of any kind, expressed or implied, with regard to these programs or the documentation contained in this book. The author and publisher shall not be liable in any event for incidental or consequential damages in connection with, or arising out of, the furnishing, performance, or use of these programs.
Contents
PREFACE ix
Acknowledgments, xii CHAPTER 1 INTRODUCTION 1
.1 What Is Object-Oriented?, 1
.2 What Is Object-Oriented Development?, 4
.3 Object-Oriented Themes, 7
.4 Evidence for Usefulness of Object-Oriented Development, 9
.5 Organization of this Book, 10 Bibliographic Notes, 12 References, 12 Exercises, 13
Part 1: Modeling Concepts
CHAPTER 2 MODELING AS A DESIGN TECHNIQUE 15
2.1 Modeling, 15
2.2 The Object Modeling Technique, 16
2.3 Chapter Summary, 19 Exercises, 19
CHAPTER 3 OBJECT MODELING 21
3.1 Objects and Classes, 21
3.2 Links and Associations, 27
3.3 Advanced Link and Association Concepts, 31
3.4 Generalization and Inheritance, 38
3.5 Grouping Constructs, 43
3.6 A Sample Object Model, 43
3.7 Practical Tips, 46
v CONTENTS
3.8 Chapter Summary, 47 Bibliographic Notes, 48 References, 48 Exercises, 49 CHAPTER 4 ADVANCED OBJECT MODELING 57
4.1 Aggregation, 57
4.2 Abstract Classes, 61
4.3 Generalization as Extension and Restriction, 63
4.4 Multiple Inheritance, 65
4.5 Metadata, 69
4.6 Candidate Keys, 71
4.7 Constraints, 73
4.8 Chapter Summary, 77 Bibliographic Notes, 79 References, 79 Exercises, 80
CHAPTER 5 DYNAMIC MODELING 84
5.1 Events and States, 84
5.2 Operations, 92
5.3 Nested State Diagrams, 94
5.4 Concurrency, 99
5.5 Advanced Dynamic Modeling Concepts, 101
5.6 A Sample Dynamic Model, 105
5.7 Relation of Object and Dynamic Models, 110
5.8 Practical Tips, 111
5.9 Chapter Summary, 112 Bibliographic Notes, 113 References, 115 Exercises, 115
CHAPTER 6 FUNCTIONAL MODELING 123
6.1 Functional Models, 123
6.2 Data Elow Diagrams, 124
6.3 Specify ing Operations, 130
6.4 Constraints, 132
6.5 A Sample Functional Model, 133
6.6 Relation of Functional to Object and Dynamic Models, 137
6.7 Chapter Summary, 139 Bibliographic Notes, 140 References, 140 Exercises, 141
CONTENTS v
Part 2: Design Methodology
CHAPTER? METHODOLOGY PREVIEW 144
7.1 OMT as a Software Engineering Methodology, 144 »
7.2 The OMT Methodology, 145
7.3 Impact of an Object-Oriented Approach, 146
7.4 Chapter Summary, 146 Exercises, 147
CHAPTERS ANALYSIS 148
8.1 Overview of Analysis, 148
8.2 Problem Statement, 150
8.3 Automated Teller Machine Example, 151
8.4 Object Modeling, 152
8.5 Dynamic Modeling, 169
8.6 Functional Modeling, 179
8.7 Adding Operations, 183
8.8 Iterating the Analysis, 185
8.9 Chapter Summary, 187 Bibliographic Notes, 188 References, 188 t Exercises, 189
CHAPTER 9 SYSTEM DESIGN 198
9.1 Overview of System Design, 198
9.2 Breaking a System into Subsystems, 199
9.3 Identifying Concurrency, 202
9.4 Allocating Subsystems to Processors and Tasks, 203
9.5 Management of Data Stores, 205
9.6 Handling Global Resources, 207
9.7 Choosing Software Control Implementation, 207
9.8 Handling Boundary Conditions, 210
9.9 Setting Trade-off Priorities, 210
9.10 Common Architectural Frameworks, 211
9.11 Architecture of the ATM System, 217
9.12 Chapter Summary, 218 Bibliographic Notes, 220 References, 220 Exercises, 221
CHAPTER 10 OBJECT DESIGN 227
10.1 Overview of Object Design, 227
10.2 Combining the Three Models, 229
10.3 Designing Algorithms, 230
vi CONTENTS
10.4 Design Optimization, 235
10.5 Implementation of Control, 239
10.6 Adjustment of Inheritance, 242
10.7 Design of Associations, 245
10.8 Object Representation, 248
10.9 Physical Packaging, 249
10.10 Documenting Design Decisions, 251
10.11 Chapter Summary, 252 Bibliographic Notes, 254 References, 254 Exercises, 255
CHAPTER 11 METHODOLOGY SUMMARY 260
11.1 Analysis, 261
11.2 System Design, 262
11.3 Object Design, 263
11.4 Chapter Summary, 264 Exercises, 264
CHAPTER 12 COMPARISON OF METHODOLOGIES 266
12.1 Structured Analysis/Structured Design (SA/SD), 266
12.2 Jackson Structured Development (JSD), 268
12.3 Information Modeling Notations, 271
12.4 Object-Oriented Work, 273
12.5 Chapter Summary, 274 References, 275 Exercises, 275
Part 3: Implementation
CHAPTER 13 FROM DESIGN TO IMPLEMENTATION 278
13.1 Implementation Using a Programming Language, 278
13.2 Implementation Using a Database System, 279
13.3 Implementation Outside a Computer, 280
13.4 Overview of Part 3,280
CHAPTER 14 PROGRAMMING STYLE 281
14.1 Object-Oriented Style, 281
14.2 Reusability, 282
14.3 Extensibility, 285
14.4 Robustness, 286
14.5 Programming-in-the-Large, 288
14.6 Chapter Summary, 291 Bibliographic Notes, 291
CONTENTS vii
References, 292 Exercises, 292 CHAPTER 15 OBJECT-ORIENTED LANGUAGES 296
15.1 Translating a Design into an Implementation, 296
15.2 Class Definitions, 297
15.3 Creating Objects, 301
15.4 Calling Operations, 305
15.5 Using Inheritance, 308
15.6 Implementing Associations, 312
15.7 Object-Oriented Language Features, 318
15.8 Survey of Object-Oriented Languages, 325
15.9 Chapter Summary, 330 Bibliographic Notes, 332 References, 333 Exercises, 334
CHAPTER 16 NON-OBJECT-ORIENTED LANGUAGES 340
16.1 Mapping Object-Oriented Concepts, 340
16.2 Translating Classes into Data Structures, 342
16.3 Passing Arguments to Methods, 344
16.4 Allocating Objects, 345
16.5 Implementing Inheritance, 347
16.6 Implementing Method Resolution, 351
16.7 Implementing Associations, 355
16.8 Dealing with Concurrency, 358
16.9 Encapsulation, 359
16.10 What You Lose, 361
16.11 Chapter Summary, 362 Bibliographic Notes, 363 References, 364 Exercises, 364
CHAPTER 17 RELATIONAL DATABASES 366
17.1 General DBMS Concepts, 366
17.2 Relational DBMS Concepts, 368
17.3 Relational Database Design, 373
17.4 Advanced Relational DBMS, 387
17.5 Chapter Summary, 388 Bibliographic Notes, 389 References, 390 Exercises, 390
viii CONTENTS
Part 4: Applications
CHAPTER 18 OBJECT DIAGRAM COMPILER

Цена: 150руб.

Назад

Заказ

На главную страницу

Hosted by uCoz