0% found this document useful (0 votes)
137 views57 pages

Software Engineering 2nd Edition David C. Kung Instant Download

The document provides information about the second edition of 'Software Engineering' by David C. Kung, published by McGraw Hill LLC. It includes details on various software engineering topics such as methodologies, system engineering, architectural design, and project management. Additionally, it offers links to other related eBooks and resources for instant download.

Uploaded by

sacojsatale
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
137 views57 pages

Software Engineering 2nd Edition David C. Kung Instant Download

The document provides information about the second edition of 'Software Engineering' by David C. Kung, published by McGraw Hill LLC. It includes details on various software engineering topics such as methodologies, system engineering, architectural design, and project management. Additionally, it offers links to other related eBooks and resources for instant download.

Uploaded by

sacojsatale
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 57

Software Engineering 2nd Edition David C.

Kung
pdf download

https://ebookname.com/product/software-engineering-2nd-edition-
david-c-kung/

Get Instant Ebook Downloads – Browse at https://ebookname.com


Instant digital products (PDF, ePub, MOBI) available
Download now and explore formats that suit you...

Software Engineering for Game Developers Software


Engineering Series 1st Edition Ph.D.

https://ebookname.com/product/software-engineering-for-game-
developers-software-engineering-series-1st-edition-ph-d/

Component Software Beyond Object Oriented Programming


2nd Edition Szyperski C.

https://ebookname.com/product/component-software-beyond-object-
oriented-programming-2nd-edition-szyperski-c/

Software engineering effective teaching and learning


approaches and practices 1st Edition Heidi J. C. Ellis

https://ebookname.com/product/software-engineering-effective-
teaching-and-learning-approaches-and-practices-1st-edition-heidi-
j-c-ellis/

Practical Analog And Digital Filter Design Les Thede

https://ebookname.com/product/practical-analog-and-digital-
filter-design-les-thede/
Doing Time on the Outside Deconstructing the Benevolent
Community 1st Edition Madonna R. Maidment

https://ebookname.com/product/doing-time-on-the-outside-
deconstructing-the-benevolent-community-1st-edition-madonna-r-
maidment/

Sites of European Antisemitism in the Age of Mass


Politics 1880 1918 Robert Nemes

https://ebookname.com/product/sites-of-european-antisemitism-in-
the-age-of-mass-politics-1880-1918-robert-nemes/

Student s Guide to Landmark Congressional Laws on Civil


Rights Marcus D. Pohlmann

https://ebookname.com/product/student-s-guide-to-landmark-
congressional-laws-on-civil-rights-marcus-d-pohlmann/

Leisure Pleasure and Healing 1st Edition Dvorjetski

https://ebookname.com/product/leisure-pleasure-and-healing-1st-
edition-dvorjetski/

Substance Abuse Prevention The Intersection of Science


and Practice 1st Edition Julie Hogan

https://ebookname.com/product/substance-abuse-prevention-the-
intersection-of-science-and-practice-1st-edition-julie-hogan/
The Art of SEO Mastering Search Engine Optimization
Theory in Practice 1st Edition Eric Enge

https://ebookname.com/product/the-art-of-seo-mastering-search-
engine-optimization-theory-in-practice-1st-edition-eric-enge/
Software Engineering
Second Edition

David C. Kung
SOFTWARE ENGINEERING

Published by McGraw Hill LLC, 1325 Avenue of the Americas, New York, NY 10019. Copyright ©2024 by McGraw Hill LLC. All
rights reserved. Printed in the United States of America. No part of this publication may be reproduced or distributed in any form or
by any means, or stored in a database or retrieval system, without the prior written consent of McGraw Hill LLC, including, but not
limited to, in any network or other electronic storage or transmission, or broadcast for distance learning.

Some ancillaries, including electronic and print components, may not be available to customers outside the United States.

This book is printed on acid-free paper.

1 2 3 4 5 6 7 8 9 LCR 28 27 26 25 24 23

ISBN 978-1-265-24243-5
MHID 1-265-24243-7

Cover Image: Shutterstock Images, LLC

All credits appearing on page or at the end of the book are considered to be an extension of the copyright page.

The Internet addresses listed in the text were accurate at the time of publication. The inclusion of a website does not indicate an
endorsement by the authors or McGraw Hill LLC, and McGraw Hill LLC does not guarantee the accuracy of the information presented
at these sites.

mheducation.com/highered
Dedication
To My Father
Brief Contents

Preface xv
Pa r t IV
Pa r t I Modeling and Design of Other Types
Introduction and System of Systems 281
Engineering 1 13 Modeling and Design of Event-Driven
Systems 282
1 Introduction 2
14 Activity Modeling for Transformational
2 Software Process and Methodology 10 Systems 314
3 System Engineering 43 15 Modeling and Design of Rule-Based
Pa r t II Systems 330

Analysis and Architectural Design 67 Pa r t V


4 Software Requirements Elicitation 68 Applying Situation-Specific
5 Domain Modeling 92 Patterns 351
6 Architectural Design 123 16 Applying Patterns to Design a State
Diagram Editor 352
Pa r t III 17 Applying Patterns to Design a Persistence
Modeling and Design of Interactive Framework 400
Systems 155 Pa r t VI
7 Deriving Use Cases from Requirements 156 Implementation and Quality
8 Actor–System Interaction Modeling 182 Assurance 423
9 Object Interaction Modeling 196 18 Implementation Considerations 424
10 Applying Responsibility-Assignment 19 Software Quality Assurance 442
Patterns 224
20 Software Testing 474
11 Deriving a Design Class Diagram 246
12 User Interface Design 259

iv
Brief Contents v

Pa r t VII Appendices
A Personal Software Process: Estimation,
Maintenance and Configuration Planning, and Quality Assurance 608
Management 511 B Java Technologies 611
21 Software Maintenance 512
C Software Tools 623
22 Software Configuration Management 541
D Project Descriptions 638
Pa r t VIII E Object Constraint Language 644
Project Management and Index 649
Software Security 553
23 Software Project Management 554
24 Software Security 584
Contents

Preface xv 2.6 Agile Methods 33


2.6.1 Dynamic Systems Development
Pa r t I Method 33
2.6.2 Feature-Driven Development 35
Introduction and System 2.6.3 Scrum 36
Engineering 1 2.6.4 Extreme Programming 37
2.6.5 Agile Unified Methodology 38
Chapter 1 2.6.6 Kanban 39
2.7 Summary 41
Introduction 2 2.8 Chapter Review Questions 42
1.1  hat Is Software Engineering? 3
W 2.9 References 42
1.2 Why Software Engineering? 5 2.10 Exercises 42
1.3 Software Engineering Ethics 6
1.4 Software Engineering and Computer Science 7 Chapter 3
1.5 Summary 8
1.6 Chapter Review Questions 9 System Engineering 43
1.7 Exercises 9 3.1 What
 Is a System? 44

Chapter 2 3.2 What Is System Engineering? 45


3.3 System Requirements Definition 48
Software Process and Methodology 10 3.3.1 Identifying Business Needs 48
3.3.2 Defining System Requirements 50
2.1 
Challenges of System Development 11
3.4 System Architectural Design 50
2.2 Software Process 12
3.4.1 System Decomposition 51
2.3 Theory of Wicked Problems 13
3.4.2 Requirements Allocation 54
2.4 Software Process Models 15 3.4.3 Architectural Design Diagrams 55
2.4.1 Prototyping Process 15 3.4.4 Specification of Subsystem Functions and
2.4.2 Evolutionary Process 15 Interfaces 59
2.4.3 Spiral Process 16 3.5 Subsystems Development 61
2.4.4 The Unified Process 17 3.5.1 Object-Oriented Context Diagram 61
2.4.5 Personal Software Process 18 3.5.2 Usefulness of an Object-Oriented Context
2.4.6 Team Software Process 23 Diagram 61
2.4.7 Agile Processes 25 3.5.3 Collaboration of Engineering Teams 62
2.5 Software Methodology 31 3.6 System Integration, Testing, and Deployment 63
2.5.1 Difference between Process and 3.7 System Configuration Management 63
Methodology 31
3.8 Summary 65
2.5.2 Benefits of a Methodology 32
3.9 Chapter Review Questions 65
2.5.3 Status of Software Development
Methodologies 32 3.10 Exercises 66

vi
Contents vii

Pa r t II 5.5
5.4.5 Domain Model Review Checklist 115

Putting It Together 115
Analysis and Architectural Design 67 5.6 Guidelines for Domain Modeling 118
5.7 Applying Agile Principles 120
Chapter 4 5.8 Tool Support for Domain Modeling 121
5.9 Summary 121
Software Requirements Elicitation 68 5.10 Chapter Review Questions 122
4.1 What Is Requirements Elicitation? 68 5.11 Exercises 122
4.2 Importance of Requirements Elicitation 70
4.3 Types of Requirement 71 Chapter 6
4.4 Challenges of Requirements Elicitation 72
4.5 Steps for Requirements Elicitation 74 Architectural Design 123
4.5.1 Collecting Information 75 6.1 What
 Is Architectural Design? 124
4.5.2 Constructing Analysis Models 78 6.2 The Importance of Architectural Design 124
4.5.3 Deriving Requirements and Constraints 79 6.3 Software Design Principles 125
4.5.4 Requirements Specification Standards 84 6.3.1 What Are Software Design Principles? 126
4.5.5 Conducting Feasibility Study 86 6.3.2 Design for Change 126
4.5.6 Reviewing Requirements Specification 86 6.3.3 Separation of Concerns 127
4.6 Applying Agile Principles 87 6.3.4 Information Hiding 128
4.7 Requirements Management and Tools 89 6.3.5 High Cohesion 129
4.8 Summary 90 6.3.6 Low Coupling 130
4.9 Chapter Review Questions 90 6.3.7 Keep It Simple and Stupid 131
4.10 Exercises 90 6.4 Types of System 131
6.4.1 Interactive Systems 132
Chapter 5 6.4.2 Event-Driven Systems 133
6.4.3 Transformational Systems 134
Domain Modeling 92 6.4.4 Rule-Based Systems 135
6.4.5 Object-Persistence Subsystems 135
5.1 What
 Is Domain Modeling? 92
