SlideShare a Scribd company logo
Software Metrics
• Software metrics can be classified into three
categories −
• Product metrics − Describes the characteristics of
the product such as size, complexity, design
features, performance, and quality level.
• Process metrics − These characteristics can be used
to improve the development and maintenance
activities of the software.
• Project metrics − This metrics describe the project
characteristics and execution. Examples include the
number of software developers, the staffing
pattern over the life cycle of the software, cost,
schedule, and productivity.
Metrics for the Process & Project
domains:
• Project Metrics enable a s/w project manager
to:
• 1.Assess the status of an on going project
• 2.Find the potential risks
• 3.Uncover the problem areas before they go
critical
• 4.adjust work flow and work tasks
• 5.Evaluate the ability of project teams to control
quality of work products.
Software Measurement
Software is measured for many reasons:
• 1. To indicate the quality of the product.
• 2.To assess the benefits derived from new s/w
engineering methods and tools.
• 3.To assess the productivity of the people who
produce the product.
• 4.To form a baseline for estimation.
Measurements in the physical world can be
estimated in two ways:
• 1.Direct Measurement(Ex: Length of Bolt)
• 2.Indirect Measurement(Ex: Quality of the
Bolt produced)
• Direct Measures of the s/w engineering
process include cost of effort, DM of the
product includes lines of code, Execution
Speed, Memory Size and defects reported
etc..
• Indirect Measures of the product include
functionality, quality, complexity, efficiency,
reliability, maintainability etc…
• Software Metrics can be categorized into :
• 1.Size Oriented Metrics
• 2.Functioned Oriented Metrics
• 3.Human Oriented Metrics
Size Oriented Metrics
• Productivity=KLOC/Person-months
• Quality=Defects/KLOC
• Cost=$(000)?KLOC
• Documentation=Pages Per documentation/KLOC
Function Oriented Metrics
• Productivity=FP/Person-month
• Quality=Defects/FP
• Cost=$(000)/FP
• Document=Ppdoc/FP
Example for Cause Effect
• Now let’s try to implement this technique
with some example.
• 1. Draw a cause and effect graph based on a
requirement/situation
2. Cause and Effect graph is given, draw a
decision table based on it to draw the test
case.
• Let’s see both of them one by one.
• The “Print message” is software that read two
characters and, depending on their values,
messages must be printed.
• The first character must be an “A” or a “B”.
• The second character must be a digit.
• If the first character is an “A” or “B” and the
second character is a digit, the file must be
updated.
• If the first character is incorrect (not an “A” or
“B”), the message X must be printed.
• If the second character is incorrect (not a digit),
the message Y must be printed.
• Solution:
• The causes for this situation are:
C1 – First character is A
C2 – First character is B
C3 – the Second character is a digit
• The effects (results) for this situation are
E1 – Update the file
E2 – Print message “X”
E3 – Print message “Y”
First, draw the causes and effects as shown below:
• In this example, let’s start with Effect E1.
• Effect E1 is to update the file. The file is
updated when
– The first character is “A” and the second
character is a digit
– The first character is “B” and the second
character is a digit
– The first character can either be “A” or “B”
and cannot be both.
• Now let’s put these 3 points in symbolic form:
• For E1 to be true – following are the causes:
– C1 and C3 should be true
– C2 and C3 should be true
– C1 and C2 cannot be true together. This
means C1 and C2 are mutually exclusive.
So as per the above diagram, for E1 to be true the condition is
(C1 C2) C3
•The circle in the middle is just an interpretation of the
middle point to make the graph less messy.
There is a third condition where C1 and C2 are mutually
exclusive. So the final graph for effect E1 to be true is
shown below:
• Let’s move to Effect E2:
E2 states to print message “X”. Message X will
be printed when the First character is neither
A nor B.
Which means Effect E2 will hold true when
either C1 OR C2 is invalid. So the graph for
Effect E2 is shown as (In blue line)
• For Effect E3.
E3 states to print message “Y”. Message Y will
be printed when Second character is incorrect.
Which means Effect E3 will hold true when C3
is invalid. So the graph for Effect E3 is shown
as (In Green line).

