โ† All ICT Flashcard Decks

Software Development Concepts Flashcards

7 cards from real ICT practice questions. Tap to flip, then mark Knew It or Still Learning โ€” missed cards come back until you master them.

Read the first 7 Software Development Concepts flashcards as text
  1. What is the primary difference between 'stack' and 'heap' memory in programming?

    Answer: Stack is managed automatically with LIFO allocation; heap is manually managed with dynamic allocation

    Stack memory is automatically managed in a last-in, first-out manner for function calls, while heap memory is dynamically allocated at runtime.

  2. What does 'dead code' refer to in software development?

    Answer: Code that is never executed or reachable during normal program execution

    Dead code is source code that is never executed at runtime, often because it is unreachable or its results are never used.

  3. In agile development, what is the purpose of a 'retrospective' meeting?

    Answer: To reflect on the past sprint and identify process improvements

    A retrospective is held at the end of each sprint for the team to inspect their process and create a plan for improvements.

  4. What is 'code coverage' in software testing?

    Answer: The percentage of source code lines or branches executed during automated tests

    Code coverage measures the percentage of code executed by a test suite, helping identify untested portions of the application.

  5. Which security vulnerability occurs when an attacker injects malicious scripts into content viewed by other users?

    Answer: Cross-Site Scripting (XSS)

    Cross-Site Scripting (XSS) allows attackers to inject malicious client-side scripts into web pages viewed by other users.

  6. What is the main purpose of using 'design patterns' in software development?

    Answer: To provide reusable solutions to commonly occurring design problems

    Design patterns are reusable solutions to common software design problems, providing proven templates that speed up development and improve communication.

  7. What does 'containerization' using tools like Docker provide for software deployment?

    Answer: A consistent, isolated environment that packages application code with all its dependencies

    Containerization packages an application with all its dependencies into a portable unit, ensuring consistent behavior across different environments.