Unit2 - Subjective Questions

CSE320 • Practice Questions with Detailed Answers

1

Explain the Basic Principles of Software Design. How do abstraction and information hiding contribute to a robust design?

2

Define Modularity. What are the benefits of a modular design in software engineering?

3

Differentiate between Cohesion and Coupling. Why is high cohesion and low coupling desirable?

4

List and explain the different Types of Cohesion ranging from lowest to highest reliability.

5

Describe the various Types of Coupling. Which type is the worst and why?

6

How is Module Independence measured? Explain the relationship

.

7

What is a Data Flow Diagram (DFD)? Draw and explain the symbols used in DFDs according to Yourdon/DeMarco or Gane/Sarson notation.

8

Explain the concept of Leveling in DFDs. What is a Context Diagram (Level 0)?

9

State the Rules for Constructing DFDs. Mention at least five common errors to avoid.

10

What are Structure Charts? Describe the specific components and notations used to draw them, including Data Couples and Control Couples.

11

Distinguish between Transform Analysis and Transaction Analysis in the context of system design.

12

Explain the steps involved in Transform Analysis to convert a DFD into a Structure Chart.

13

Discuss the concepts of Fan-in and Fan-out in Structure Charts. What are the design recommendations for them?

14

What are Design Trade-offs? Give examples of common trade-offs faced during software design.

15

Compare Function-Oriented Design and Object-Oriented Design.

16

Describe the Software Design Document (SDD). What are its key components?

17

Explain Design Review Techniques. Differentiate between Walkthroughs and Inspections.

18

What is the Data Dictionary in the context of DFDs? Why is it important?

19

In a DFD, what is the difference between a Physical DFD and a Logical DFD?

20

Explain the concept of Information Hiding. How does it relate to the scope of control in modular design?