en.unionpedia.org

Software quality, the Glossary

Index Software quality

In the context of software engineering, software quality refers to two related but distinct notions.[1]

Table of Contents

  1. 101 relations: Accessibility, American Society for Quality, Android (operating system), Apache Struts, Availability, Barbara Kitchenham, Business software, Business value, Capers Jones, CERT Coordination Center, CISQ, Code smell, Coding best practices, Coding conventions, Cohesion (computer science), Common Weakness Enumeration, Computer security, Configuration management, Cost accounting, Coupling (computer programming), Customer relationship management, Cyclomatic complexity, Data and information visualization, Database schema, Debugging, Defect criticality, Dependability, DevOps, DO-178C, Duplicate code, Dynamic testing, Embedded software, Enterprise resource planning, Federal Aviation Administration, Fitness function, Function point, Functional requirement, Gerald Weinberg, GQM, IEC 62304, IFPUG, International Requirements Engineering Board, ISO 26262, ISO/IEC 15504, ISO/IEC 9126, List of software bugs, Marvin Zelkowitz, Microsoft Security Development Lifecycle, Muda (Japanese term), Ninety–ninety rule, ... Expand index (51 more) »

Accessibility

Accessibility is the design of products, devices, services, vehicles, or environments so as to be usable by people with disabilities.

See Software quality and Accessibility

American Society for Quality

The American Society for Quality (ASQ), formerly the American Society for Quality Control (ASQC), is a society of quality professionals, with more than 40,000 members.

See Software quality and American Society for Quality

Android (operating system)

Android is a mobile operating system based on a modified version of the Linux kernel and other open-source software, designed primarily for touchscreen mobile devices such as smartphones and tablets.

See Software quality and Android (operating system)

Apache Struts

Apache Struts 2 is an open-source web application framework for developing Java EE web applications.

See Software quality and Apache Struts

Availability

In reliability engineering, the term availability has the following meanings.

See Software quality and Availability

Barbara Kitchenham

Barbara Ann Kitchenham is a retired British computer scientist and software engineer known for her research on systematic reviews in software engineering and on evidence-based practice in software engineering.

See Software quality and Barbara Kitchenham

Business software

Business software (or a business application) is any software or set of computer programs used by business users to perform various business functions.

See Software quality and Business software

Business value

In management, business value is an informal term that includes all forms of value that determine the health and well-being of the firm in the long run.

See Software quality and Business value

Capers Jones

Capers Jones is an American specialist in software engineering methodologies, and is often associated with the function point model of cost estimation.

See Software quality and Capers Jones

CERT Coordination Center

The CERT Coordination Center (CERT/CC) is the coordination center of the computer emergency response team (CERT) for the Software Engineering Institute (SEI), a non-profit United States federally funded research and development center.

See Software quality and CERT Coordination Center

CISQ

The Consortium for IT Software Quality (CISQ) is an IT industry group comprising IT executives from the Global 2000, systems integrators, outsourced service providers, and software technology vendors committed to making improvements in the quality of IT application software.

See Software quality and CISQ

Code smell

In computer programming, a code smell is any characteristic in the source code of a program that possibly indicates a deeper problem.

See Software quality and Code smell

Coding best practices

Coding best practices or programming best practices are a set of informal, sometimes personal, rules (best practices) that many software developers, in computer programming follow to improve software quality.

See Software quality and Coding best practices

Coding conventions

Coding conventions are a set of guidelines for a specific programming language that recommend programming style, practices, and methods for each aspect of a program written in that language. Software quality and Coding conventions are source code.

See Software quality and Coding conventions

Cohesion (computer science)

In computer programming, cohesion refers to the degree to which the elements inside a module belong together.

See Software quality and Cohesion (computer science)

Common Weakness Enumeration

The Common Weakness Enumeration (CWE) is a category system for hardware and software weaknesses and vulnerabilities.

See Software quality and Common Weakness Enumeration

Computer security

Computer security (also cybersecurity, digital security, or information technology (IT) security) is the protection of computer systems and networks from threats that may result in unauthorized information disclosure, theft of (or damage to) hardware, software, or data, as well as from the disruption or misdirection of the services they provide.

See Software quality and Computer security

