Software Design Questions and Answers – Static Modelling Heuristics

This set of Basic Software Design Questions and Answers focuses on “Static Modelling Heuristics”.

1. What are the types of responsibilities that occur in software engineering design?
a) An Obligation to do something that is to carry out some tasks(operational)
b) An Obligation to know something that is to maintain some data(data)
c) All of the mentioned
d) None of the mentioned
View Answer

Answer: c
Explanation: There are two types of responsibilities that occur in software engineering design operational responsibility and data responsibility.

2. Which of the following are true for decomposition?
a) Responsibility driven decomposition is a technique for program decomposition in which component responsibilities are decomposed and used to generate sub-components
b) The decomposed responsibilities are assigned to the sub-components, which can then be further decomposed
c) All of the mentioned
d) None of the mentioned
View Answer

Answer: c
Explanation: The statements mentioned are all true with respect to the true decomposition.

3. Designers can use responsibilities to make modules more cohesive and less tightly coupled in several ways such as?
a) Assign modules at most one operational and one data responsibility
b) Assign complementary data and operational responsibilities
c) Make sure module responsibilities do not overlap
d) All of the mentioned
View Answer

Answer: d
Explanation: Designers can use responsibilities to make modules more cohesive and less tightly coupled in all the above mentioned ways.
advertisement
advertisement

4. Inheritance is a powerful design and implementation mechanism that offers which of these advantages?
a) Inheritance captures a generalization-specialization relation between the super-class(es) and the sub-class
b) Inheritance provides reuse of the implementations of attributes and operations in the super-class or super-classes
c) All of the mentioned
d) None of the mentioned
View Answer

Answer: c
Explanation: Inheritance is a powerful design and implementation mechanism that offers the mentioned advantages.

5. Heuristic for Class models include which of these?
a) Use inheritance only when there is a generalization relationship between the sub-class and its super-class(es)
b) Combine common attributes and operations in similar classes into a common super-class
c) All of the mentioned
d) None of the mentioned
View Answer

Answer: a
Explanation: Heuristic for Class models includes- Use inheritance only when there is a generalization relationship between the sub-class and its super-class(es).
Sanfoundry Certification Contest of the Month is Live. 100+ Subjects. Participate Now!

6. What is Delegation?
a) The tactic where in a module en thrusts another module with responsibility is called delegation
b) Delegation not only allows reuse without inheritance but also provides a mechanism to make software much more flexible and configurable
c) All of the mentioned
d) None of the mentioned
View Answer

Answer: c
Explanation: The tactic where in a module en thrusts another module with responsibility is called delegation, Delegation not only allows reuse without inheritance but also provides a mechanism to make software much more flexible and configurable.

7. Which of the following are static modeling heuristics?
a) State both operational and data responsibilities
b) Assign modules at most one operational and one data responsibility
c) Assign complementary data and operational responsibilities
d) All of the mentioned
View Answer

Answer: d
Explanation: Static modelling heuristic includes -State both operational and data responsibilities, Assign modules at most one operational and one data responsibility, Assign complementary data and operational responsibilities.
advertisement

8. Designers can use responsibilities to make modules more cohesive and less tightly coupled in which of the following ways?
a) Assign modules at most one operational and one data responsibility
b) Assign complementary data and operational responsibilities
c) All of the mentioned
d) None of the mentioned
View Answer

Answer: c
Explanation: Designers can use responsibilities to make modules more cohesive and less tightly coupled in the following way – Assign modules at most one operational and one data responsibility, Assign complementary data and operational responsibilities.

9. Which of the following is operational responsibility?
a) An Obligation to do something that is to carry out some tasks
b) An Obligation to know something that is to maintain some data
c) All of the mentioned
d) None of the mentioned
View Answer

Answer: a
Explanation: Operational Responsibility is an obligation to do something that is to carry out some tasks.
advertisement

10. Which of the following is data responsibility?
a) An Obligation to do something that is to carry out some tasks
b) An Obligation to know something that is to maintain some data
c) All of the mentioned
d) None of the mentioned
View Answer

Answer: b
Explanation: Data Responsibility is an obligation to know something that is to maintain some data.

Sanfoundry Global Education & Learning Series – Software Architecture and Design.

To practice basic questions and answers on all areas of Software Design, here is complete set of 1000+ Multiple Choice Questions and Answers on Software Design and Architecture.

If you find a mistake in question / option / answer, kindly take a screenshot and email to [email protected]

advertisement
advertisement
Subscribe to our Newsletters (Subject-wise). Participate in the Sanfoundry Certification contest to get free Certificate of Merit. Join our social networks below and stay updated with latest contests, videos, internships and jobs!

Youtube | Telegram | LinkedIn | Instagram | Facebook | Twitter | Pinterest
Manish Bhojasia - Founder & CTO at Sanfoundry
Manish Bhojasia, a technology veteran with 20+ years @ Cisco & Wipro, is Founder and CTO at Sanfoundry. He lives in Bangalore, and focuses on development of Linux Kernel, SAN Technologies, Advanced C, Data Structures & Alogrithms. Stay connected with him at LinkedIn.

Subscribe to his free Masterclasses at Youtube & discussions at Telegram SanfoundryClasses.