Index

A
Abstract class 109
Abstractions
     How 14
     Is 14
     What 14
     Why 14
Action 36, 37, 59, 122, 168
Active competence 140
Activity 21, 38, 47, 62, 84
     Aggregation 86, 91
     Network 8
     Superposition 86, 90, 99
Actors 28, 186, 276
Aggregation 80
     Embedded 88
     Encapsulated 87
     Relation 159
Alexander 17, 143, 144
Analysis 39, 79
Andersen 85
Application programming interface (API) 196
Application programs 13
Area of concern 8, 45, 94, 185
     View. See View; Area of concern
Aronson 299
Association 159
Asynchronous 58, 65
Attribute 36, 37, 39, 57-59, 60, 88
Automatic code generator 120

B
Base
     Class 10, 43, 108
     Model 11, 73, 80
          RST 94
          XY 94
     Port 84
     Role 73, 80
     Role models 10
Beck 44, 54
Behavior 57
Behavior-centerecl approach 2
Birtwistle 2, 36
Boehm 125, 321
Booch xv, 2, 20, 86
     method 20
Brick 168, 212, 217, 224
Business process reengineering 184

C
C 102
C++ 14, 20, 105, 106, 117, 129, 222
CCITT
     Z100 221, 224
     Z120 65
Chen 21, 159
Class xv, 14, 43, 108, 116
     Diagrams 20
Class-responsibility-collaborator cards (CRC cards) S4
Clerk 6
Client-server 88
     architecture 179
Code sharing 79
Collaboration view. see View; Collaboration
Collaborator 39
COM 226, 228
COM/OLE 226
Common Object Request Broker Architecture CORBA). see CORBA
Component 242
     Object Model (COM) 228
Composition 16, 294
Conceptual schema 200, 294
Configurability 112
Connection Point 323
Consumer Goods Domain 284
Container 242
     -Component Hierarchy 242
Controller 249
CORBA 37, 58, 226, 227
     IDL 227
     OMG 226
Cox xv, 2, 104, 155, 173
Cunningham 44, 53, 54, 144
Current state 59

D
Dahl 36
Data
     -Centered approaches 2
     Stores 164
Decision maker pattern 149
Deliverables 3
Derived
     Class 10, 43, 108
     Model 11, 73, 80
     Port 84
     Role 73, 80
     Role models 10
Divide and conquer 10
Duplication 16, 294
Dynamically typed 130

E
Egoless programming
Eiffel 102, 120, 129
Elmasri 21, 159
Embedding 87
Encapsulation 38, 57, 87, 112, 294
End User 287
Engelbart 285
Engineer 288
Enterprise 178
Entity 159
     -relationship 2, 21
     -relationship (E-R) model 159
Environment 37, 60
     role 189
E-R. See Entity-relationship (E-R) model
Etzioni 55
El JRESCOM 282
Executable specifications 13, 229
Execution Scenario report 231
Export 173
External collaboration view. see View; External collaboration
External schema 200

F
File Transfer Protocol (FTP) 48
Finite state
     Diagrams 22
     Machines 2
Fire walls 126
FORTRAN 105
Forward engineering 27, 40, 229
Fountain model for reuse 290
Frameworks 16, 17, 22, 153, 154
FTP. See File Transfer Protocol
Functional decomposition 2

G
Gabriel 145
Gamma 17, 144
Garbage collection 130
Gazzaniga 33
Generalization-specialization 80, 175
Goldberg 2, 36, 249

H
Hall 36
Hammer 184
Harel 20
Helm 17, 44, 144
Hierarchical
     Aggregation 86
     Decomposition 13, 86
Holbbek-Hanssen 36
Horn 202
Human communication 35

I
IDEF0 162
Identity 22, 38
IDL 226
Immutable 296, 337, 338
Implementation 13
     Description 141
     Schema 200
Import 173
IN services 320
Incidental reuse 133, 135
industrial 28
Information
     Editor 285
     Environments 178
     Hiding 38, 176
     Service 179
     Tool 199
Inheritance 43, 112
     Table 92, 93
     Collaboration View. See View; Inheritance Collaboration
Instance variable 41, 59, 108
Instances 108
Instantiating 108
Intelligent Network Domain 284
Intelligent network services 281
Interaction 65
     Diagrams 20
Interface 58, 121, 191
     Definition Language (IDL) 226, 227
     View. See View; Interface
Invocation Analyzer 326
ISO Latin-1 340
ISO9000 141

J
Jacobson xv, 2, 21, 65
Johnson 17, 144

K
Kay 36
Kernel maker 288, 289
Kernighan 126

L
Late binding 58
Layer 274
Leg 323
Legacy system 179
Life cycle model 274
List of instructions 140
Logical map 141

M
Martin 64
Mechanism 17
Member functions 122
Mental interpreter 33
Message Parameters 88
Messages 38, 60
Method 38, 39, 47, 58, 84, 108, 122
     View. See View; Method
Methodology 3
Microsoft 228
Model 249
     Creation process 23
     Enterpnse 181
     Information 181, 194
     Manifest 34
     Mental 33, 199
     Object 59
     System requirements 181
     System user 181
     Task/tool/service 181, 199
     Tool information 199
Modeling in the large: The OOram Module 173
Model-View-Controller 249
Module 20, 21
     Maker 288, 289
Monitored execution 230
Multiple inheritance 15
MVC 249

N
Naming convention 117
Network
     Connection 323
     Provider 283, 321
Next state 59
Nilsen 282
Nordhagen 85
Norwegian Telecom 282
Nyzaard 36

