Software Design for Six Sigma: A Roadmap for ExcellenceISBN: 978-0-470-40546-8
Hardcover
560 pages
November 2010
This is a Print-on-Demand title. It will be printed specifically to fill your order. Please allow an additional 10-15 days delivery time. The book is not returnable.
|
Preface xv
Acknowledgments xix
1 Software Quality Concepts 1
1.1 What is Quality 1
1.2 Quality, Customer Needs, and Functions 3
1.3 Quality, Time to Market, and Productivity 5
1.4 Quality Standards 6
1.5 Software Quality Assurance and Strategies 6
1.6 Software Quality Cost 9
1.7 Software Quality Measurement 13
1.8 Summary 19
References 20
2 Traditional Software Development Processes 21
2.1 Introduction 21
2.2 Why Software Developmental Processes? 22
2.3 Software Development Processes 23
2.4 Software Development Processes Classification 46
2.5 Summary 53
References 53
3 Design Process of Real-Time Operating Systems (RTOS) 56
3.1 Introduction 56
3.2 RTOS Hard versus Soft Real-Time Systems 57
3.3 RTOS Design Features 58
3.4 Task Scheduling: Scheduling Algorithms 66
3.5 Intertask Communication and Resource Sharing 72
3.6 Timers 74
3.7 Conclusion 74
References 75
4 Software Design Methods and Representations 77
4.1 Introduction 77
4.2 History of Software Design Methods 77
4.3 Software Design Methods 79
4.4 Analysis 85
4.5 System-Level Design Approaches 88
4.6 Platform-Based Design 96
4.7 Component-Based Design 98
4.8 Conclusions 99
References 100
5 Design for Six Sigma (DFSS) Software Measurement and Metrics 103
5.1 Introduction 103
5.2 Software Measurement Process 105
5.3 Software Product Metrics 106
5.4 GQM (Goal–Question–Metric) Approach 113
5.5 Software Quality Metrics 115
5.6 Software Development Process Metrics 116
5.7 Software Resource Metrics 117
5.8 Software Metric Plan 119
References 120
6 Statistical Techniques in Software Six Sigma and Design for Six Sigma (DFSS) 122
6.1 Introduction 122
6.2 Common Probability Distributions 124
6.3 Software Statistical Methods 124
6.4 Inferential Statistics 134
6.5 A Note on Normal Distribution and Normality Assumption 142
6.6 Summary 144
References 145
7 Six Sigma Fundamentals 146
7.1 Introduction 146
7.2 Why Six Sigma? 148
7.3 What is Six Sigma? 149
7.4 Introduction to Six Sigma Process Modeling 152
7.5 Introduction to Business Process Management 154
7.6 Six Sigma Measurement Systems Analysis 156
7.7 Process Capability and Six Sigma Process Performance 157
7.8 Overview of Six Sigma Improvement (DMAIC) 161
7.9 DMAIC Six Sigma Tools 163
7.10 Software Six Sigma 165
7.11 Six Sigma Goes UpstreamDesign for Six Sigma 168
7.12 Summary 169
References 170
8 Introduction to Software Design for Six Sigma (DFSS) 171
8.1 Introduction 171
8.2 Why Software Design for Six Sigma? 173
8.3 What is Software Design for Six Sigma? 175
8.4 Software DFSS: The ICOV Process 177
8.5 Software DFSS: The ICOV Process in Software Development 179
8.6 DFSS versus DMAIC 180
8.7 A Review of Sample DFSS Tools by ICOV Phase 182
8.8 Other DFSS Approaches 192
8.9 Summary 193
8.A.1 Appendix 8.A (Shenvi, 2008) 194
8.A.2 DIDOVM Phase: Define 194
8.A.3 DIDOVM Phase: Identify 196
8.A.4 DIDOVM Phase: Design 199
8.A.5 DIDOVM Phase: Optimize 203
8.A.6 DIDOVM Phase: Verify 204
8.A.7 DIDOVM Phase: Monitor 204
References 205
9 Software Design for Six Sigma (DFSS): A Practical Guide for Successful Deployment 207
9.1 Introduction 207
9.2 Software Six Sigma Deployment 208
9.3 Software DFSS Deployment Phases 208
9.4 Black Belt and DFSS Team: Cultural Change 234
References 238
10 Design for Six Sigma (DFSS) Team and Team Software Process (TSP) 239
10.1 Introduction 239
10.2 The Personal Software Process (PSP) 240
10.3 The Team Software Process (TSP) 243
10.4 PSP and TSP Deployment Example 245
10.5 The Relation of Six Sigma to CMMI/PSP/TSP for Software 269
References 294
11 Software Design for Six Sigma (DFSS) Project Road Map 295
11.1 Introduction 295
11.2 Software Design for Six Sigma Team 297
11.3 Software Design for Six Sigma Road Map 300
11.4 Summary 310
12 Software Quality Function Deployment 311
12.1 Introduction 311
12.2 History of QFD 313
12.3 QFD Overview 314
12.4 QFD Methodology 314
12.5 HOQ Evaluation 318
12.6 HOQ 1: The Customer’s House 318
12.7 Kano Model 319
12.8 QFD HOQ 2: Translation House 321
12.9 QFD HOQ3Design House 324
12.10 QFD HOQ4Process House 324
12.11 Summary 325
References 325
13 Axiomatic Design in Software Design for Six Sigma (DFSS) 327
13.1 Introduction 327
13.2 Axiomatic Design in Product DFSS: An Introduction 328
13.3 Axiom 1 in Software DFSS 338
13.4 Coupling Measures 349
13.5 Axiom 2 in Software DFSS 352
References 354
Bibliography 355
14 Software Design for X 356
14.1 Introduction 356
14.2 Software Reliability and Design for Reliability 357
14.3 Software Availability 379
14.4 Software Design for Testability 380
14.5 Design for Reusability 381
14.6 Design for Maintainability 382
References 386
Appendix References 387
Bibliography 387
15 Software Design for Six Sigma (DFSS) Risk Management Process 388
15.1 Introduction 388
15.2 Planning for Risk Management Activities in Design and Development 393
15.3 Software Risk Assessment Techniques 394
15.4 Risk Evaluation 400
15.5 Risk Control 403
15.6 Postrelease Control 404
15.7 Software Risk Management Roles and Responsibilities 404
15.8 Conclusion 404
References 407
16 Software Failure Mode and Effect Analysis (SFMEA) 409
16.1 Introduction 409
16.2 FMEA: A Historical Sketch 412
16.3 SFMEA Fundamentals 420
16.4 Software Quality Control and Quality Assurance 431
16.5 Summary 434
References 434
17 Software Optimization Techniques 436
17.1 Introduction 436
17.2 Optimization Metrics 437
17.3 Comparing Software Optimization Metrics 442
17.4 Performance Analysis 453
17.5 Synchronization and Deadlock Handling 455
17.6 Performance Optimization 457
17.7 Compiler Optimization Tools 458
17.8 Conclusion 464
References 464
18 Robust Design for Software Development 466
18.1 Introduction 466
18.2 Robust Design Overview 468
18.3 Robust Design Concept #1: Output Classification 471
18.4 Robust Design Concept #2: Quality Loss Function 472
18.5 Robust Design Concept #3: Signal, Noise, and Control Factors 475
18.6 Robustness Concept #4: Signal–to-Noise Ratios 479
18.7 Robustness Concept #5: Orthogonal Arrays 480
18.8 Robustness Concept #6: Parameter Design Analysis 483
18.9 Robust Design Case Study No. 1: Streamlining of Debugging Software Using an Orthogonal Array 485
18.10 Summary 491
18.A.1 ANOVA Steps For Two Factors Completely Randomized Experiment 492
References 496
19 Software Design Verification and Validation 498
19.1 Introduction 498
19.2 The State of V&V Tools for Software DFSS Process 500
19.3 Integrating Design Process with Validation/Verification Process 502
19.4 Validation and Verification Methods 504
19.5 Basic Functional Verification Strategy 515
19.6 Comparison of Commercially Available Verification and Validation Tools 517
19.7 Software Testing Strategies 520
19.8 Software Design Standards 523
19.9 Conclusion 525
References 525
Index 527