More Related Content

Similar to Software Metrics (Testing)

Coursework Assignment Design of a taxi meter .docx
Coursework Assignment   Design of a taxi meter .docxCoursework Assignment   Design of a taxi meter .docx
Coursework Assignment Design of a taxi meter .docx
vanesaburnand
 
OOSE Unit 2 PPT.ppt
OOSE Unit 2 PPT.pptOOSE Unit 2 PPT.ppt
OOSE Unit 2 PPT.ppt
itadmin33
 
COCOMO Modal In Software Engineering By NADEEM AHMED
COCOMO Modal In Software Engineering By NADEEM AHMED COCOMO Modal In Software Engineering By NADEEM AHMED
COCOMO Modal In Software Engineering By NADEEM AHMED
NA000000
 
3. Lect 29_ 30_ 32 Project Planning.pptx
3. Lect 29_ 30_ 32 Project Planning.pptx3. Lect 29_ 30_ 32 Project Planning.pptx
3. Lect 29_ 30_ 32 Project Planning.pptx
AbhishekKumar66407
 
Project Matrix and Measuring S/W
Project Matrix and Measuring S/WProject Matrix and Measuring S/W
Project Matrix and Measuring S/W
Akash Maheshwari
 
Managing software project, software engineering
Managing software project, software engineeringManaging software project, software engineering
Managing software project, software engineering
Rupesh Vaishnav
 
intro to differnt oper.pptx
intro to differnt oper.pptxintro to differnt oper.pptx
intro to differnt oper.pptx
ssuser5ad1571
 
Software estimation techniques
Software estimation techniquesSoftware estimation techniques
Software estimation techniquesTan Tran
 
55 sample chapter
55 sample chapter55 sample chapter
55 sample chapter
Poonam Sharma
 
55 sample chapter
55 sample chapter55 sample chapter
55 sample chapter
Poonam Sharma
 
Software Measurement and Metrics.pptx
Software Measurement and Metrics.pptxSoftware Measurement and Metrics.pptx
Software Measurement and Metrics.pptx
ubaidullah75790
 
A WEB BASED APPLICATION FOR RESUME PARSER USING NATURAL LANGUAGE PROCESSING T...
A WEB BASED APPLICATION FOR RESUME PARSER USING NATURAL LANGUAGE PROCESSING T...A WEB BASED APPLICATION FOR RESUME PARSER USING NATURAL LANGUAGE PROCESSING T...
A WEB BASED APPLICATION FOR RESUME PARSER USING NATURAL LANGUAGE PROCESSING T...
IRJET Journal
 
COCOMO FP COST ESTIMATION TECHNIQUES:NUMERIC
COCOMO FP COST ESTIMATION TECHNIQUES:NUMERICCOCOMO FP COST ESTIMATION TECHNIQUES:NUMERIC
COCOMO FP COST ESTIMATION TECHNIQUES:NUMERIC
Sneha Padhiar
 
COCOMO FP COST ESTIMATION TECHNIQUES:NUMERIC
COCOMO FP COST ESTIMATION TECHNIQUES:NUMERICCOCOMO FP COST ESTIMATION TECHNIQUES:NUMERIC
COCOMO FP COST ESTIMATION TECHNIQUES:NUMERIC
Sneha Padhiar
 
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATIONSOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
Sneha Padhiar
 
Extreme software estimation (xsoft estimation)
Extreme software estimation (xsoft estimation)Extreme software estimation (xsoft estimation)
Extreme software estimation (xsoft estimation)
eSAT Publishing House
 
Procedural vs. object oriented programming
Procedural vs. object oriented programmingProcedural vs. object oriented programming
Procedural vs. object oriented programming
Haris Bin Zahid
 
C programming for Computing Techniques
C programming for Computing TechniquesC programming for Computing Techniques
C programming for Computing Techniques
Appili Vamsi Krishna
 
Decomposition technique In Software Engineering
Decomposition technique In Software Engineering Decomposition technique In Software Engineering
Decomposition technique In Software Engineering
Bilal Hassan
 
