Software Engineering and OOAD
NEC Computer Engineering · 2,119 practice MCQs
The chapter on Software Engineering and Object-Oriented Analysis and Design (OOAD) is crucial for aspiring engineers preparing for the NEC licensing exam. It encompasses essential concepts such as collaboration diagrams, class diagrams, and system performance metrics.
Understanding these topics not only helps in passing the exam but also equips you with the skills needed in real-world software development. To prepare effectively, practice the 2119 MCQs available in this chapter to reinforce your knowledge and application of these concepts.
Sample questions with answers
1.How is sequencing typically represented in collaboration diagrams?
- A.Symbols for multiplicity
- B.Dotted lines
- C.Color-coded objects
- D.Message numbering
Why: Message numbering is used in collaboration diagrams to indicate the order in which messages are sent between objects, helping to clarify the sequence of interactions.
2.How is composition in class diagrams different from aggregation?
- A.It allows for multiple inheritance
- B.The component cannot survive without the whole
- C.It illustrates method invocations
- D.It shows non-synchronous messages
Why: In composition, the component is tightly bound to the whole, meaning it cannot exist independently; if the whole is destroyed, so is the component.
3.Which metrics are important for evaluating real-time system performance?
- A.Size of heap and usage of stack
- B.Ratio of missed deadlines, latency, jitter, and throughput
- C.Speed of database indexing
- D.Number of threads
Why: The ratio of missed deadlines, latency, jitter, and throughput are critical metrics for assessing the performance of real-time systems, as they directly impact the system's ability to meet timing constraints.
4.A requirement that defines a limit on response time is an instance of:
- A.Security requirement
- B.Performance requirement
- C.Usability requirement
- D.Maintainability requirement
Why: A performance requirement specifies limitations on response time, which is essential for ensuring that a system meets user expectations for speed and efficiency.
5.What is defined as a configuration item (CI)?
- A.A network packet
- B.A CPU thread
- C.Any software artifact managed under configuration control
- D.A memory block
Why: A configuration item (CI) refers to any software artifact that is managed under configuration control, ensuring that changes are tracked and managed effectively.
6.What allows a child class to implement its own version of a method that is already defined in its parent class?
- A.Abstraction
- B.Method overloading
- C.Encapsulation
- D.Method overriding
Why: Method overriding allows a child class to provide a specific implementation of a method that is already defined in its parent class, enabling polymorphic behavior.
7.What is the benefit of build automation?
- A.Setting up network configurations
- B.Managing CPU scheduling
- C.Allocating memory resources
- D.Minimizing manual errors during software build and packaging
Why: Build automation minimizes manual errors during the software build and packaging process by automating repetitive tasks, leading to more reliable and efficient builds.
8.Types of relationships in use cases consist of:
- A.CPU enhancement
- B.Include, extend, generalization
- C.Memory allocation
- D.Thread management
Why: The types of relationships in use cases include 'include', 'extend', and 'generalization', which help define how different use cases interact with one another.
9.How are static attributes depicted in UML class diagrams?
- A.Bold text
- B.Dashed lines
- C.Underlined text
- D.Italicized text
Why: Static attributes in UML class diagrams are depicted with underlined text, distinguishing them from instance attributes that do not have this formatting.
10.What does multiplicity on links represent?
- A.Size of thread pool
- B.CPU cycles for each instruction
- C.Allocated memory pages
- D.Count of potential instances that can be involved
Why: Multiplicity on links indicates the number of instances that can participate in a relationship, providing insight into the potential connections between classes.
11.Which concept conceals internal workings of an object and shows only what's needed?
- A.Abstraction
- B.Polymorphism
- C.Inheritance
- D.Encapsulation
Why: Abstraction is the concept that hides the complex internal workings of an object and exposes only the necessary features, simplifying interaction with the object.
12.In OO analysis, what is considered an object?
- A.Memory unit
- B.CPU command
- C.Thread object
- D.An instance of a class that has state and behavior
Why: In object-oriented analysis, an object is defined as an instance of a class that encapsulates both state (data) and behavior (methods), making it a fundamental building block of OOP.
Practice all 2,119 Software Engineering and OOAD questions
Adaptive mock tests, AI explanations on every question, and a personalized study plan.
Frequently asked questions
- What are collaboration diagrams used for in software engineering?
- Collaboration diagrams are used to represent the interactions between objects in a system, focusing on the sequence of messages exchanged.
- How does composition differ from aggregation in class diagrams?
- Composition indicates a strong lifecycle dependency between objects, whereas aggregation represents a weaker relationship where objects can exist independently.
- What metrics are important for evaluating real-time system performance?
- Key metrics include response time, throughput, and resource utilization, which help assess the efficiency and reliability of real-time systems.
- What is a configuration item (CI) in software engineering?
- A configuration item (CI) is any component that needs to be managed to deliver an IT service, including hardware, software, and documentation.
- What is the benefit of build automation?
- Build automation streamlines the software development process by reducing manual errors, increasing consistency, and saving time during builds.