Q95.Marks: +2.0UGC NET Paper 2: Computer Science 11 March 2023
Match List I with List II
LIST - I
LIST - II
A.
Product complexity
I.
System Requirements Design.
B.
Structured System analysis
II.
Software design.
C.
Coupling & Cohesion
III.
Validation techniques.
D.
Symbolic Execution
IV.
Software cost estimation.
Choose the correct answer from the options given below:
1.A - II, B - III, C - IV, D - I
2.A - III, B - I, C - IV, D - II
3.A - IV, B - I, C - II, D - III✓ Correct
4.A - III, B - IV, C - I, D - II
Solution
The correct answer is A - IV, B - I, C - II, D - III
Key Points
A. Product Complexity - Software cost estimation:
Product complexity refers to the number of components in a product and the intricacy of their interconnections.
As the complexity of the product increases, it becomes harder to estimate costs accurately since many factors like development time, testing, debugging, documentation etc., increase exponentially. Therefore, it is directly related to software cost estimation.
B. Structured System Analysis - System Requirements Design:
Structured system analysis is a traditional method of systems analysis and design that involves a sequence of activities – data flow diagramming, data dictionary, process decomposition and system flowcharting – all of which aim to create a blueprint of the existing system and propose enhancements.
This approach goes hand in hand with System Requirements Design, where the requirements for a new system are defined. Structured system analysis would typically be used to guide and inform this design process.
C. Coupling & Cohesion - Software Design:
Coupling and Cohesion are fundamental software design principles.
Cohesion refers to how closely the responsibilities of a module or a class are related to each other.
High Cohesion is generally preferred as it promotes the maintainability and understandability of the system.
Coupling, on the other hand, relates to the degree to which one class knows about another class.
If a change in one class forces a change in another class, the classes are said to be tightly coupled.
Minimizing coupling is a key aspect of software design, as it enhances modularity and independence between the sections of software.
D. Symbolic Execution - Validation Techniques:
Symbolic Execution is a software testing technique in which programs are executed with symbolic values rather than actual data input.
The aim is to calculate the output on given symbolic values and then solving those expressions in order to have all possible values for testing.
As such, it is often used as a validation technique to ensure the accuracy and quality of software during testing phase, making it an important part of the software development process.