Code Complete Steve McConnell. 20. The Software-Quality Landscape.

Slides:



Advertisements
Similar presentations
Software Testing. Quality is Hard to Pin Down Concise, clear definition is elusive Not easily quantifiable Many things to many people You'll know it when.
Advertisements

Ch.21 Software Its Nature and Qualities. Ch.22 Outline Software engineering (SE) is an intellectual activity and thus human-intensive Software is built.
Qusay H. Mahmoud CIS* CIS* Service-Oriented Computing Qusay H. Mahmoud, Ph.D.
System Integration Verification and Validation
Software Quality Seung Yang CS 525 Software Engineering II Dr. Sheldon X. Liang.
What is Software Design?. Systems Development Life- Cycle Planning Analysis Design Implementation Design.
Information Technology Control Day IV Afternoon Sessions.
Software Construction
Software Engineering Software quality. Software quality characteristics:  External: user is aware of. User cares about.  Internal: programmer is aware.
Lecture Outline 10 INFORMATION SYSTEMS SECURITY. Two types of auditors External auditor: The primary mission of the external auditors is to provide an.
Auditing Computer Systems
Dependability ITV Model-based Analysis and Design of Embedded Software Techniques and methods for Critical Software Anders P. Ravn Aalborg University August.
API Design CPSC 315 – Programming Studio Fall 2008 Follows Kernighan and Pike, The Practice of Programming and Joshua Bloch’s Library-Centric Software.
Chapter 9 Testing the System, part 2. Testing  Unit testing White (glass) box Code walkthroughs and inspections  Integration testing Bottom-up Top-down.
A GOAL-BASED FRAMEWORK FOR SOFTWARE MEASUREMENT
Software project management (intro) Quality assurance.
Software Testing. “Software and Cathedrals are much the same: First we build them, then we pray!!!” -Sam Redwine, Jr.
OHT 3.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The need for comprehensive software quality requirements Classification.
1 Software Testing and Quality Assurance Lecture 1 Software Verification & Validation.
Software Process and Product Metrics
Planning and Tracking Software Quality Yordan Dimitrov Telerik Corporation
Chapter 11: Testing The dynamic verification of the behavior of a program on a finite set of test cases, suitable selected from the usually infinite execution.
Types and Techniques of Software Testing
Issues on Software Testing for Safety-Critical Real-Time Automation Systems Shahdat Hossain Troy Mockenhaupt.
Functional Testing Test cases derived from requirements specification document – Black box testing – Independent testers – Test both valid and invalid.
Software Project Management Fifth Edition
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.
Planning and Tracking Software Quality.  What Is Software Quality?  Causes of Software Defects  What is Quality Assurance?  Improving the Software.
SOFTWARE ENGINEERING1 Introduction. Software Software (IEEE): collection of programs, procedures, rules, and associated documentation and data SOFTWARE.
Software testing basic. Main contents  Why is testing necessary?  What is testing?  Test Design techniques  Test level  Test type  How to write.
Software Software is omnipresent in the lives of billions of human beings. Software is an important component of the emerging knowledge based service.
ISO17799 Maturity. Confidentiality Confidentiality relates to the protection of sensitive data from unauthorized use and distribution. Examples include:
Planning and Tracking Software Quality Yordan Dimitrov Telerik Corporation Team Leader, Team Pulse, Team Leader, Team Pulse, Telerik Corporation,
Testing -- Part II. Testing The role of testing is to: w Locate errors that can then be fixed to produce a more reliable product w Design tests that systematically.
Software Engineering Quality What is Quality? Quality software is software that satisfies a user’s requirements, whether that is explicit or implicit.
Software Metrics and Reliability. Definitions According to ANSI, “ Software Reliability is defined as the probability of failure – free software operation.
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
Sylnovie Merchant, Ph.D. MIS 161 Spring 2005 MIS 161 Systems Development Life Cycle II Lecture 5: Testing User Documentation.
Software quality factors
CS551 - Lecture 5 1 CS551 Lecture 5: Quality Attributes Yugi Lee FH #555 (816)
LESSON 3. Properties of Well-Engineered Software The attributes or properties of a software product are characteristics displayed by the product once.
Chapter 13: Software Quality Project Management Afnan Albahli.
Fault Tolerance Benchmarking. 2 Owerview What is Benchmarking? What is Dependability? What is Dependability Benchmarking? What is the relation between.
MADALINA CROITORU Software Engineering week 3 Madalina Croitoru IUT Montpellier.
Fall 2015CISC/CMPE320 - Prof. McLeod1 CISC/CMPE320 Lecture Videos will no longer be posted. Assignment 3 is due Sunday, the 8 th, 7pm. Today: –System Design,
Software Engineering Issues Software Engineering Concepts System Specifications Procedural Design Object-Oriented Design System Testing.
CS352 – Software Engineering II Lecture 17: SW Quality Assurance Landscape Slides by Mohammad El-Ramly, PhD.
Hussein Alhashimi. “If you can’t measure it, you can’t manage it” Tom DeMarco,
Chapter 10 Software quality. This chapter discusses n Some important properties we want our system to have, specifically correctness and maintainability.
 Software reliability is the probability that software will work properly in a specified environment and for a given amount of time. Using the following.
Non Functional Testing. Contents Introduction – Security Testing Why Security Test ? Security Testing Basic Concepts Security requirements - Top 5 Non-Functional.
ISQB Software Testing Section Meeting 10 Dec 2012.
Classifications of Software Requirements
Rekayasa Perangkat Lunak Part-10
Rekayasa Perangkat Lunak
Programming III Introduction.
Software Quality Assurance Software Quality Factor
McCall’s Quality Factors
Model Governance Industry Evolution Beyond Model Accuracy
Software engineering.
مقدمه اي بر مهندسي نيازمنديها
Rekayasa Perangkat Lunak
Charakteristiky kvality
20. The Software-Quality Landscape
The Software Development Process
Software Quality Course 1 Introduction.
Presentation transcript:

Code Complete Steve McConnell

20. The Software-Quality Landscape

20.1 Characteristics of Software Quality Software has both external and internal quality characteristics. External characteristics are characteristics that a user of the software product is aware of, including ● Correctness. The degree to which a system is free from faults in its specification, design, and implementation. ● Usability. The ease with which users can learn and use a system. ● Efficiency. Minimal use of system resources, including memory and execution time. ● Reliability. The ability of a system to perform its required functions under stated conditions whenever required—having a long mean time between failures. ● Integrity. The degree to which a system prevents unauthorized or improper access to its programs and its data. The idea of integrity includes restricting unauthorized user accesses as well as ensuring that data is accessed properly—that is, that tables with parallel data are modified in parallel, that date fields contain only valid dates, and so on. ● Adaptability. The extent to which a system can be used, without modification, in applications or environments other than those for which it was specifically designed.

20.1 Characteristics of Software Quality ● Accuracy. The degree to which a system, as built, is free from error, especially with respect to quantitative outputs. Accuracy differs from correctness; it is a determination of how well a system does the job it’s built for rather than whether it was built correctly. ● Robustness. The degree to which a system continues to function in the presence of invalid inputs or stressful environmental conditions. External characteristics of quality are the only kind of software characteristics that users care about. Users care about whether the software is easy to use, not about whether it’s easy for you to modify. They care about whether the software works correctly, not about whether the code is readable or well structured.