Configuration management

Configuration management (CM) is a management process for establishing and maintaining consistency of a product's performance, functional, and physical attributes with its requirements, design, and operational information throughout its life.

See Software quality and Configuration management

Cost accounting

Cost accounting is defined by the Institute of Management Accountants as "a systematic set of procedures for recording and reporting measurements of the cost of manufacturing goods and performing services in the aggregate and in detail.

See Software quality and Cost accounting

Coupling (computer programming)

In software engineering, coupling is the degree of interdependence between software modules; a measure of how closely connected two routines or modules are; the strength of the relationships between modules.

See Software quality and Coupling (computer programming)

Customer relationship management

Customer relationship management (CRM) is a process in which a business or other organization administers its interactions with customers, typically using data analysis to study large amounts of information.

See Software quality and Customer relationship management

Cyclomatic complexity

Cyclomatic complexity is a software metric used to indicate the complexity of a program.

See Software quality and Cyclomatic complexity

Data and information visualization

Data and information visualization (data viz/vis or info viz/vis) is the practice of designing and creating easy-to-communicate and easy-to-understand graphic or visual representations of a large amount of complex quantitative and qualitative data and information with the help of static, dynamic or interactive visual items.

See Software quality and Data and information visualization

Database schema

The database schema is the structure of a database described in a formal language supported typically by a relational database management system (RDBMS).

See Software quality and Database schema

Debugging

In engineering, debugging is the process of finding the root cause of and workarounds and possible fixes for bugs.

See Software quality and Debugging

Defect criticality

In the context of software quality, defect criticality is a measure of the impact of a software defect.

See Software quality and Defect criticality

Dependability

In systems engineering, dependability is a measure of a system's availability, reliability, maintainability, and in some cases, other characteristics such as durability, safety and security.

See Software quality and Dependability

DevOps

DevOps is a methodology in the software development and IT industry.

See Software quality and DevOps

DO-178C

DO-178C, Software Considerations in Airborne Systems and Equipment Certification is the primary document by which the certification authorities such as FAA, EASA and Transport Canada approve all commercial software-based aerospace systems.

See Software quality and DO-178C

Duplicate code

In computer programming, duplicate code is a sequence of source code that occurs more than once, either within a program or across different programs owned or maintained by the same entity. Software quality and duplicate code are source code.

See Software quality and Duplicate code

Dynamic testing

In software development, dynamic testing (or dynamic analysis) is examining the runtime response from a software system to particular input (test case). Software quality and dynamic testing are software testing.

See Software quality and Dynamic testing

Embedded software

Embedded software is computer software, written to control machines or devices that are not typically thought of as computers, commonly known as embedded systems.

See Software quality and Embedded software

Enterprise resource planning

Enterprise resource planning (ERP) is the integrated management of main business processes, often in real time and mediated by software and technology.

See Software quality and Enterprise resource planning

Federal Aviation Administration

The Federal Aviation Administration (FAA) is a U.S. federal government agency within the U.S. Department of Transportation which regulates civil aviation in the United States and surrounding international waters.

See Software quality and Federal Aviation Administration

Fitness function

A fitness function is a particular type of objective function that is used to summarise, as a single figure of merit, how close a given design solution is to achieving the set aims.

See Software quality and Fitness function

Function point

The function point is a "unit of measurement" to express the amount of business functionality an information system (as a product) provides to a user.

See Software quality and Function point

Functional requirement

In software engineering and systems engineering, a functional requirement defines a function of a system or its component, where a function is described as a summary (or specification or statement) of behavior between inputs and outputs.

See Software quality and Functional requirement

Gerald Weinberg

Gerald Marvin Weinberg (October 27, 1933 – August 7, 2018) was an American computer scientist, author and teacher of the psychology and anthropology of computer software development.

See Software quality and Gerald Weinberg

GQM

GQM, the initialism for goal, question, metric, is an established goal-oriented approach to software metrics to improve and measure software quality.

See Software quality and GQM

IEC 62304

IEC 62304 – medical device software – software life cycle processes is an international standard published by the International Electrotechnical Commission (IEC).

See Software quality and IEC 62304

IFPUG

