flash drive
Q1. What is the primary definition of software quality according to IEEE? [file:97ef57af-48f6-451b-a68f-c48675ed85bd]
A. The speed at which software executes
B. The degree to which a system meets specified requirements and customer needs
C. The number of features in the software
D. The size of the codebase
Answer: B
Q2. Which of the following is NOT one of the nine causes of software errors? [file:97ef57af-48f6-451b-a68f-c48675ed85bd]
A. Faulty requirements definition
B. Logical design errors
C. Poor database performance
D. Shortcomings of the testing process
Answer: C
Q3. In testing terminology, what is a “fault”? [file:97ef57af-48f6-451b-a68f-c48675ed85bd]
A. A deviation of observed behavior from specified behavior
B. The mechanical or algorithmic cause of an error (bug)
C. A system state that can lead to a failure
D. An incomplete test case
Answer: B
Q4. What are the three main testing levels discussed in the lectures? [file:aee96230-d11b-4a6f-b614-3bb83c9c98e6]
A. Functional, performance, security
B. Unit, integration, system
C. Manual, automated, hybrid
D. Alpha, beta, gamma
Answer: B
Q5. Which testing approach requires knowledge of the internal code structure? [file:aee96230-d11b-4a6f-b614-3bb83c9c98e6]
A. Black-box testing
B. Grey-box testing
C. White-box testing
D. Random testing
Answer: C
Q6. What is the main goal of unit testing? [file:aee96230-d11b-4a6f-b614-3bb83c9c98e6]
A. To test the entire integrated system
B. To evaluate system interfaces only
C. To confirm individual components are correctly coded and functional
D. To validate user documentation
Answer: C
Q7. In integration testing, what is a “stub”? [file:aee96230-d11b-4a6f-b614-3bb83c9c98e6]
A. A component that calls the tested unit
B. A temporary replacement for a called module returning fake values
C. A script to automate builds
D. A static analysis tool
Answer: B
Q8. Which integration testing strategy needs drivers but not stubs? [file:aee96230-d11b-4a6f-b614-3bb83c9c98e6]
A. Top-down integration testing
B. Bottom-up integration testing
C. Big-bang integration testing
D. Random integration testing
Answer: B
Development Methodologies
Q9. Which development model treats construction as a strictly sequential phase after design and requirements? [file:3522cf3a-d389-4146-becd-e4de8e49cf93]
A. Agile
B. Spiral
C. Waterfall
D. XP
Answer: C
Q10. What is a key characteristic of Test-Driven Development (TDD)? [file:3522cf3a-d389-4146-becd-e4de8e49cf93]
A. Write implementation, then tests if needed
B. Write tests first, then minimal code to pass them
C. Avoid unit tests to save time
D. Only test GUI components
Answer: B
Q11. Which methodology uses sprints, daily stand‑ups, and a product backlog? [file:3522cf3a-d389-4146-becd-e4de8e49cf93]
A. Waterfall
B. Scrum
C. RUP
D. V‑Model
Answer: B
Q12. In the V‑Model, each development phase is paired with: [file:3522cf3a-d389-4146-becd-e4de8e49cf93]
A. A management milestone
B. A corresponding testing/verification phase
C. A user training session
D. A refactoring phase
Answer: B
Q13. Which of the following is a Lean principle? [file:3522cf3a-d389-4146-becd-e4de8e49cf93]
A. Maximize documentation
B. Eliminate waste
C. Delay decisions as early as possible
D. Centralize all decisions with management
Answer: B
Q14. What is the main goal of Extreme Programming (XP)? [file:3522cf3a-d389-4146-becd-e4de8e49cf93]
A. Remove testing from the process
B. Improve quality and respond quickly to changing requirements
C. Use only formal documentation
D. Work in long release cycles
Answer: B
Software Construction
Q15. Minimizing complexity in construction mainly emphasizes: [file:e0153fd9-3802-4d99-b0bc-e39c49645ed2]
A. Clever code with many tricks
B. Simple, readable code and modular design
C. Maximum use of global variables
D. Avoiding standards
Answer: B
Q16. “Constructing for verification” means: [file:e0153fd9-3802-4d99-b0bc-e39c49645ed2]
A. Writing code without tests
B. Building software so faults can be easily found by engineers and testers
C. Only testing after deployment
D. Using only manual test cases
Answer: B
Q17. Construction standards directly influence: [file:e0153fd9-3802-4d99-b0bc-e39c49645ed2]
A. Only programming language choice
B. Communication, coding conventions, platform interfaces, and tools
C. Sales and marketing
D. Hardware procurement only
Answer: B
Q18. Construction planning defines, among other things: [file:e0153fd9-3802-4d99-b0bc-e39c49645ed2]
A. Team salaries
B. The order components are built and integrated, and integration strategy
C. Final UI colors
D. Marketing launch dates
Answer: B
SCM Basics
Q19. In SCM terminology, what is a “version”? [file:4413b9d8-fec2-46c8-88c1-1dc1acb107c4]
A. Any compile error
B. An instance of a system functionally distinct from other instances
C. A GUI mockup
D. A user manual draft
Answer: B
Q20. What is a baseline? [file:4413b9d8-fec2-46c8-88c1-1dc1acb107c4]
A. An informal developer snapshot
B. A formally reviewed product/spec that becomes the basis for further development and changes only via change control
C. A nightly build with no review
D. A temporary branch used for experiments
Answer: B
Q21. Configuration management planning defines: [file:d0d6efe3-8b5d-4fdd-b224-12a018aef742]
A. Only build tools
B. What documents/items are managed, naming schemes, responsibilities, policies, and records
C. Only coding style
D. Only meeting schedules
Answer: B
Q22. Change management in SCM is mainly concerned with: [file:d0d6efe3-8b5d-4fdd-b224-12a018aef742]
A. Hiring new developers
B. Tracking change requests and ensuring cost‑effective implementation
C. Designing user interfaces
D. Licensing tools
Answer: B
Quiz 2: Software Engineering Quality Essentials (20 Questions) CI & CD
Q23. Why is Continuous Integration important? [file:c8bbc1b0-3875-4d42-9379-3863b86c1b88]
A. It removes the need for testing
B. It detects defects early by integrating and building whenever code changes
C. It replaces version control
D. It is only for documentation generation
Answer: B
Q24. A “broad build” in CI typically includes: [file:c8bbc1b0-3875-4d42-9379-3863b86c1b88]
A. Only compilation
B. Compile, run tests, inspect code, maybe deploy to a test environment
C. Only manual testing
D. Only static analysis
Answer: B
Q25. Which tool is commonly used as a CI server? [file:c8bbc1b0-3875-4d42-9379-3863b86c1b88]
A. Jenkins
B. PowerPoint
C. Photoshop
D. Excel
Answer: A
Q26. In Continuous Delivery, the deployment pipeline aims to: [file:801b2070-650e-4083-b676-ca80bfbfaf0f]
A. Automate tests and deployment steps to make release nearly a “one-click” operation
B. Remove all manual approvals
C. Avoid performance tests
D. Only generate reports
Answer: A
Q27. Proper CI practice suggests developers should integrate their work: [file:c8bbc1b0-3875-4d42-9379-3863b86c1b88]
A. Once per year
B. Once per release
C. At least daily
D. Only at project end
Answer: C
Code Tuning
Q28. Code tuning focuses on: [file:7456c57e-95b0-42d3-9b7b-ddea742ab131]
A. Large architectural redesigns
B. Small‑scale changes to improve performance of already correct code
C. Removing tests
D. Random changes to see if it runs faster
Answer: B
Q29. Moving a conditional from inside a loop to outside it is called: [file:7456c57e-95b0-42d3-9b7b-ddea742ab131]
A. Jamming
B. Loop unrolling
C. Unswitching
D. Caching
Answer: C
Q30. “Jamming” (loop fusion) is: [file:7456c57e-95b0-42d3-9b7b-ddea742ab131]
A. Splitting a loop into many smaller loops
B. Combining two loops over the same range into one to reduce loop overhead
C. Removing all loops
D. Replacing loops with recursion
Answer: B
Q31. Loop unrolling mainly reduces: [file:7456c57e-95b0-42d3-9b7b-ddea742ab131]
A. Memory usage only
B. The number of loop control operations per element
C. The number of variables
D. The need for tests
Answer: B
Q32. Replacing multiplications by repeated additions in a loop is an example of: [file:03f7170b-5a06-40bc-9e7b-8dd1a7865748]
A. Caching
B. Sentinel optimization
C. Strength reduction
D. Jamming
Answer: C
Refactoring
Q33. Refactoring is defined as: [file:0326a368-6365-463e-a698-ae9b069a4f5d]
A. Adding new features
B. Improving internal structure without changing externally observable behavior
C. Rewriting the whole system from scratch
D. Only renaming variables
Answer: B
Q34. Which of the following is NOT a good practice when refactoring? [file:0326a368-6365-463e-a698-ae9b069a4f5d]
A. Having unit tests before refactoring
B. Keeping refactorings small
C. Using version control
D. Skipping tests to save time
Answer: D
Q35. “Code smell” refers to: [file:0326a368-6365-463e-a698-ae9b069a4f5d]
A. A runtime error
B. A surface symptom that suggests a deeper design problem
C. A performance metric
D. A compiler warning
Answer: B
Q36. A major risk of refactoring is: [file:0326a368-6365-463e-a698-ae9b069a4f5d]
A. You always slow down the system
B. Introducing regressions into previously working functionality
C. Increasing cohesion
D. Reducing coupling
Answer: B
JUnit & Unit Testing
Q37. JUnit is: [file:78a1333e-fed2-4a8a-acfb-838a5ecdec8f]
A. A Java compiler
B. A unit testing framework for Java
C. A version control tool
D. A build automation system
Answer: B
Q38. Which annotation marks a test method in JUnit? [file:78a1333e-fed2-4a8a-acfb-838a5ecdec8f]
A. @Before
B. @After
C. @Test
D. @Ignore
Answer: C
Q39. The @Before annotation in JUnit means: [file:78a1333e-fed2-4a8a-acfb-838a5ecdec8f]
A. Run once before all tests in the class
B. Run before each test method
C. Run after each test method
D. Skip the test
Answer: B
Q40. Which JUnit assertion checks equality of expected and actual values? [file:78a1333e-fed2-4a8a-acfb-838a5ecdec8f]
A. assertTrue
B. assertNull
C. assertEquals
D. assertSame
Answer: C
Q41. A main advantage of automated tests is: [file:78a1333e-fed2-4a8a-acfb-838a5ecdec8f]
A. They are slower but more fun
B. They can run quickly and repeatedly with precise, programmable checks
C. They require more testers
D. They remove the need for assertions
Answer: B
Quality of Design
Q42. “Coupling” measures: [file:81edefd1-06ed-4118-ae9a-99104a9c70f0]
A. Internal relatedness of a module
B. Interconnectedness/dependence between modules
C. Number of methods in a class
D. Lines of code per file
Answer: B
Q43. “Cohesion” measures: [file:81edefd1-06ed-4118-ae9a-99104a9c70f0]
A. How related responsibilities inside a module are
B. How many modules exist
C. Execution speed
D. Documentation size
Answer: A
Q44. The design goal regarding coupling and cohesion is: [file:81edefd1-06ed-4118-ae9a-99104a9c70f0]
A. High coupling, low cohesion
B. Low coupling, high cohesion
C. Low coupling, low cohesion
D. High coupling, high cohesion
Answer: B
Q45. The Law of Demeter restricts: [file:81edefd1-06ed-4118-ae9a-99104a9c70f0]
A. How many classes a project can have
B. How deep a method’s call chain should go (only talk to friends, not strangers)
C. Use of inheritance
D. Number of interfaces
Answer: B
Bonus Questions (to go beyond 45)
Q46. In CMM Level 2 (Repeatable), which type of processes become established? [file:992197de-2146-4d5a-9e27-d41e4d8e5edb]
A. Quantitative process management only
B. Basic project management processes (planning, tracking, requirements management)
C. Organization‑wide continuous improvement only
D. No defined processes
Answer: B
Q47. Using a lookup table instead of a long if‑else chain primarily trades: [file:7456c57e-95b0-42d3-9b7b-ddea742ab131]
A. Memory for speed
B. Speed for memory
C. Readability for correctness
D. Correctness for speed
Answer: A
Q48. “Lazy evaluation” in code tuning means: [file:03f7170b-5a06-40bc-9e7b-8dd1a7865748]
A. Never computing values
B. Deferring computation until the value is actually needed
C. Computing all values at startup
D. Removing caching
Answer: B
Q49. A CI process that compiles, tests, inspects, and deploys provides: [file:c8bbc1b0-3875-4d42-9379-3863b86c1b88]
A. Manual quality gates
B. Automated, cheap quality gates with fast feedback
C. No feedback
D. Only documentation
Answer: B
Q50. The purpose of a stub in integration testing is to: [file:aee96230-d11b-4a6f-b614-3bb83c9c98e6]
A. Permanently replace a module
B. Simulate a dependent module so the caller can be tested before the real dependency exists
C. Control test execution order
D. Measure performance only
Answer: B