Software Engineering


Question 1
Match the problem domains in GROUP I with the solution technologies in GROUP II
GROUP I                                         GROUP II
(P) Service oriented computing                 (1) Interoperability
(Q) Heterogeneous communicating systems        (2) BPMN
(R) Information representation                 (3) Publish-find-bind
(S) Process description                        (4) XML 
A
P-1, Q-2, R-3, S-4
B
P-3, Q-4, R-2, S-1
C
P-3, Q-1, R-4, S-2
D
P-4, Q-3, R-2, S-1
GATE CS 2013    Software Engineering    
Discuss it


Question 1 Explanation: 
The answer can be easily guessed with XML. XML is used for information representation.
Question 2
The following figure represents access graphs of two modules M1 and M2. The filled circles represent methods and the unfilled circles represent attributes. If method m is moved to module M2 keeping the attributes where they are, what can we say about the average cohesion and coupling between modules in the system of two modules? gatecs201315
A
There is no change.
B
Average cohesion goes up but coupling is reduced.
C
Average cohesion goes down and coupling also reduces.
D
Average cohesion and coupling increase.
GATE CS 2013    Software Engineering    
Discuss it


Question 2 Explanation: 
Answer is "No Change" Cohesion refers to the degree to which the elements of a module belong together. Coupling is the manner and degree of interdependence between software modules
Coupling between M1 and M2 = (Number of external links) / 
                             (Number of modules) 
                           = 2/2
                           = 1

Cohesion of a module = (Number of internal links) / 
                       (Number of methods)
                   

Cohesion of M1 = 8/4 = 2
Cohesion of M2 = 6/3 = 2


After moving method m to M2, we get following
cohesion_coupling

Coupling = 2/2 = 1
Cohesion of M1 = 6/3 = 2
Cohesion of M2 = 8/4 = 2 
Question 3
A company needs to develop a strategy for software product development for which it has a choice of two programming languages L1 and L2. The number of lines of code (LOC) developed using L2 is estimated to be twice the LOC developed with Ll. The product will have to be maintained for five years. Various parameters for the company are given in the table below.
Parameter Language L1 Language L2
Man years needed for development LOC/10000 LOC/10000
Development cost per man year Rs. 10,00,000 Rs. 7,50,000
Maintenance time 5 years 5 years
Cost of maintenance per year Rs. 1,00,000 Rs. 50,000
Total cost of the project includes cost of development and maintenance. What is the LOC for L1 for which the cost of the project using L1 is equal to the cost of the project using L2?
A
4000
B
5000
C
4333
D
4667
GATE CS 2011    Software Engineering    
Discuss it


Question 3 Explanation: 
Let LOC of L1=x, so LOC of L2=2x Now, (x/10000)*1000000 + 5*100000 = (2x/10000)*750000 + 5*50000 Solving for x, we get x =5000 Source: http://clweb.csa.iisc.ernet.in/rahulsharma/gate2011key.html
Question 4
A company needs to develop digital signal processing software for one of its newest inventions. The software is expected to have 40000 lines of code. The company needs to determine the effort in person-months needed to develop this software using the basic COCOMO model. The multiplicative factor for this model is given as 2.8 for the software development on embedded systems, while the exponentiation factor is given as 1.20. What is the estimated effort in person-months?
A
234.25
B
932.50
C
287.80
D
122.40
GATE CS 2011    Software Engineering    
Discuss it


Question 4 Explanation: 
In the Constructive Cost Model (COCOMO), following is formula for effort applied
Effort Applied (E) = ab(KLOC)bb [ person-months ]
                   = 2.8 x(40)1.20 
                   = 2.8 x 83.65 
                   = 234.25 
Question 5
Which one of the following is NOT desired in a good Software Requirement Specifications (SRS) document?
A
Functional Requirements
B
Non-Functional Requirements
C
Goals of Implementation
D
Algorithms for Software Implementation
GATE CS 2011    Software Engineering    
Discuss it