The International Function Point Users Group (IFPUG) is a US-based organization with worldwide chapters of Function point analysis metric software users.

See Software quality and IFPUG

International Requirements Engineering Board

The International Requirements Engineering Board (IREB) e.V. was founded in Fürth in Germany in October 2006.

See Software quality and International Requirements Engineering Board

ISO 26262

ISO 26262, titled "Road vehicles – Functional safety", is an international standard for functional safety of electrical and/or electronic systems that are installed in serial production road vehicles (excluding mopeds), defined by the International Organization for Standardization (ISO) in 2011, and revised in 2018.

See Software quality and ISO 26262

ISO/IEC 15504

ISO/IEC 15504 Information technology – Process assessment, also termed Software Process Improvement and Capability dEtermination (SPICE), is a set of technical standards documents for the computer software development process and related business management functions.

See Software quality and ISO/IEC 15504

ISO/IEC 9126

ISO/IEC 9126 Software engineering — Product quality was an international standard for the evaluation of software quality.

See Software quality and ISO/IEC 9126

List of software bugs

Many software bugs are merely annoying or inconvenient, but some can have extremely serious consequences—either financially or as a threat to human well-being. Software quality and List of software bugs are software testing.

See Software quality and List of software bugs

Marvin Zelkowitz

Marvin Victor Zelkowitz (born 7 August 1945) is an American computer scientist and engineer.

See Software quality and Marvin Zelkowitz

Microsoft Security Development Lifecycle

The Microsoft Security Development Lifecycle (SDL) is the approach Microsoft uses to integrate security into DevOps processes (sometimes called a DevSecOps approach).

See Software quality and Microsoft Security Development Lifecycle

Muda (Japanese term)

is a Japanese word meaning "futility", "uselessness", or "wastefulness", and is a key concept in lean process thinking such as in the Toyota Production System (TPS), denoting one of three types of deviation from optimal allocation of resources.

See Software quality and Muda (Japanese term)

Ninety–ninety rule

In computer programming and software engineering, the ninety-ninety rule is a humorous aphorism that states: This adds up to 180%, making a wry allusion to the notoriety of software development projects significantly over-running their schedules (see software development effort estimation).

See Software quality and Ninety–ninety rule

Non-functional requirement

In systems engineering and requirements engineering, a non-functional requirement (NFR) is a requirement that specifies criteria that can be used to judge the operation of a system, rather than specific behaviours.

See Software quality and Non-functional requirement

Object Management Group

The Object Management Group (OMG) is a computer industry standards consortium.

See Software quality and Object Management Group

Patch (computing)

A patch is data that is intended to be used to modify an existing software resource such as a program or a file, often to fix bugs and security vulnerabilities.

See Software quality and Patch (computing)

Problem management

Problem management is the process responsible for managing the lifecycle of all problems that happen or could happen in an IT service.

See Software quality and Problem management

Product (business)

In marketing, a product is an object, or system, or service made available for consumer use as of the consumer demand; it is anything that can be offered to a market to satisfy the desire or need of a customer.

See Software quality and Product (business)

Programming complexity

Programming complexity (or software complexity) is a term that includes software properties that affect internal interactions.

See Software quality and Programming complexity

Programming style

Programming style, also known as coding style, is the manner in which source code is written that results in distinctive characteristics of the code; the resulting code style. Software quality and Programming style are source code.

See Software quality and Programming style

A programming tool or software development tool is a computer program that software developers use to create, debug, maintain, or otherwise support other programs and applications.

See Software quality and Programming tool

Project Management Body of Knowledge

The Project Management Body of Knowledge (PMBOK) is a set of standard terminology and guidelines (a body of knowledge) for project management.

See Software quality and Project Management Body of Knowledge

Project Management Institute

The Project Management Institute (PMI, legally Project Management Institute, Inc.) is a U.S.-based not-for-profit professional organization for project management.

See Software quality and Project Management Institute

Quality (business)

In business, engineering, and manufacturing, quality – or high quality – has a pragmatic interpretation as the non-inferiority or superiority of something (goods or services); it is also defined as being suitable for the intended purpose (fitness for purpose) while satisfying customer expectations.

See Software quality and Quality (business)

Quality assurance