O
Object xv, 3, 14, 36, 37
     Attribute 38, 39
     -Based languages 15
     Collaboration report 230
     Diagrams 20
     Duplication 294
     Identity 22
     Linking and Embedding (OLE) 228
     Management Group 37, 226, 227
     Model. See Model; Object
     Modeling Technique (OMT) 20
     Pattern 17
     Specification 14, 116
     Structure duplication 142
     Trading 142, 294, 296
     Type 14
Objective C 129
Object-oriented
     Database 194
     Direct manipulation interface 202
     Framework 154
ObjectOry 21
Ohject-subject relationship 80
Objectworks\Smalltalk 237
OLE 226, 228
OMG 226, 227
OMG/CORBA. See CORBA; OMG
OMT 20
     Dynamic model 20
     Functional model 20
     Object model 20
OOCS 142, 298, 300
     Entity 300, 303
     Group 305
     Schema 142, 298, 300, 303
     Type 142, 300, 302, 303, 305
OOram
     Analysis 45
     Composition System (OOCS) 142, 294, 298, 300, 331
     Framework 141, 153, 154
     Interface 121
     Language 172, 206
          Inheritance specification 92, 94
     Method xix, 3
     Modules 158, 173
     Role model xvi
     Specification 340
     Technology 6
OOSE methodology 21
Organization 3

P
Parameter types 192
Parnas 24
Passive competence 140
Patterns 16, 17, 141, 143, 144
     language 143, 145
Perspective 60
Planned reuse 133, 135
Plato 44
Plauger 126
Polymorphism 39, 58, 106, 112, 294
Port 45, 84, 121
postCopy 312
Principle of minimizing risk 124
Process 3
     Diagrams 20, 22, 190
     Steps 52
     View. See View; Process
Production 288
     engineering 279
Programming 102
     approach
          Bottom-up 124
          Top-down 124
          Yo-yo 26, 124
     -in-the-large 173

R
Rational work organization 55
Records 21
Relations 21, 159
     Aggregation 159, 175
     Association 159
     Peer-to-peer module 175
     Subtype 159
     Use 159
Relational database 194
Relational model 21
Response 60, 62
Responsibility Driven Design (RDD) 21
Reusable assets 26
building process 23
Reusable components 3, 16
Reverse engineering 27, 40, 229
Role 9, 14, 44, 45, 59, 60, 116
     Instances 45
     Model xvi, 3, 8, 9, 44, 59
     Model collaboration view. see View; Role model collaboration
     Model synthesis 3, 10, 11, 80
Rubin 184
Rumbaugh xv, 2, 20, 184
Runtime configuration 142, 294

S
Safe Synthesis. See Synthesis; Safe
Scenario 22, 47, 65
     View. See View; Scenario
Semantic correctness 306
Separation of concerns xvi, 3, 10
Service 334
     Constituent 322, 334
     Constituent Creator 283, 321
     Creator 283, 321
     Domain 282
     Provider 283, 320
shallowCopy 311
Single inheritance 15
Smalltalk 14, 105, 107, 117, 120, 129, 223, 237
Soukup 143
State 59
     Diagram 20, 168
Statically typed 130
Stimuli 62
Stimulus messages 38, 47, 60, 85, 189
Stimulus/response 189
Stroustrup 2
structureCopy 314
Subclass 108
Subject of discourse 25
Subscriber 283, 320
Superclass 108
Surface area 155, 173, 237
Switching Domain 282
Synchronous 58, 65
     deferred 58, 6S
Syntactically correct 307
Synthesis 11, 40, 71, 73, 78, 79, 80
Collaboration view. see View; Synthesis collaboration
     Relation 73
     Safe 12, 70, 85, 165, 169
     Unsafe 13, 70, 85, 91, 165
     View. See View; Synthesis
System 36
     Description Language (SDL) 224
     Design model 25, 70
     Development process 23
     Implementation 70
     Implementation model 2S
          of objects 300
     Requirements model 25
     Software Supplier 288
     Transcript 240
     User model 25, 70

T
Tables 21
Task description 200
Task/tool/service architecture 179
Taskon Fountain Model 288
Technology 3
TINA 281
Tool 179
Tool Maker 287, 289
Toolbuilder 199
Trader 294, 296
Trigger 38, 76, 190
Tuples 21
Type 14, 104
Type checking 122

U
Universe of discourse 25
UNIX 102
Unsafe synthesis. See Synthesis; Unsafe
Use case 21, 65
User 283, 320
     Information Environment 179
     interfaces 201

V

Value chain 16, 28, 274, 275
Variable 121
Vestli 282
View 9, 60, 249
     Area of Concern 46, 60, 62
     Collaboration 9, 46, 61, 63, 95
     Extemal collaboration 64
     Inheritance collaboration 92
     Interface 9, 61, 66, 99
     Method 9, 48
     Method specification 61, 68, 99
     Process 61, 157, 162, 163
     Role List 61, 158, 172
     Role Model Collaborative 9
     Scenario 9, 61, 6S, 97
     Semantic 61, 154, 157, 159
     State diagram 61
     Stimulus-response 60, 62, 95
     Synthesis 92
     Synthesis collaboration 73
Virtual 87
     roles 64, 189, 212
VisualPart 242
Vlissides 17, 144

W
Weber 55
Weinberg 128, 140, 187
Wirfs-Brock xv, 2, 21, 54, 184
Wirth 103
Work process 23, 52
     Enterprise modeling 184
     Framework creation 156, 236
     Information modeling 194
     Model creation 24
     Module architecture 174
     OOCS schema creation 303
     Pattern creation 146
     Real time system modeling 212
     System development 25
Wynn 186

Y
Yo-yo approach. SeeProgramming; Approaches; Yo-yo