From csus.edu!wupost!spool.mu.edu!agate!doc.ic.ac.uk!uknet!bnr.co.uk!bnrgate!nmerh207!corpgate!crchh327.bnr.ca!jakubik Tue Sep  7 16:32:05 1993
Path: csus.edu!wupost!spool.mu.edu!agate!doc.ic.ac.uk!uknet!bnr.co.uk!bnrgate!nmerh207!corpgate!crchh327.bnr.ca!jakubik
From: jakubik@bnr.ca (Paul Jakubik)
Newsgroups: comp.software-eng
Subject: SUMMARY: bobooks on Object Oriented Software Engineering
Date: 30 Aug 1993 14:41:22 GMT
Organization: Bell-Northern Research, Richardson, Tx.
Lines: 326
Message-ID: <25t3ii$l5@crchh327.bnr.ca>
NNTP-Posting-Host: crchh819.bnr.ca

Summary of messages from:

Annie I. Anton
Chad S Bremmon
Khuzaima Daudjee
Ernesto Guerrieri
Satish Popat
Allan Willey
James C. Youlio

Object-Oriented Software Engineering - A Use Case Driven Approach
Ivar Jacobson, Magnus Christerson, Patrik Jonsson, Gunnar Overgaard
Addison-Wesley/ACM Press 1992
ISBN 0-201-54435-0

Essays on Object-Oriented Software Engineering, VOLUME I
Ed Berard
Prentice Hall 1993
ISBN: 0132888955
(table of contents appears at end of this message)

Object-Oriented Software Engineerin (The professional developers guide), 
George Wilkie
Addison-Wesley 1993
ISBN-0-201-62767-1

-----------------------------------------
Information on accessing the Library of Congress Card Catalog 
via the Internet.

In the July, 1993 issue of _IEEE Computer_, on page 67, you will see a
news item about the new service LOCIS, which opens the Library of
Congress Card Catalog to the internet.  Telnet to locis.loc.gov or
140.147.254.3 for your answer--and pass the work in your company.

-----------------------------------------
Essays on Object-Oriented Software Engineering, VOLUME I
Ed Berard
Prentice Hall 1993
ISBN: 0132888955

TABLE OF CONTENTS
--------------------
Preface		xi
Prologue	xi
My Background	xii
About This Book	xiii
Acknowledgments	xv
--------------------
1	Understanding Object-Oriented Technology	1
Prologue	1
Brief History of Object-Oriented Technology	3
Two Different Cultures	5
What Does the Word "Object" Mean?	7
What Is Object-Oriented Programming?	8
Localization	10
Summary	10
Bibliography	10
--------------------
2	Motivation for an Object-Oriented 
	Approach to Software Engineering	13
Prologue	13
Two Views of Motivation	14
Encouragement of Modern Software Engineering	15
The Promotion and Facilitation of Software Reusability	19
The Promotion and Facilitation of Interoperability	20
Object-Oriented Solutions Closely Resemble the 
	Original Problem	21
Object-Oriented Approaches Result in Software That Is 
	Easily Modified, Extended, and Maintained	22
The General Electric Study	23
The Impact of Object-Orientation on the Software 
	Life-Cycle	24
Traceability	25
Reduction of Integration Problems	26
Improvement in Conceptual Integrity	26
Lessening the Need for Objectification and 
	Deobjectification	27
Summary	27
Bibliography	28
--------------------
3	What Are Methodologies?	32
General Observations	32
The Beginnings of Software Engineering Methodologies	33
The 1970s -- Methodologies Everywhere	34
The 1980s -- Taking a Closer Look	35
Object-Oriented Methodologies	35
Approaching Object-Oriented Methodologies	36
Object-Oriented Methodologies -- What's Available?	37
Bibliography	37
--------------------
4	Life-Cycle Approaches	40
Prologue	40
Methodologies and Life-Cycle Approaches Are Not Always 
	Necessary	40
General Life-Cycle Approaches	42
Some Examples of Life-Cycle Approaches	42
A Suggestion for the Object-Oriented Life-Cycle:The 
	Recursive/Parallel Model	46
Bibliography	47
--------------------
5	Understanding the Recursive/Parallel 
	life-cycle	49
Prologue	49
Historical Background	49
How We Really Design Software	50
Decomposition	52
Composition	53
Reusability and Compositional Techniques	54
And Now, the Recursive/Parallel Process	54
The Size and Critical Nature of a Software Product	55
Accomplishing the Recursive/Parallel Approach	55
"Analysis Objects," "Design Objects," "Interface 
	Objects,S and "Commuting Objects"	56
A Simple Example	57
When to Use OORA, When Not to Use OORA, and When to 
	Stop Using OORA		59
Consistency in the Object-Oriented Life-Cycle	60
Differences between OORA and OOD	60
Summary	60
Bibliography	61
--------------------
6	Abstraction, Encapsulation, and 
	Information Hiding	63
Prologue	63
Abstraction	63
Information Hiding	65
Encapsulation	67
Conclusions	69
Bibliography	70
--------------------
7	Object Coupling and Object Cohesion	72
Prologue	72
History of Coupling and Cohesion	74
General Concepts Behind Coupling and Cohesion	75
Module Coupling and Module Cohesion in an 
	Object-Oriented Context		80