CMSC 335 FINAL PROJECT
CMSC 335 FINAL PROJECTCMSC 335 FINAL PROJECT
CMSC 335 FINAL PROJECT
HamesKellor
 

Similar to Software Metrics (Testing) (20)

Coursework Assignment Design of a taxi meter .docx
Coursework Assignment   Design of a taxi meter .docxCoursework Assignment   Design of a taxi meter .docx
Coursework Assignment Design of a taxi meter .docx
 
OOSE Unit 2 PPT.ppt
OOSE Unit 2 PPT.pptOOSE Unit 2 PPT.ppt
OOSE Unit 2 PPT.ppt
 
COCOMO Modal In Software Engineering By NADEEM AHMED
COCOMO Modal In Software Engineering By NADEEM AHMED COCOMO Modal In Software Engineering By NADEEM AHMED
COCOMO Modal In Software Engineering By NADEEM AHMED
 
3. Lect 29_ 30_ 32 Project Planning.pptx
3. Lect 29_ 30_ 32 Project Planning.pptx3. Lect 29_ 30_ 32 Project Planning.pptx
3. Lect 29_ 30_ 32 Project Planning.pptx
 
Project Matrix and Measuring S/W
Project Matrix and Measuring S/WProject Matrix and Measuring S/W
Project Matrix and Measuring S/W
 
Managing software project, software engineering
Managing software project, software engineeringManaging software project, software engineering
Managing software project, software engineering
 
intro to differnt oper.pptx
intro to differnt oper.pptxintro to differnt oper.pptx
intro to differnt oper.pptx
 
Software estimation techniques
Software estimation techniquesSoftware estimation techniques
Software estimation techniques
 
55 sample chapter
55 sample chapter55 sample chapter
55 sample chapter
 
55 sample chapter
55 sample chapter55 sample chapter
55 sample chapter
 
Software Measurement and Metrics.pptx
Software Measurement and Metrics.pptxSoftware Measurement and Metrics.pptx
Software Measurement and Metrics.pptx
 
A WEB BASED APPLICATION FOR RESUME PARSER USING NATURAL LANGUAGE PROCESSING T...
A WEB BASED APPLICATION FOR RESUME PARSER USING NATURAL LANGUAGE PROCESSING T...A WEB BASED APPLICATION FOR RESUME PARSER USING NATURAL LANGUAGE PROCESSING T...
A WEB BASED APPLICATION FOR RESUME PARSER USING NATURAL LANGUAGE PROCESSING T...
 
COCOMO FP COST ESTIMATION TECHNIQUES:NUMERIC
COCOMO FP COST ESTIMATION TECHNIQUES:NUMERICCOCOMO FP COST ESTIMATION TECHNIQUES:NUMERIC
COCOMO FP COST ESTIMATION TECHNIQUES:NUMERIC
 
COCOMO FP COST ESTIMATION TECHNIQUES:NUMERIC
COCOMO FP COST ESTIMATION TECHNIQUES:NUMERICCOCOMO FP COST ESTIMATION TECHNIQUES:NUMERIC
COCOMO FP COST ESTIMATION TECHNIQUES:NUMERIC
 
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATIONSOFTWARE ESTIMATION COCOMO AND FP CALCULATION
SOFTWARE ESTIMATION COCOMO AND FP CALCULATION
 
Extreme software estimation (xsoft estimation)
Extreme software estimation (xsoft estimation)Extreme software estimation (xsoft estimation)
Extreme software estimation (xsoft estimation)
 
Procedural vs. object oriented programming
Procedural vs. object oriented programmingProcedural vs. object oriented programming
Procedural vs. object oriented programming
 
C programming for Computing Techniques
C programming for Computing TechniquesC programming for Computing Techniques
C programming for Computing Techniques
 
Decomposition technique In Software Engineering
Decomposition technique In Software Engineering Decomposition technique In Software Engineering
Decomposition technique In Software Engineering
 
CMSC 335 FINAL PROJECT
CMSC 335 FINAL PROJECTCMSC 335 FINAL PROJECT
CMSC 335 FINAL PROJECT
 