Question 5 Explanation: 
The software requirements specification document is a requirements specification for a software system, is a complete description of the behavior of a system to be developed and may include a set of use cases that describe interactions the users will have with the software. In addition it also contains non-functional requirements. Non-functional requirements impose constraints on the design or implementation (such as performance engineering requirements, quality standards, or design constraints) (Source: Wiki) An SRS document should clearly document the following aspects of a system: Functional Requirements, Non-Functional Requirements and Goals of implementation (Source: Fundamentals of Software Engineering by Rajib Mall)
Question 6
The following is the comment written for a C function.
 
        /* This function computes the roots of a quadratic equation
           a.x^2 + b.x + c = . The function stores two real roots
           in *root1 and *root2 and returns the status of validity
           of roots. It handles four different kinds of cases.
           (i) When coefficient a is zero irrespective of discriminant
           (ii) When discreminant is positive
           (iii) When discriminant is zero
           (iv) When discriminant is negative.
           Only in case (ii) and (iii) the stored roots are valid.
           Otherwise 0 is stored in roots. The function returns
           0 when the roots are valid and -1 otherwise.
           The function also ensures root1 >= root2
              int get_QuadRoots( float a, float b, float c,
                 float *root1, float *root2);
        */
A software test engineer is assigned the job of doing black box testing. He comes up with the following test cases, many of which are redundant. gate2011Q38 Which one of the following option provide the set of non-redundant tests using equivalence class partitioning approach from input perspective for black box testing?
A
T1,T2,T3,T6
B
T1,T3,T4,T5
C
T2,T4,T5,T6
D
T2,T3,T4,T5
GATE CS 2011    Software Engineering    
Discuss it


Question 6 Explanation: 
gate2011A38 T2,T4,T5 and T6 belong to different classes. Hence it gives an optimal test suite. Source: http://clweb.csa.iisc.ernet.in/rahulsharma/gate2011key.html
Question 7
The cyclomatic complexity of each of the modules A and B shown below is 10. What is the cyclomatic complexity of the sequential integration shown on the right hand side?
cs201021
A
19
B
21
C
20
D
10
GATE CS 2010    Software Engineering    
Discuss it


Question 7 Explanation: 
Cyclomatic Complexity of module = Number of decision points + 1

Number of decision points in A = 10 - 1 = 9
Number of decision points in B = 10 - 1 = 9
Cyclomatic Complexity of the integration = Number of decision points + 1
                                         = (9 + 9) + 1
                                         = 19
Question 8
What is the appropriate pairing of items in the two columns listing various activities encountered in a software life cycle?
P. Requirements Capture	 1.Module Development and Integration
Q. Design	         2.Domain Analysis
R. Implementation	 3.Structural and Behavioral Modeling
S. Maintenance	         4.Performance Tuning
A
P-3, Q-2, R-4, S-1
B
P-2, Q-3, R-1, S-4
C
P-3, Q-2, R-1, S-4
D
P-2, Q-3, R-4, S-1
GATE CS 2010    Software Engineering    
Discuss it


Question 8 Explanation: 
Module Development and Integration is clearly implementation work Performance Tuning is clearly maintenance work Domain Analysis is clearly Requirements Capture
Question 9
The following program is to be tested for statement coverage:
begin
  if (a== b) {S1; exit;}
  else if (c== d) {S2;]
       else {S3; exit;}
  S4;
end 
The test cases T1, T2, T3 and T4 given below are expressed in terms of the properties satisfied by the values of variables a, b, c and d. The exact values are not given. T1 : a, b, c and d are all equal T2 : a, b, c and d are all distinct T3 : a = b and c != d T4 : a != b and c = d Which of the test suites given below ensures coverage of statements S1, S2, S3 and S4?
A
T1, T2, T3
B
T2, T4
C
T3, T4
D
T1, T2, T4
GATE CS 2010    Software Engineering    
Discuss it


Question 9 Explanation: 
T1 checks S1 

T2 checks S3

T4 checks S2 and S4
Question 10
The coupling between different modules of a software is categorized as follows:
   I.   Content coupling
   II.  Common coupling
   III. Control coupling 
   IV.  Stamp coupling
   V.   Data coupling 
Coupling between modules can be ranked in the order of strongest (least desirable) to weakest (most desirable) as follows:
A
I-II-III-IV-V
B
V-IV-III-II-I
C
I-III-V -II-IV
D
IV-II-V-III-I
GATE-CS-2009    Software Engineering    
Discuss it


Question 10 Explanation: 
See http://en.wikipedia.org/wiki/Coupling_(computer_programming)
There are 40 questions to complete.

Company Wise Coding Practice    Topic Wise Coding Practice