Preface
Acknowledgments
Chapter 1 Introduction
Protecting and Comparing Confidential Data
International Country and City Codes
Using Standard Industry Classifications (SICs) for Software Studies
A Taxonomy of Software Projects for Benchmark and Assessment Studies
Chapter 2 Software Process Assessments
The Origins of Software Process Assessments
The SEI Assessment Approach
The SPR Assessment Approach
Pattern of Client Strengths (Better than Average Performance)
Pattern of Average Results (Average Performance Within Industry)
Pattern of Client Weakness (Worse than Average Performance)
Correlating the SEI and SPR Scoring Systems
Readings and References on Software Assessments
Chapter 3 Software Benchmarks and Baselines
Benchmarks and the Problem of Size Metrics
Benchmarketing Software Costs
Hazards of Using Project-Level Data for Software Benchmark Studies
Hazards of Mailed Surveys for Software Benchmark Studies
Moving to Activity-Based Software Benchmark Data
Software Quality Benchmarks
Software Baselines
Readings and References on Software Benchmarks and Baselines
Chapter 4 Thirty-Six Key Factors for Software Assessment and Benchmark Studies
Software Classification Factors
Project-Specific Factors
Technology Factors
Sociological Factors
Ergonomic Factors
International Factors
Readings and References on Factor Analysis
Chapter 5 Identifying Software Best and Worst Practices
Factors that Influence Software Development Productivity
Factors that Influence Software Maintenance Productivity
Patterns of Positive and Negative Factors
Readings and References on Software Best and Worst Practices
Chapter 6 Software Process Improvements
Annual Tactical and Strategic Software Improvement Plans
Annual Software Progress Report
The Six Stages on the Path to Software Excellence
Stage 0: Software Process Assessment, Baseline, and Benchmarks
Stage 1: Focus on Management Technologies
Stage 2: Focus on Software Processes and Methodologies
Stage 3: Focus on New Tools and Approaches
Stage 4: Focus on Infrastructure and Specialization
Stage 5: Focus on Reusability
Stage 6: Focus on Industry Leadership
The Costs, Timing, and Value of Process Improvements
Readings and References on Software Process Improvements
Chapter 7 Benchmarks and Best Practices For MIS Software Projects
MIS Applications and Corporate Databases
Lack of Data Metrics
MIS and Enterprise Resource Planning
MIS Applications, the Euro, and the Year 2000
MIS Technologies
Diverse Origins of Information Systems and Systems Software
MIS Demographics
MIS Benchmarks
MIS Software Successes and Failures
MIS Success Factors
MIS Failure Factors
Best Technical Practices for MIS Software
Best Project Management Practices for MIS Software
Best Requirements-Gathering and Analysis Practices for MIS Software
Best Design and Specification Practices for MIS Software
Best Coding Practices for MIS Software
Best Reusability Practices for MIS Software
Best Change Control Practices for MIS Software
Best User Documentation Practices for MIS Software
Best Quality Control and Pretest Defect Removal Practices for MIS Software
Best Testing Practices and Tools for MIS Software
Best Maintenance and Enhancement Practices for MIS Software
Best Personnel Practices for MIS Software
Best Staff Hiring Practices for MIS Software
Best Staff Training and Education Practices for MIS Software
Best Management Training and Education Practices for MIS Software
Best Practices for Specialization in the MIS Software Domain
Best Compensation and Salary Practices for MIS Software
Best Practices in Office Ergonomics for MIS Software
Best Practices in Organizational Structures for MIS Software
Best Practices for Employee Morale in MIS Software
Best Work Patterns and Overtime Utilization Practices for MIS Software
Best Practices for Minimizing MIS Staff Turnover Rates
Summary and Conclusions on MIS Software
Readings and References for MIS Software
Chapter 8 Benchmarks and Best Practices for Outsourced Software
The Growth of International Outsourcing
Choosing Outsourcing or In-house Development
Minimizing the Risks of Disputes Between Outsource Contractors and Their Clients
Outsourcing Technologies
Outsource Demographics
Outsource Benchmarks
Outsourcing Successes and Failures
Outsourcing and Contract Software Success Factors
Outsourcing and Contract Software Failure Factors
Best Technical Practices for Outsourced Software
Best Project Management Practices for Outsourced Software
Best Requirements-Gathering and Analysis Practices for Outsourced Software
Best Design and Specification Practices for Outsourced Software
Best Coding Practices for Outsourced Software
Best Reusability Practices for Outsourced Software
Best Change Control Practices for Outsourced Software
Best User Documentation Practices for Outsourced Software
Best Quality Control and Pretest Defect Removal Practices for Outsourced Software
Best Testing Practices and Tools for Outsourced Software
Best Maintenance and Enhancement Practices for Outsourced Software
Best Personnel Practices for Outsourced Software
Best Staff Hiring Practices for Outsourced Software
Best Staff Training and Education Practices for Outsourced Software
Best Management Training and Education Practices for Outsourced Software
Best Practices for Specialization in the Outsource Software Domain
Best Compensation and Salary Practices for Outsourced Software
Best Practices in Office Ergonomics for Outsourced Software
Best Practices in Organizational Structures for Outsourced Software
Best Practices for Employee Morale among Outsource Vendors
Best Work Patterns and Overtime Utilization for Outsourced Software
Best Practices for Minimizing Outsourcing Staff Turnover Rates
Summary and Conclusions on Outsourced Software
Readings and References for Outsourced Software
Chapter 9 Benchmarks and Best Practices for Systems Software
Systems Software Demographics
Systems Software Benchmarks
Systems Software Successes and Failures
Systems Software Success Factors
Systems Software Failure Factors
Best Technical Practices for Systems Software
Best Project Management Practices for Systems Software
Best Requirements-Gathering and Analysis Practices for Systems Software
Best Design and Specification Practices for Systems Software
Best Coding Practices for Systems Software
Best Reusability Practices for Systems Software
Best Change Control Practices for Systems Software
Best User Documentation Practices for Systems Software
Best Quality Control and Pretest Defect Removal Practices for Systems Software
Best Testing Practices and Tools for Systems Software
Best Maintenance and Enhancement Practices for Systems Software
Best Personnel Practices for Systems Software
Best Staff Hiring Practices for Systems Software
Best Staff Training and Education Practices for Systems Software
Best Management Training and Education Practices for Systems Software
Best Practices for Specialization in the Systems Software Domain
Best Compensation and Salary Practices for Systems Software
Best Practices in Office Ergonomics for Systems Software
Best Practices in Organizational Structures for Systems Software
Best Practices for Employee Morale in Systems Software
Best Work Patterns and Overtime Utilization for Systems Software
Best Practices for Minimizing Staff Turnover Rates
Summary and Conclusions on Systems Software
Readings and References for Systems Software
Chapter 10 Benchmarks and Best Practices for Commercial Software
Special Issues and Technologies for Commercial Software
Commercial Software Demographics
Commercial Software Benchmarks
Commercial Software Successes and Failures
Commercial Software Success Factors
Commercial Software Failure Factors
The Microsoft Pattern
The Emergence of the ISO 9000-9004 Standards
Best Technical Practices for Commercial Software
Best Project Management Practices for Commercial Software
Best Requirements-Gathering and Analysis Practices for Commercial Software
Best Design and Specification Practices for Commercial Software
Best Coding Practices for Commercial Software
Best Reusability Practices for Commercial Software
Best Change Control Practices for Commercial Software
Best User Documentation Practices for Commercial Software
Best Quality Control and Pretest Defect Removal Practices for Commercial Software
Best Testing Practices and Tools for Commercial Software
Best Maintenance and Enhancement Practices for Commercial Software
Best Personnel Practices for Commercial Software
Best Staff Hiring Practices for Commercial Software
Best Staff Training and Education Practices for Commercial Software
Best Management Training and Education Practices for Commercial Software
Best Practices for Specialization in the Commercial Software Domain
Best Compensation and Salary Practices for Commercial Software
Best Practices in Office Ergonomics for Commercial Software
Best Practices in Organizational Structures for Commercial Software
Best Practices in Employee Morale in Commercial Software
Best Work Patterns and Overtime Utilization for Commercial Software
Best Practices for Minimizing Staff Turnover Rates in the Commercial Software Domain
Summary and Conclusions on Commercial Software
Readings and References for Commercial Software
Chapter 11 Benchmarks and Best Practices for Military Software
Military Software Technologies and Special Problems
The Software Engineering Institute
The Airlie Council
Military Software Demographics
Military Software Benchmarks
Military Software Successes and Failures
Military Software Success Factors
Military Software Failure Factors
Best Technical Practices for Military Software
Best Project Management Practices for Military Software
Best Requirements-Gathering and Analysis Practices for Military Software
Best Design and Specification Practices for Military Software
Best Coding Practices for Military Software
Best Reusability Practices for Military Software
Best Change Control Practices for Military Software
Best User Documentation Practices for Military Software
Best Quality Control and Pretest Defect Removal Practices for Military Software
Best Testing Practices and Tools for Military Software
Best Maintenance and Enhancement Practices for Military Software
Best Personnel Practices for Military Software
Best Staff Hiring Practices for Military Software
Best Staff Training and Education Practices for Military Software
Best Management Training and Education Practices for Military Software
Best Practices for Specialization in the Military Software Domain
Best Compensation and Salary Practices for Military Software
Best Practices in Office Ergonomics for Military Software
Best Practices in Organizational Structures for Military Software
Best Practices in Employee Morale in Military Software
Best Work Patterns and Overtime Utilization for Military Software
Best Practices for Minimizing Military Staff Turnover Rates
Summary and Conclusions on Military Software
Readings and References for Military Software
Chapter 12 Benchmarks and Best Practices for End User Software
End User Software Demographics
End User Benchmarks
End User Software Successes and Failures
End User Software Success Factors
End User Software Failure Factors
Best Technical Practices for End User Software
Best Personnel Practices for End User Software
Readings and References for End User Software
Appendix: SPR Questionnaire for Assessments, Benchmarks, and Baselines
Glossary
Complete List of Readings and References
Index