Preface | p. xvii |
Foreword | p. xxxvii |
Acknowledgments | p. xxxix |
PowerBuilder for Managers | p. 1 |
Introduction | p. 1 |
Part Objectives | p. 4 |
Summary | p. 6 |
Management Commitment | p. 7 |
Introduction | p. 7 |
Informed Decision Making | p. 7 |
Reusability Is a Goal, Not a Method | p. 8 |
Why PowerBuilder? | p. 8 |
Why Should We Reuse? | p. 9 |
The Myths and the Realities | p. 11 |
How to Maximize Productivity | p. 16 |
Summary | p. 17 |
Developing a Strategy for Reuse | p. 19 |
Introduction | p. 19 |
Chapter Objectives | p. 19 |
The Reusability Strategy | p. 19 |
Summary | p. 26 |
Standards and Guidelines | p. 27 |
Introduction | p. 27 |
Chapter Objectives | p. 30 |
Graphical User Interface (GUI) Development Guidelines | p. 30 |
Coding and Naming Guidelines | p. 31 |
Planning Standards | p. 39 |
Design Standards | p. 42 |
Development Guidelines | p. 44 |
Testing Standards | p. 46 |
Documentation Standards | p. 47 |
Deployment Guidelines | p. 48 |
Summary | p. 53 |
Class Libraries | p. 55 |
Introduction | p. 55 |
Chapter Objectives | p. 55 |
Evaluating Class Libraries | p. 60 |
Where Can You Get More Information? | p. 66 |
What Libraries Are Available? | p. 67 |
Summary | p. 68 |
Developing Reusable Classes | p. 69 |
Introduction | p. 69 |
Chapter Objectives | p. 69 |
Comparing the Different Approaches to Building Reusable Classes | p. 70 |
Designing Reusable Classes | p. 72 |
Summary | p. 84 |
Common Reusable Object Libraries | p. 85 |
Introduction | p. 85 |
Chapter Objectives | p. 85 |
How Do These Objects Benefit Your Organization? | p. 86 |
How to Encourage the Paradigm Shift | p. 88 |
How to Construct CRO and CBC Libraries | p. 89 |
Buy-In from Project Teams | p. 90 |
Designing Specifically for CRO Use | p. 91 |
Summary | p. 91 |
The Pilot Project | p. 93 |
Introduction | p. 93 |
The Selection Process | p. 94 |
Building on the Methodology | p. 96 |
Supporting the Pilot Effort | p. 96 |
Marketing Success | p. 97 |
Summary | p. 98 |
Building on the Foundation | p. 101 |
Introduction | p. 101 |
Chapter Objectives | p. 101 |
Building on the Foundation | p. 101 |
Supporting the Foundation | p. 104 |
Summary | p. 106 |
Third-Party Software | p. 107 |
Introduction | p. 107 |
Third-Party Software | p. 107 |
Summary | p. 114 |
Developing a Class Library | p. 115 |
Introduction | p. 115 |
Part Objectives | p. 116 |
Methodologies | p. 117 |
Case Study: Object Framework | p. 119 |
Requirements Analysis | p. 121 |
Introduction | p. 121 |
Chapter Objectives | p. 121 |
Where to Start | p. 123 |
Library Design Objectives | p. 123 |
Basic Methodology | p. 125 |
Deciding on a Library Architecture | p. 125 |
Agreeing on Naming Conventions | p. 131 |
Gathering Requirements from Developers and Users | p. 131 |
Build the Project Requirements List | p. 133 |
Cost/Benefit Study of Requirements | p. 133 |
Project Scope Definition | p. 133 |
Determine Requirement Activities | p. 135 |
Summary | p. 136 |
Logical Class Definition (Class Library) | p. 139 |
Introduction | p. 139 |
Chapter Objectives | p. 140 |
Design Objectives | p. 141 |
Defining Logical Classes | p. 141 |
Expanding Activities | p. 144 |
Summary | p. 155 |
Physical Class Design | p. 157 |
Introduction | p. 157 |
Chapter Objectives | p. 158 |
Maintaining Our Design Objectives | p. 159 |
Adhering to Design Principles | p. 159 |
Physical Class Definition | p. 187 |
Summary | p. 206 |
Object Construction | p. 207 |
Introduction | p. 207 |
Chapter Objectives | p. 207 |
Object Administration | p. 208 |
Object Construction | p. 210 |
Tips and Techniques | p. 226 |
Summary | p. 246 |
Object Testing and Documentation | p. 247 |
Introduction | p. 247 |
Chapter Objectives | p. 248 |
Object Testing | p. 248 |
Test Management | p. 256 |
Other Testing Considerations | p. 257 |
Object Documentation | p. 257 |
Summary | p. 259 |
Productivity Aids | p. 261 |
Introduction | p. 261 |
Chapter Objectives | p. 261 |
Simple Wizards | p. 263 |
Extendible Wizards | p. 263 |
Adding an Object to an Extendible Wizard | p. 270 |
Summary | p. 274 |
Support Infrastructure Development | p. 277 |
Introduction | p. 277 |
Chapter Objectives | p. 277 |
Goals of the Support Infrastructure | p. 277 |
Components of the Ideal Support Infrastructure | p. 278 |
The Nature of Support | p. 279 |
Assigning Priority | p. 282 |
Developing the Infrastructure | p. 283 |
Handling a Support Request | p. 286 |
Summary | p. 288 |
Library Maintenance | p. 289 |
Introduction | p. 289 |
Chapter Objectives | p. 289 |
Methodologies Introduced | p. 290 |
The Automatic Correction Facility | p. 290 |
Staged Maintenance | p. 290 |
Maintaining Separate Versions | p. 291 |
Using Regression Testing | p. 291 |
Cleaning Up | p. 292 |
Panic Time | p. 299 |
Summary | p. 300 |
Library Performance Metrics | p. 301 |
Introduction | p. 301 |
Chapter Objectives | p. 301 |
The Perception of Performance | p. 301 |
Inheritance: Myths and Realities | p. 304 |
Objects and Architecture: The Roles They Play | p. 308 |
Functions and Events: The Debate Continues | p. 308 |
Using the Library Search Path | p. 310 |
The Environment and Its Effect on Performance | p. 310 |
Compile Scenarios | p. 312 |
Benchmarking and Tuning | p. 313 |
What Should You Test? | p. 317 |
Test Results and Analysis | p. 319 |
Summary | p. 319 |
Retooling Existing Projects | p. 321 |
Introduction | p. 321 |
Chapter Objectives | p. 321 |
Methodologies Introduced | p. 321 |
Justifying the Retrofit | p. 322 |
Estimating a Retroifit | p. 323 |
Implementing a Retrofit: The Tasks | p. 324 |
Summary | p. 333 |
Application Development | p. 335 |
Introduction | p. 335 |
Part Objectives | p. 335 |
Application Development Methodologies | p. 336 |
Summary | p. 343 |
Application Planning and Management | p. 345 |
Introduction | p. 345 |
Chapter Objectives | p. 345 |
Preparing for Development | p. 346 |
Preparing the Development Project Plan | p. 352 |
Project Management | p. 354 |
Summary | p. 354 |
Application Logical Design (Requirements Analysis) | p. 355 |
Introduction | p. 355 |
Chapter Objectives | p. 356 |
The Case Study: Base Class Library Administration | p. 356 |
Requirement Analysis | p. 364 |
Logical Class Definition | p. 371 |
Database Definition | p. 372 |
Summary | p. 375 |
Physical Design | p. 377 |
Introduction | p. 377 |
Chapter Objectives | p. 377 |
Physical Design | p. 378 |
Summary | p. 408 |
Application Development | p. 409 |
Introduction | p. 409 |
Chapter Objectives | p. 409 |
Constructing Your Libraries | p. 410 |
The Search Path | p. 410 |
Encapsulation Techniques | p. 413 |
Building from a Base | p. 413 |
Building Objects | p. 414 |
GUI Considerations | p. 417 |
Source Control | p. 418 |
PowerBuilder Library Maintenance | p. 418 |
Summary | p. 421 |
Object Integration | p. 423 |
Introduction | p. 423 |
Chapter Objectives | p. 423 |
Static Service | p. 424 |
Declarative Service | p. 426 |
Dynamic Service | p. 427 |
Accessing Service Functions | p. 429 |
Object Brokers | p. 429 |
Summary | p. 432 |
Application Testing | p. 433 |
Introduction | p. 433 |
Chapter Objectives | p. 433 |
Using Method Test Plans | p. 434 |
Preparing Test Cases | p. 442 |
Using Automated Testing Tools | p. 446 |
Summary | p. 447 |
Implementation and Maintenance | p. 449 |
Introduction | p. 449 |
Chapter Objectives | p. 449 |
Implementation | p. 449 |
Maintenance | p. 454 |
Summary | p. 459 |
Documentation Development | p. 461 |
Introduction | p. 461 |
Part Objectives | p. 462 |
Methodologies Introduced | p. 464 |
Types of Documents | p. 465 |
Chapter Objectives | p. 465 |
Classifications of Documents | p. 465 |
Analysis Documents | p. 468 |
Design Documents | p. 469 |
Deployment Documents: User and Technical Manuals | p. 471 |
Deployment Documents: The Knowledge Base | p. 472 |
Deployment Documents: On-Line Help | p. 472 |
Summary | p. 472 |
Documentation Development | p. 473 |
Introduction | p. 473 |
Application User Manuals Based on Navigation Workflow | p. 474 |
Application Technical Manual Based on Object Mapping | p. 478 |
Class Library Technical Manual Based on Class Hierarchy | p. 481 |
Turning Code into Documentation | p. 484 |
Summary | p. 486 |
Automated Documentation | p. 487 |
Introduction | p. 487 |
Automated Documentation: Concepts and Justification | p. 487 |
Using ORCA | p. 489 |
Summary | p. 519 |
Developing On-Line Help | p. 521 |
Introduction | p. 521 |
What Is On-Line Help? | p. 521 |
Chapter Objectives | p. 522 |
Why On-Line Help Is Needed | p. 522 |
Development Tools for On-Line Help | p. 523 |
Planning On-Line Help | p. 526 |
Development of On-Line Help | p. 534 |
Integrating Help with PowerBuilder | p. 537 |
Compilation and Distribution | p. 542 |
Useful On-Line Help Topics and Files | p. 542 |
Summary | p. 542 |
Training | p. 543 |
Introduction | p. 543 |
Chapter Objectives | p. 543 |
Technologies | p. 544 |
Develop or Buy? | p. 545 |
Planning | p. 547 |
Get to Know Your Audience | p. 548 |
Outline Development | p. 549 |
Materials Development | p. 550 |
Workshops | p. 551 |
Delivering Training | p. 552 |
Follow Up | p. 553 |
Summary | p. 553 |
Implementation and Beyond | p. 555 |
Introduction | p. 555 |
What We Cover | p. 555 |
The Implementation Chapters | p. 556 |
Development Tool Maintenance | p. 556 |
Summary | p. 556 |
Library Implementation | p. 557 |
Introduction | p. 557 |
Implementation Guidelines: The Implementation Checklist | p. 558 |
Library Distribution | p. 568 |
Performance Metrics | p. 570 |
Summary | p. 570 |
Application Implementation | p. 571 |
Introduction | p. 571 |
Implementation Guidelines | p. 573 |
Software Distribution | p. 594 |
Deployment FAQs | p. 595 |
Summary | p. 602 |
Maintaining Your Environment: DLLs and Other Three-Letter Words | p. 603 |
Introduction | p. 603 |
Chapter Objectives | p. 603 |
What Is There to Maintain? | p. 604 |
What Is Certification and How Does It Help? | p. 604 |
Anatomy of an Upgrade | p. 607 |
What Is Coming Next? | p. 610 |
Tips and Techniques to Avoid the Impending Disaster | p. 610 |
Summary | p. 612 |
The Future of Client-Server and PowerBuilder | p. 613 |
Introduction | p. 613 |
Chapter Objectives | p. 613 |
PowerBuilder 5.0 | p. 614 |
Multi-Tiered Architecture | p. 615 |
OLE 2 | p. 618 |
Windows 95/Windows NT | p. 618 |
Multiplatform Compatibility | p. 619 |
Summary | p. 619 |
Summary, Conclusions, and Appendix Z | p. 621 |
Introduction | p. 621 |
Summary and Conclusions | p. 622 |
Appendix Z, or What the Publisher Did Not Want You to See | p. 622 |
Index | p. 625 |
Table of Contents provided by Syndetics. All Rights Reserved. |