Chapter 1 Flashcards
What is unit testing?
testing small code units like a class
What is integration testing?
testing larger units like a set of classes
What is performance testing?
checking system performance under specific loads
What is usability testing?
evaluating the usability of the system’s user interface
What is the difference between Verification and Validation?
Verification: Are we building the product right? That is, according to the specification we received.
Validation: Are we building the right product? That is, the one that meets the customer or market needs.
What are the the five types of maintenance that can be performed on software?
Corrective maintenance aims to address bugs reported by users or other developers.
Preventive maintenance focuses on addressing latent bugs that haven’t yet caused failures observed by users.
Adaptive maintenance aims to adjust a system in response to changes in its environment, including technological changes, new legislative rules, integration requirements with other systems, or customization demands from new customers.
Refactoring involves changes in a program that don’t change its external behavior but improve its design and ease of maintenance
Evolutionary maintenance is performed to add new features to a system or to significantly enhance existing ones.
What is the Waterfall process?
Also known as a plan-driven process, Waterfall proposes a construction sequence where each stage flows sequentially, like a waterfall. These stages are requirement specification, analysis, design, implementation, and testing. After these stages, the system is released for production.
External versus internal quality?
External quality refers to factors that can be evaluated without examining the source code.
Internal quality relates to properties associated with the system’s implementation
What are Casual Systems
Casual systems, or Type C systems, are not under pressure for high-quality performance. They can tolerate minor bugs without jeopardizing their operation.
What are Acute Systems?
Acute systems, or Type A systems, where a single failure can have devastating consequences, including the loss of human lives.
What are Business Systems?
They cover a wide array of enterprise applications (like finance, human resources, logistics, and sales), various web-based systems, software libraries and frameworks, general-purpose applications (such as text editors and spreadsheets), and basic software systems (like compilers and IDEs).