More from TharuniDiddekunta

String class
String classString class
String class
TharuniDiddekunta
 
Exception handling basic
Exception handling basicException handling basic
Exception handling basic
TharuniDiddekunta
 
Creating your own exception
Creating your own exceptionCreating your own exception
Creating your own exception
TharuniDiddekunta
 
Built in exceptions
Built in exceptions Built in exceptions
Built in exceptions
TharuniDiddekunta
 
Packages access protection, importing packages
Packages   access protection, importing packagesPackages   access protection, importing packages
Packages access protection, importing packages
TharuniDiddekunta
 
Interfaces in java
Interfaces in javaInterfaces in java
Interfaces in java
TharuniDiddekunta
 
Inheritance used in java
Inheritance used in javaInheritance used in java
Inheritance used in java
TharuniDiddekunta
 
Operators, control statements represented in java
Operators, control statements  represented in javaOperators, control statements  represented in java
Operators, control statements represented in java
TharuniDiddekunta
 
Classes, objects, methods, constructors, this keyword in java
Classes, objects, methods, constructors, this keyword  in javaClasses, objects, methods, constructors, this keyword  in java
Classes, objects, methods, constructors, this keyword in java
TharuniDiddekunta
 
Arrays in java
Arrays in javaArrays in java
Arrays in java
TharuniDiddekunta
 
unit 3 Design 1
unit 3 Design 1unit 3 Design 1
unit 3 Design 1
TharuniDiddekunta
 
Unit 4 testing
Unit 4 testingUnit 4 testing
Unit 4 testing
TharuniDiddekunta
 
risk managment and quality
risk managment and qualityrisk managment and quality
risk managment and quality
TharuniDiddekunta
 
Design
DesignDesign
Network layer
Network layerNetwork layer
Network layer
TharuniDiddekunta
 
Transport layer and Application layer
Transport layer and Application layerTransport layer and Application layer
Transport layer and Application layer
TharuniDiddekunta
 
Congection control and Internet working
Congection control and Internet workingCongection control and Internet working
Congection control and Internet working
TharuniDiddekunta
 

More from TharuniDiddekunta (17)

String class
String classString class
String class
 
Exception handling basic
Exception handling basicException handling basic
Exception handling basic
 
Creating your own exception
Creating your own exceptionCreating your own exception
Creating your own exception
 
Built in exceptions
Built in exceptions Built in exceptions
Built in exceptions
 
Packages access protection, importing packages
Packages   access protection, importing packagesPackages   access protection, importing packages
Packages access protection, importing packages
 
Interfaces in java
Interfaces in javaInterfaces in java
Interfaces in java
 
Inheritance used in java
Inheritance used in javaInheritance used in java
Inheritance used in java
 
Operators, control statements represented in java
Operators, control statements  represented in javaOperators, control statements  represented in java
Operators, control statements represented in java
 
Classes, objects, methods, constructors, this keyword in java
Classes, objects, methods, constructors, this keyword  in javaClasses, objects, methods, constructors, this keyword  in java
Classes, objects, methods, constructors, this keyword in java
 
Arrays in java
Arrays in javaArrays in java
Arrays in java
 
unit 3 Design 1
unit 3 Design 1unit 3 Design 1
unit 3 Design 1
 
Unit 4 testing
Unit 4 testingUnit 4 testing
Unit 4 testing
 
risk managment and quality
risk managment and qualityrisk managment and quality
risk managment and quality
 
Design
DesignDesign
Design
 
Network layer
Network layerNetwork layer
Network layer
 
Transport layer and Application layer
Transport layer and Application layerTransport layer and Application layer
Transport layer and Application layer
 
Congection control and Internet working
Congection control and Internet workingCongection control and Internet working
Congection control and Internet working
 

Recently uploaded

Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup   New Member Orientation and Q&A (May 2024).pdfWelcome to TechSoup   New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
TechSoup
 
The French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free downloadThe French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free download
Vivekanand Anglo Vedic Academy
 
The Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdfThe Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdf
kaushalkr1407
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
SACHIN R KONDAGURI
 