6.4.6 System and Subsystem 135
5.2 Why Domain Modeling? 93
6.5 Architectural Styles 136
5.3 Object-Orientation and Class Diagram 94
6.5.1 N-Tier Architectural Style 137
5.3.1 Extensional and Intentional Definitions 94
6.5.2 Client-Server Architectural Style 139
5.3.2 Class and Object 95
6.5.3 Main Program and Subroutine Architectural
5.3.3 Object and Attribute 96
Style 140
5.3.4 Association 97
6.5.4 Event-Driven System Architecture 142
5.3.5 Multiplicity and Role 98
6.5.5 Persistence Framework Architectural Style 144
5.3.6 Aggregation 99
6.5.6 Other Architectural Styles 145
5.3.7 Inheritance 100
6.6 Architectural Design Process 146
5.3.8 Inheritance and Polymorphism 101
6.6.1 Determine Architectural Design
5.3.9 Association Class 102
Objectives 147
5.4 Steps for Domain Modeling 103
6.6.2 Perform Custom Architectural Design 148
5.4.1 Collecting Application Domain 6.6.3 Specify Subsystem Functions and
Information 104 Interfaces 148
5.4.2 Brainstorming 105 6.6.4 Review the Architectural Design 149
5.4.3 Classifying Brainstorming Results 106
6.7 Architectural Style and Package Diagram 149
5.4.4 Visualizing the Domain Model 110
viii Contents

6.8 
Guidelines for Architectural Design 151 8.6  Not Show Exception Handling 190
Do
6.9 Architectural Design and Design Patterns 152 8.7 Including Other Use Cases 191
6.10 Applying Agile Principles 152 8.8 Continuing with Other Use Cases 191
6.11 Summary 153 8.9 Commonly Seen Problems 192
6.12 Chapter Review Questions 153 8.10 Guidelines for Expanded Use Cases 193
6.13 Exercises 154 8.11 Summary 195
8.12 Chapter Review Questions 195
Pa r t III 8.13 Exercises 195

Modeling and Design of Interactive Chapter 9


Systems 155
Object Interaction Modeling 196
Chapter 7 9.1 What
 Is Object Interaction Modeling? 196
9.2 Uml Sequence Diagram 198
Deriving Use Cases from Requirements 156 9.2.1 Notions and Notations 198
7.1 
What Is An Actor? 157 9.2.2 Representing Instances of a Class 198
7.2 What Is a Use Case? 157 9.2.3 Sequence Diagrams Illustrated 200
7.3 Business Process, Operation, and Action 158 9.2.4 Sequence Diagram for Analysis and
Design 200
7.4 Steps for Deriving Use Cases from Requirements 160
9.2.5 Using the Notations Correctly 202
7.4.1 Deriving Use Cases, Actors, and
9.3 Steps for Object Interaction Modeling 204
Subsystems 161
7.4.2 Constructing Use Case Diagrams 167 9.3.1 Collecting Information About Business
Processes 204
7.4.3 Specify Use Case Scopes 174
9.3.2 Identifying Nontrivial Steps 204
7.4.4 Producing a Requirement–Use Case
Traceability Matrix 176 9.3.3 Writing Scenarios for Nontrivial
Steps 205
7.4.5 Reviewing Use Case Specifications 177
9.3.4 Constructing Scenario Tables 207
7.4.6 Allocating Use Cases to Iterations 178
9.3.5 Scenarios: How to Write Them 208
7.5 Applying Agile Principles 179
9.3.6 Converting Scenario Tables into Sequence
7.6 Tool Support for Use Case Modeling 180 Diagrams 212
7.7 Summary 180 9.3.7 Object Interaction Modeling Review
7.8 Chapter Review Questions 181 Checklist 220
7.9 Exercises 181 9.4 Applying Agile Principles 220
9.5 Tool Support for Object Interaction Modeling 222
Chapter 8 9.6 Summary 222
9.7 Chapter Review Questions 222
Actor–System Interaction Modeling 182 9.8 Exercises 223
8.1 What
 Is Actor–System Interaction Modeling? 183
8.2 Importance of Actor–System Interaction Modeling 184 Chapter 10
8.3 Steps for Actor–System Interaction Modeling 184
8.3.1 Initializing a Two-Column Table 184 Applying Responsibility-Assignment Patterns 224
8.3.2 Specifying Actor–System Interaction 185 10.1 
What Are Design Patterns? 225
8.3.3 Reviewing Expanded Use Cases 186 10.2 Why Design Patterns? 226
8.4 Specifying Alternative Flows 186 10.3 Categories of Patterns 226
8.5 Using User Interface Prototypes 187 10.4 Pattern Specification 227
Contents ix

10.5 The
 Controller Pattern 227
10.5.1 A Motivating Example 228
Chapter 12
10.5.2 What Is a Controller? 230
10.5.3 Applying the Controller Pattern 231
User Interface Design 259
10.5.4 Controller and Software Design 12.1 W hat Is User Interface Design? 260
Principles 231 12.2 Why Is User Interface Design Important? 261
10.5.5 Types of Controller 233 12.3 Graphical User Interface Widgets 262
10.5.6 Keeping Track of Use Case State 234 12.3.1 Container Widgets 262
10.5.7 Bloated Controller 235 12.3.2 Input, Output, and Information
10.5.8 When to Apply the Controller Presentation Widgets 263
Pattern? 237 12.3.3 Guidelines for Using GUI Widgets 265
10.5.9 Guidelines for Applying Controller 237 12.4 User Interface Design Process 266
10.6 The Expert Pattern 238 12.4.1 Case Study: User Interface Design for a
10.6.1 Expert and Antiexpert 239 Diagram Editor 266
10.6.2 Expert Pattern Involving More Than One 12.4.2 Identify Major System Displays 267
Object 240 12.4.3 Producing a Draft Layout Design 268
10.6.3 When to Apply the Expert Pattern? 240 12.4.4 Specifying Interaction Behavior 270
10.6.4 Guidelines for Applying Expert 240 12.4.5 Constructing a Prototype 272
10.7 The Creator Pattern 241 12.4.6 Evaluating the User Interface Design
with Users 273
10.7.1 What Is a Creator? 242
12.4.7 User Interface Design Review
10.7.2 Benefits of the Creator Pattern 243
Checklist 274
10.7.3 When to Apply the Creator Pattern? 243
12.5 Designing User Support Capabilities 275
10.8 Summary 243
12.6 Guidelines for User Interface Design 276
10.9 Chapter Review Questions 244
12.7 Applying Agile Principles 278
10.10 References 245
12.8 Tool Support for User Interface Design 279
10.11 Exercises 245
12.9 Summary 279
Chapter 11 12.10 Chapter Review Questions 280
12.11 Exercises 280
Deriving a Design Class Diagram 246
11.1 W hat Is a Design Class Diagram? 248
Pa r t IV
11.2 Usefulness of a Design Class Diagram 248 Modeling and Design of Other Types
11.3 Steps for Deriving a Design Class Diagram 249 of Systems 281
11.3.1 Identifying Classes 249
11.3.2 Identifying Methods 250 Chapter 13
11.3.3 Identifying Attributes 251
11.3.4 Identifying Relationships 253 Modeling and Design of Event-Driven Systems 282
11.3.5 Design Class Diagram Review 13.1  hat Is Object State Modeling? 283
W
Checklist 255 13.2 Why Object State Modeling? 284
11.4 Organize Classes with Package Diagram 255 13.3 Basic Definitions 284
11.5 Applying Agile Principles 256 13.4 Steps for Object State Modeling 285
11.6 Tool Support for Design Class Diagram 257 13.4.1 Collecting and Classifying State Behavior
11.7 Summary 257 Information 285
11.8 Chapter Review Questions 257 13.4.2 Constructing a Domain Model to Show
the Context 288
11.9 Exercises 258
x Contents

13.4.4 Usefulness of the State Transition Table 292


13.4.5 Converting State Transition Table into
Chapter 15
Analysis State Diagram 293
13.4.6 Converting Analysis State Diagram into Modeling and Design of Rule-Based Systems 330
Design State Diagram 296 15.1  hat Is a Decision Table? 331
W
13.4.7 State Modeling Review Checklists 297 15.2 Usefulness of Decision Table 332
13.5 The State Pattern 298 15.3 Systematic Decision Table Construction 333
13.5.1 Conventional Approaches 298 15.4 Progressive Decision Table Construction 334
13.5.2 What Is State Pattern? 299 15.5 Checking for Desired Properties 335
13.5.3 Applying State Pattern 300 15.6 Decision Table Consolidation 336
13.6 Real-Time Systems Modeling and Design 303 15.7 Generating Code from a Decision Table 337
13.6.1 The Transformational Schema 303 15.8 Using a Decision Table in Test-Driven
13.6.2 Timed State Machine 307 Development 337
13.6.3 Interrupt Handling 308 15.9 Decision Trees 337
13.7 Applying Agile Principles 309 15.10 Applying the Interpreter Pattern 338
13.8 Tool Support for Object State Modeling 310 15.10.1 Defining a Grammar 340
13.9 Summary 310 15.10.2 Constructing a Class Diagram to
13.10 Chapter Review Questions 311 Represent the Grammar 340
13.11 Exercises 311 15.10.3 Converting a Conditional Expression
into a Parse Tree 341
Chapter 14 15.10.4 Implementing the Context 342
15.10.5 Creating and Evaluating Business
Activity Modeling for Transformational Rules 342
Systems 314 15.10.6 Updating Rules Dynamically 342
15.10.7 Merits of the Interpreter Pattern 342
14.1 W hat Is Activity Modeling? 315
15.11 Machine Learning and AI Application
14.2 Why Activity Modeling? 316
Development 344
14.3 Activity Modeling: Technical Background 316
15.11.1 Brief Introduction to Machine
14.3.1 Flowchart 316 Learning 344
14.3.2 Petri Net 317 15.11.2 A Workflow for Developing AI
14.3.3 Data Flow Diagram 318 Applications 345
14.4 Uml Activity Diagram 320 15.11.3 Applying Patterns 348
14.5 Steps for Activity Modeling 321 15.12 Summary 348
14.5.1 Identifying Activities and Workflows 322 15.13 Chapter Review Questions 349
14.5.2 Producing a Preliminary Activity 15.14 Exercises 349
Diagram 324
14.5.3 Introducing Branching, Forking, and
Joining 325
Pa r t V
14.5.4 Refining Complex Activities 326 Applying Situation-Specific
14.5.5 Activity Modeling Review Checklist 326 Patterns 351
14.6 Relationships to Other Diagrams 327
14.7 Applying Agile Principles 328 Chapter 16
14.8 Tool Support for Activity Modeling 328
14.9 Summary 329 Applying Patterns to Design a State Diagram
14.10 Chapter Review Questions 329 Editor 352
14.11 Exercises 329 16.1 Techniques Used by Patterns 353
Contents xi

