PRODUCT METRICS Points covered : What is metrics Challenges of product metrics Measurement principles Software metrics and Qualities McCall’s Factors ISO 9128 Standards
SOFTWARE MEASUREMENT-???• Measurement is fundamental to any engineering discipline, and softwareengineering is no exception.• What is it?Software process and product metrics are quantitative measures that enable software peopleto gain insight into the efficacy of the software process and the projects that are conductedusing the process as a framework.• Who does it?Software metrics are analyzed and assessed by software managers. Measures are oftencollected by software engineers.• Why is it important?If you don’t measure, judgment can be based only on subjective evaluation. Withmeasurement, trends (either good or bad) can be spotted, better estimates can be made, andtrue improvement can be accomplished over time.
WHY SOFTWARE METRICS???• To characterize.• To evaluate.• To predict.• To improve.
• Characterize- To gain understanding of processes, products, resources, and environments• Evaluate To determine status with respect to plans• Predict To plan• To Improve
MEASUREMENT METRIC AND INDICATOR• Measurement is the act of determining a measure.• The IEEE Standard Glossary of Software Engineering Terms [IEE93] defines metric as “a quantitative measure of the degree to which a system, component,or process possesses a given attribute.”• An indicator is a metric or combination of metrics that provide insight into the software process, a software project, or the product itself
MEASUREMENT PRINCIPLES• Formulation : the derivation of software measures and metrics appropriate for representation of software• Collection : mechanism used to accumulate data required to derive the formulated metrics• Analysis : the computation of metrics and the application of mathematical tools• Feedback : recommendations derived from interpretations of product metrics transmitted to the software team
METRICS CHARACTERIZATION AND VALIDATION• Should have desirable mathematical properties• The value of the metrics should vary as per the traits• Metrics should be validated empirically in a wide range of context before being published or used to make decisions
GOAL-ORIENTED SOFTWARE MEASUREMENTGoal/Question/Metric paradigm is a technique for identifyingmeaningful metrics for any software process .Highlighted points are :• Establish an explicit measurement goal• Define a set of questions that must be answered in order to achieve the goal• Identify well formulated metrics that help to answer the question
ATTRIBUTES OF SOFTWARE METRICS• Practical support is expected• Measurement demands should be simple• Less esoteric and easy to understand for real world professionals• Should specify the basic intuitive notion of a high-quality software• Derived metrics and measures should lead to simple and computable conclusions• Easy to derive the metrics and should not demand inordinate effort or time
THE PRODUCT METRICS LANDSCAPE Landscape of a metrics gives you the various aspects and key points of the model and what exactly the metrics includes : N.B. : please lick your TECH-MAX for this !!!
SOFTWARE QUALITYSoftware quality is the conformance to explicitly stated functional andperformance requirements , explicitly documented development standards andimplicit characteristics that are expected of all professionally developed software• Software requirements are reference from which quality is measured, lack of conformance is lack of quality.• Specified standards define a set of development criteria that guide the manner in which software is engineered• There are some implied requirements which are must with specified criteria• There are some software quality standards developed based on the above points yet they vary as per applications and users of the software.
TYPICAL QUESTIONS• Define software quality• ISO Factors• Steps for Effective measurement• Explain the factors in McCall restriction• Product metrics landscape• Goal oriented measurement• Distinguish between Measure and Metric