Page 19 -
P. 19

xviii         CONTENTS


                       CHAPTER 19     TECHNICAL METRICS FOR SOFTWARE       507
                                      19.1  Software Quality  508
                                            19.1.1  McCall’s Quality Factors  509
                                            19.1.2  FURPS  511
                                            19.1.3  ISO 9126 Quality Factors  513
                                            19.1.4  The Transition to a Quantitative View  513
                                      19.2   A Framework for Technical Software Metrics  514
                                            19.2.1  The Challenge of Technical Metrics  514
                                            19.2.2  Measurement Principles  515
                                            19.2.3  The Attributes of Effective Software Metrics  516
                                      19.3   Metrics for the Analysis Model  517
                                            19.3.1  Function-Based Metrics  518
                                            19.3.2  The Bang Metric  520
                                            19.3.3  Metrics for Specification Quality  522
                                      19.4   Metrics for the Design Model  523
                                            19.4.1  Architectural Design Metrics  523
                                            19.4.2  Component-Level Design Metrics  526
                                            19.4.3  Interface Design Metrics  530
                                      19.5  Metrics for Source Code  531
                                      19.6  Metrics for Testing  532
                                      19.7  Metrics for Maintenance  533
                                      19.8  Summary  534
                                      REFERENCES  534
                                      PROBLEMS AND POINTS TO PONDER  536
                                      FURTHER READING AND OTHER INFORMATION SOURCES  537


         PART FOUR—OBJECT-ORIENTED SOFTWARE ENGINEERING           539
                       CHAPTER 20     OBJECT-ORIENTED CONCEPTS AND PRINCIPLES        541
                                      20.1  The Object-Oriented Paradigm  542
                                      20.2  Object-Oriented Concepts  544
                                            20.2.1  Classes and Objects  546
                                            20.2.2  Attributes  547
                                            20.2.3  Operations, Methods, and Services  548
                                            20.2.4  Messages  548
                                            20.2.5  Encapsulation, Inheritance, and Polymorphism  550
                                      20.3  Identifying the Elements of an Object Model  553
                                            20.3.1  Identifying Classes and Objects  553
                                            20.3.2  Specifying Attributes  557
                                            20.3.3  Defining Operations  558
                                            20.3.4  Finalizing the Object Definition  559
                                      20.4  Management of Object-Oriented Software Projects  560
                                            20.4.1  The Common Process Framework for OO  560
                                            20.4.2  OO Project Metrics and Estimation  562
                                            20.4.3  An OO Estimating and Scheduling Approach  564
                                            20.4.4  Tracking Progress for an OO Project  565
                                      20.5  Summary  566
                                      REFERENCES  566
                                      PROBLEMS AND POINTS TO PONDER  567
                                      FURTHER READINGS AND INFORMATION SOURCES  568
   14   15   16   17   18   19   20   21   22   23   24