16.1.1 P  rogram to an Interface 354 17.6 R etrieving Different Objects with Factory
16.1.2 Use Polymorphism to Provide Behavioral Method 414
Variations 354 17.7 Reducing Number of Classes with Prototype 416
16.1.3 Favor Composition over Inheritance 355 17.8 Applying Agile Principles 421
16.1.4 Use Delegation to Support Composition 356 17.9 Summary 421
16.2 Process for Applying Patterns 356 17.10 Chapter Review Questions 422
16.3 Case Study: State Diagram Editor 358 17.11 Exercises 422
16.4 Working with Complex Structures 359
16.4.1 Representing Recursive Whole-Part Pa r t VI
Structures 360
16.4.2 Accessing Different Data Structures with
Implementation and Quality
Iterator 363 Assurance 423
16.4.3 Choosing Algorithms with Strategy 366
16.4.4 Applying Type-Dependent Operations Chapter 18
with Visitor 368
16.4.5 Storing and Restoring Object State with Implementation Considerations 424
Memento 372
18.1 C oding Standards 424
16.5 Object Creation for Different Design Objectives 375
18.1.1 What Are Coding Standards? 425
16.5.1 Creating Families of Products 375
18.1.2 Why Coding Standards? 429
16.5.2 Varying Process and Process Steps 377
18.1.3 Guidelines for Practicing Coding
16.5.3 Reusing Objects with Flyweight 380 Standards 429
16.6 Designing Graphical User Interface and Display 384 18.2 Organizing the Implementation Artifacts 431
16.6.1 Keeping Track of Editing States 384 18.3 Generating Code from Design 433
16.6.2 Responding to Editing Events 386
18.3.1 Implementing Classes and Interfaces 433
16.6.3 Converting One Interface to Another 389
18.3.2 From Sequence Diagram to Method
16.6.4 Request Handler Is Unknow in Advance 391 Code Skeleton 433
16.6.5 Enhancing Display Capability with 18.3.3 Implementing Association Relationships 434
Decorator 395
18.4 Assigning Implementation Work to Team
16.7 Applying Agile Principles 398 Members 435
16.8 Summary 398 18.5 Pair Programming 435
16.9 Chapter Review Questions 399 18.6 Test-Driven Development 436
16.10 Exercises 399 18.6.1 Test-Driven Development Workflow 436
16.11 References 399 18.6.2 Merits of Test-Driven Development 439
18.6.3 Potential Problems 439
Chapter 17 18.7 Applying Agile Principles 439
18.8 Tool Support for Implementation 440
Applying Patterns to Design a Persistence 18.9 Summary 440
Framework 400 18.10 Chapter Review Questions 441
17.1  roblems with Direct Database Access 401
P 18.11 Exercises 441
17.2 Hiding Persistence Storage with Bridge 401
17.3 Encapsulating Database Requests as Commands 404 Chapter 19
17.4 Hiding Network Communication with Remote
Proxy 408 Software Quality Assurance 442
17.5 Sharing Common Code with Template Method 411 19.1 Benefits of Software Quality Assurance 442
xii Contents

19.2 S oftware Quality Attributes 443 20.6 A Generic Software Testing Process 490
19.3 Quality Measurements and Metrics 445 20.7 Object-Oriented Software Testing 492
19.3.1 Usefulness of Quality Measurements and 20.7.1 Use Case–Based Testing 492
Metrics 446 20.7.2 Object State Testing with ClassBench 494
19.3.2 Conventional Quality Metrics 447 20.7.3 Testing Class Hierarchy 497
19.3.3 Reusing Conventional Metrics 20.7.4 Testing Exception-Handling Capabilities 497
for Object-Oriented Software 453 20.8 Testing Web Applications 498
19.3.4 Object-Oriented Quality Metrics 453 20.8.1 Object-Oriented Model for Web
19.4 Software Verification and Validation Application Testing 498
Techniques 457 20.8.2 Static Analysis Using the Object-Oriented
19.4.1 Inspection 458 Model 499
19.4.2 Walkthrough 459 20.8.3 Test Case Generation Using the Object-
19.4.3 Peer Review 459 Oriented Model 500
19.5 Verification and Validation in the Life Cycle 461 20.8.4 Web Application Testing with HttpUnit 500
19.6 Software Quality Assurance Functions 464 20.9 Testing for Nonfunctional Requirements 500
19.6.1 Definition of Processes and 20.9.1 Performance and Stress Testings 500
Standards 465 20.9.2 Testing for Security 501
19.6.2 Quality Management 468 20.9.3 Testing User Interface 502
19.6.3 Process Improvement 469 20.10 Software Testing in the Life Cycle 503
19.7 Applying Agile Principles 471 20.11 Regression Testing 506
19.8 Tool Support for SQA 472 20.12 When to Stop Testing? 506
19.9 Summary 473 20.13 Applying Agile Principles 507
19.10 Chapter Review Questions 473 20.14 Tool Support for Testing 507
19.11 Exercises 473 20.15 Summary 508
20.16 Chapter Review Questions 508
Chapter 20 20.17 Exercises 508
20.18 References 509
Software Testing 474
20.1 W hat Is Software Testing? 475 Pa r t VII
20.2 Why Software Testing? 476 Maintenance and Configuration
20.3 Conventional Black-Box Testing 477 Management 511
20.3.1 Functional Testing: An Example 477
20.3.2 Equivalence Partitioning 478
20.3.3 Boundary Value Analysis 480
Chapter 21
20.3.4 Cause-Effect Analysis 482
Software Maintenance 512
20.4 Conventional White-Box Testing 483
21.1  hat Is Software Maintenance? 513
W
20.4.1 Basis Path Testing 483
21.2 Factors That Mandate Change 513
20.4.2 Cyclomatic Complexity 485
20.4.3 Flow Graph Test Coverage Criteria 485 21.3 Lehman’s Laws of System Evolution 514
20.4.4 Testing Loops 486 21.4 Types of Software Maintenance 515
20.4.5 Data Flow Testing 487 21.5 Software Maintenance Process and Activities 516
20.4.6 Coverage Criteria for Data Flow 21.5.1 Maintenance Process Models 516
Testing 488 21.5.2 Program Understanding 517
20.4.7 Interprocedural Data Flow Testing 489 21.5.3 Change Identification and Analysis 518
20.5 Test Coverage 489 21.5.4 Configuration Change Control 520
Contents xiii

21.5.5 C  hange Implementation, Testing, and


Delivery 521 Pa r t VIII
21.6 Reverse-Engineering 521 Project Management and
21.6.1 Reverse-Engineering Workflow 521
21.6.2 Usefulness of Reverse-Engineering 522
Software Security 553
21.6.3 Reverse-Engineering: A Case Study 522
21.7 Software Reengineering 523
Chapter 23
21.7.1 Objectives of Reengineering 523
Software Project Management 554
21.7.2 Software Reengineering Process 524
21.7.3 Software Reengineering: A Case 23.1 P roject Organization 555
Study 525 23.1.1 Project Format 555
21.8 Software Evolution 527 23.1.2 Team Structure 557
21.8.1 Planning Phase 527 23.2 Effort Estimation Methods 558
21.8.2 Iterative Phase 529 23.2.1 The Function Point Method 559
21.9 Patterns for Software Maintenance 532 23.2.2 The COCOMO II Model 561
21.9.1 Simplifying Client Interface with Facade 532 23.2.3 The Delphi Estimation Method 566
21.9.2 Simplifying Component Interaction with 23.2.4 Agile Estimation 567
Mediator 533 23.3 Project Planning and Scheduling 569
21.9.3 Patterns for Software Maintenance 534 23.3.1 PERT Chart 569
21.10 Applying Agile Principles 535 23.3.2 Gantt Chart and Staff Allocation 571
21.11 Tool Support for Software Maintenance 536 23.3.3 Agile Planning 572
21.12 Summary 539 23.4 Risk Management 573
21.13 Chapter Review Questions 539 23.4.1 Risk Identification 574
21.14 Exercises 539 23.4.2 Risk Analysis and Prioritizing 575
23.4.3 Risk Management Planning 577
23.4.4 Risk Resolution and Monitoring 577
Chapter 22 23.5 Process Improvement 577
23.6 Applying Agile Principles 579
Software Configuration Management 541 23.7 Tool Support for Project Management 580
22.1  he Baselines of a Software Life Cycle 542
T 23.8 Summary 581
22.2 What Is Software Configuration Management? 543 23.9 Chapter Review Questions 581
22.3 Why Software Configuration Management? 544 23.10 Exercises 582
22.4 Software Configuration Management
Functions 544 Chapter 24
22.4.1 Software Configuration Identification 545
22.4.2 Software Configuration Change Control 547 Software Security 584
22.4.3 Software Configuration Auditing 548 24.1  hat Is Software Security? 585
W
22.4.4 Software Configuration Status 24.2 Security Requirements 585
Accounting 549 24.3 Secure Software Design Principles 586
22.5 Configuration Management in an Agile Project 549 24.4 Secure Software Design Patterns 588
22.6 Software Configuration Management Tools 549 24.5 Seven Best Practices of Software Security 590
22.7 Summary 551 24.6 Risk Analysis with an Attack Tree 591
22.8 Chapter Review Questions 551 24.7 Software Security in the Life Cycle 592
22.9 Exercises 551 24.7.1 Security in the Planning Phase 593
xiv Contents

24.8 Applying Agile Principles 605 C.5 U


 sing CVS and Subversion in NetBeans 629