How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17
Celine George
 
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXXPhrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
MIRIAMSALINAS13
 
Instructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptxInstructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptx
Jheel Barad
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
Jean Carlos Nunes Paixão
 
The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
heathfieldcps1
 
Acetabularia Information For Class 9 .docx
Acetabularia Information For Class 9  .docxAcetabularia Information For Class 9  .docx
Acetabularia Information For Class 9 .docx
vaibhavrinwa19
 
Guidance_and_Counselling.pdf B.Ed. 4th Semester
Guidance_and_Counselling.pdf B.Ed. 4th SemesterGuidance_and_Counselling.pdf B.Ed. 4th Semester
Guidance_and_Counselling.pdf B.Ed. 4th Semester
Atul Kumar Singh
 
Home assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdfHome assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdf
Tamralipta Mahavidyalaya
 
Model Attribute Check Company Auto Property
Model Attribute  Check Company Auto PropertyModel Attribute  Check Company Auto Property
Model Attribute Check Company Auto Property
Celine George
 
Thesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.pptThesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.ppt
EverAndrsGuerraGuerr
 
special B.ed 2nd year old paper_20240531.pdf
special B.ed 2nd year old paper_20240531.pdfspecial B.ed 2nd year old paper_20240531.pdf
special B.ed 2nd year old paper_20240531.pdf
Special education needs
 
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
MysoreMuleSoftMeetup
 
Language Across the Curriculm LAC B.Ed.
Language Across the  Curriculm LAC B.Ed.Language Across the  Curriculm LAC B.Ed.
Language Across the Curriculm LAC B.Ed.
Atul Kumar Singh
 
The geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideasThe geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideas
GeoBlogs
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
Thiyagu K
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
Peter Windle
 

Recently uploaded (20)

Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup   New Member Orientation and Q&A (May 2024).pdfWelcome to TechSoup   New Member Orientation and Q&A (May 2024).pdf
Welcome to TechSoup New Member Orientation and Q&A (May 2024).pdf
 
The French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free downloadThe French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free download
 
The Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdfThe Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdf
 
"Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe..."Protectable subject matters, Protection in biotechnology, Protection of othe...
"Protectable subject matters, Protection in biotechnology, Protection of othe...
 
How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17How to Make a Field invisible in Odoo 17
How to Make a Field invisible in Odoo 17
 
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXXPhrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
 
Instructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptxInstructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptx
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
 
The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
 
Acetabularia Information For Class 9 .docx
Acetabularia Information For Class 9  .docxAcetabularia Information For Class 9  .docx
Acetabularia Information For Class 9 .docx
 
Guidance_and_Counselling.pdf B.Ed. 4th Semester
Guidance_and_Counselling.pdf B.Ed. 4th SemesterGuidance_and_Counselling.pdf B.Ed. 4th Semester
Guidance_and_Counselling.pdf B.Ed. 4th Semester
 
Home assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdfHome assignment II on Spectroscopy 2024 Answers.pdf
Home assignment II on Spectroscopy 2024 Answers.pdf
 
Model Attribute Check Company Auto Property
Model Attribute  Check Company Auto PropertyModel Attribute  Check Company Auto Property
Model Attribute Check Company Auto Property
 
Thesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.pptThesis Statement for students diagnonsed withADHD.ppt
Thesis Statement for students diagnonsed withADHD.ppt
 
special B.ed 2nd year old paper_20240531.pdf
special B.ed 2nd year old paper_20240531.pdfspecial B.ed 2nd year old paper_20240531.pdf
special B.ed 2nd year old paper_20240531.pdf
 
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
Mule 4.6 & Java 17 Upgrade | MuleSoft Mysore Meetup #46
 
Language Across the Curriculm LAC B.Ed.
Language Across the  Curriculm LAC B.Ed.Language Across the  Curriculm LAC B.Ed.
Language Across the Curriculm LAC B.Ed.
 
The geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideasThe geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideas
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
 