Quality assurance (QA) is the term used in both manufacturing and service industries to describe the systematic efforts taken to assure that the product(s) delivered to customer(s) meet with the contractual and other agreed upon performance, design, reliability, and maintainability expectations of that customer.

See Software quality and Quality assurance

Quality control

Quality control (QC) is a process by which entities review the quality of all factors involved in production.

See Software quality and Quality control

Quality function deployment

Quality function deployment (QFD) is a method developed in Japan beginning in 1966 to help transform the voice of the customer into engineering characteristics for a product. Software quality and Quality function deployment are systems thinking.

See Software quality and Quality function deployment

Release management

Release management is the process of managing, planning, scheduling and controlling a software build through different stages and environments; it includes testing and deploying software releases.

See Software quality and Release management

Requirements management

Requirements management is the process of documenting, analyzing, tracing, prioritizing and agreeing on requirements and then controlling change and communicating to relevant stakeholders.

See Software quality and Requirements management

Reusability

In computer science and software engineering, reusability is the use of existing assets in some form within the software product development process; these assets are products and by-products of the software development life cycle and include code, software components, test suites, designs and documentation. Software quality and reusability are source code.

See Software quality and Reusability

Risk management

Risk management is the identification, evaluation, and prioritization of risks followed by coordinated and economical application of resources to minimize, monitor, and control the probability or impact of unfortunate events or to maximize the realization of opportunities.

See Software quality and Risk management

Scope (project management)

In project management, scope is the defined features and functions of a product, or the scope of work needed to finish a project.

See Software quality and Scope (project management)

Security

Security is protection from, or resilience against, potential harm (or other unwanted coercion).

See Software quality and Security

Security engineering

Security engineering is the process of incorporating security controls into an information system so that the controls become an integral part of the system’s operational capabilities.

See Software quality and Security engineering

Software architecture

Software architecture is the set of structures needed to reason about a software system and the discipline of creating such structures and systems.

See Software quality and Software architecture

Software bug

A software bug is a bug in computer software.

See Software quality and Software bug

Software engineering

Software engineering is an engineering approach to software development.

See Software quality and Software engineering

Software framework

In computer programming, a software framework is an abstraction in which software, providing generic functionality, can be selectively changed by additional user-written code, thus providing application-specific software.

See Software quality and Software framework

Software map

A software map represents static, dynamic, and evolutionary information of software systems and their software development processes by means of 2D or 3D map-oriented information visualization. Software quality and software map are software testing.

See Software quality and Software map

Software metric

In software engineering and development, a software metric is a standard of measure of a degree to which a software system or process possesses some property.

See Software quality and Software metric

Software quality assurance

Software quality assurance (SQA) is a means and practice of monitoring all software engineering processes, methods, and work products to ensure compliance against defined standards.

See Software quality and Software quality assurance

Software quality control

Software quality control is the set of procedures used by organizationsClapp, Judith A, Software Quality Control, Error Analysis, and Testing, 1995 William Andrew In.

See Software quality and Software quality control

Software quality management

Software Quality Management (SQM) is a management process that aims to develop and manage the quality of software in such a way so as to best ensure that the product meets the quality standards expected by the customer while also meeting any necessary regulatory and developer requirements, if any.

See Software quality and Software quality management

Software review

A software review is "a process or meeting during which a software product is examined by a project personnel, managers, users, customers, user representatives, or other interested parties for comment or approval". Software quality and software review are software testing.

See Software quality and Software review

Software sizing

Software sizing or software size estimation is an activity in software engineering that is used to determine or estimate the size of a software application or component in order to be able to implement other software project management activities (such as estimating or tracking).

See Software quality and Software sizing

Software standard

A software standard is a standard, protocol, or other common format of a document, file, or data transfer accepted and used by one or more software developers while working on one or more than one computer programs.

See Software quality and Software standard

Software testability

Software testability is the degree to which a software artifact (i.e. a software system, software module, requirements- or design document) supports testing in a given test context. Software quality and software testability are software testing.

See Software quality and Software testability

Software testing

Software testing is the act of checking whether software satisfies expectations.

See Software quality and Software testing

Source code

In computing, source code, or simply code or source, is a plain text computer program written in a programming language.