24.9 Summary 606 C.5.1 Creating a CVS Remote Repository 629
24.10 Chapter Review Questions 606 C.5.2 Setting Up Subversion in NetBeans 631
24.11 Exercises 607 C.5.3 Checking Out Files from a Repository 633
C.5.4 Editing Sources and Viewing Changes 635
Appendices C.5.5 Viewing File Status 635
A Personal Software Process: Estimation, C.5.6 Comparing File Revisions 635
Planning, and Quality Assurance 608 C.5.7 Merging Changes from Repository 636
A.1 E ffort Estimation in PSP 608 C.5.8 Resolving Conflicts 636
A.2 Software Quality Assurance in PSP 610 C.5.9 Updating Local Copies 636
A.3 Design and Quality 610 C.5.10 Committing Local Files to a
Repository 636
B Java Technologies 611 C.5.11 Importing Files into a Repository 637
B.1 G etting Started with Database Connectivity 611
D Project Descriptions 638
B.1.1 What Is Database Connectivity? 611
B.1.2 Setting Up Data Sources 611 D.1  ar Rental System 638
C
B.1.3 Accessing Databases from a Program 611 D.2 National Trade Show Service System 639
B.2 Getting Started with Swing 613 D.3 Study Abroad Management System 640
B.2.1 Creating Main Window with JFrame 613 D.4 UML Class Diagram Editor 642
B.2.2 Using Layout Managers to Arrange Com- E Object Constraint Language 644
ponents 614 E.1 Reserved Words and Operators 644
B.2.3 Processing Button Events with Action
E.2 Context and Invariant 644
Listener 616
E.3 Attribute Initialization 645
B.2.4 Implementing Drawing Capabilities 617
E.4 Operation Specification 645
B.3 Getting Started with Java Server Pages 617
E.5 Derivation Rules 646
B.3.1 What Are Java Server Pages? 617
B.3.2 JSP Workflow 617 E.6 Navigation over Association Relationships 646
B.3.3 Installing a Web Server with a JSP E.7 Navigation to and from Association Classes 646
Container 618 E.8 Collection Types 646
B.3.4 Using Java Server Pages 618 E.9 Collection Operations 647
C Software Tools 623 E.10 Let Operation 648
C.1  etBeans 623
N Index 649
C.2 Using JUnit 624
C.3 Running JUnit in NetBeans 628
C.4 The Cobertura Coverage Tool 628
Preface

BACKGROUND
Computers are widely used in all sectors of our society, performing a variety of func-
tions with the application software running on them. As a result, the market for soft-
ware engineers is booming. There is a significant gap between the demand and supply,
especially for graduates with software engineering education.
Many people do not know the scope and usefulness of software engineering, and
the discipline is often misunderstood. Many media outlets deem software engineering
as writing Java programs. Some students think that software engineering includes
everything related to software. Others think that software engineering is drawing
UML diagrams, as the following story illustrates. Years ago, after the first class of a
software engineering course, a student told me, “professor, you know that this will be
an easy course for me because we’ve drawn lots of UML diagrams before.” At the end
of the semester, the student came to me again and said, “professor, I want to tell you
that we worked very hard, but we learned a lot about OO design. It is not just drawing
UML diagrams.” So what is software engineering? As a discipline, it encompasses
research, education, and application of engineering processes, methodologies, quality
assurance, and project management to significantly increase software productivity
and software quality while reducing software cost and time to market. A software pro-
cess describes the phases and what should be done in each phase. It does not specify
(in detail) how to perform the activities in each phase. A modeling language, such
as UML, defines the notations, syntax, and semantics for communicating and docu-
menting analysis and design ideas. UML and the Unified Process (UP) are good and
necessary but not sufficient. This is because how to produce the analysis and design
ideas required to draw meaningful UML diagrams is missing.

MOTIVATION
To fill the gap mentioned above, we need a methodology or a “cook-book.” Unlike a
process, a methodology is a detailed description of the steps and procedures or how to
carry out the activities to the extent that a beginner can follow to produce and deploy
the desired software system. Without a methodology, a beginning software engineer
would have to spend years of on-the-job training to learn design, implementation, and
testing skills.
This book is also motivated by emerging interests in agile processes, design pat-
terns, and test-driven development (TDD). Agile processes emphasize teamwork, de-
sign for change, rapid deployment of small increments of the software system, and
joint development with the customer and users. Design patterns are effective design
xvi Preface

solutions to common design problems. They promote software reuse and improve
team communication. Patterns also empower less-experienced software engineers to
produce high-quality software because patterns encode software design principles.
TDD advocates testable software, and requires test scripts to be produced before the
implementation so that the latter can be tested immediately and frequently.
As an analogy, consider the development of an amusement park. The overall pro-
cess includes the following phases: planning, public approval, analysis and design, fi-
nancing, construction drawings, construction, procurement of equipment, installation of
equipment, preopening, and grand opening. However, knowing the overall process is not
enough. The development team must know how to perform the activities of the phases.
For example, the planning activities include development of initial concept, feasibility
study, and master plan generation. The theme park team must know how to perform these
activities. The analysis and design activities include “requirements acquisition” from stake-
holders, site investigation, design of park layout, design of theming for different areas of the
park, creating models to study the layout design and theming, and producing the master
design. Again, the theme park team must know how to perform these activities to produce
the master design. Unlike a process that describes the phases of activities, a methodology
details the steps and procedures or how to perform the activities.
The development of an amusement park is a multiyear project and costs billions
of dollars. The investor wants the park to generate revenue as early as possible, but
with the above process, the investor has to wait until the entire park is completed.
Once the master design is finalized, it cannot be modified easily due to the restrictions
imposed by the conventional process. If the park does not meet the expectations of the
stakeholders, then changes are costly once the park is completed.
Agile processes are aimed to solve these problems. With an agile process, a list
of preliminary theme park requirements is acquired quickly and allowed to evolve
during the development process. The amusement and entertainment facilities are
then derived from the requirements and carefully grouped into clusters of facilities.
A plan to develop and deploy the clusters in relatively short periods of time is pro-
duced, that is, rapid deployment of small increments. Thus, instead of a finalized
master design, the development process designs and deploys one cluster at a time. As
the clusters of facilities are deployed and operational, feedback is sought and changes
to the requirements, the development plan, budget, and schedule are worked out with
the stakeholders—that is, joint development. In addition, the application of architec-
tural design patterns improves quality and ability of the park to adapt to changing
needs— that is, design for change. Teamwork is emphasized because effective col-
laboration and coordination between the teams and team members ensure that the
facilities will be developed and deployed timely and seamlessly. The agile process
has a number of merits. The investor can reap the benefits much earlier because the
facilities are operational as early as desired and feasible. Since a small number of the
facilities are developed and deployed at a time, errors can be corrected and changes
can be made more easily.
In summary, this text is centered around an agile unified methodology that inte-
grates UML, design patterns, and TDD, among others. The methodology presented
in this book is called a “unified methodology” because it uses UML as the modeling
language and it follows an agile unified process. It does not mean to unify any other
Preface xvii

AUDIENCES
This book is for students majoring in computer science, software engineering or
­information systems, as well as software development professionals. In particular, it
is ­intended to be used as the primary material for upper-division undergraduate and
­introductory graduate courses and professional training courses in the software ­industry.
This book’s material evolved over the last two decades from courses taught at universi-
ties and companies domestically and internationally, as well as from applications of the
material to industry-sponsored projects and projects conducted by software engineers in
various companies. These allowed the author to observe how students and software engi-
neers applied UP, UML, design patterns, and TDD, and the difficulties they faced. Their
feedback led to the development of the Agile Unified Methodology (AUM) presented in
this book and the continual improvement of the material.
The book describes AUM in detail to facilitate students to learn and develop anal-
ysis and design abilities. In particular, each analysis or design activity is decomposed
into a number of steps, and how to perform each step is described in detail. This treat-
ment is intended to facilitate students learning how to perform analysis and design.
Once acquired the abilities, one may skip some or most of the steps.

ORGANIZATION
The book has 24 chapters, divided into eight parts:
Part I. Introduction and System Engineering. This part consists of the first three
chapters. It provides an overview of the software life-cycle activities. In particular,
it covers software process models, the notion of a methodology, the difference
between a process and a methodology, and system engineering.
Part II. Analysis and Architectural Design. This part presents the planning phase activ-
ities. It includes requirements elicitation, domain modeling, and architectural design.
Part III. Modeling and Design of Interactive Systems. This part deals with the
modeling and design of interactive systems. It consists of six chapters. These
chapters present how to identify use cases from the requirements, how to model
and design actor–system interaction and object interaction behavior, how to ap-
ply responsibility assignment patterns, how to derive a design class diagram to
serve as the design blueprint, and how to design the user interface.
Part IV. Modeling and Design of Other Types of Systems. This part consists of
three chapters; each presents the modeling and design of one type of system.
In particular, Chapter 13 presents the modeling and design of event-driven sys-
tems. Chapter 14 presents the modeling and design of transformational systems.
Chapter 15 presents the modeling and design of business rule-based systems.
Part V. Applying Situation-Specific Patterns. This part consists of two chapters
and presents how to apply situation-specific patterns. A case study, that is, the
design of a state diagram editor, is used to help understand the process.
Part VI. Implementation and Quality Assurance. This part consists of three chap-
ters. They present implementation considerations, software quality assurance
concepts and activities, and software testing.
xviii Preface

Part VII. Maintenance and Configuration Management. This part includes


two chapters and covers software maintenance and software configuration
management.
Part VIII. Project Management and Software Security. The last part of the book
consists of the last two chapters. One of the chapters presents software project
management. The other chapter covers software security, that is, life-cycle activi-
ties concerning the modeling and design of secure software systems.
The material can satisfy the needs of several software engineering courses. For
example,
1. Part I through Part III and selected topics from Part VI to Part VIII are a good
combination for an Object-Oriented Software Engineering (OOSE) course or an
Introduction to Software Engineering course. This could be a junior- or senior-
level undergraduate course as well as an introductory graduate-level course.
2. Part II, Part V, and selected sections from the other chapters could form a Soft-
ware Design Patterns course. It is recommended that the OOSE course described
above be a prerequisite for this course. However, many international students
may not have taken the OOSE course. In this case, a review of the methodology
presented in Part II and Part III is recommended. The review of the methodology
provides the framework for applying patterns. The review may take two to four
weeks.
3. Part VI and Part VII could be taught in various ways. They could form one course—
Quality Assurance, Testing, and Maintenance. They could be taught as two courses—
Software Quality Assurance, and Software Testing and Maintenance.
4. Chapters 13–15, 19, and 20 plus selected patterns from the other chapters may
form a course on modeling, design, verification, and validation of complex systems.
5. Part I, Parts VI–VIII, and selected chapters from the other parts may form a Soft-
ware Project Management course.
Various teaching supplements can be found at http://www.mhhe.com/kung. These in-
clude PowerPoint teaching slides, pop quiz and test generation software, databases of
test questions, sample course descriptions, syllabi, and a solution manual. Instructors
who have not taught the courses may find these helpful in reducing preparation time
and effort.
Preface xix

