1 / 113

UNIT – I SOFTWARE MEASUREMENTS Prof. Prasad Mahale

UNIT – I SOFTWARE MEASUREMENTS Prof. Prasad Mahale. Reference Books 1) Software Metrics – A Rigorous & Practical Approach, 2E – By:- Norman E Fenton & Shari Lawrence Pfleeger – Publication :- Thomson Learning. – (Chapter 1,2,3,7,8,9,10,12 ) – Syllabus covered I,II,III Units

addison
Download Presentation

UNIT – I SOFTWARE MEASUREMENTS Prof. Prasad Mahale

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. UNIT – I SOFTWARE MEASUREMENTSProf. Prasad Mahale

  2. Reference Books 1) Software Metrics – A Rigorous & Practical Approach, 2E – By:- Norman E Fenton & Shari Lawrence Pfleeger – Publication :- Thomson Learning. – (Chapter 1,2,3,7,8,9,10,12 ) – Syllabus covered I,II,III Units 2) Software Quality By :- Garry Marliss and Ben-Menachem – Publication :- Thomson Learning. – (Chapter,7,8,9,19 ) – Syllabus covered IV Unit 3) Software Testing, 2E By:- Ron Patton – Publication :- Pearson Education. – Syllabus covered V Unit

  3. Learning outcomes 1 Able to Define Software Mesurement. Able to Explain What is it and why do it? 2 3 Able to understand different representational theory and model. Able to classify and determine what to measure 4 5 Able to apply framework 6 Benefits

  4. 1. Measurement in everyday life • Without measurement technology can’t function • Examples of Measurement – Economics: To determine price and pay increases – Radar System: To detect aircraft – Medical System: To diagnose disease – Weather forecasting system: Weather prediction – Shop (bill), Cloth Purchasing (height & size), Journey (distance, speed) etc. are the examples which requires measurement

  5. Measurement helps to •Understand our world • Interact with the surroundings • Improve our lives.

  6. 1.1.1 What is Measurement ? • Measurement is the process by which numbers or symbols are assigned to attributes of entities in the real world, so as to describe them according to the clearly defined rules. • An Entity :- an object (person or object) an event (Journey or the testing process) • Attribute:- It is the feature or property of an entity. e.g. area or color of the room, cost of the journey,

  7. 1.1.2 Making Things Measurable • Measurement can be called as quantification • There are two types of quantification – Direct and Indirect quantification – Measurement is direct quantification • E. g. Height of a tree , length of software – Calculations are indirect quantification • E.g. Area of room = Length * Breadth

  8. 2. Measurement in software engineering • Software engineering describes the collection of techniques that apply an engineering approach to the construction and support of software products. 1. Managing 5. Modeling 2. Costing 6. Analyzing 3. Planning 7. Implementing 4. Designing 8. Testing and maintaining

  9. 1.2.1 Neglect of Measurement in Software Engg • It is difficult to imagine electrical, mechanical and civil engg • without a central role of measurement. • Neither effective nor practical • For most development projects: We fail to set measurable targets for our software products. We fail to understand and quantify the cost of software products. We do not quantify or predict the quality of the product we produce. We can’t find out the improvements in our product development.

  10. Measurement is needed at least for assessing the status of your projects, products and resources. • You cannot control what you cannot measures. • Manager:- • What does each process cost? – Measure time and effort • How productive is staff? – time it takes • How good is the code being developed? – carefully recording faults, failure & changes as they occur, we can measure quality. • Will user be satisfied? – functionality • How can we improve? – time for development, effect on quality & productivity. 1.2.2 Objectives for Software Measurement

  11. Engineer:- • Are requirement testable ? – analyze satisfaction must be expressed in a measurable, Objective way. • How we found all fault? – whether inspection testing effective. • Have we met our product or process goal? - measure characteristic • What will happen in future? – measure attributes of existing product

  12. 1.2.3 Measurement for understanding, control & improvements • Measurement is imp for three basic activities: • Understand:What is happening during development and maintenance. • Control: What is happening on our projects. • Improve: process or products.

  13. 3. The Scope of software metrics • Cost & Effort Estimation • Productivity measures & models • Data & Collection • Quality models & Measures • Reliability Models • Performance evaluation & model • Structural & complexity metrics • Capability Maturity Assessment • Management by metrics • Evaluation of methods & tools

  14. 3. The Scope of software metrics

  15. Quantitative measure of degree to which a system, component or process possesses a given attribute For ex. No. of errors found per person hours expended • 1.3 The Scope of Software Metrics : • Cost and Effort Estimation : • a. Boehm’s COCOMO model • b. Putnam’s SLIM Model • c. Albrecht’s function model.

  16. 2. Productivity Model and Measures :

  17. 3. Data Collection: • Quality of any measurement product is clearly depend on careful data collection. • It is require to be done in consistent and complete. • It must be planned and executed in careful and sensitive manner • It is easier to say but difficult to done specially in case of large projects.

  18. 4. Quality Models and Measures: • Boehm’s Quality Model, MC Call Quality model. • Criteria are easier to understand & measure than factors

  19. Reliability Models: • It is most important factor of quality model • It indicates probability of failure free operation • Models available are • Jelinski-Moranda model • Little Wood model • Little wood Verall Model • NHPP Model

  20. Performance evaluation and models • Aspects of quality • Response time and completion rates • Focuses on the internal workings of system including efficiency and complexity of algorithms. • 1.3 The Scope of Software Metrics : (Contd..)

  21. Structural and Complexity Metrics: • Structural attributes are used to predict which parts of the s/w system are likely to be less reliable, more difficult to test or required more maintenance • We measure structural attributes of representation of s/w which are available without need for execution. • Structural Measures are available

  22. Management by Metrics: • Measurement is most important aspect of s/w project management • Measurement based Charts and graphs help the developer to track the status of project. • Many organizations define a set of measurements & reporting methods so that project can be compared & contrasted. • 1.3 The Scope of Software Metrics : (Contd..)

  23. Evaluation of methods and tools: • Organization uses new methods & tools to make product better. • Organization performs experiments, case studies & administrator surveys to check whether a method or tool is likely to make a positive difference in their particular situations. • Good experimental design, proper identification of the factors.

  24. Capability Maturity Assessment: • In the 1980s, the US (SEI) proposed a capability maturity model to measure contractors ability to develop the quality software for US government. • With this model contractor need to answered 100 questions • 5 Level Framework

  25. 1.4 The Representational Theory of Measurement • Provide Interpreting Data • Rule based approach is common in many science • Combining axioms & using their result to support refute their operation • We can use rules about measurements to codify our initial understating

  26. 1.4 REPRESENTATIONAL THEOTY OF MEASUREMENT 1.4.1 Empirical relations It has 3 types: Unary Empirical Relation Binary Empirical Relation Ternary Empirical Relation

  27. Unary Relation

  28. Binary Relation

  29. Binary Relation

  30. Ternary Relation

  31. REPRESENTATIONAL THEOTY OF MEASUREMENT (Contd …..) • It may be binary, but need not be binary • It may also unary such as “is tall ” • Behavior of measure in no. system to be same as corresponding element in real world • Mapping to preserve relation i.e. rule of representation condition • • We normally understand things by comparing them instead of assigning them numbers. • • Avinash is tall - ‘is tall’ is the unary relation • • Avinash is taller than Sushant. • – Taller than is the binary relation

  32. 1.4.2 The Rules of the Mapping • The real world is the domain of mapping and mathematical world is the range. • When we map the attributes from real world to a mathematical system, we have many choices for the mapping and the range. We can use real number, integers or even a set of nonnumeric symbol. – E.g. To measure person height, it may be in inches, centimeter or in feet. we have different mapping depending upon the conventions we adopt. - E. g. we need to specify may or may not allow shoes to be worn or people standing or sitting.

  33. 1.4.2 The Rules of the Mapping

  34. 1.4.3 The representation condition of measurement • The representation condition states that a measurement mapping M must map the entities in to numbers and empirical relations into the numerical relations in such a way that the empirical relations are preserve and are preserved by the numerical relations.

  35. • A is taller than B if M(A) > M(B). • This statement implies that – When ever A is taller than B then M(A) must be bigger number that M(B). • We can map A to higher number than B only if A is taller than B.

  36. The representation condition – example 2 (cont’d)– • We can find a representation in the set of real numbers by choosing three distinct numbers: • M(delayed response) = 6 • M(incorrect output)=4 • M(data loss)=50 • Further investigation of criticality reveals that data loss is more critical than incorrect output, which in turn is more critical than delayed response. • To develop a real-number representation for this enriched relation, we must be more careful in assigning numbers. • Using “>” to mean “more critical than”, data-loss failures must be mapped to a higher number than incorrect output failures, which in turn must mapped to a higher number than delayed responses.

  37. 1.5 Measurement and Models • Model is an abstraction of reality allowing us to strip (left) away from details and view a particular concept or entity from a particular perspective. • Models come in many different forms: as equation, mappings, diagram etc. • These shows how component parts relate to one another, so that we can examine and understand these relationships and make judgments about them.

  38. 1.5.1 Defining attributes • When measuring, there is always danger that we focus too much on the formal mathematical system and not enough on the empirical one. • We hurry to create mapping & then manipulate numbers, without carefully examining relationship among entities & their attributes in real world. • Following example shows how we can generate numbers without considering real meaning.

  39. 1.5 Measurement and Models (Contd..) 1.5.2 Direct and indirect measurement • Direct measures include cost and effort applied in the development of software. • Direct measures of the software include how many lines of code (LOC) produced, execution speed, memory size, and defects reported. • Indirect measures include functionality, quality, complexity, efficiency, reliability, and maintainability of the software. • Direct measure is easy to compute compare with indirect measure of software. We can calculate the cost of the software development but it is difficult to calculate the functionality and quality of the software.

More Related