See Software quality and Source code

Source lines of code

Source lines of code (SLOC), also known as lines of code (LOC), is a software metric used to measure the size of a computer program by counting the number of lines in the text of the program's source code.

See Software quality and Source lines of code

Springer Nature

Springer Nature or the Springer Nature Group is a German-British academic publishing company created by the May 2015 merger of Springer Science+Business Media and Holtzbrinck Publishing Group's Nature Publishing Group, Palgrave Macmillan, and Macmillan Education.

See Software quality and Springer Nature

Squale

Squale (Software Quality Enhancement) is an open-source platform that helps monitoring software quality for multi-language applications.

See Software quality and Squale

Static program analysis

In computer science, static program analysis (also known as static analysis or static simulation) is the analysis of computer programs performed without executing them, in contrast with dynamic program analysis, which is performed on programs during their execution in the integrated environment.

See Software quality and Static program analysis

Stress testing (software)

Stress testing is a software testing activity that determines the robustness of software by testing beyond the limits of normal operation. Software quality and Stress testing (software) are software testing.

See Software quality and Stress testing (software)

Sudden unintended acceleration

Sudden unintended acceleration (SUA) is the unintended, unexpected, uncontrolled acceleration of a vehicle, often accompanied by an apparent loss of braking effectiveness.

See Software quality and Sudden unintended acceleration

Technical debt

In software development and other information technology fields, technical debt (also known as design debt or code debt) is the implied cost of future reworking because a solution prioritizes expedience over long-term design.

See Software quality and Technical debt

Test automation

In software testing, test automation is the use of software separate from the software being tested to control the execution of tests and the comparison of actual outcomes with predicted outcomes. Software quality and test automation are software testing.

See Software quality and Test automation

Therac-25

The Therac-25 is a computer-controlled radiation therapy machine produced by Atomic Energy of Canada Limited (AECL) in 1982 after the Therac-6 and Therac-20 units (the earlier units had been produced in partnership with italic of France).

See Software quality and Therac-25

Tom DeMarco

Tom DeMarco (born August 20, 1940) is an American software engineer, author, and consultant on software engineering topics.

See Software quality and Tom DeMarco

Total quality management

Total quality management (TQM) is an organization-wide effort to "install and make permanent climate where employees continuously improve their ability to provide on demand products and services that customers will find of particular value." Total emphasizes that departments in addition to production (for example sales and marketing, accounting and finance, engineering and design) are obligated to improve their operations; management emphasizes that executives are obligated to actively manage quality through funding, training, staffing, and goal setting.

See Software quality and Total quality management

Transaction processing

In computer science, transaction processing is information processing that is divided into individual, indivisible operations called transactions.

See Software quality and Transaction processing

Uninitialized variable

In computing, an uninitialized variable is a variable that is declared but is not set to a definite known value before it is used.

See Software quality and Uninitialized variable

Usability

Usability can be described as the capacity of a system to provide a condition for its users to perform the tasks safely, effectively, and efficiently while enjoying the experience.

See Software quality and Usability

W. Edwards Deming

William Edwards Deming (October 14, 1900 – December 20, 1993) was an American business theorist, composer, economist, industrial engineer, management consultant, statistician, and writer.

See Software quality and W. Edwards Deming

References

[1] https://en.wikipedia.org/wiki/Software_quality

Also known as Code quality, SW Quality, Software Quality Model, Software quality factors.

, Non-functional requirement, Object Management Group, Patch (computing), Problem management, Product (business), Programming complexity, Programming style, Programming tool, Project Management Body of Knowledge, Project Management Institute, Quality (business), Quality assurance, Quality control, Quality function deployment, Release management, Requirements management, Reusability, Risk management, Scope (project management), Security, Security engineering, Software architecture, Software bug, Software engineering, Software framework, Software map, Software metric, Software quality assurance, Software quality control, Software quality management, Software review, Software sizing, Software standard, Software testability, Software testing, Source code, Source lines of code, Springer Nature, Squale, Static program analysis, Stress testing (software), Sudden unintended acceleration, Technical debt, Test automation, Therac-25, Tom DeMarco, Total quality management, Transaction processing, Uninitialized variable, Usability, W. Edwards Deming.