ACKNOWLEDGMENTS
I would like to thank my numerous students who constantly stimulate me with their
questions, feedback, enthusiasm, and effort to apply AUM to real-world projects. They
provided valuable improvement suggestions. Many continue to practice AUM in in-
dustry after graduation and share with me their valuable experiences. I also want to
thank the reviewers and numerous instructors for their comments and suggestions.
These have significantly improved the organization, presentation, and many other as-
pects of the book. I am thankful for the opportunities to teach on-site training courses
and for-credit courses for various companies. These allow me to interact with many
software developers and learn from them. Some companies let the developers apply
AUM and patterns to in-house or product-development projects. All of these proj-
ects generated very positive feedback including high-quality design documentation
and drastic reduction in defect rates. I want to thank the managements of various
companies for their constant support to industry-university collaboration and the
­opportunity for me to learn from practice.
This page intentionally left blank
part I
Introduction and System
Engineering

Chapter 1 Introduction 2
Chapter 2 Software Process and Methodology 10
Chapter 3 System Engineering 43
1 Chapter

Introduction

Key Takeaway Points

••Software engineering aims to significantly improve software productivity


and software quality while reducing software costs and time to market.
• Software engineering consists of three tracks of interweaving life-cycle activities:
software development, software quality assurance, and software project man-
agement activities.
Computers are used everywhere in our society. It is difficult to find a hospital, school,
retail shop, bank, factory, or any other organization that does not rely on computers.
Our cell phones, cars, and televisions are also based on computer-powered platforms.
The driving force behind the expanding use of computers is the market economy.
However, it is the software that makes the computers work in the ways we want. Soft-
ware or computer programs consist of thousands or millions of instructions that di-
rect the computer to perform complex calculations and control the operations of hard-
ware devices. The demand for computer software has been rapidly increasing during
the last several decades. This trend is expected to continue for the foreseeable future.
The proliferation of computer applications creates a huge demand for application
software developers. According to the Bureau of Labor Statistics (BLS), application
software developer was one of the 30 fastest-growing occupations in America (bls.
gov/emp/tables/fastest-growing-occupations.htm). The number of positions was pro-
jected to grow from 1,469,200 in 2019 to 1,789,200 in 2029, an increase of 316,000,
or 21.50%. The median annual wage for an application software developer in
May 2019 was $110,140, much higher than the median annual wage for all occupa-
tions ($41,950). Among the 10 computer and IT occupations surveyed by the BLS,
only application software developer and information security analyst enter into the
30 fastest-growing list. Its median pay was also much higher than the median pay of
$91,250 for the 10 computer and IT occupations surveyed by the BLS.
There are two popular misconceptions. One equates application software de-
velopment with computer programming. The other equates an application software
developer with a computer programmer. However, according to the BLS, software de-
velopers create the applications or systems that run on a computer or another device.

2
Chapter 1 Introduction 3

Computer programmers write and test code that allows computer applications and
software programs to function properly. The BLS survey also showed that the median
pay for a computer programmer in May 2019 was $89,190, which was lower than the
median pay for computer and IT occupations and much lower than the median pay for
an application software developer.
Unlike a computer programmer, an application software developer is required to
identify and formulate feasible and cost-effective solutions to solve large, complex re-
al-world problems and design software to implement such solutions. The solutions and
the software must take into account potential impact to public health, safety, security,
and welfare as well as cultural, social, and environmental aspects (abet.org). To be
able to perform the work required of an application software developer, an education
in software engineering is highly desired.

1.1 WHAT IS SOFTWARE ENGINEERING?


Software systems are complex intellectual products. Software development must en-
sure that the software system meets the needs of the intended application, the budget
is not overrun, and the system is delivered on time. To accomplish these goals, the
term “software engineering” was proposed at a NATO conference in 1968 to advocate
the need for an engineering approach to software production. Since then, software
engineering has become a discipline and made remarkable progress. The efforts that
take place in the field lead to the following:

Definition 1.1 Software engineering as a discipline is focused on the research,


education, and practice of engineering processes, methods, and techniques to
significantly increase software productivity and software quality while reducing
software costs and time to market.

This definition includes several important points. First, the overall objective of
software engineering is significantly increasing software productivity (P) and quality
(Q) while reducing software production and operating costs (C) as well as time to
market (T). These are abbreviated as PQCT in this book. In other words, significantly
improving PQCT means producing higher-quality software more quickly, efficiently,
and cost-effectively. These will eventually contribute to the improvement of our lives.
Second, research, education, and practice of software engineering processes, meth-
ods, and techniques are the means to significantly improve PQCT.
Software development involves three tracks of interweaving activities, as Figure 1.1
exhibits. These activities take place simultaneously throughout the software life cycle:
1. Software development activities.
2. Software quality assurance activities.
3. Software project management activities.
Software development activities are a set of activities performed to transform
an initial system concept into a software system running in the target environment.
Like many engineering projects, software development activities include software
4 Part I Introduction and System Engineering

Software development activities Productivity

Software quality assurance activities Quality

Cost & time


Software project management activities to market
FIGURE 1.1 Three tracks of life-cycle activities

specification, software design, implementation, testing, deployment, and mainte-