Software Metrics (Testing)

  • 2. • Software metrics can be classified into three categories − • Product metrics − Describes the characteristics of the product such as size, complexity, design features, performance, and quality level. • Process metrics − These characteristics can be used to improve the development and maintenance activities of the software. • Project metrics − This metrics describe the project characteristics and execution. Examples include the number of software developers, the staffing pattern over the life cycle of the software, cost, schedule, and productivity.
  • 3. Metrics for the Process & Project domains: • Project Metrics enable a s/w project manager to: • 1.Assess the status of an on going project • 2.Find the potential risks • 3.Uncover the problem areas before they go critical • 4.adjust work flow and work tasks • 5.Evaluate the ability of project teams to control quality of work products.
  • 4. Software Measurement Software is measured for many reasons: • 1. To indicate the quality of the product. • 2.To assess the benefits derived from new s/w engineering methods and tools. • 3.To assess the productivity of the people who produce the product. • 4.To form a baseline for estimation.
  • 5. Measurements in the physical world can be estimated in two ways: • 1.Direct Measurement(Ex: Length of Bolt) • 2.Indirect Measurement(Ex: Quality of the Bolt produced) • Direct Measures of the s/w engineering process include cost of effort, DM of the product includes lines of code, Execution Speed, Memory Size and defects reported etc..
  • 6. • Indirect Measures of the product include functionality, quality, complexity, efficiency, reliability, maintainability etc… • Software Metrics can be categorized into : • 1.Size Oriented Metrics • 2.Functioned Oriented Metrics • 3.Human Oriented Metrics
  • 7.
  • 8.
  • 9.
  • 10. Size Oriented Metrics • Productivity=KLOC/Person-months • Quality=Defects/KLOC • Cost=$(000)?KLOC • Documentation=Pages Per documentation/KLOC
  • 11.
  • 12.
  • 13.
  • 14. Function Oriented Metrics • Productivity=FP/Person-month • Quality=Defects/FP • Cost=$(000)/FP • Document=Ppdoc/FP
  • 15.
  • 16.
  • 17.
  • 18.
  • 20. • Now let’s try to implement this technique with some example. • 1. Draw a cause and effect graph based on a requirement/situation 2. Cause and Effect graph is given, draw a decision table based on it to draw the test case. • Let’s see both of them one by one.
  • 21. • The “Print message” is software that read two characters and, depending on their values, messages must be printed. • The first character must be an “A” or a “B”. • The second character must be a digit. • If the first character is an “A” or “B” and the second character is a digit, the file must be updated. • If the first character is incorrect (not an “A” or “B”), the message X must be printed. • If the second character is incorrect (not a digit), the message Y must be printed.
  • 22. • Solution: • The causes for this situation are: C1 – First character is A C2 – First character is B C3 – the Second character is a digit • The effects (results) for this situation are E1 – Update the file E2 – Print message “X” E3 – Print message “Y”
  • 23. First, draw the causes and effects as shown below:
  • 24. • In this example, let’s start with Effect E1. • Effect E1 is to update the file. The file is updated when – The first character is “A” and the second character is a digit – The first character is “B” and the second character is a digit – The first character can either be “A” or “B” and cannot be both.
  • 25. • Now let’s put these 3 points in symbolic form: • For E1 to be true – following are the causes: – C1 and C3 should be true – C2 and C3 should be true – C1 and C2 cannot be true together. This means C1 and C2 are mutually exclusive.
  • 26. So as per the above diagram, for E1 to be true the condition is (C1 C2) C3
  • 27. •The circle in the middle is just an interpretation of the middle point to make the graph less messy. There is a third condition where C1 and C2 are mutually exclusive. So the final graph for effect E1 to be true is shown below:
  • 28. • Let’s move to Effect E2: E2 states to print message “X”. Message X will be printed when the First character is neither A nor B. Which means Effect E2 will hold true when either C1 OR C2 is invalid. So the graph for Effect E2 is shown as (In blue line)
  • 29. • For Effect E3. E3 states to print message “Y”. Message Y will be printed when Second character is incorrect. Which means Effect E3 will hold true when C3 is invalid. So the graph for Effect E3 is shown as (In Green line).