Software-design
Question 1 |
Which of the following approaches is generally applied for module design phase while developing new software?
Top-down approach | |
Bottom-up approach | |
centre fringing | |
depends on the size of software |
Question 2 |
In the context of Object oriented software design, which of the following consequences of use of inheritance is disadvantageous?
Increased coupling between classes | |
Reusable code development
| |
Supports building class hierarchy | |
Supports development of classes with less number of arguments and methods |
Question 3 |
Which of the following software development process is not necessarily useful for developing software for automating an existing manual system for a client?
Prototyping | |
Iterative enhancement | |
Spiral model | |
Waterfall model |
Question 4 |
Match List - I with List - II.
List - I(software design principles)
(A)Cohesion
(B)Coupling
(C)Abstraction
(D)Modularity
List - I1(Definition)
(I)Degree to which one module relies on another module.
(II)Dividing a software system into distinct modules.
(III)Degree to which elements of a module belong together.
(IV)Simplifying complex reality by modeling classes appropriate to the problem.
List - I(software design principles)
(A)Cohesion
(B)Coupling
(C)Abstraction
(D)Modularity
List - I1(Definition)
(I)Degree to which one module relies on another module.
(II)Dividing a software system into distinct modules.
(III)Degree to which elements of a module belong together.
(IV)Simplifying complex reality by modeling classes appropriate to the problem.
(A)-(I),(B)-(II),(C)-(III),(D)-(IV)
| |
(A)-(II),(B)-(III),(C)-(IV),(D)-(I)
| |
(A)-(III),(B)-(I),(C)-(IV),(D)-(II)
| |
(A)-(III),(B)-(IV),(C)-(II),(D)-(I)
|
Question 5 |
Arrange the following steps of feature Drive Development (FDD) process in the correct sequence :
A)Develop an overall model
B)Build by feature
C)Plan by feature
D)Design by feature
E)Build a feature list
Choose the correct answer from the options given below :
A)Develop an overall model
B)Build by feature
C)Plan by feature
D)Design by feature
E)Build a feature list
Choose the correct answer from the options given below :
(A), (C), (B), (E), (D)
| |
(A), (E), (C), (D), (B)
| |
(B), (A), (D), (E), (C) | |
(A), (B), (C), (E), (D)
|
Question 6 |
In a good software design, __________ coupling is desirable between modules.
Highest | |
Lowest | |
Internal | |
External |
Question 6 Explanation:
→ Cohesion is a measure of internal strength within a module, whereas coupling is a measure of inter dependency among the modules.
→ So in the context of modular software design there should be high cohesion and low coupling.
→ So in the context of modular software design there should be high cohesion and low coupling.
Question 7 |
In software project planning, work Breakdown structure must be __________ .
A graph | |
A tree | |
A Eulars graph | |
None of the above |
Question 7 Explanation:
Work Breakdown structure(WBS) must be tree. The tree structure will give overall view of a project. Normally we can divide two types of WBS
1. Functional WBS
2. Activity WBS
WBS tree structure:
1. Functional WBS
2. Activity WBS
WBS tree structure:

Question 8 |
The prototyping model of software development is:
a reasonable approach when requirements are well-defined | |
a useful approach when a customer cannot define requirements clearly. | |
the best approach to use for projects with large development teams. | |
a risky model that rarely produces a meaningful product. |
Question 8 Explanation:
→ The prototyping model of software development is a useful approach when a customer cannot define requirements clearly.
Advantage:
1. We can develop the software where requirements are unclear
2. Customer satisfaction
Disadvantage:
1. Who pay cost of prototype
2. Required the design expertise
Advantage:
1. We can develop the software where requirements are unclear
2. Customer satisfaction
Disadvantage:
1. Who pay cost of prototype
2. Required the design expertise
Question 9 |
A software design pattern used to enhance the functionality of an object at run-time is:
Adapter | |
Decorator | |
Delegation | |
Proxy |
Question 9 Explanation:
→ Software design pattern used to enhance the functionality of an object at run-time is Decorator.
→ Decorator will attach additional responsibilities to an object dynamically keeping the same interface.
→ Decorators provide a flexible alternative to subclassing for extending functionality.
→ Decorator will attach additional responsibilities to an object dynamically keeping the same interface.
→ Decorators provide a flexible alternative to subclassing for extending functionality.
Question 10 |
Which of the following is not one of three software product aspects addressed by McCall’s software quality factors ?
Ability to undergo change | |
Adaptability to new environments | |
Operational characteristics | |
Production costs and scheduling |
Question 10 Explanation:
McCall’s software quality factors
1. Product operation factors − Correctness, Reliability, Efficiency, Integrity, Usability.
2. Product revision factors − Maintainability, Flexibility, Testability.
3. Product transition factors − Portability, Reusability, Interoperability.

1. Product operation factors − Correctness, Reliability, Efficiency, Integrity, Usability.
2. Product revision factors − Maintainability, Flexibility, Testability.
3. Product transition factors − Portability, Reusability, Interoperability.

Question 11 |
‘Abstraction’ is ____________ step of Attribute in a software design.
First | |
Final | |
Last | |
Middle |
Question 11 Explanation:
‘Abstraction’ is first step of Attribute in a software design. The process of removing physical, spatial, or temporal details or attributes in the study of objects or systems in order to more
closely attend to other details of interest.
Question 12 |
Successive layer of design in software using bottom-up design is called :
Layer of Definement | |
Layer of Construction | |
Layer of abstraction | |
None of the above |
Question 12 Explanation:
Successive layer of design in software using bottom-up design is called layer of abstraction.