Software Quality Course 1 Introduction.

Slides:



Advertisements
Similar presentations
CompSci 230 Software Design and Construction Software Quality 2014S2 Black box testing.
Advertisements

OHT 2.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Software Quality assurance (SQA) SWE 333 Dr Khalid Alnafjan
Software Quality Seung Yang CS 525 Software Engineering II Dr. Sheldon X. Liang.
Software Engineering 1. Software development – the grand view 2. Requirements engineering.
Software Engineering Software quality. Software quality characteristics:  External: user is aware of. User cares about.  Internal: programmer is aware.
OHT 2.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 What is software? Software errors, faults and failures Classification.
1 Quality Assurance in Construction and Maintenance (Section 13.4 of Maintenance Text; Chapter 20 of Code Complete) Steve Chenoweth CSSE 375, Rose-Hulman.
OHT 3.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The need for comprehensive software quality requirements Classification.
Copyright by Scott GrissomCh 1 Software Development Slide 1 Software Development The process of developing large software projects Different Approaches.
Software Process and Product Metrics
Software Quality Assurance For Software Engineering && Architecture and Design.
Planning and Tracking Software Quality Yordan Dimitrov Telerik Corporation
SOFTWARE QUALITY ASSURANCE SOFTWARE QUALITY ASSURANCE  DEFINITIONS OF SQA  SOFTWARE STANDARDS  Process Quality Assurance  Product Quality Assurance.
Classify Triangles Standard 4C.
OHT 3.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Software Quality assurance (SQA) SWE 333 Dr Khalid Alnafjan
Software Quality Chapter Software Quality  How can you tell if software has high quality?  How can we measure the quality of software?  How.
Managing Software Quality
 The software systems must do what they are supposed to do. “do the right things”  They must perform these specific tasks correctly or satisfactorily.
Quality Assurance ITEC Rick Price. Expectations This course is not purely a lecture course – Classroom participation is a large portion – Everyone.
Planning and Tracking Software Quality.  What Is Software Quality?  Causes of Software Defects  What is Quality Assurance?  Improving the Software.
Software Software is omnipresent in the lives of billions of human beings. Software is an important component of the emerging knowledge based service.
1 Software quality - Definition IEEE 1. The degree to which a system, component, or process meets specified requirements. 2. The degree to which a system,
Software Quality Assurance SE Software Quality Assurance What is “quality”?
Software Engineering Quality What is Quality? Quality software is software that satisfies a user’s requirements, whether that is explicit or implicit.
Planning and Tracking Software Quality Yordan Dimitrov Telerik Corporation
Jump to first page (C) 1998, Arun Lakhotia 1 Quality Assurance: Reviews and Walkthroughs Arun Lakhotia University of Southwestern Louisiana Po Box
OHT 1.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The uniqueness of software quality assurance The environments for which.
Code Complete Steve McConnell. 20. The Software-Quality Landscape.
1 Software quality - Definition IEEE 1. The degree to which a system, component, or process meets specified requirements. 2. The degree to which a system,
Sylnovie Merchant, Ph.D. MIS 161 Spring 2005 MIS 161 Systems Development Life Cycle II Lecture 5: Testing User Documentation.
CS551 - Lecture 5 1 CS551 Lecture 5: Quality Attributes Yugi Lee FH #555 (816)
Quality Models in Software Engineering Literature: An Analytical and Comparative Study Rafa E. Al-Qutaish, PhD Al Ain University of Science and Technology.
Software testing techniques Spring 2009 Csci565: Theory and Practice of Software Testing1.
Prepared by: Hussein Alhashimi.  This course introduces fundamental concepts related to Quality Assurance and Measurements and Metrics in the software.
SEN 460 Software Quality Assurance
OOAD UNIT V B RAVINDER REDDY PROFESSOR DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING.
SE513 Software Quality Assurance Lecture02: Software Quality Factors SE513 Software Quality Assurance Lecture02: Software Quality Factors Galin, SQA from.
Classifying Triangles. Two Ways to Classify Triangles  By Their Sides  By Their Angles.
Lesson 8.3 Concept: How to classify triangles by their sides and angles. An equilateral triangle has three sides of the same length. An isosceles triangle.
Geometry Triangles What is a Triangle? A three sided convex polygon. A three sided convex polygon. Its three segments are called sides. Its three segments.
TOTAL QUALITY MANAGEMENT
16CS202 & Software Engineering
A Hierarchical Model for Object-Oriented Design Quality Assessment
Software Quality Control and Quality Assurance: Introduction
Rekayasa Perangkat Lunak Part-10
Rekayasa Perangkat Lunak
Software Quality Assurance
Software Verification and Validation
SEVERITY & PRIORITY RELATIONSHIP
Source & Courtesy: Doc. S. Dapkūnas
Triangles.
Software Quality & Testing
McCall’s Quality Factors
Software Quality Assurance
Software engineering.
مقدمه اي بر مهندسي نيازمنديها
Rekayasa Perangkat Lunak
Software Quality Engineering CS- 449
Introduction to Software Testing
Thursday’s Lecture Chemistry Building Musspratt Lecture Theatre,
Software Quality Assurance
CS 1120: Computer Science II Software Life Cycle
20. The Software-Quality Landscape
CS 1120: Computer Science II Software Life Cycle
Chapter 10: Compilers and Language Translation
Classifying Triangles
Testing, Inspection, Walkthrough
CHAPTER 6 Testing and Debugging.
Presentation transcript:

