






















































































Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
This preparation guide provides advanced coverage of system design, software lifecycle management, DevOps principles, performance optimization, and engineering leadership concepts. Practice exams and structured modules help candidates master complex technical topics.
Typology: Exams
1 / 94
This page cannot be seen from the preview
Don't miss anything!























































































Question 1. Which of the following best describes a functional requirement? A) A constraint on system performance B) A description of system behavior in response to inputs C) A guideline for user interface aesthetics D) A rule governing data storage format Answer: B Explanation: Functional requirements specify what the system shall do, i.e., its behavior in response to inputs, whereas non-functional requirements describe constraints such as performance or usability. Question 2. In the requirements process, which actor is primarily responsible for providing domain knowledge? A) Project manager B) Developer C) Stakeholder D) Quality assurance engineer Answer: C Explanation: Stakeholders, including customers and end-users, supply domain knowledge that informs requirement elicitation and validation. Question 3. Which elicitation technique is most suitable for uncovering hidden user needs through observation of actual work practices? A) Structured interview B) Scenario analysis C) Prototyping D) Ethnographic observation
Answer: D Explanation: Ethnographic observation involves watching users in their natural environment, revealing needs that users may not articulate directly. Question 4. When classifying requirements, a “priority” attribute is used to indicate: A) The architectural layer the requirement belongs to B) The order in which requirements should be implemented C) Whether a requirement is functional or non-functional D) The source of the requirement Answer: B Explanation: Priority denotes the relative importance or urgency, guiding implementation sequencing. Question 5. Which modeling technique is most appropriate for describing the life-cycle states of a software component? A) Data flow diagram B) Entity-relationship diagram C) State chart diagram D) Use case diagram Answer: C Explanation: State charts model the possible states of an entity and the transitions triggered by events, ideal for life-cycle representation. Question 6. In an SRS, the “glossary” section primarily serves to: A) List functional requirements in detail B) Define terminology used throughout the document
Question 9. Which design principle promotes reducing inter-module dependencies? A) Information hiding B) Separation of concerns C) High coupling D) Low cohesion Answer: A Explanation: Information hiding encapsulates internal details, limiting the impact of changes and thereby reducing coupling. Question 10. In a layered architecture, which layer typically handles data persistence? A) Presentation layer B) Business logic layer C) Data access layer D) Application layer Answer: C Explanation: The data access layer abstracts storage mechanisms, providing CRUD operations to higher layers. Question 11. The “Factory” pattern belongs to which category of design patterns? A) Creational B) Structural C) Behavioral D) Architectural Answer: A
Explanation: Factory patterns encapsulate object creation, a classic creational design pattern. Question 12. Which UI design principle emphasizes presenting only the information necessary for the current user task? A) Consistency B) Minimalism C) Feedback D) Affordance Answer: B Explanation: Minimalism reduces cognitive load by showing only relevant elements, supporting user focus. Question 13. Internationalization (i18n) primarily addresses: A) Visual design of icons B) Adaptation of software for multiple languages and locales C) Performance optimization for mobile devices D) Accessibility for users with disabilities Answer: B Explanation: Internationalization prepares software to support various languages, cultural formats, and regional conventions. Question 14. Which quality attribute is most directly impacted by high cohesion within modules? A) Portability B) Maintainability C) Scalability
C) Designing functions with a single responsibility D. Embedding business logic in UI code Answer: C Explanation: Single-responsibility functions are small and isolated, making them easy to test individually. Question 18. Agile construction models differ from waterfall primarily in: A) Fixed scope at the project start B) Sequential phase completion C) Iterative delivery of working increments D) No stakeholder involvement Answer: C Explanation: Agile emphasizes short iterations delivering functional increments, whereas waterfall follows a linear, phase-gated approach. Question 19. Defensive programming is best described as: A) Writing code that assumes all inputs are valid B) Using assertions and checks to detect and handle unexpected conditions C) Relying on external testing frameworks exclusively D. Eliminating all comments to reduce code size Answer: B Explanation: Defensive programming adds runtime checks (e.g., assertions) to guard against invalid inputs and states. Question 20. Middleware primarily provides: A) Direct hardware access for applications
B) A layer that abstracts communication and integration between distributed components C) User interface widgets D. Source code version control Answer: B Explanation: Middleware facilitates interaction among distributed services, handling messaging, data transformation, and connectivity. Question 21. Which concurrency primitive allows multiple threads to safely read a shared resource but only one thread to modify it at a time? A) Mutex B) Semaphore C) Read-write lock D. Spinlock Answer: C Explanation: A read-write lock permits concurrent reads while exclusive writes are serialized, improving performance for read-heavy workloads. Question 22. In testing terminology, a “fault” is: A) The observed incorrect behavior during execution B) The underlying defect in the code or design C) The test case that fails D. The environment configuration error Answer: B Explanation: A fault (or defect) is the mistake in the software artifact; when executed it may cause an error, leading to a failure.
Explanation: Mutation testing creates slight code changes (mutants) and checks if existing tests fail, indicating test effectiveness. Question 26. During test planning, a “test exit criterion” defines: A) The list of test tools to be used B) Conditions under which testing may be stopped C) The order of test case execution D. The hardware configuration for test environments Answer: B Explanation: Exit criteria specify the metrics (e.g., coverage, defect count) that must be satisfied before concluding testing. Question 27. Which maintenance activity involves altering software to correct faults discovered after delivery? A) Perfective maintenance B) Adaptive maintenance C. Corrective maintenance D. Preventive maintenance Answer: C Explanation: Corrective maintenance addresses defects (bugs) found in operational software. Question 28. Re-engineering is primarily concerned with: A) Adding new features to an existing system B) Replacing hardware components C) Transforming legacy code into a more maintainable form while preserving functionality
D. Outsourcing development to a third party Answer: C Explanation: Re-engineering restructures existing software to improve quality, readability, or architecture without changing external behavior. Question 29. In configuration identification, a “baseline” refers to: A) The latest source code commit B) A formally agreed-upon set of configuration items at a point in time C) The list of open change requests D. The hardware platform used for testing Answer: B Explanation: A baseline is a frozen set of items (code, documents, etc.) that serves as a reference for further changes. Question 30. A functional software configuration audit (FCA) verifies that: A) All files are physically present in the repository B) The software conforms to its specified functional requirements C) The build script compiles without errors D. Version numbers are incremented correctly Answer: B Explanation: FCA checks that the delivered software matches the functional specifications, ensuring correctness. Question 31. In risk management, “risk exposure” is calculated as: A) Probability of risk occurrence multiplied by impact magnitude B) Number of identified risks
A) McCall model B) Boehm model C) ISO/IEC 25010 (SQuaRE) model D. ISO 9001 model Answer: C Explanation: ISO/IEC 25010 (SQuaRE) specifies a set of product quality characteristics widely used for software quality assessment. Question 35. A “walkthrough” differs from an “inspection” mainly in that: A) Walkthroughs are informal and focus on learning, whereas inspections are formal and defect-oriented B) Inspections require a moderator, walkthroughs do not C) Walkthroughs generate a formal defect log, inspections do not D. Walkthroughs are limited to code, inspections cover all artifacts Answer: A Explanation: Walkthroughs are informal peer reviews aimed at knowledge sharing; inspections follow a defined process with defect tracking. Question 36. Which of the following is a primary purpose of static analysis tools? A) Execute test cases automatically B) Detect potential defects without running the program C) Measure runtime performance D. Generate user documentation Answer: B Explanation: Static analysis examines source code for patterns that may indicate bugs, security issues, or style violations without execution.
Question 37. In a microservices architecture, the primary communication style is: A) Direct function calls within a monolithic binary B) Synchronous remote procedure calls only C) Asynchronous messaging via APIs or message brokers D. Shared memory access Answer: C Explanation: Microservices typically interact through lightweight APIs and message brokers, often using asynchronous communication for decoupling. Question 38. Which design metric quantifies the degree of interdependence between modules? A) Cohesion metric B) Coupling metric (e.g., afferent/efferent coupling) C) Cyclomatic complexity D. Lines of code Answer: B Explanation: Coupling metrics measure how many other modules a given module depends on (efferent) or is depended upon (afferent). Question 39. The “state explosion” problem is most associated with: A) Large class diagrams B) Model checking of behavioral models with many states C) Database schema normalization D. UI layout design
C) “The system shall generate a PDF invoice.” D. “The system shall display a dashboard.” Answer: B Explanation: Encryption is a security constraint, a classic non-functional requirement, whereas the others describe functional behavior. Question 43. The “spiral model” primarily addresses which project risk? A) Fixed scope with no changes B) Uncertainty in requirements and technical feasibility C) Lack of stakeholder involvement D. Absence of testing activities Answer: B Explanation: The spiral model iteratively assesses risks (requirements, technology) and incorporates prototyping to reduce uncertainty. Question 44. Which process assessment model is designed for evaluating the maturity of software processes? A) ISO/IEC 15504 (SPICE) B) IEEE 829 C. CMMI (Capability Maturity Model Integration) D. PMBOK Answer: C Explanation: CMMI provides maturity levels (1-5) to assess and improve software development processes. Question 45. In a data flow diagram (DFD), a “process” symbol represents:
A) A physical storage device B) A transformation of data inputs to outputs C) An external entity D. A data store Answer: B Explanation: DFD processes denote functional transformations that convert incoming data streams into outgoing data. Question 46. Which of the following best defines “portability” as a software quality attribute? A) Ability of software to operate correctly on different platforms with minimal effort B) Ease of locating defects in the source code C. Speed of execution under load D. Degree to which code is documented Answer: A Explanation: Portability measures how easily software can be transferred and run on various hardware or operating environments. Question 47. A “design pattern catalog” is most useful for: A) Generating code automatically B) Providing reusable solution templates to common design problems C. Enforcing coding standards at compile time D. Measuring performance bottlenecks Answer: B Explanation: Catalogs collect proven design patterns, offering developers ready-made structures for recurring challenges.
Answer: D Explanation: Requirements elicitation belongs to the development phase; maintenance planning focuses on change management, scheduling, and effort estimation. Question 51. In a UML component diagram, a “provided interface” is depicted as: A) A solid line with a lollipop symbol attached to the component B) A dashed line with a socket symbol C. A solid arrow pointing to the component D. A rectangle labeled «interface» Answer: A Explanation: The lollipop notation represents an interface that the component offers to others. Question 52. Which testing technique is based on the internal structure of the code and aims to execute every possible branch? A) Boundary value analysis B) Equivalence partitioning C. Statement coverage D. Branch (decision) coverage Answer: D Explanation: Branch coverage ensures each decision outcome (true/false) is exercised at least once. Question 53. The “principle of least astonishment” in UI design advises that:
A) Users should be surprised by hidden features B) The interface should behave in a way that matches user expectations C. All dialogs must be modal D. Color schemes must be bright and varied Answer: B Explanation: The principle states that software should not behave unexpectedly; consistency with user mental models reduces errors. Question 54. Which of the following is a primary purpose of a “traceability matrix” in requirements management? A) To map requirements to corresponding test cases and design elements B) To calculate project schedule variance C. To generate source code automatically D. To store version control history Answer: A Explanation: A traceability matrix links requirements with downstream artifacts, ensuring coverage and facilitating impact analysis. Question 55. In the context of software process improvement, a “Kaizen” event focuses on: A) Large, long-term strategic changes B) Incremental, continuous improvement of processes C. Formal certification of processes D. Outsourcing development activities Answer: B Explanation: Kaizen is a Japanese term for continuous, small-scale improvements applied regularly to enhance efficiency.