nance. Software specification determines what the customer and users want. These
are specified as requirements or capabilities that the software system must deliver.
Software design produces a software solution to realize the software requirements.
In particular, it determines the overall software structure, called the software archi-
tecture, of the software system. The architecture depicts the major system compo-
nents and how they relate, interface, and interact with each other. Software design
also defines the user interfaces as well as high-level algorithms for the system com-
ponents. During implementation and testing, the design is converted into computer
programs, which are tested to ensure that they work as the customer and users
expect. The software system is then installed in the target environment, tested and
modified to ensure that it works properly. During the maintenance phase, the soft-
ware system is continually modified to correct errors and enhance functionality
until it is abandoned or replaced.
Software quality assurance (QA) activities are carried out alongside the de-
velopment activities. QA activities ensure that the development activities are car-
ried out correctly; the required artifacts, such as software requirements document
(SRD) and software design document (SDD), are produced and conform to quality
standards; and the software system will fulfill the requirements. These are accom-
plished through requirements review, design review, code review and inspection, as
well as testing.
Software project management activities ensure that the software system under
development will be delivered on time and within budget constraint. One important
activity of project management is project planning. It takes place at the beginning of
a project, immediately after the requirements for the software system are determined.
In particular, effort and time required to perform the three tracks of activities for the
project are estimated. A schedule of activities is produced to guide the project. During
the development and deployment process, project management is responsible for con-
tinuous monitoring of project progress and costs, and executing necessary actions to
adapt the project to emerging situations.
Random documents with unrelated
content Scribd suggests to you:
"Everything!" For emphasis Mr. Jordon clapped two fat hands down
upon two fat knees. "But he's as solid as a rock. If we were dealing
with the real owners individually, it would be different. They're
anxious to sell and they're all short on nerve. It's him that holds
them together and keeps them braced up."
"I suppose you've tried to get them to withdraw their land from his
control?"
"I tried that long ago. But it wouldn't work. He's promised them a
big price, and he's made them believe they'll get it."
"Then you think as you say here"—he laid his hand upon the letter
—"that we'd better pay him what he demands and close the deal?"
"I certainly do. We've got to have that land, and to get it we've got
to pay his price. He knows that and he won't come down a dollar.
Since we've got to pay the price in the end, I'm for paying it right
now and not losing any more time in launching the company before
the public."
"Your reasoning is sound. But you're aware, of course, that the
difference between his price and the rate we've been paying is
considerably over fifty thousand?"
"Yes, but we're not going to lose money on it even at that." Mr.
Jordon nodded knowingly. "Besides, when we come to counting up
the profits on the whole deal, we'll never miss that fifty thousand."
"Fifty thousand dollars, Mr. Jordon," Mr. Chambers said quietly, "is
fifty thousand dollars."
Mr. Jordon blushed as though caught in an ill deed. "Yes—yes—of
course," he stammered. "We don't want to lose it, but how are we
going to help it?"
Mr. Chambers did not answer—gave no sign of having noticed the
other's embarrassment. "Suppose we have a meeting here to-
morrow afternoon, and try again to get him to lower his price."
"Very well—I'll write him to be here. But I warn you that he'll not
come down a cent."
"Then I suppose we'll have to settle on some other basis." There
was a moment's pause. "By the way, who is this Mr. Rogers?"
"Never heard of him till I ran across him in this deal. Nobody seems
to know much about him. He's just a little two-for-a-cent agent that
was cute enough to see this chance and grab it."
Mr. Chambers said no more, and Mr. Jordon, seeing that use for
himself was over, departed.
Mr. Chambers had an instinct for loss that was like a composer's ear
for false notes. In his big financial productions he detected a
possible loss instantly; it pained him as a discord, and he at once set
about correcting it. The New Jersey Home Company was but one of
the many coexisting schemes that had sprung from his creative
brain, and the fifty thousand dollars was a beggar's penny compared
to the sums that floated through his mind. But the fifty thousand
dollars was a loss, a flaw, and he could not pass it by.
Mr. Chambers had the theory, proved by long practice, that many
men have something hidden away in their lives which if discovered
and properly used, or some vulnerable business spot which if struck,
will so disable them that they cannot stand up against your plans.
This theory, applied, had turned for him many a hopeless struggle
into a quiet, easy victory—so that it had become his practice, when
dealing with a man whose past life and whose present business
relations he did not know, to acquaint himself with all that could be
uncovered.
The moment Mr. Jordon had gone Mr. Chambers wrote a line,
requesting full information about Rogers, and enclosed it in an
envelope which he addressed to the man who usually served him in
such confidential matters. He touched a button and handed the note
to his secretary. "See that Mr. Hawkins gets this at once," he said.
That afternoon a man, whom David afterward remembered as a
diamond ring, a diamond shirt-stud and a heavy gold watch-chain,
walked into the office of John Rogers.
"Is this Mr. Rogers?" he asked of David, who was alone in the room.
"No. Aldrich is my name. But I represent him. Can I do anything for
you?"
"I'd like to see him if I can. I'm thinking of investing in some real
estate in this neighbourhood, and I've been looking at a couple of
houses that I was told he was agent for."
"I'll call him—wait a minute."
David went into the living room, and at once returned. "Mr. Rogers
will be right in," he said.
"Thanks." The man turned his pinkish face about the room. "Cosy
little office you've got, for this part of town," he remarked, with an
air of speaking pleasantries to kill time.
"Yes—we think so."
"How long's Mr. Rogers been interested in real estate in this
neighbourhood?"
"I've been with him for less than a year, so I don't exactly know. But
I believe about eight or nine years."
"In the same business before then?"
But the entrance of Rogers at that instant saved David a reply. The
caller, who had sat down, rose and held out his hand.
"Is this Mr. Rogers? Harris is my name—William Harris."
Rogers, as he came up, laid hold of the back of a chair. He did not
see Mr. Harris's hand.
"I'm glad to meet you," he returned in his low voice. "Won't you sit
down?"
The three took chairs, and the next hour was filled with talk about
the houses Mr. Harris had examined. Mr. Harris was very eager for
the buildings, and David became excited at the prospect of the
agent's commission that would come from the sale. But Rogers was
quiet and reserved as always—answering all questions fully, save a
few casual personal queries which he evaded. When Mr. Harris went
away he said in so many words that the deal was as good as settled,
except for a small difference in the price which would bother them
little.
The instant the office door closed upon Mr. Harris David turned
eagerly to Rogers, who was sitting motionless in his chair.
"Won't that be a windfall though if he takes those houses!" he cried.
"Your commission will be at least two thousand dollars!"
There was no tinge of enthusiasm in Rogers's pale cheeks. He did
not speak at once, and when he did he ignored David's
exclamations.
"Did you notice, Aldrich," he said in a strained voice, "that I avoided
taking his hand when he offered it at first and again when we
parted?"
"No. Why?"
"I was afraid."
"Afraid?" repeated David, puzzled. "What of?"
"I shook hands with Bill Halpin—and you know what he found out."
David stepped nearer to Rogers, and saw in his eyes the look of
hunted fear.
"I don't understand," he said slowly.
"Mr. Harris may be a bona-fide dealer in real estate—but fifteen
years ago he was one of the cleverest detectives on the New York
police force. I recognised him the instant I saw him. He helped
arrest me once."
David sank slowly to a chair. "You don't say so!" he ejaculated. He
stared for several moments at Rogers's thin face, on which he could
now see the exhaustion of the straining interview. "Do you think he
can possibly be on your trail?—and if so, what for?"
"What for, I don't know. But didn't you notice how he was constantly
studying me?—how he slipped in a question about what I used to
do?—how he tried to learn the names of some of my friends, whom
he might quiz about me? He's clever."
"But do you think he found out anything?"
"I don't think he did. I was watching him closer than he was
watching me, for any least sign of recognition. I didn't see any. But
you know I can't help fearing, Aldrich! I can't help fearing!"
David tried to drive the strained, hunted look from Rogers's face by
saying that there was hardly any possibility of his identity being
discovered, and no apparent motive for it being used against him
even if found out. David succeeded in bringing back his own
confidence, and at length drew from Rogers the admission, "Well,
maybe you're right."
CHAPTER XIII
THE END OF THE DEAL
The next morning when David glanced at the envelopes the postman
had handed him he saw that one letter was from Mr. Jordon. He was
ripping it open eagerly when he noticed the envelope beneath it
bore the handwriting of Helen Chambers. He dropped Jordon's letter
and excitedly opened the other. Its cordiality set him afire. She was
just back in town for the winter, she wrote, and the following
afternoon she would be at St. Christopher's. Would he care to come
to meet her at about four for an hour's walk?
Would he! He had not seen her since the early summer—and how he
had hungered to see her, speak with her, feel her near presence! He
walked across the office, in which he was alone, half a dozen times
before he took up the letter of Mr. Jordon. Mr. Jordon asked that Mr.
Rogers and his associates be at the office of Mr. Chambers at three
o'clock that afternoon. He hoped that they would be able to reach
an agreement on terms and close the matter up.
David, the letter in his hand, was rushing into the living room to
read the news to Rogers, when he saw, through the open hall-door,
the ample form of the Mayor passing out. He captured the Mayor
and led him in to the side of the couch on which Rogers was lying.
"Listen to this, will you!" David cried, and excitedly read the letter.
"Did you take in that sentence at the last?—'I hope that we will at
length be able to agree on terms.' Now what do you think that
means?"
"It means," said the Mayor, explosively, "that they've woke up and
see that you ain't never goin' to come down to them, they've got to
come up to you! It means that you've won!"
Rogers's sunken eyes flamed, and he stood up. "It seems so!" he
breathed.
They all seized hands. "This don't mean much to me personally, for
I've only got a little in it," said the Mayor, "but I certainly have the
glad feeling on your account, Rogers. You can clear right out to a
land where the air was made for breathin' purposes. Here in New
York the air ain't good for much except fillin' in lots. Yes sir, Rogers,
I'm certainly glad!"
They talked on excitedly, as men do who are but a step from
success. David was glad, too, on Rogers's account, for he saw afresh
how thinly disease had sculptured his cheeks and nose, and how
deeply it had chiselled about the eyeballs, and to what a slender
shaft it had carved the neck. Also he was ablaze with gladness on
his own account. Success, but a few hours off, meant the partial
clearing of his name. His mind exulted over the details of the scene
to-morrow afternoon when he would tell Helen Chambers he had the
means to pay his debt to St. Christopher's.
In the course of the morning Mr. Harris dropped in. He asked for
Rogers, but David said that Rogers was out. For half an hour the
detective talked about the houses in which he was interested, now
and then slipping in a guileless question about Rogers. But David
was on his guard; he matched his wits against Mr. Harris's, and
when at length the detective went away David was certain he was
no wiser than when he came.
At half past two the Mayor thrust his head into the office and, seeing
Kate was there, beckoned David into the hall. The Mayor had never
before been at elbows with a real money king, so for him the
meeting was a new experience; and despite his ire toward Mr.
Chambers he was prompted to make his appearance before royalty
in fitting court costume.
"D'you think I look all right?" he asked, anxiously.
David surveyed the Mayor's bulky figure. There was a silk hat with
not a single hair in disarray, a long light overcoat, a pair of fresh
gloves that were staringly tan, and the most gorgeous vest in the
Mayor's closet. David could have wished that the whole scheme of
dress had been pitched in a lower key, but he criticised nothing but
the vest.
"If that's all you kick about, then I'm O. K.," the Mayor said
complacently, smoothing a yellow glove over the silken pinks.
"You've give me some good points, but when it comes to vests,
friend—well, you ain't got no real taste for vests."
He walked to the door and looked out. "There comes our carriage,"
he called. "Get Rogers and we'll be movin'."
"Carriage!" cried David.
"Sure. D'you think we're goin' to let Chambers and his bunch think
we're a lot o' cheapskates? Not much. We're goin' to do this thing
proper."
"But Mr. Chambers himself uses the street cars."
"Well, he can afford to," the Mayor returned with equanimity. "We
can't."
When David walked with Rogers to the carriage he would not have
been surprised had the Mayor handed them for their lapels a bunch
of roses knotted with ribbon. They settled back against the cushions
and suspense silenced them—and with hardly a word they rumbled
over to Broadway, down into Wall Street and up before Mr.
Chambers's office.
As they stepped from the carriage, Rogers's thin fingers gripped
David's hand like taut cords. Clasp, face, and the feverish fire in his
eyes told David how great was the strain Rogers bore. This was the
climax of his life.
David returned the pressure of his hand. "It'll be all right," he
whispered reassuringly.
They went up the broad steps into a tiled hallway, and turned to
their right to the entrance of the private banking house of Alexander
Chambers & Co. An erect, liveried negro, whose stiffly formal
manners suggested a spring within him, admitted them into a great
light room, in which, behind a partition of glass and bronze grating
that half reached the ceiling, sat scores of men working swiftly
without appearance of speed. A word and a lifted finger from the
black automaton directed them to the far end of the room. Here a
man with the bearing of a statesman, Mr. Chambers's doorkeeper,
bowed them into three leather-seated chairs, and carried their
names into Mr. Chambers's private secretary.
They did not speak; the nearness of the climax awed even the
Mayor. And to add to the suspense throbbing within him, David
began to wonder how he would be greeted by Mr. Chambers, whom
he had not seen since his ante-prison days.
Almost at once the doorkeeper reappeared, and with the subdued
air that characterised the place, led them into a large office. The
keen-faced secretary rose from a desk, ushered them through a door
and into another office. At the great desk in the center of the room
were Mr. Chambers and Mr. Jordon.
The two men rose, and David's wonder as to how Mr. Chambers
would receive him was at once relieved. An inclination of the head
and a quiet, "Glad to see you, Mr. Aldrich"—that was all; nothing in
his impassive face and manner to suggest that he remembered the
prison-gap in David's life.
The Mayor had announced during the carriage drive that if
"Chambers holds out his hand to me to be shook, I won't see nothin'
but the ceilin'." But there was no opportunity thus to humiliate Mr.
Chambers, for his response to the introduction was but a brief nod.
So the Mayor could only declare his independence by opening the
front of his overcoat, like a pair of doors, upon his brilliant waistcoat,
and by gazing into Mr. Chambers's face with aggressive hauteur.
Mr. Jordon shook hands all around. "Well, I hope we'll settle things
up to-day," he said. As to how things were going to be settled, he
had not the slightest doubt. He was certain the afternoon would
force Mr. Chambers to his way of thinking. A few minutes before Mr.
Chambers had asked his opinion as to the result of the conference,
and he had said, "They'll not give in; we've got to pay what they
ask." Mr. Chambers had said nothing—which had not surprised him,
for he knew it was instinctive with Mr. Chambers, even in such small
matters as this, to let the completed act announce his purpose.
They all sat down, David, Rogers, and the Mayor in three leather-
bottomed chairs which stood in front and to the right of Mr.
Chambers's desk. To the left, in a row, were half a dozen other
chairs. Mr. Chambers leaned slightly forward and folded his hands on
his desk's plate-glass top.
"Let us go straight to the point of this matter," he began, addressing
Rogers, who sat between David and the Mayor. "Mr. Jordon tells me
you refuse to consider any sum less than one hundred and fifty
thousand dollars for the land you control. Is that correct?"
"It is."
David's shoulder against Rogers told him that Rogers's lean frame
was as rigid as the chair that held it.
"This then is your ultimatum?"
"It is."
"Just as I told you," nodded Mr. Jordon, who was at Mr. Chambers's
elbow.
Mr. Chambers pressed a button beneath the desk and the door
opened before his secretary.
"Please show in the others," he requested quietly.
The secretary bowed and the door closed.
"The others?" breathed Rogers; and he and David and the Mayor
looked at each other.
"The others!" exclaimed Mr. Jordon. "What others?"
Mr. Chambers sat silent, with unchanged face. The next instant the
door, opening, answered the question. Into the room hesitantly filed
the five owners of the land Rogers controlled. Rogers, David, and
the Mayor, and also Mr. Jordon, rose in astonishment. The five
stopped and stared at Rogers's party; plainly the surprise was
mutual.
Mr. Chambers, remaining in his seat, motioned the new-comers to
the chairs at the left of his desk. "Be seated, gentlemen."
"What's this mean?" David asked, catching Rogers's arm.
Rogers turned toward him, and for an instant David felt he was
gazing into the abyss of fear. Then the arm he held tightened and
Rogers looked toward his five clients and nodded.
"Good afternoon. I'm glad to see you," he said in an even tone.
They sat down again, and Rogers's eyes fastened on the finely
wrinkled face of Mr. Chambers—as did every other pair of eyes in the
room. They vainly strove to read the purpose behind that inscrutable
countenance. The purpose was simple enough. By bringing together
the two elements of Rogers's crowd, each ignorant that the other
was to be present, unprepared with common replies, he had thought
he might possibly play them against each other in a way to bring
them to his price; and if not, he would at least have them all
together, and so be able to make an immediate settlement upon
their terms. He had had a faint hope that Mr. Hawkins might discover
something significant, but a note from the detective during the
morning had contained no single new fact.
Mr. Chambers did not give the surprised group time to readjust itself.
"I have called together all parties interested in this transaction in
order that we may more effectively reach an agreement, and in the
hope that we may obviate the necessity for future meetings."
He fastened his gray eyes upon the five owners, who were looking
very much at a loss, and spoke coldly, calmly, as though his decision
were unchangeable and his words immutable facts. "First I desire to
say that you gentlemen and your agent have a very inflated idea of
the value of your property. The price is one we cannot, and will not,
pay. If you want to take what we offer, very well. If not, I assure you
that we shall run no streets, water-mains, sewers or gas pipes near
your tract. We shall leave the neighbourhood of your property
entirely unimproved. You will recall that our land lies between yours
and the car line; we shall forbid anybody living on your land crossing
our land. Nobody else is going to buy your land under these
conditions. You can sell it only to us."
The owners, struck while off guard, were dazed; and David, Rogers,
and the Mayor, who had expected the exact opposite of this talk,
were completely taken back.
The cold, dominant voice went on. "Such being the situation, does it
not seem better to accept our price, which is a fair price, than to
have your land made unsaleable, to have your investment tied up for
years to come?"
He centered his personality upon the weakest of the five. "I'm sure
you think so, do you not?"
The man blinked—then nodded his head.
"But—" began Rogers.
"And you, I'm sure you think so," Mr. Chambers demanded of
another owner.
"Ye-e-s," said the man.
This was child's play to Mr. Chambers, who had browbeaten and
overpowered even the directors of great corporations. He tried to
rush his plan through, before the men could recover.
"It is plain you are all agreed. You see how your clients stand, Mr.
Rogers. It certainly seems the only course to settle this matter at
once upon the basis of our offer, which seems to them fair and just."
Rogers saw that awe of the great financier and his intimidating
statments had fairly stampeded his clients. Fighting down the
momentary sense of defeat, and not heeding Mr. Chambers's words
to him, he fixed his great burning eyes on the five men.
"Gentlemen!" he said desperately. They shifted their gaze from Mr.
Chambers to him. "Gentlemen, I want to assure you that if we hold
out we will get our own price. I happen to know they've just bought
a piece of ground beyond ours; without ours it will be worthless to
them. They've got to have our land! You understand? Simply got to
have it!"
The Mayor lifted an emphatic yellow hand toward the owners. "Of
course they have! And don't you listen to no bluffin'."
Rogers continued to talk for several minutes; and gradually
confidence and determination came into the manner of the five. At
the end Rogers turned to Mr. Chambers.
"We shall stand out for our price," he said firmly.
Mr. Chambers had wrecked railroads in order to buy them in at a
lower rate, but the similar procedure which he had threatened did
not seem worth while here. He had tried his plan, which he had
known had only a chance of success, and it had failed. There was
but only one thing to do—to yield.
He was thoughtful for several moments. "If we should refuse your
terms, we of course in the end would buy your land at our own
price. But it occurs to me that the bother and extra cost of improving
the land and opening it up at a later date, might be as much as the
difference between your price and ours. What do you think, Mr.
Jordon?"
"There's much in what you say," returned the general manager,
guardedly.
Rogers, David, and the Mayor exchanged quick, triumphant glances.
They had won.
Mr. Chambers again relapsed into his appearance of thoughtfulness,
and they all sat waiting for him to speak. David laid his hand on
Rogers's and pressed it exultantly.
While Mr. Chambers still sat thus, the office door opened and his
secretary apologetically tiptoed across the room with a letter in his
hand.
"I told Mr. Hawkins you were engaged, but he insisted that this was
important," the secretary said to Mr. Chambers, and withdrew.
Mr. Chambers read the note, thought a moment, slowly folded the
sheet, then raised his eyes.
"Before going further, there is one point—of no importance, I dare
say it will prove to be—that it might be well for us to touch upon."
He centered his calm gaze upon the five owners. "Since you have
intrusted Mr. Rogers with the management of your property I take it
that he has your fullest confidence?"
"Ye-es," said one hesitatingly, and the others followed with the same
word.
"Your confidence, of course, is founded on thorough acquaintance?"
David glanced from the impassive Mr. Chambers to Rogers. The
mask of control had fallen from his face. He was leaning forward, his
whole being at pause, his face a climax of fear and suspense.
A succession of slow "Yes-es" came from the owners.
"Then of course," Mr. Chambers went on in his composed voice, "you
are perfectly aware that Mr. Rogers is a man with a long criminal
career."
A shiver ran through Rogers; he stiffened, grew yet whiter. There
was a moment of blankest silence. Then the Mayor sprang up, his
face purpling.
"It's an infernal lie!" he shouted.
Consternation struggled on the faces of the five; they looked from
the rigid, white figure of Rogers to the calm face of Mr. Chambers.
"It isn't so," declared one tremulously.
"We will leave the question to Mr. Rogers," said Mr. Chambers's
unexcitable voice, and he pivoted in his chair so that his steady eyes
pointed upon Rogers. "If Mr. Rogers is not 'Red Thorpe,' the one
time notorious safe-blower, with scores of burglaries and three terms
in the penitentiary against him, let him say so. However, before he
denies it, I shall tell him that I have all the police data necessary for
his identification. Now, Mr. Rogers."
Their gaze on Rogers's face, all waited for him to speak—Jordon,
astounded, the five pale with the fear of loss, the Mayor glowering,
David with a sense that supreme ruin was crushing upon them.
At length Rogers's lips moved. "It is true," he whispered.
"What if it is?" roared the Mayor at Mr. Chambers. "There's nothin'
agin him now!"
"I'm making no charges against him," returned Mr. Chambers. "This
is merely some information it seemed his clients might be interested
in having."
All eyes again turned upon Rogers. He came slowly to his feet,
walked to Mr. Chambers's desk, leaned his hands upon it and
directed his large burning eyes down into Mr. Chambers's face.
"I have done many bad things, yes," he said in a voice, low, flame-
hot, "but nothing as bad as you have just done. You have stolen
more this minute than I have stolen in my lifetime."
He held his eyes, blazing with accusation, upon Mr. Chambers's
imperturbable face for several moments, then looked about on the
five owners. There was a chance, a bare chance, they might not turn
against him.
"Yes, I am Red Thorpe," he said in a vibrant voice that became more
and more appealing with every word. "I knew it would be found out
—some day. There are some things I always told myself I'd say to
the world when this day came. But to you I want to say only this:
For ten years I've been honesty itself. I've been honest with you—
you know it. If you stand by me, I'll do everything I've promised."
He stood rigid, awaiting their verdict. There was a strained silence.
The five looked dazedly at Rogers, at one another, completely at a
loss.
"If the gentlemen desire to entrust their affairs to a most dangerous
criminal, one who might defraud them of everything, that is their
privilege," put in Mr. Chambers quietly.
Their bewilderment was gone; Mr. Chambers's words had roused
their property instinct. A murmuring rose among them.
David and the Mayor sprang up, but Rogers raised a hand and they
remained beside their chairs. A flame began to burn in his white
cheeks, in his deep eyes.
"I knew this day was coming," he said in a low voice, that had a wild
bitter ring of challenge. "Instead of you, you weaklings"—he looked
at the five—"and you, you mere soulless Acquisition"—his eyes
blazed at Mr. Chambers—"I wish I had the world before me. I'd like
to tell it what a vast fool it is in its treatment of such as me—how
eyeless and brainless and soulless! Oh, what a fool!... But the
world's not here."
He was silent for a moment. "And why am I at an end?—why?" His
answer rang through the room with a passionate resentment, with
an agony of loss. "Because the world did not care to step in and
point the right way to me. To have saved me would have been so
easy! I was worth saving! I had brains—there was a man in me.
Whose fault is it that I am now at the end?—a miserable remnant of
a man! The world's. I was robbed of my chance in life—robbed, yes
sir, robbed!—and I could have made it a splendid life! Ah, how I've
wanted to make it a splendid life. And the world—the world that
robbed me!—that world calls me criminal. And I must pay the
penalty, and the penalty is—what you see! Oh, my God!"
For ten years Rogers had cherished the purpose of accusing the
world on the day of his exposure—but now his loss was so
overwhelming, speech to these people was so utterly useless,
strength was so little, that he could say no more—could only, leaning
against the desk, gaze in hatred and despair at Mr. Chambers and
the owners. The faces of the five were pale and blank. There was a
trace of sympathy in Mr. Jordon's face, and a momentary change in
Mr. Chambers's that indicated—who knows what?
David sprang to Mr. Chambers's desk, his soul on fire.
"This, sir, is a damned inhuman outrage!" he flung down into the
older man's face.
"It might also have been of interest to Mr. Rogers's clients," Mr.
Chambers returned calmly, "to have known the record of Mr.
Rogers's associate."
David's wrath had no time to fashion a retort, for the Mayor, at his
side, hammered the desk with a great yellow-gloved fist. "That's
what it is!" he shouted. "It's a low, dirty, murdering trick!"
"I merely acquainted his clients with his record—which they have a
right to know."
A huge sarcastic laugh burst from the Mayor, and he pushed his face
down into Mr. Chambers's.
"You," he roared, "you, when you're in a deal, you always show your
clients your record, don't you!"
Rogers, out of whose cheeks the fire had gone, leaving them an
ashen gray, tugged at their sleeves.
"It's no use!—let's go!" he begged, chokingly. "Quick!"
David's eyes blazed down upon Mr. Chambers. "Yes, let's leave the
infernal thief!"
He took one of Rogers's arms, the Mayor, shaking a huge fist in Mr.
Chambers's face, took the other, and they made for the door. Mr.
Chambers, still seated, watched Rogers's thin figure, head pitched
forward and sunken between his shoulders, pass out of the office.
Brushing people out of his way had become the order of his life, and
he did it impersonally, without malice, as a machine might have
done it. And Rogers was one of the most insignificant he had ever
brushed aside.
"Mr. Rogers, as of course you are aware, has not the rights of a
citizen," Mr. Chambers said to the five. "Consequently his agreement
with you is invalid; he can not hold you to it. If you will kindly wait in
the next room a moment, Mr. Jordon will speak with you."
After they had filed out he remarked to Jordon: "They are
stampeded. They will come to your terms. I leave them in your
hands."
He touched the button on his desk and his secretary appeared. "If
Senator Speed has come," he said, "ask him to step in."
When David and Rogers were home again, and the Mayor and his
profanity had gone, there was a long silence during which both sat
motionless. David searched his mind for some word of hope for
Rogers, who was a collapsed bundle in a Morris chair, gazing through
the window into the dusky air-shaft.
At length he bent before Rogers and took his hand. "We'll go to
some new place together, and start all over again," he said.
Rogers turned his face—the only part of him that the deepening
twilight had not blotted out. It seemed a bodyless face—the mask of
hopelessness.
"It's no use—I'm all in," he whispered. "Even if I had the courage to
make another fight, there's no strength."
He was silent for several moments. Then a low moan broke from
him. "Ten years!" he whispered. "And this is the end!"
BOOK IV
THE SOUL OF WOMAN
CHAPTER I
HELEN CHAMBERS GETS A NEW VIEW OF HER
FATHER
The morning light that sunk down the deep air-shaft and directed its
dimmed gaze through the window, saw Rogers lying dressed on the
couch and David sitting with sunken head at the window, a sleepless
night on both their faces. There had been little talk during the
crawling hours, save when the Mayor had dropped in near midnight
and set walls and furniture trembling with his deep chest-notes of
profanity. Even Tom, awed by the overwhelming disaster, moved
noiselessly about and spoke only a few whispered monosyllables.
The blow was too heavy to be talked of—too heavy for them to think
of what should next be done.
Once, however, David, whose personal loss was almost forgotten in
his sympathy for Rogers, had spoken of the future. "There is no
future," Rogers had said. "In a few days the owners of my buildings
will hear about me. They will take the agency from me. I have a few
hundred dollars. That will soon go. And then—?"
The dinginess in the light began to settle like the sediment of a
clearing liquid, and the sense that the sun must be breakfast-high
worked slowly to the seat of David's will. He rose, quietly set a few
things in order, Rogers's eyes following him about, then put on his
hat with the purpose of going to the Pan-American for his breakfast
and to bring Rogers's.
As he started for the door Rogers reached forth his hand. "I'm glad
you found out about me, Aldrich," he said. "I can never tell you how
much you've meant to me during the last eight months, and how
much you mean to me now."
David grasped the hand and looked down into the despairing eyes.
"I'm glad," he said, simply.
After a moment Rogers's weak grip relaxed and he turned away his
face with a sigh. David went softly out.
While David was at breakfast—his appetite shrunk from it—the
Mayor sat down at his table, which had the privacy of an empty
corner. "By the way," the Mayor whispered, "d'you have any idea yet
how Chambers found out?"
"No more than yesterday. We told you of the call of that detective.
He must have been from Chambers, and he must have made the
discovery. But how, we don't know."
"Poor Rogers!" The Mayor shook his head sadly, thoughtfully. His
face began slowly to redden and his eyes to flash. He thrust out a
big fist. "Friend, I don't believe in fightin'—but say, I'd give five years
to flatten the face that belongs to Mr. Chambers!"
David had to smile at the idea of the Mayor and Mr. Chambers
engaged in fisticuffs. "It's sad, but men like Mr. Chambers are
beyond the reach of justice."
The Mayor dropped his belligerent attitude. "Oh, I don't know.
Mebbe they can't be reached with fists, or law—but there's other
ways. And I'd like to jab him any old way. I've been thinkin' about
that daughter o' his. Wouldn't I like to tell her a few things about her
dad!"
The Mayor swayed away in response to a summons from the
kitchen, and a few minutes later David entered his room bearing in a
basket Rogers's prescribed milk and soft-boiled eggs. Rogers drank
down the eggs, which David had stirred to a yellow liquid, and after
them the milk, and then with a gasp of relief sank back upon the
couch. As David was clearing up after the breakfast he heard some
one—Kate he guessed—enter the office, and presently there was a
rap on the door between the two rooms. David opened the door and
found, as he had expected, Kate Morgan. She wore her coat and
hat, just as she had come from the street. On her face was a
strange, compressed look, and her eyes were red-lidded.
"Can I come in?" she asked with tremulous abruptness.
"Please do," said David.
She entered and moved to the foot of the couch where she could
look down on Rogers. "I've come to say something—and to say
good-bye," she announced.
"Say good-bye?" Rogers sat up. "Good-bye? Why? Oh, you have a
new position?"
"No. I've no right to be here. You won't want me when you know. So
I'm going."
Her face tightened with the effort of holding down sobs. The two
men looked at her in wonderment, waiting.
"You know how broke up I was when you told me about yesterday
afternoon," she went on, "and how mad I was at Mr. Chambers. And
then to find out what I have!... Here's what I've come to tell you.
Yesterday afternoon and last night my father was drinking a great
deal. I wondered where he got the money. This morning I went
through his clothes while he was asleep; there were several dollars.
I asked him about it. He lied to me, of course. But I got the truth
out of him in the end.
"You remember that detective you told me about last night. When
he left here yesterday about noon he happened to see my father
sweeping off the sidewalk. He began to talk to my father, got my
father to drinking, gave him some money. And after a while my
father—he'd learned it somehow—he told the detective—he told him
you were Red Thorpe."
The two men were silent a moment, looking at the strained face
down which tears were now running.
"So that's how it happened!" Rogers breathed.
"Yes—my father told!" The tremor in her voice had grown to sharp
sobs—of shame, agony, and wrath. "My father brought all this on
you. And it's all because of me. If you both hadn't tried to be good
to me, my father would not have been here and everything would
have turned out right. It's all because of me!—all my fault!—don't
you see? I know you'll both hate me now. I know you'll want me to
go away. Well—I'm going. But I want to tell you how sorry I am—
how sorry!... Good-bye."
David wanted to speak to her, but this was Rogers's affair rather
than his.
She swept them both with her brimming eyes. "Good-bye," she said
again, and turned to the door.
"Miss Morgan!" called Rogers.
She paused and looked at him.
"Don't go yet."
He rose and came to her with outstretched hand. "It wasn't your
fault."
She stared dazedly at him. "You're ruined—you told me so last night,
and I did it. Yes, I did it."
"No. You couldn't help it. You mustn't go at all."
She took his hand slowly, in astonishment. "Oughtn't I to go?" she
quavered.
"You must stay and help bear it," he said.
She looked steadfastly into his eyes. "You're mighty good to me,"
she breathed in a dry whisper. And then a sob broke from her, and
turning abruptly she went into the office.
In the afternoon David walked over to St. Christopher's to meet
Helen Chambers. Besides his bitterness, and his suspense over
seeing her, David felt as he entered the door of the Mission (what he
had felt on his three or four previous visits) a fear of meeting some
wrathful, upbraiding body who would recognise him. But he met no
one except a group of children coming with books from the library,
and unescorted he followed the familiar way to the reception room,
where Helen had written she would meet him. This, like the rest of
the Mission's interior he had seen, was practically unchanged; and in
this maintenance of old arrangements he read reverence for Morton.
He wandered about the room, looking at the friendly, brown-framed
prints that summoned back the far, ante-prison days. The past,
flooding into him, and his sense of the nearness of Helen, crowded
out for the time all his bitterness over Rogers's destruction.
When Helen appeared at the door, he was for an instant powerless
to move, so thrilled was he with his love for her. She came across
the room with a happy smile, her hand held out. He strode toward
her, and as he caught her hand his blood swept through him in a
warm wave.
"I'm so glad to see you again!" she cried, and a little laugh told him
how sincere her joy was.
A sudden desire struggled to tell her, truly, how great was his
gladness, and its kind, at seeing her again; and fighting the desire
back made him dizzy. "And I to see you!" he said.
"It's been—let's see—five months since I've seen you, and—"
"Five months and four days," the desire within David corrected.
"And four days," she accepted, with a laugh. "And there've been so
many things during that time I've wanted to talk with you about. But
how are you?"
She moved near a window. She was full of spirits this day. The out-
door life from which she had just come, the wind, the sun, the
water, were blowing and shining and rippling within her. David, in
analysing his love for her, had told himself he loved her because of
her able mind, her nobility of soul, her feeling of responsibility
toward life. Had he analysed further he would have found that her
lighter qualities were equally responsible for his love—her sense of
humour, the freshness of her spirits, her joy in the pleasures of life.
She had never shown him this lighter side with more freedom than
now—not even during the summer seven years before when for two
weeks they had been comrades;—and David, yesterday forgotten,
yielded to her mood.
He frankly looked her over. She wore a tailor-made suit of a rich
brown, that had captured some of the warm glow of sun-lit autumn,
and a little brown hat to match on which bloomed a single red rose.
Her face had the clear fresh brown of six months' sun, and the sun's
sparkle, stored in her deep eyes, beamed joyously from them. She
was a long vacation epitomised, idealised.
"May I say," he remarked at length, with the daring of her own free
spirit, "that you are looking very well?"
For her part, she had been making a like survey of him. His tall
figure, which had regained its old erectness, was enveloped in
clothes that fit and set it off; and his clean-lined face, whose
wanness had been driven away by the life in hers, looked
distinguished against the background of the dark-green window
hangings.
"You may," she returned, "if you will permit me to say the same of
you."
"Of me? Oh, no. I'm an old man," he said exultantly. "Do you know
how old I am?" He touched his head. "See! The gray hairs!"
"Yes—at least a dozen," she said gravely. "Such an old man!"
Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

ebookname.com

You might also like