> For the complete documentation index, see [llms.txt](https://nec-license.gitbook.io/books/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://nec-license.gitbook.io/books/8.-software-engineering-and-object-oriented-analysis-and-design/mcqs/set-2.md).

# set-2

#### 51. \_\_\_\_\_\_ is non-functional requirements of software?

1. Functionality
2. Performance
3. Supportability
4. All of above

<details>

<summary>Show me the answer</summary>

**Answer:** 4. All of above

**Explanation:**

* Non-functional requirements include performance, supportability, and other quality attributes that define how the system should behave, rather than what it should do.

</details>

#### 52. Good software design should exhibit \_\_\_\_\_\_.

1. Firmness
2. Commodity
3. Delight
4. All of them

<details>

<summary>Show me the answer</summary>

**Answer:** 4. All of them

**Explanation:**

* Good software design should exhibit firmness (reliability), commodity (usability), and delight (user satisfaction). These are key principles of good design.

</details>

#### 53. Choose the best option that is software design principle?

1. Should not suffer from “Tunnel Vision”
2. Not traceable to design model
3. Should not “Reinvent the Wheel”
4. Both (A) and (C)

<details>

<summary>Show me the answer</summary>

**Answer:** 4. Both (A) and (C)

**Explanation:**

* Software design principles include avoiding "Tunnel Vision" (focusing too narrowly) and not "Reinventing the Wheel" (reusing existing solutions). Both are important for effective design.

</details>

#### 54. What are the 2 dimension of software design models?

1. Process Dimension and Abstraction
2. Dimension
3. Process Dimension and Interface Dimension
4. Attribute Dimension and Interface Dimension

<details>

<summary>Show me the answer</summary>

**Answer:** 1. Process Dimension and Abstraction

**Explanation:**

* Software design models have two dimensions: Process Dimension (how the design process is carried out) and Abstraction (the level of detail in the design).

</details>

#### 55. Which of the following is the fundamental S/W design concepts?

1. Abstraction
2. Architecture
3. Both (A) and (B)
4. Low Cohesion and High Coupling

<details>

<summary>Show me the answer</summary>

**Answer:** 3. Both (A) and (B)

**Explanation:**

* Fundamental software design concepts include Abstraction (simplifying complex systems) and Architecture (defining the structure of the system). Both are essential for good design.

</details>

#### 56. Software design defines \_\_\_\_\_\_.

1. Software design is an activity subjected to constraints
2. Software Design satisfies clients changing requirements
3. Software Design specifies the nature and composition of software product
4. All of the above

<details>

<summary>Show me the answer</summary>

**Answer:** 4. All of the above

**Explanation:**

* Software design defines the nature and composition of the software product, satisfies client requirements, and is subject to various constraints. All these aspects are important in the design process.

</details>

#### 57. \_\_\_\_\_\_ solves the Structural design of the software.

1. The specification model following the data flow diagram
2. Specification model is a structure chart showing procedure calling hierarchy and flow of data in and out of procedures
3. Emphasizing only on procedural decomposition
4. Emphasizing Algorithmic or Procedural decomposition

<details>

<summary>Show me the answer</summary>

**Answer:** 2. Specification model is a structure chart showing procedure calling hierarchy and flow of data in and out of procedures

**Explanation:**

* The structural design of software is solved using a specification model that shows the procedure calling hierarchy and the flow of data in and out of procedures. This helps in understanding the system's structure.

</details>

#### 58. Which one is false?

1. A software design method is an orderly procedure for providing software design solutions
2. A design notation is a symbolic representational system
3. A design heuristic is a rule proceeding guidance, with a guarantee for achieving some end
4. A process is a collection of related tasks that transforms a set of inputs to the set of output

<details>

<summary>Show me the answer</summary>

**Answer:** 3. A design heuristic is a rule proceeding guidance, with a guarantee for achieving some end

**Explanation:**

* A design heuristic is a rule or guideline that provides guidance but does not guarantee a specific outcome. It is not a guaranteed method for achieving an end.

</details>

#### 59. Architectural design only meets the system’s functional requirement.

1. True
2. False

<details>

<summary>Show me the answer</summary>

**Answer:** 2. False

**Explanation:**

* Architectural design meets both functional and non-functional requirements of the system. It defines the overall structure and behavior of the system.

</details>

#### 60. A \_\_\_\_\_\_ view shows the system hardware and how software components are distributed across the processors in the system.

1. Physical
2. Logical
3. Virtual
4. Procedure

<details>

<summary>Show me the answer</summary>

**Answer:** 1. Physical

**Explanation:**

* The physical view of a system shows the hardware and how software components are distributed across processors. It focuses on the deployment and physical architecture of the system.

</details>

#### 61. \_\_\_\_\_\_ is an architectural conflict.

1. Using large-grain components improves performance but reduces maintainability
2. Introducing redundant data improves availability but makes security more difficult
3. Localizing safety-related features usually means more communication so degraded performance
4. All of above options.

<details>

<summary>Show me the answer</summary>

**Answer:** 4. All of above options.

**Explanation:**

* Architectural conflicts arise when trade-offs must be made between different system attributes, such as performance, maintainability, availability, and security. All the options represent such conflicts.

</details>

#### 62. \_\_\_\_\_\_ is not included in Architectural design decisions?

1. Application types
2. System distribution
3. Architectural styles or patterns
4. Testing the system

<details>

<summary>Show me the answer</summary>

**Answer:** 4. Testing the system

**Explanation:**

* Architectural design decisions include application types, system distribution, and architectural styles or patterns. Testing the system is part of the testing phase, not architectural design.

</details>

#### 63. Can already established architecture be applied to other products as well?

1. Yes
2. No
3. Might be
4. None of above

<details>

<summary>Show me the answer</summary>

**Answer:** 1. Yes

**Explanation:**

* Established architectures can often be reused or adapted for other products, especially if they share similar requirements or characteristics.

</details>

#### 64. What describes how a set of interacting components can share data?

1. Model-view-controller
2. Debug pattern
3. Shared database or repository pattern
4. Architectural pattern

<details>

<summary>Show me the answer</summary>

**Answer:** 3. Shared database or repository pattern

**Explanation:**

* The shared database or repository pattern describes how a set of interacting components can share data. It centralizes data storage and access, making it easier for components to interact.

</details>

#### 65. \_\_\_\_\_\_ is a type of Architectural Model.

1. Static structural model
2. Dynamic process model
3. Distribution model
4. All of the mentioned

<details>

<summary>Show me the answer</summary>

**Answer:** 4. All of the mentioned

**Explanation:**

* Architectural models can be static (structural), dynamic (process), or distribution models. All these types are used to represent different aspects of a system's architecture.

</details>

#### 66. The advantage of Explicit Architecture is \_\_\_\_\_\_.

1. Stakeholder communication
2. System Analysis
3. Large scale-reuse
4. All of the mentioned

<details>

<summary>Show me the answer</summary>

**Answer:** 4. All of the mentioned

**Explanation:**

* Explicit architecture provides advantages such as improved stakeholder communication, better system analysis, and large-scale reuse of components. All these benefits contribute to a more effective design process.

</details>

#### 67. The architecture and system characteristics is \_\_\_\_\_\_.

1. Performance
2. Latency
3. Delay
4. Jitter

<details>

<summary>Show me the answer</summary>

**Answer:** 1. Performance

**Explanation:**

* Performance is a key characteristic of system architecture. It refers to how well the system meets its functional and non-functional requirements in terms of speed, efficiency, and responsiveness.

</details>

#### 68. \_\_\_\_\_\_ is the system organization styles which is widely used today.

1. A shared data repository style
2. A shared services and servers style
3. An abstract machine or layered style
4. All of them

<details>

<summary>Show me the answer</summary>

**Answer:** 4. All of them

**Explanation:**

* System organization styles widely used today include shared data repositories, shared services and servers, and abstract machine or layered styles. All these styles are common in modern software systems.

</details>

#### 69. In repository model, Sub-systems making up a system must exchange information so that they work together effectively. This can be done by:

1. Shared data is held in a central database or repository and may be accessed by all sub-systems
2. Each sub-system maintains its own database and passes data explicitly to other sub-systems.
3. Both (A) and (B)
4. None

<details>

<summary>Show me the answer</summary>

**Answer:** 3. Both (A) and (B)

**Explanation:**

* In the repository model, subsystems can exchange information either through a shared central database or by maintaining their own databases and passing data explicitly. Both methods are valid.

</details>

#### 70. \_\_\_\_\_\_ is one of the important characteristics of repository model.

1. Hascle free to share large amounts of data;
2. Sub-systems need not be concerned with how data is produced Centralised management e.g. backup, security, etc.
3. Sharing model is published as the repository schema.
4. All of them

<details>

<summary>Show me the answer</summary>

**Answer:** 4. All of them

**Explanation:**

* The repository model allows for hassle-free sharing of large amounts of data, centralized management (e.g., backup, security), and a published sharing model (repository schema). All these are important characteristics.

</details>

#### 71. \_\_\_\_\_\_ is the major components of the client server model?

1. A set of servers that offer services to other subsystems such as retrieving content, data management, web contents etc.
2. A set of clients that call on services offered by the servers
3. A network that allows clients to access these services.
4. All of them

<details>

<summary>Show me the answer</summary>

**Answer:** 4. All of them

**Explanation:**

* The client-server model consists of servers that offer services, clients that request services, and a network that facilitates communication between them. All these components are essential.

</details>

#### 72. \_\_\_\_\_\_ is not included in Architectural design decisions?

1. Type of application
2. Distribution of the system
3. Architectural styles
4. Testing the system

<details>

<summary>Show me the answer</summary>

**Answer:** 4. Testing the system

**Explanation:**

* Architectural design decisions include the type of application, system distribution, and architectural styles. Testing the system is part of the testing phase, not architectural design.

</details>

#### 73. \_\_\_\_\_\_ is not real-time architectural patterns that are commonly used.

1. Asynchronous communication
2. Observe and React
3. Environmental Control
4. Process Pipeline

<details>

<summary>Show me the answer</summary>

**Answer:** 1. Asynchronous communication

**Explanation:**

* Asynchronous communication is not a real-time architectural pattern. Real-time patterns include Observe and React, Environmental Control, and Process Pipeline, which are designed for real-time systems.

</details>

#### 74. What kind of investments does organization have in order to make most of by the software architects in their design?

1. Skill full peoples
2. Well known frameworks
3. Software tools
4. All of the mentioned

<details>

<summary>Show me the answer</summary>

**Answer:** 4. All of the mentioned

**Explanation:**

* Organizations invest in skilled people, well-known frameworks, and software tools to enable software architects to create effective designs. All these investments are crucial for successful software development.

</details>

#### 75. Choose the correct option?

1. The input of architectural design process is Milestones
2. The output of architectural design process is Blueprint
3. The input of architectural design process is SRS
4. The output of architectural design process is SAD

<details>

<summary>Show me the answer</summary>

**Answer:** 3. The input of architectural design process is SRS

**Explanation:**

* The input to the architectural design process is the Software Requirements Specification (SRS), which defines the requirements for the system. The output is the architectural design, often represented as a blueprint or Software Architecture Document (SAD).

</details>

#### 76. \_\_\_\_\_\_ steps are followed in architectural design process.

1. Analyze SRS
2. Evaluate Candidate Architectures
3. Select architecture and finalize architecture
4. All of the mentioned

<details>

<summary>Show me the answer</summary>

**Answer:** 4. All of the mentioned

**Explanation:**

* The architectural design process involves analyzing the SRS, evaluating candidate architectures, and selecting and finalizing the architecture. All these steps are essential for creating a robust design.

</details>

#### 77. \_\_\_\_\_\_ is the content for Software Architecture and Design (SAD)?

1. Product Overview
2. Architectural Models
3. Architectural design rationale
4. All of the mentioned

<details>

<summary>Show me the answer</summary>

**Answer:** 4. All of the mentioned

**Explanation:**

* The Software Architecture and Design (SAD) document includes a product overview, architectural models, and the rationale behind the design decisions. All these elements are important for understanding the architecture.

</details>

#### 78. \_\_\_\_\_\_ is a feature of CBSE?

1. It increases quality of software
2. CBSE shortens delivery time
3. CBSE increases productivity
4. All of the mentioned

<details>

<summary>Show me the answer</summary>

**Answer:** 4. All of the mentioned

**Explanation:**

* Component-Based Software Engineering (CBSE) increases software quality, shortens delivery time, and improves productivity by reusing pre-built components. All these are key features of CBSE.

</details>

#### 79. A component model defines standards for

1. Properties
2. Methods
3. Mechanisms
4. All of the mentioned

<details>

<summary>Show me the answer</summary>

**Answer:** 4. All of the mentioned

**Explanation:**

* A component model defines standards for properties, methods, and mechanisms that components must adhere to. These standards ensure interoperability and reusability of components.

</details>

#### 80. Which of the following is not an example of component technology?

1. EJB
2. COM+
3. .NET
4. None of the mentioned

<details>

<summary>Show me the answer</summary>

**Answer:** 4. None of the mentioned

**Explanation:**

* EJB (Enterprise JavaBeans), COM+ (Component Object Model), and .NET are all examples of component technologies. Therefore, none of the options are incorrect.

</details>

#### 81. A \_\_\_\_\_\_ defines a set of standards for components, including interface standards, usage standards, and deployment standards.

1. CBSE
2. CASE Tools
3. Component model
4. Component interfaces

<details>

<summary>Show me the answer</summary>

**Answer:** 3. Component model

**Explanation:**

* A component model defines standards for components, including interface standards, usage standards, and deployment standards. It ensures that components can work together effectively.

</details>

#### 82. \_\_\_\_\_\_ is a Reference Model?

1. It is a division of functionality together with data flow between the pieces
2. It is a description of component types
3. It is standard decomposition of a known problem into parts that cooperatively solve a problem
4. It is a division of functionality together with data flow between the pieces, It is standard decomposition of a known problem into parts that cooperatively solve a problem

<details>

<summary>Show me the answer</summary>

**Answer:** 1. It is a division of functionality together with data flow between the pieces

**Explanation:**

* A reference model is a division of functionality with data flow between the pieces. It provides a high-level framework for understanding and designing systems.

</details>

#### 83. \_\_\_\_\_\_ Reference architecture?

1. It is a reference model in which software components are mapped
2. It provided data flow with comments
3. It provides data flow with pieces
4. It is a reference model mapped onto software components & data flow with comments

<details>

<summary>Show me the answer</summary>

**Answer:** 4. It is a reference model mapped onto software components & data flow with comments

**Explanation:**

* A reference architecture is a reference model mapped onto software components, with data flow and comments. It provides a detailed blueprint for system design.

</details>

#### 84. \_\_\_\_\_\_ is incorrect for Reference model, architectural styles and reference architecture?

1. They are not architectures
2. They are useful steps towards an architecture
3. They are set of early design decisions
4. None of the mentioned

<details>

<summary>Show me the answer</summary>

**Answer:** 4. None of the mentioned

**Explanation:**

* Reference models, architectural styles, and reference architectures are all useful steps towards creating a full architecture. They are not incorrect in any way.

</details>

#### 85. Which of the following can be considered regarding client and server?

1. Client and server is an architectural style
2. Client and server may be considered as an architectural style
3. Client and server is not an architectural style
4. None of the mentioned

<details>

<summary>Show me the answer</summary>

**Answer:** 2. Client and server may be considered as an architectural style

**Explanation:**

* The client-server model is often considered an architectural style because it defines a specific way of organizing systems where clients request services and servers provide them. It is a widely used pattern in distributed systems.

</details>

#### 86. Which of the statements truly concludes client and server relation with architectural styles?

1. They are component types and their coordination is described in terms of protocols that server uses to communicate with each of its clients
2. Multiple client cannot exist at an instance
3. Architecture are countless for client and server but their architectural styles are different
4. All of the mentioned

<details>

<summary>Show me the answer</summary>

**Answer:** 1. They are component types and their coordination is described in terms of protocols that server uses to communicate with each of its clients

**Explanation:**

* The client-server relationship is defined by the coordination between clients and servers, typically through protocols. This is a key aspect of the client-server architectural style. Multiple clients can exist simultaneously, and while there are many architectures, the client-server style is a specific and well-defined pattern.

</details>

#### 87. \_\_\_\_\_\_ is not a design heuristic.

1. Evaluate Last iteration to reduce coupling & improve cohesion
2. Minimize structures with high fan-out
3. Keep scope of effect of a module within scope of control of that module
4. Evaluate interfaces to reduce complexity and improve consistency

<details>

<summary>Show me the answer</summary>

**Answer:** 1. Evaluate Last iteration to reduce coupling & improve cohesion

**Explanation:**

* Evaluating the last iteration to reduce coupling and improve cohesion is not a recognized design heuristic. The other options are valid design heuristics that help improve software design quality.

</details>

#### 88. The architecture is not the operational software. Rather, it is a representation that enables a software engineer to:

1. Analyze the effectiveness of the design in meeting its stated requirements
2. Consider architectural alternatives at stage when making design changes is still relatively easy
3. Reduce the risks associated with the construction of the software
4. All of above

<details>

<summary>Show me the answer</summary>

**Answer:** 4. All of above

**Explanation:**

* Architecture is a representation that allows software engineers to analyze design effectiveness, consider alternatives, and reduce risks. It is not the operational software but a blueprint for its construction.

</details>

#### 89. \_\_\_\_\_\_ term describes testing.

1. Finding incomplete code
2. Evaluating deliverable to find errors
3. SDLC stage of all projects
4. None of the mentioned

<details>

<summary>Show me the answer</summary>

**Answer:** 2. Evaluating deliverable to find errors

**Explanation:**

* Testing involves evaluating deliverables (e.g., code, modules, or systems) to identify errors or defects. It is a critical part of the software development process.

</details>

#### 90. \_\_\_\_\_\_ is also known as Cyclomatic complexity.

1. Black box testing
2. White box testing
3. Grey box testing
4. Blue box testing

<details>

<summary>Show me the answer</summary>

**Answer:** 2. White box testing

**Explanation:**

* Cyclomatic complexity is a metric used in white box testing to measure the complexity of a program's control flow. It helps in identifying the number of independent paths in the code.

</details>

#### 91. In \_\_\_\_\_\_ chart, lower and upper limits are present.

1. Run chart
2. Bar chart
3. Pie chart
4. PERT chart

<details>

<summary>Show me the answer</summary>

**Answer:** 1. Run chart

**Explanation:**

* A run chart displays data over time and often includes lower and upper control limits to indicate acceptable performance ranges. It is used to monitor processes and detect trends or variations.

</details>

#### 92. Maintenance testing is performed using \_\_\_\_\_\_.

1. Retesting
2. Integration testing
3. Breadth test and depth test
4. Acceptance testing

<details>

<summary>Show me the answer</summary>

**Answer:** 3. Breadth test and depth test

**Explanation:**

* Maintenance testing involves both breadth testing (testing the entire system at a high level) and depth testing (testing specific areas in detail) to ensure that changes or updates do not introduce new defects.

</details>

#### 93. \_\_\_\_\_\_ testing is related to the boundary value analysis.

1. White box and black box testing
2. White-box testing
3. Black box testing
4. Grey box testing

<details>

<summary>Show me the answer</summary>

**Answer:** 3. Black box testing

**Explanation:**

* Boundary value analysis is a black box testing technique where test cases are designed to test the boundaries of input domains. It is used to identify errors at the edges of input ranges.

</details>

#### 94. Functional testing is a \_\_\_\_\_\_?

1. Random testing
2. Test level
3. STLC Model
4. Test type

<details>

<summary>Show me the answer</summary>

**Answer:** 4. Test type

**Explanation:**

* Functional testing is a type of testing that focuses on verifying that the system functions according to the specified requirements. It is not a test level or model but a specific type of testing.

</details>

#### 95. What are the different levels of Testing?

1. Integration testing
2. Unit testing
3. System testing
4. All of the above

<details>

<summary>Show me the answer</summary>

**Answer:** 4. All of the above

**Explanation:**

* Testing is performed at multiple levels, including unit testing (testing individual components), integration testing (testing interactions between components), and system testing (testing the entire system). All these levels are essential for ensuring software quality.

</details>

#### 96. Which of the following is not a part of STLC (Software Testing Life Cycle)?

1. Testing and debugging Planning
2. Requirement Gathering
3. Test Design and deploy
4. Testing closure

<details>

<summary>Show me the answer</summary>

**Answer:** 2. Requirement Gathering

**Explanation:**

* Requirement Gathering is part of the Software Development Life Cycle (SDLC), not the Software Testing Life Cycle (STLC). STLC includes phases like test planning, test design, test execution, and test closure.

</details>

#### 97. \_\_\_\_\_\_ is a Sanity testing.

1. Test specification
2. Test Execution Level
3. Test Implementation Level
4. Test process level

<details>

<summary>Show me the answer</summary>

**Answer:** 2. Test Execution Level

**Explanation:**

* Sanity testing is performed at the test execution level to quickly verify that the application is functioning as expected after minor changes. It is a subset of regression testing.

</details>

#### 98. Exhaustive testing can be \_\_\_\_\_\_.

1. Practically possible
2. Impractical but possible
3. Impractical and impossible
4. Always possible

<details>

<summary>Show me the answer</summary>

**Answer:** 3. Impractical and impossible

**Explanation:**

* Exhaustive testing, which involves testing all possible inputs and scenarios, is impractical and impossible for most systems due to the vast number of combinations and the time required.

</details>

#### 99. Black box testing is only functional testing.

1. True
2. False

<details>

<summary>Show me the answer</summary>

**Answer:** 2. False

**Explanation:**

* Black box testing is not limited to functional testing. It can also include non-functional testing, such as performance testing, usability testing, and security testing.

</details>

#### 100. \_\_\_\_\_\_ techniques is applied for usability testing.

1. White box
2. Black box
3. Grey box
4. Yellow box

<details>

<summary>Show me the answer</summary>

**Answer:** 2. Black box

**Explanation:**

* Usability testing is typically performed using black box techniques, where the focus is on the user experience and interface without considering the internal code structure.

</details>
