




























































































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
Exam B focuses on software design principles, architectural patterns, and object-oriented design. Candidates apply design methodologies and UML diagrams to develop maintainable and scalable software systems.
Typology: Exams
1 / 127
This page cannot be seen from the preview
Don't miss anything!





























































































Question 1. Which characteristic of software refers to its intangible nature, meaning it cannot be physically touched? A) Complexity B) Conformity C) Intangibility D) Changeability Answer: C Explanation: Intangibility indicates that software is not a physical product; it exists as code and documentation, making it intangible. Question 2. The "software crisis" primarily refers to what issue faced by the software industry? A) Lack of user requirements specification B) Challenges in managing software complexity, cost, and schedule overruns C) Excessive hardware dependency D) Overemphasis on formal methods Answer: B Explanation: The software crisis highlights difficulties such as project failures,
delays, and cost overruns caused by increasing software complexity and poor management. Question 3. Which of the following is a key principle for effective software development that emphasizes managing complexity by dividing systems into manageable parts? A) Formality B) Modularity C) Rigor D) Abstraction Answer: B Explanation: Modularity involves decomposing a system into modules or components, facilitating easier management, understanding, and maintenance. Question 4. What is the primary purpose of a software process? A) To define the hardware requirements of a system B) To guide the systematic development and maintenance of software C) To replace software design activities
D) It encourages iterative development Answer: C Explanation: The Waterfall Model's rigid structure makes it difficult to accommodate changes once a phase is completed, leading to inflexibility. Question 7. The V-Model emphasizes the relationship between which two types of phases? A) Analysis and deployment B) Design and coding C) Development and testing D) Maintenance and requirements Answer: C Explanation: The V-Model aligns each development phase with a corresponding testing phase, emphasizing verification and validation. Question 8. Which feature is characteristic of the Incremental Model? A) Complete system delivered at once after all phases B) Development in small, functional increments with user feedback after each
C) Focus on prototyping only D) Risk-driven, with focus on risk analysis at each cycle Answer: B Explanation: The Incremental Model develops the system piece by piece, allowing for early delivery and feedback. Question 9. The Spiral Model is particularly suitable for projects where: A) Requirements are well-understood and stable B) Risk management and iterative refinement are critical C) The project involves no risk D) The project is small and straightforward Answer: B Explanation: The Spiral Model emphasizes risk analysis and iterative development, making it ideal for complex or high-risk projects. Question 10. Which of the following is a core principle of Agile Manifesto? A) Processes over individuals and interactions B) Comprehensive documentation over working software C) Customer collaboration over contract negotiation
D) Large batch releases Answer: B Explanation: Pair programming involves two developers working together at one workstation, promoting code quality and knowledge sharing. Question 13. Kanban in software development primarily focuses on: A) Fixed iterations and timeboxes B) Visualization of work and flow management using a pull system C) Complete upfront planning of all features D) Sequential development phases Answer: B Explanation: Kanban visualizes work, limits work in progress, and uses a pull system to manage flow efficiently. Question 14. Which is NOT a typical characteristic of Lean Software Development? A) Eliminating waste B) Amplifying learning C) Building in large batches
D) Empowering the team Answer: C Explanation: Lean emphasizes small batch sizes, continuous delivery, and waste elimination, rather than large batch processing. Question 15. The role of a software project manager includes all of the following EXCEPT: A) Defining project scope B) Managing team conflicts C) Coding all modules personally D) Estimating effort and schedule Answer: C Explanation: A project manager oversees planning and coordination but does not typically perform all coding tasks. Question 16. Which of the following is a main activity in requirements engineering? A) Code implementation B) Requirements elicitation
B) To record user feedback after deployment C) To define the system’s functional and non-functional requirements clearly D) To replace the need for testing Answer: C Explanation: SRS documents specify what the system should do and how it should perform, guiding development and validation. Question 19. Which UML diagram is primarily used to describe system functionalities and interactions from an end-user perspective? A) Class diagram B) Use case diagram C) Sequence diagram D) Deployment diagram Answer: B Explanation: Use case diagrams depict system functionalities from the perspective of actors (users). Question 20. In data flow diagrams (DFD), what does an external entity represent?
A) A process within the system B) A data store used by the system C) An outside system or actor interacting with the system D) A user interface component Answer: C Explanation: External entities are outside systems or actors that interact with the system but are not part of it. Question 21. Which notation is used in ER diagrams to represent the maximum number of instances a relationship can have? A) Attributes B) Cardinalities C) States D) Use cases Answer: B Explanation: Cardinalities specify the number of instances involved in a relationship, such as one-to-many or many-to-many.
Question 24. Which architectural style separates concerns into three interconnected components: Model, View, and Controller? A) Layered Architecture B) Client-Server C) Model-View-Controller (MVC) D) Microservices Answer: C Explanation: MVC divides the application into three components, facilitating separation of user interface, data, and control logic. Question 25. Which UML diagram is used to illustrate the sequence of interactions over time between objects? A) Class diagram B) Sequence diagram C) State machine diagram D) Deployment diagram Answer: B Explanation: Sequence diagrams show how objects interact through messages in a time sequence.
Question 26. Which design pattern ensures a class has only one instance and provides a global point of access to it? A) Factory B) Singleton C) Observer D) Adapter Answer: B Explanation: The Singleton pattern restricts instantiation to one object and provides a single access point. Question 27. In UI design, good usability principles include all of the following EXCEPT: A) Consistency B) Error prevention C) Complex navigation D) Learnability Answer: C Explanation: Complex navigation hampers usability; good UI design promotes simplicity and clear flow.
Question 30. Which development environment feature allows tracking and managing changes to source code over time? A) IDE B) Version Control System (VCS) C) Debugger D) Build automation tool Answer: B Explanation: VCS (e.g., Git) manages different versions of code, enabling change tracking and collaboration. Question 31. The primary goal of software configuration management (SCM) is to: A) Increase development speed without change control B) Manage changes and maintain software integrity over time C) Automate testing processes D) Ensure code is written in a specific programming language Answer: B Explanation: SCM controls changes, maintains version history, and ensures consistency across software artifacts.
Question 32. The main objective of unit testing is to: A) Validate the entire system with real users B) Verify individual components or units of code in isolation C) Test the system under load conditions D) Ensure the software meets business requirements Answer: B Explanation: Unit testing focuses on testing small, individual parts of code to ensure correctness. Question 33. Which testing level involves integrating multiple units and verifying their interactions? A) System testing B) Unit testing C) Integration testing D) Acceptance testing Answer: C Explanation: Integration testing assesses the combined operation of multiple units or modules.
Question 36. Verification in software engineering refers to: A) Checking if the software meets user needs B) Ensuring the product is built correctly according to specifications C) Testing system performance D) Delivering the final product to the customer Answer: B Explanation: Verification confirms that the software correctly implements specified requirements. Question 37. Validation in software engineering aims to: A) Confirm the system is built according to design B) Ensure the product fulfills user needs and requirements C) Check code syntax D) Review code for style compliance Answer: B Explanation: Validation ensures the software satisfies the actual needs and intended use of stakeholders.
Question 38. Which activity is part of static V&V? A) System testing B) Code inspections C) Load testing D) User acceptance testing Answer: B Explanation: Static verification activities include inspections and reviews that do not require executing code. Question 39. A key attribute of high-quality software is: A) High defect density B) Poor maintainability C) Reliability D) Low usability Answer: C Explanation: Reliability reflects the software's ability to perform consistently without failures, an essential quality attribute.