flash drive

0.0(0)
Studied by 0 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/49

encourage image

There's no tags or description

Looks like no tags are added yet.

Last updated 10:36 AM on 12/8/25
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No analytics yet

Send a link to your students to track their progress

50 Terms

1
New cards

What is the primary definition of software quality according to IEEE?

The degree to which a system meets specified requirements and customer needs.

2
New cards

Which of the following is NOT one of the nine causes of software errors?

Poor database performance.

3
New cards

In testing terminology, what is a 'fault'?

The mechanical or algorithmic cause of an error (bug).

4
New cards

What are the three main testing levels discussed in the lectures?

Unit, integration, system.

5
New cards

Which testing approach requires knowledge of the internal code structure?

White-box testing.

6
New cards

What is the main goal of unit testing?

To confirm individual components are correctly coded and functional.

7
New cards

In integration testing, what is a 'stub'?

A temporary replacement for a called module returning fake values.

8
New cards

Which integration testing strategy needs drivers but not stubs?

Bottom-up integration testing.

9
New cards

Which development model treats construction as a strictly sequential phase after design and requirements?

Waterfall.

10
New cards

What is a key characteristic of Test-Driven Development (TDD)?

Write tests first, then minimal code to pass them.

11
New cards

Which methodology uses sprints, daily stand‑ups, and a product backlog?

Scrum.

12
New cards

In the V‑Model, each development phase is paired with:

A corresponding testing/verification phase.

13
New cards

Which of the following is a Lean principle?

Eliminate waste.

14
New cards

What is the main goal of Extreme Programming (XP)?

Improve quality and respond quickly to changing requirements.

15
New cards

Minimizing complexity in construction mainly emphasizes:

Simple, readable code and modular design.

16
New cards

'Constructing for verification' means:

Building software so faults can be easily found by engineers and testers.

17
New cards

Construction standards directly influence:

Communication, coding conventions, platform interfaces, and tools.

18
New cards

Construction planning defines, among other things:

The order components are built and integrated, and integration strategy.

19
New cards

In SCM terminology, what is a 'version'?

An instance of a system functionally distinct from other instances.

20
New cards

What is a baseline?

A formally reviewed product/spec that becomes the basis for further development and changes only via change control.

21
New cards

Configuration management planning defines:

What documents/items are managed, naming schemes, responsibilities, policies, and records.

22
New cards

Change management in SCM is mainly concerned with:

Tracking change requests and ensuring cost‑effective implementation.

23
New cards

Why is Continuous Integration important?

It detects defects early by integrating and building whenever code changes.

24
New cards

A 'broad build' in CI typically includes:

Compile, run tests, inspect code, maybe deploy to a test environment.

25
New cards

Which tool is commonly used as a CI server?

Jenkins.

26
New cards

In Continuous Delivery, the deployment pipeline aims to:

Automate tests and deployment steps to make release nearly a 'one-click' operation.

27
New cards

Proper CI practice suggests developers should integrate their work:

At least daily.

28
New cards

Code tuning focuses on:

Small‑scale changes to improve performance of already correct code.

29
New cards

Moving a conditional from inside a loop to outside it is called:

Unswitching.

30
New cards

'Jamming' (loop fusion) is:

Combining two loops over the same range into one to reduce loop overhead.

31
New cards

Loop unrolling mainly reduces:

The number of loop control operations per element.

32
New cards

Replacing multiplications by repeated additions in a loop is an example of:

Strength reduction.

33
New cards

Refactoring is defined as:

Improving internal structure without changing externally observable behavior.

34
New cards

Which of the following is NOT a good practice when refactoring?

Skipping tests to save time.

35
New cards

'Code smell' refers to:

A surface symptom that suggests a deeper design problem.

36
New cards

A major risk of refactoring is:

Introducing regressions into previously working functionality.

37
New cards

JUnit is:

A unit testing framework for Java.

38
New cards

Which annotation marks a test method in JUnit?

@Test.

39
New cards

The @Before annotation in JUnit means:

Run before each test method.

40
New cards

Which JUnit assertion checks equality of expected and actual values?

assertEquals.

41
New cards

A main advantage of automated tests is:

They can run quickly and repeatedly with precise, programmable checks.

42
New cards

'Coupling' measures:

Interconnectedness/dependence between modules.

43
New cards

'Cohesion' measures:

How related responsibilities inside a module are.

44
New cards

The design goal regarding coupling and cohesion is:

Low coupling, high cohesion.

45
New cards

The Law of Demeter restricts:

How deep a method’s call chain should go (only talk to friends, not strangers).

46
New cards

In CMM Level 2 (Repeatable), which type of processes become established?

Basic project management processes (planning, tracking, requirements management).

47
New cards

Using a lookup table instead of a long if‑else chain primarily trades:

Memory for speed.

48
New cards

'Lazy evaluation' in code tuning means:

Deferring computation until the value is actually needed.

49
New cards

A CI process that compiles, tests, inspects, and deploys provides:

Automated, cheap quality gates with fast feedback.

50
New cards

The purpose of a stub in integration testing is to:

Simulate a dependent module so the caller can be tested before the real dependency exists.