Software Quality Course 1 Introduction

Course info Course + lab TO DO: Evaluation: 2 labs project: SQ plan for your/other project Evaluation: 50% written exam + 50% semester activity http://www.cs.ubbcluj.ro/~motogna/SoftwareQuality.html

References D. Galin – Software quality assurance – From theory to implementation, Addison Wesley, 2003 S.H. Kan –Metrics and models in Software Quality Engineering. Addison Wesley, 2nd ed., 2003 R.A. Khan, K. Mustafe, S.I. Ahson – Software Quality: Concepts and Practice, Alpha Science, 2006 G. Schulmeyer - Handbook of Software Quality Assurance , Artech House, 2007 D. Spinellis. Code Quality: The Open Source Perspective. Addison Wesley, 2006 S. McConnell – Code Complete, 2nd Edition, Microsoft Press, 2004

Test Given the 3 integers, representing the lengths of a triangle sides determine if the triangle is: Scalene Isosceles Equilateral OR “Is NOT a triangle” Write test cases

Evaluate your test G. Myers – The Art of Software Testing 1. Do you have a test case that represents a valid scalene triangle? (No guarantee for 1, 2, 3 and 2, 5, 10) 2. Do you have a test case that represents a valid equilateral triangle? 3. Do you have a test case that represents a valid isosceles triangle? ((No guarantee for 2, 2, 4) 4. Do you have at least three test cases that represent valid isosceles triangles such that you have tried all three permutations of two equal sides? (ex. 3, 3, 4; 3, 4, 3; and 4, 3, 3) 5. Do you have a test case in which one side has a zero value? 6. Do you have a test case in which one side has a negative value? 7. Do you have a test case with three integers greater than zero such that the sum of two of the numbers is equal to the third?

Highly professional  7.8 / 14 8. Do you have at least three test cases in category 7 such that you have tried all three permutations where the length of one side is equal to the sum of the lengths of the other two sides? (ex. 1, 2, 3; 1, 3, 2; and 3, 1, 2) 9. Do you have a test case with three integers greater than zero such that the sum of two of the numbers is less than the third? (ex. 1, 2, 4 or 12,15,30) 10. Do you have at least three test cases in category 9 such that you have tried all three permutations? (ex. 1, 2, 4; 1, 4, 2; and 4, 1, 2) 11. Do you have a test case in which all sides are zero (0, 0, 0)? 12. Do you have at least one test case specifying noninteger values? (ex. 2.5, 3.5, 5.5) 13. Do you have at least one test case specifying the wrong number of values (two rather than three integers, for example)? 14. For each test case did you specify the expected output from the program in addition to the input values? Highly professional  7.8 / 14 Compute your score

What is Software Quality? Degree of satisfying specified requirements Degree of satisfying user needs & expectations programmer User/ costumer

Characteristics of SQ Internal External developer user Correctness – system is free of faults in specif, design, implem. Usability – easy to use Efficiency – minimal use of resources Reliability – perform required tasks in stated conditions Integrity – prevent unauthorized or improper access Adaptability – easy to be used in other environments Accuracy – how well does the job Robustness – continue to function in invalid conditions Maintainability – easy to modify / extend Flexibility – easy to modify for other purposes Portability – easy to use on different platforms, environments Reusability – easy to be reused in other systems Readability – easy to read and understand Testability – easy to verify if it meets the requirements Understandability – coherence of a system Accuracy differs from correctness – how well a system does the job rather than being built correctly Understandability – more general level than readability

External Internal

Dependency between external characteristics (S Dependency between external characteristics (S. McConnell – Code Complete) Correct. Usab. Effic. Rel. Integ. Adapt. Acc. Robust.   Usability Efficiency Reliability Integrity Adaptability Accuracy Robustness

Why study software quality? Why apply a software quality assurance plan? Best answer – manager ? Have you perform SQA?

Facts- statistics Fact: improving quality reduces development costs Stats: Biggest (all resources) activity in software development is debugging and correcting code

Stats NASA IBM 50 projects/ 400 work-years/ 3 mil lines of code “ increased quality assurance decreased error rate, didn’t increase overall development costs” IBM “less defects – shortest development projects” “removing errors – most expensive and time-consuming activity”

Stats Experiment (1985) 166 programmers – same specification => programs  220 lines + 5 hours “less errors – average time”