Module Coupling	80
Module Cohesion	86
Object Coupling	92
Interface Coupling	95
Internal Object Coupling	101
Inside Internal Object Coupling	102
Outside Internal Object Coupling	103
Coupling from the Side	104
Coupling from Underneath	106
Types and Inheritance	110
Object Cohesion	111
Objects in Isolation	115
Individual Objects	115
Composite Objects	117
Specialization Hierarchies	119
Conclusion	122
Bibliography	122
--------------------
8	Object and Class Specifications	131
Prologue	131
Individual Objects Versus Systems of Objects	132
When Do We Create OCSs?	132
What View of an Object Does an OCS Provide?	133
The Basic Structure of an OCS	133
The Precise and Concise Description	134
Graphical Representations	135
Operations	139
State Information	144
Constants and Exceptions	145
Verification of an OCS	148
Verification of the Precise and Concise Description 
	Section		148
Verification of the Graphical Representations Section	149
Verification of the Operations Section	150
Verification of the State Information Section	150
Verification of the Constants and Exceptions Section	151
Additional OCS Issues	151
Observations on the OCS Creation Process	155
Summary	158
Bibliography	158
--------------------
9	Large Object-Oriented Entities 
	(Systems of Objects)	163
Prologue	163
The Impact of Size	164
Large Software Components	165
Kits	167
Systems of Interacting Objects	174
Conclusion	178
Bibliography	178
--------------------
10	Object-Oriented Domain Analysis	182
Prologue	182
Software Reusability	182
Domain Analysis: Definitions	184
Historical Background	185
Domain Analysis Is Not a Life-Cycle Activity	186
What Is a Domain Analyst?	187
Steps in OODA	187
Defining the Domain	188
Collecting a Representative Sample of Applications 
	in the Domain	190
Analysis of the Sample	190
Defining Reusability Guidelines	191
Demonstrations of Reuse Using the Reusable Objects	191
Making Recommendations	191
Domain Analysis and Life-Cycle Activities	191
Other Uses for Domain Analysis	191
Conclusions	192
Bibliography	192
--------------------
11	Creation of and Conversion to 
	Object-Oriented Requirements	196
Prologue	196
Establishing a Mindset	197
What Do We Mean by "Requirements Analysis"?	197
The Context for Object-Oriented Requirements Analysis	199
Beginning the Analysis Effort	201
Problems with Requirements	202
Creation of and Conversion to Object-Oriented 
	Requirements	203
A Model	204
Object-Oriented Models	204
Supporting the Models: The "Object Dictionary"	205
Attacking an Analysis Problem	206
Short Maps	206
OCS Precursors	206
Conclusion	207
Bibliography	208
--------------------
12	Object-Oriented Requirements Analysis	211
Prologue	211
History	212
OODA Will Impact OORA	215
A Suggested OORA Methodology	216
V&V and SQA	219
Conclusion	220
Bibliography	220
--------------------
13	Object-Oriented Design	225
Prologue	225
OOD and the Software Life-Cycle	226
History	226
Mixed Paradigms	228
Modifying Other Approaches to Encompass the 
	Object-Oriented Paradigm	228
Different Paradigms in the Same Life-Cycle	228
Transitioning from OORA	228
OODA Will Impact OOD	229
A Mechanism for Accomplishing OOD	230
Summary	237
Bibliography	237
--------------------
14	Evaluating An Object-Oriented 
	Programming Language	243
Prologue	243
Historical Background	244
Problems with Evaluations	245
Evaluation Criteria	245
Minimum Criteria for Objects	249
Other Problems In Evaluating the Object-Orientedness 
	of a Programming Language	249
Evaluation Methodology	250
Other Considerations	252
Summary	253
Bibliography	253
--------------------
15	Issues in the Testing of 
	Object-Oriented Software	257
Prologue	257
Confusion with Other Technologies	257
Some Basic Concepts and Definitions	258
Encapsulation and Information Hiding	261
The Impact of Encapsulation on Testing	262
Integration Testing	264
The Impact of Information Hiding on Testing	264
Other Issues	265
Summary	265
Bibliography	265
--------------------
16	Specifying Test Cases for Object-Oriented 
	Software	271
Prologue	271
Why Study Specifications for Test Cases 
	for Object-Oriented Software?	271
The Characteristics of a Well-Specified Test Case	272
Specifying Test Cases for Object-Oriented Software	272
Unique Object Identification	274
Unique Test Case Identification	274
The Purpose of the Test Case	275
A List of Test Case Steps	275
A List of Specified States	276
A List of Messages/Operations	277
A List of Exceptions Raised	280
A List of Interrupts Generated	281
A List of External Conditions	281
A List of Additional Comments	283
Conclusions	284
Bibliography	284
--------------------
17	Readings In Object-Oriented Technology	285
Object-Oriented Programming	285
Object-Oriented Requirements Analysis	286
Object-Oriented Design/Development	286
Object-Oriented Databases	287
Object-Oriented Computer Hardware	288
Metrics for Object-Oriented Software Engineering	289
General Object-Oriented Technology References	289
--------------------
	Appendix: Object and Class Specifications	291
Class: Bounded List	291
Class: Bid	297
Class: Button	303
Class: Destination_Panel	305
Class: Floor_Arrival_Panel	310
Class: Lamp	313
Class: Read_Only_Port	315
Class: Shared_Motor	318
Class: Write_Only_Port	323

	Glossary	326

	Index	343



-- 
Paul Jakubik	|Bell-Northern Research	|Richardson, Tx
jakubik@bnr.ca	|214-684-1501		|My opinions are my own...

