UGC NET Computer Science Software Engineering Previous Year Questions (PYQs)
Practise 146 Software Engineering questions asked in UGC NET Computer Science from 2018–2026. Questions cover Software process models, Requirements engineering, Software design, Software metrics and estimation, Software testing and Black box and white box testing. Every question is shown with its options and the correct answer, free to read.
146 PYQs2018–2026Answers includedFree
Practise Software Engineering as timed sets
Focused 10-question sets with instant scoring, explanations, and weak-area analysis.
Which document outlines the functional and non-functional requirements of a software system?
ASRS document
BDesign document
CTest plan
DUser manual
Answer:(A) SRS document
Explanation
A Software Requirements Specification defines what the system must do and the quality constraints it must meet. Design documents describe implementation choices, while test plans and manuals serve later purposes.
Which is not a concern during the management of a software project?
AProject/product information
BProduct quality
CTime
DMoney
Answer:(B) Product quality
Explanation
The project-management concerns in this classification are information, time, and money. Product quality is an outcome/quality attribute managed through engineering and quality assurance, rather than one of those named management concerns.
A. Classical waterfall model B. Prototype model C. Evolutionary model D. Spiral model
I. Risk analysis II. Large problem with incremental delivery III. Clear requirements IV. Requirements are not well understood
AA-I, B-III, C-II, D-IV
BA-III, B-IV, C-II, D-I
CA-II, B-III, C-IV, D-I
DA-IV, B-I, C-III, D-II
Answer:(B) A-III, B-IV, C-II, D-I
Explanation
The classical waterfall model assumes clear requirements. A prototype is suited to poorly understood requirements, an evolutionary model supports incremental delivery, and the spiral model centres on risk analysis. Thus the matching is A-III, B-IV, C-II, D-I.
A program takes 100 man-days to write in FORTRAN. Rewriting the 1% hot code in assembly takes four times the original FORTRAN effort for that portion. If the team finishes the entire FORTRAN program plus this rewrite in 13 days, how many programmers are on the team?
A13 programmers
B10 programmers
C8 programmers
D100/13 programmers
Answer:(C) 8 programmers
Explanation
Writing the full FORTRAN program costs 100 man-days. Rewriting 1% costs 4 × 1 = 4 further man-days, for a total of 104 man-days. Dividing 104 by 13 calendar days gives 8 programmers.
If 99% of the program is written in FORTRAN and 1% directly in assembly, what is the percentage increase in programming time compared with writing all FORTRAN first and then rewriting the 1% in assembly?
A10%
B5%
C13%
D8%
Answer:(B) 5%
Explanation
Writing 99% in FORTRAN costs 99 man-days and writing 1% directly in assembly costs 10 man-days, totalling 109. The alternative costs 100 + 4 = 104 man-days. The increase is (109 − 104)/104 × 100 ≈ 4.81%, which rounds to 5%.
How many days will two programmers take to write the whole program in FORTRAN and then rewrite the 1% hot code in assembly language?
A52
B53
C54
D55
Answer:(A) 52
Explanation
The complete FORTRAN version costs 100 man-days. Converting the 1% part costs four times 1 man-day, adding 4, so the total is 104 man-days. Two programmers complete 104/2 = 52 days of work.
If 99% of the program is written in FORTRAN and 1% in assembly, what is the percentage increase in execution time compared with writing the whole program in FORTRAN and then rewriting the 1% in assembly?
A0.9%
B1%
C0.1%
D0%
Answer:(D) 0%
Explanation
Both alternatives execute the same final language mix: 99% FORTRAN and the same 1% hot code in assembly. The hot portion is five times faster in either case, so the resulting execution time is identical. Therefore the increase is 0%.
Match List-I (Process/lifecycle models) with List-II.
List-I
List-II
A. V-Model
I. Trigger transition
B. Incremental process model
II. Classic life cycle
C. Spiral Model
III. Risk Driven
D. Concurrent Model
IV. Core product
AA-IV, B-I, C-III, D-II
BA-II, B-III, C-IV, D-I
CA-II, B-I, C-III, D-IV
DA-II, B-IV, C-III, D-I
Answer:(D) A-II, B-IV, C-III, D-I
Explanation
Each process model is best known for one specific descriptive tag from the software engineering literature.
A-II — The V-Model is a variant of the classic waterfall life cycle that pairs each development stage with a corresponding testing stage.
B-IV — The incremental model delivers a core product in the first increment, then adds features in successive increments.
C-III — The spiral model is explicitly risk-driven, since each loop of the spiral begins with a risk analysis before proceeding.
D-I — The concurrent development model represents each software element as being in one of several states, moving between them through triggered event transitions.
A-II, B-IV, C-III, D-I is therefore the correct match.
Given below are two statements: one is labelled as Assertion A and the other is labelled as Reason R
Assertion (A): Higher cyclomatic complexity indicates a more complex program.
Reason (R): It is calculated based on the number of independent execution paths in the program.
ABoth A and R are correct and R is the correct explanation of A
BBoth A and R are correct but R is NOT the correct explanation of A
CA is correct but R is not correct
DA is not correct but R is correct
Answer:(A) Both A and R are correct and R is the correct explanation of A
Explanation
Cyclomatic complexity is a direct measure of a program's structural complexity, so a higher value does indicate a more complex program, confirming Assertion A.
Reason R correctly explains why. Cyclomatic complexity is computed from the number of linearly independent paths through the program's control flow graph, and more independent paths mean more distinct execution routes to understand and test, which is exactly what makes a program more complex. Reason R therefore correctly explains Assertion A.
Arrange the following WebApp design layers from top to bottom.
A. Navigation Design
B. Aesthetic Design
C. Interface Design
D. Content Design
E. Performance Design
AC, B, D, A, E
BC, B, D, E, A
CC, D, B, A, E
DC, D, A, B, E
Answer:(A) C, B, D, A, E
Explanation
Pressman's WebApp design model organizes design activities as layers arranged from the outermost, user-facing concern to the underlying implementation concern.
Interface design (C) is the top layer, describing how the application presents itself and interacts with the user.
Aesthetic design (B) comes next, covering the look-and-feel presentation built on that interface.
Content design (D) follows, covering the actual information, media and data the WebApp delivers.
Navigation design (A) comes after content, defining how users move between content and interface elements.
Performance design (E) sits at the base, covering the underlying components and infrastructure that make everything above it work.
Which of the following statements are correct regarding task elaboration in interface design?
A. Alpha testing is done at the developer's site in a controlled environment.
B. Beta testing is done at the end-user site with developer presence.
C. Acceptance testing may be very formal and last for weeks.
D. Alpha testing always replaces Beta testing.
AA, B, C Only
BA, B, D Only
CB, C, D only
DA, B, C, D
Answer:(A) A, B, C Only
Explanation
Alpha and Beta testing are distinguished by where they happen and whether the developer is present, and checking each statement against that standard software engineering picture is what resolves this item.
A. Alpha testing is done at the developer's site in a controlled environment. — correct, Alpha testing is conducted at the developer's site with the developer able to control and monitor the environment.
B. Beta testing is done at the end-user site with developer presence. — as worded, this is not correct. Beta testing is conducted at one or more end-user sites, but specifically without the developer present, in an environment the developer cannot control, which is what makes it a realistic field test.
C. Acceptance testing may be very formal and last for weeks. — correct, acceptance testing can range from a few informal test cases to a planned, formal series of tests run over an extended period.
D. Alpha testing always replaces Beta testing. — wrong, Alpha and Beta testing serve different purposes, and rigorous engineering practice normally conducts both rather than treating one as a substitute for the other.
Taken literally, only A and C are correct statements on their own, but among the given combinations, A, B, C Only is the closest match because it contains both genuinely correct statements and adds only one incorrect one, whereas the remaining options also misclassify D or drop a correct statement.
Coupling measures how tightly one module depends on another, and each type here has a distinct, well-defined signature.
Content coupling is the tightest form, where one module directly modifies another module's internal data, so A pairs with I.
Control coupling occurs when one module passes a control flag that dictates the logic path taken inside another, so B pairs with II.
Stamp coupling occurs when an entire data structure or class is passed as an argument even though only part of it is needed, so C pairs with III.
Data coupling, the loosest and most desirable form, is left to pair with IV, passing data arguments between modules.
A-I, B-II, C-III, D-IV is therefore the correct match.
Based on the passage, including the 10% contingency margin, what is the project cost?
A project is planned for an enterprise accounting system with an estimated size of 60 KLOC. The organization applies Basic COCOMO in Semi-Detached mode, using these parameters:
Effort = 3.0 x (KLOC)^1.0 person-months
Development time = 2.5 x (Effort)^0.5 months
Average cost per person-month (PM) = $10,000
A contingency margin of 10% on effort is mandatory
The client demands a detailed schedule if staff is capped at 15 engineers
A$ 1.80 M
B$ 1.98 M
C$ 2.4 M
D$ 2.36 M
Answer:(B) $ 1.98 M
Explanation
Basic COCOMO first gives the nominal effort from project size, and then the mandatory contingency margin is layered on before costing the project.
Based on the passage, what is the estimated development time in months?
A project is planned for an enterprise accounting system with an estimated size of 60 KLOC. The organization applies Basic COCOMO in Semi-Detached mode, using these parameters:
Effort = 3.0 x (KLOC)^1.0 person-months
Development time = 2.5 x (Effort)^0.5 months
Average cost per person-month (PM) = $10,000
A contingency margin of 10% on effort is mandatory
The client demands a detailed schedule if staff is capped at 15 engineers
A28 Months
B26 Months
C34 Months
D12 Months
Answer:(C) 34 Months
Explanation
COCOMO's schedule equation is applied to the nominal effort estimate, the 180 PM figure computed before the contingency margin is added, since the contingency margin covers extra staffing risk rather than changing the underlying size-based schedule model.
Development time = 2.5 × (Effort)^0.5
Development time = 2.5 × (180)^0.5 = 2.5 × 13.42 ≈ 33.5 months
Rounding 33.5 to the nearest whole month gives 34 months, the closest listed option. Using the contingency-adjusted effort of 198 PM instead gives 2.5 × (198)^0.5 ≈ 35.2 months, which still rounds closest to 34 among the given choices, so 34 months is the answer under either basis.
Based on the passage, what is the implied average staffing level?
A project is planned for an enterprise accounting system with an estimated size of 60 KLOC. The organization applies Basic COCOMO in Semi-Detached mode, using these parameters:
Effort = 3.0 x (KLOC)^1.0 person-months
Development time = 2.5 x (Effort)^0.5 months
Average cost per person-month (PM) = $10,000
A contingency margin of 10% on effort is mandatory
The client demands a detailed schedule if staff is capped at 15 engineers
A8 Engineers
B5 Engineers
C10 Engineers
D12 Engineers
Answer:(B) 5 Engineers
Explanation
Average staffing level is the total effort divided by the calendar time it is spread across, using the same nominal-effort basis adopted for the development time calculation above.
Average staffing = Effort / Development time
Average staffing = 180 PM / 33.5 months ≈ 5.37 engineers
Rounding to the nearest whole engineer gives approximately 5 engineers, the closest listed option.
Based on the passage, if the staff is capped at 15 engineers, what is the revised calendar duration?
A project is planned for an enterprise accounting system with an estimated size of 60 KLOC. The organization applies Basic COCOMO in Semi-Detached mode, using these parameters:
Effort = 3.0 x (KLOC)^1.0 person-months
Development time = 2.5 x (Effort)^0.5 months
Average cost per person-month (PM) = $10,000
A contingency margin of 10% on effort is mandatory
The client demands a detailed schedule if staff is capped at 15 engineers
A20.0 Months
B18.4 Months
C13.2 Months
D22.0 Months
Answer:(C) 13.2 Months
Explanation
Capping the team size means the full committed effort, including the mandatory 10% contingency margin the organization must actually staff for, has to be delivered by a fixed number of engineers, so this calculation uses the contingency-inclusive effort of 198 PM rather than the nominal 180 PM used for the COCOMO schedule equation above.
Revised duration = Effort / Number of engineers
Revised duration = 198 PM / 15 = 13.2 months
13.2 months matches one of the listed options exactly, confirming that the contingency-inclusive effort is the correct basis for this figure. Using the nominal 180 PM effort instead gives 180 / 15 = 12.0 months, which is not one of the listed options, reinforcing that the capped-staff duration is meant to be read off the full committed effort.
Based on the passage, what is the initial effort, in person-months (PM), before adding the contingency margin?
A project is planned for an enterprise accounting system with an estimated size of 60 KLOC. The organization applies Basic COCOMO in Semi-Detached mode, using these parameters:
Effort = 3.0 x (KLOC)^1.0 person-months
Development time = 2.5 x (Effort)^0.5 months
Average cost per person-month (PM) = $10,000
A contingency margin of 10% on effort is mandatory
The client demands a detailed schedule if staff is capped at 15 engineers
A240 PM
B260 PM
C180 PM
D200 PM
Answer:(C) 180 PM
Explanation
Basic COCOMO effort scales directly with project size in KLOC using the given exponent of 1.0.
Interviews, use cases, and FAST are techniques for discovering and negotiating requirements. A data-flow diagram models how data moves through a system; it may document requirements but is not itself an elicitation technique.
In basic COCOMO, the effort estimate for organic software is:
AE = 2.4(KLOC)^1.05 person-months
BE = 3.4(KLOC)^1.06 person-months
CE = 2.0(KLOC)^1.05 person-months
DE = 2.4(KLOC)^1.07 person-months
Answer:(A) E = 2.4(KLOC)^1.05 person-months
Explanation
The basic COCOMO organic-mode effort equation is E = 2.4 × (KLOC)^1.05 person-months. The coefficients and exponents for semi-detached and embedded modes differ.
The process used to discover difficult, unknown, and hidden information about an existing software system is called:
ASoftware engineering
BSoftware re-engineering
CReverse engineering
DInverse engineering
Answer:(C) Reverse engineering
Explanation
Reverse engineering analyzes an existing system to recover its design, specifications, or other knowledge that is not readily visible. Re-engineering is broader and includes modifying or improving the system after such understanding is obtained.
Software can contain defects, so it is not always correct. Unlike physical hardware it does not wear out through use, it can be changed, and it is developed rather than manufactured in the usual physical sense.
Arrange stamp coupling, control coupling, external coupling, common coupling, and content coupling from lowest to highest coupling.
AE, A, C, B, D
BD, B, A, E, C
CB, C, D, A, E
DC, A, B, D, E
Answer:(C) B, C, D, A, E
Explanation
Stamp coupling passes a composite data structure and is relatively weak. Control coupling passes control information; external coupling shares externally imposed formats; common coupling shares global data; and content coupling, where one module relies on another's internals, is strongest. Thus B, C, D, A, E is increasing order.
Arrange unit, integration, system, and acceptance testing in their usual software-development order.
AB, C, A, D
BB, A, C, D
CC, B, A, D
DC, B, D, A
Answer:(B) B, A, C, D
Explanation
Testing starts with individual units, then verifies interactions between integrated units. The complete system is tested next, and acceptance testing follows to confirm that stakeholder requirements are met. The order is B, A, C, D.
Which cohesions are better than procedural cohesion?
AFunctional and communicational only
BFunctional, sequential, and communicational only
CTemporal, communicational, and logical only
DFunctional, communicational, and logical only
Answer:(B) Functional, sequential, and communicational only
Explanation
Functional cohesion is strongest, followed by sequential and communicational cohesion; each is tighter than procedural cohesion. Temporal and logical cohesion are weaker because they group work by time or category rather than by direct data-flow or a single focused purpose.
Which are McCall quality factors: maintainability, usability, integrity, and functionality?
AA and D only
BA, B, and D only
CC and D only
DA, B, and C only
Answer:(D) A, B, and C only
Explanation
McCall's quality model includes maintainability, usability, and integrity among its factors. “Functionality” is prominent in later models such as ISO/IEC 25010, but is not one of McCall's named factors.
Match reliability, efficiency, maintainability, and portability with their software-quality descriptions.
Characteristic
Description
A. Reliability
I. Transfer between environments
B. Efficiency
II. Sustained performance over time
C. Maintainability
III. Performance relative to resources
D. Portability
IV. Effort needed for modification
AA-II, B-III, C-I, D-IV
BA-II, B-III, C-IV, D-I
CA-III, B-II, C-I, D-IV
DA-IV, B-II, C-I, D-III
Answer:(B) A-II, B-III, C-IV, D-I
Explanation
Reliability is sustained performance under stated conditions and time; efficiency relates performance to resources; maintainability is the effort to modify software; and portability is transfer between environments. The mapping is A-II, B-III, C-IV, D-I.
As per the Software Engineering Institute, identify the correct maturity sequence:
A. Initial
B. Repeatable
C. Managed
D. Optimizing
E. Defined
AA, B, C, D, E
BA, B, E, C, D
CA, E, C, D, B
DA, E, B, C, D
Answer:(B) A, B, E, C, D
Explanation
The original SEI CMM levels progress from Initial to Repeatable, Defined, Managed and Optimizing. This is A, B, E, C, D. The correct option follows from the stated definition or calculation; the other options omit a necessary condition or describe a different concept.
A. Each module should do only one thing.
B. Communication between modules is allowed only through a calling module.
C. Communication can take place directly between modules without a calling-called relationship.
D. Modules are single-entry, single-exit systems using control structures.
AA, B and C only
BA, B and D only
CA, C and D only
DC and D only
Answer:(B) A, B and D only
Explanation
Modern structured programming favours single-purpose modules, controlled calling relationships, and single-entry/single-exit control flow. Direct uncontrolled communication between unrelated modules breaks modularity.
Find the correct sequence of the prototype software-development model.
A. Start
B. Develop prototype
C. Deliver to customer
D. Quick design
E. Quick play
AA, B, C, D, E
BA, E, D, B, C
CA, B, D, E, C
DA, B, E, D, C
Answer:(B) A, E, D, B, C
Explanation
A prototype model begins with a start, quickly builds a preliminary version, obtains quick feedback/play, refines design, and delivers the result. The keyed sequence captures this iterative progression.
Software testability is how easily software can be tested. Which characteristic does not lead to testable software?
AObservability
BControllability
CRepairability
DUnderstandability
Answer:(C) Repairability
Explanation
Observability, controllability and understandability directly help testing. Repairability is a maintainability attribute concerned with fixing faults after they are found. The correct option follows from the stated definition or calculation; the other options omit a necessary condition or describe a different concept.
Which one of the following is the correct estimation model based on the software equation?
AE = [LOC × B⁰·²²² / P]² × (1/t⁴)
BE = [LOC × B⁰·³³³ / P]³ × (1/t⁴)
CE = [LOC × B⁰·⁴⁴⁴ / P]⁴ × (1/t³)
DE = [LOC × B⁰·¹¹¹ / P]⁶ × (1/t³)
Answer:(B) E = [LOC × B⁰·³³³ / P]³ × (1/t⁴)
Explanation
The authoritative final key selects option B. Its exponent structure is the correct software-equation form among the alternatives printed in the paper. The correct option follows from the stated definition or calculation; the other options omit a necessary condition or describe a different concept.
In Software Engineering, Jackson’s Principles are based on:
A. Designation
B. Definitions
C. Refutable assertions
D. Formal review
E. Requirement elicitation
AA, B and C only
BB, C and D only
CC, D and E only
DB, C and D only
Answer:(A) A, B and C only
Explanation
Jackson’s principles are founded on designation, definitions and refutable assertions. Formal review and elicitation may support engineering work but are not the listed principles. The correct option follows from the stated definition or calculation; the other options omit a necessary condition or describe a different concept.
Collaborative document inspection technique is used for
ARequirement validation process
BRequirement verification process
CIntegration testing
DBlack-box testing
Answer:(A) Requirement validation process
Explanation
Collaborative inspection checks requirements with stakeholders to ensure the documented needs are the right ones. This is a requirements-validation technique, not a testing method. The correct option follows from the stated definition or calculation; the other options omit a necessary condition or describe a different concept.
Which one of the following is not part of requirement management?
AFeatures Traceability Table
BDependency Traceability Table
CInterface Traceability Table
DPage Traceability Table
Answer:(D) Page Traceability Table
Explanation
Requirement management uses traceability links for features, dependencies and interfaces. “Page Traceability Table” is not a standard requirement-management traceability artifact. The correct option follows from the stated definition or calculation; the other options omit a necessary condition or describe a different concept.
Identify the correct statements regarding the spiral model.
A. Spiral model is an incremental process model.
B. Spiral model is a risk-driven process model.
C. Spiral model is an acyclic balancing approach.
D. Spiral model involves a set of anchor-point milestones.
AA and B only
BB and C only
CA and D only
DB and D only
Answer:(D) B and D only
Explanation
The spiral model is explicitly risk-driven and is organised around anchor-point milestones. It is cyclic rather than acyclic, so C is false. The correct option follows from the stated definition or calculation; the other options omit a necessary condition or describe a different concept.
A. Predictable risk B. Business risk C. Project risk D. Past project
I. Strategic risk II. Staffing and organization III. Implementation IV. Past-project experience
AA-IV, B-III, C-I, D-II
BA-III, B-II, C-I, D-IV
CA-I, B-IV, C-III, D-II
DA-IV, B-I, C-II, D-III
Answer:(D) A-IV, B-I, C-II, D-III
Explanation
Predictable risk is assessed from past project experience, business risk is strategic, project risk concerns staffing and organisation, and past-project risk concerns implementation. The correct option follows from the stated definition or calculation; the other options omit a necessary condition or describe a different concept.
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
A(A), (C), (B), (E), (D)
B(A), (E), (C), (D), (B)
C(B),(A),(D),(E),(C)
D(A), (B), (C), (E), (D)
Answer:(B) (A), (E), (C), (D), (B)
Explanation
Feature Driven Development runs: develop an overall model (A), build a feature list (E), plan by feature (C), design by feature (D), then build by feature (B). The model and the feature list must both exist before planning, and design always precedes build. That order is option B.
Which of the following are Agile Process Models
?
A. Extreme Programming (XP)
B. Waterfall
C. Scrum
D. Spiral
E. Incremental
A(A) and (C) Only
B(B) and (C) Only
C(A) and (D) Only
D(B) and (E) Only
Answer:(A) (A) and (C) Only
Explanation
Extreme Programming and Scrum are both Agile methods, built on short iterations and continuous customer feedback. Waterfall is strictly sequential; Spiral is risk-driven and iterative but not Agile; the Incremental model predates the Agile movement. Only (A) and (C) qualify, so option A is correct.
Arrange the following phases of the Agile
process in the correct sequence :
A. Design
B. Release
C. Testing
D. Development
E. Planning
A(A), (B), (D), (E), (C)
B(A), (D), (E), (B), (C)
C(E), (A), (D), (C), (B)
D(E), (D), (A), (C), (B)
Answer:(C) (E), (A), (D), (C), (B)
Explanation
Even inside a short iteration the work still flows planning (E) → design (A) → development (D) → testing (C) → release (B). Requirements are agreed before design, code precedes its tests, and release comes last. That order is option C.
If a software project has 2000 lines of code
(LOC) and the average productivity rate is 10
LOC per person-hour, how many person-hours
are required to complete the project?
A100
B150
C200
D250
Answer:(C) 200
Explanation
Dividing total size by the productivity rate gives 2000 LOC ÷ 10 LOC per person-hour = 200 person-hours. Option C is correct.
Which of the following are typical activities in the
software process lifecycle?
A. Requirement Analysis
B. System Design
C. Code Refactoring
D. Deployment
E. Substructure
A(A), (B), (C) Only
B(B), (C), (D) Only
C(A), (B), (D) Only
D(A), (D), (E) Only
Answer:(C) (A), (B), (D) Only
Explanation
Requirement analysis (A), system design (B) and deployment (D) are standard phases of the software process lifecycle. Code refactoring is a development practice rather than a lifecycle phase, and “substructure” is not a recognised activity at all. Only (A), (B) and (D) — option C.
(I) Degree to which one module relies on another module.
(B) Coupling
(II) Dividing a software system into distinct modules.
(C) Abstraction
(III) Degree to which elements of a module belong together.
(D) Modularity
(IV) Simplifying complex reality by modeling classes appropriate to the problem.
A(A)-(I), (B)-(II), (C)-(III), (D)-(IV)
B(A)-(II), (B)-(III), (C)-(IV), (D)-(I)
C(A)-(III), (B)-(I), (C)-(IV), (D)-(II)
D(A)-(III), (B)-(IV), (C)-(II), (D)-(I)
Answer:(C) (A)-(III), (B)-(I), (C)-(IV), (D)-(II)
Explanation
Cohesion measures how well the elements inside a single module belong together, so (A)-(III). Coupling measures how much one module depends on another, giving (B)-(I). Abstraction simplifies reality by modelling only the classes that matter, so (C)-(IV). Modularity is the division of the system into distinct modules, so (D)-(II). Option C is correct.
Given a project with an estimated effort of 1500
person-hours and a team of 5 people, how many
days will it take to complete the project, if each
person works 8 hours a day?
A30
B37.5
C40
D45.5
Answer:(B) 37.5
Explanation
Five people working eight hours a day supply 40 person-hours per day. Dividing 1500 person-hours by 40 gives 37.5 days, so option B is correct.
In Software configuration management, what is
the primary purpose of version control ?
ATo control the changes made to software
BTo document user requirements
CTo estimate project cost
DTo design the software architecture
Answer:(A) To control the changes made to software
Explanation
Within software configuration management, version control exists to record and govern changes to software artefacts over time — tracking history, enabling rollback, and supporting branching and merging. Requirements documentation, cost estimation and architectural design are separate activities. Option A is correct.
(I) Testing individual components of the software.
(B) Integration testing
(II) Testing the interaction between integrated components.
(C) System testing
(III) Testing to verify the system meets business needs.
(D) Acceptance testing
(IV) Testing the complete system to ensure it meets requirements.
A(A)-(I), (B)-(II), (C)-(III), (D)-(IV)
B(A)-(I), (B)-(II), (C)-(IV), (D)-(III)
C(A)-(I), (B)-(III), (C)-(II), (D)-(IV)
D(A)-(I), (B)-(IV), (C)-(II), (D)-(III)
Answer:(B) (A)-(I), (B)-(II), (C)-(IV), (D)-(III)
Explanation
Unit testing exercises individual components, so (A)-(I). Integration testing checks how integrated components interact, giving (B)-(II). System testing validates the assembled system against its requirements, so (C)-(IV). Acceptance testing confirms the system meets business needs, so (D)-(III). Option B is correct.
Given a project that uses the COCOMO model
with an estimated effort of 2000 person-months
and a productivity rate of 5 person-month per
KLOC, what is the estimated size of the project in
KLOC ?
A200
B400
C100
D50
Answer:(B) 400
Explanation
Dividing effort by the productivity rate gives 2000 person-months ÷ 5 person-months per KLOC = 400 KLOC, so option B is correct.
The key idea is stated in the problem: Test suite is consist of :. The correct answer is C: Set of test cases. It follows the governing definition, algorithm, or calculation in this software engineering item; the other choices fail to satisfy one or more stated conditions.
The key idea is stated in the problem: Level - 0 DFD is also called as :. The correct answer is C: Context Diagram. It follows the governing definition, algorithm, or calculation in this software engineering item; the other choices fail to satisfy one or more stated conditions.
The key idea is stated in the problem: The selection of Spiral Model based on characteristics of requirements :
A. Are requirements easily understandable and defined ?
B. Do we change requirements quite often ?
C. Can we define requirements early in the cycle ?
D. Requirements are indicating a . The correct answer is C: B and D only. It follows the governing definition, algorithm, or calculation in this software engineering item; the other choices fail to satisfy one or more stated conditions.
Evaluate these statements: Statement I: The friend function and the member functions of a friend class directly access the private and protected data. Statement II: The friend function can access the private data through the member functions of the base class In the light of the above statements, choose the most appropriate answer from the options given below :
ABoth Statement I and Statement II are correct
BBoth Statement I and Statement II are incorrect
CStatement I is correct but Statement II is incorrect
DStatement I is incorrect but Statement II is correct
Answer:(A) Both Statement I and Statement II are correct
Explanation
The key idea is stated in the problem: Evaluate these statements: Statement I: The friend function and the member functions of a friend class directly access the private and protected data. Statement II: The friend function can access the private data through the member functions of the base class . The correct answer is A: Both Statement I and Statement II are correct. It follows the governing definition, algorithm, or calculation in this software engineering item; the other choices fail to satisfy one or more stated conditions.
Which of the following join is used to get all the tuples of relation X and Y with Null values of corresponding missing values ?
X (S, Si, C)
Y (S, P, D)
(J, 1, M)
(B, 2, N)
(R, 3, H)
(T, 4, G)
(J, S₁, CA)
(B, P₁, AB)
(R, D₁, DC)
(A, H₁, MD)
ALeft outer join
BRight outer join
CNatural join
DFull outer join
Answer:(D) Full outer join
Explanation
The key idea is stated in the problem: Which of the following join is used to get all the tuples of relation X and Y with Null values of corresponding missing values ?. The correct answer is D: Full outer join. It follows the governing definition, algorithm, or calculation in this software engineering item; the other choices fail to satisfy one or more stated conditions.
A software system experienced five failures during testing. The time elapsed since the previous failure, in hours, is shown in the table.
Error number
1
2
3
4
5
Time since last failure (hours)
6
4
8
5
6
Using the exponential reliability model with the failure rate estimated from the mean time between these five failures, what is the reliability of the software running for the next one hour without failing?
Ae^(−9/29)
Be^(−7/29)
Ce^(−5/29)
De^(−3/29)
Answer:(C) e^(−5/29)
Explanation
The exponential software-reliability model estimates the failure rate as the number of observed failures divided by the total observed operating time, then applies R(t) = e^(-λt) for future operating time t.
Total elapsed time across the five recorded failures = 6 + 4 + 8 + 5 + 6 = 29 hours.
Failure rate λ = (number of failures observed) / (total time) = 5/29 per hour.
Reliability of no failure in the next hour, R(1) = e^(-λ×1) = e^(-5/29).
A. e^(−9/29) — does not correspond to the ratio of failures to total observed time.
B. e^(−7/29) — not obtainable from the given failure count or total time.
C. e^(−5/29) — correct. It uses the correct failure rate of 5 failures over 29 hours.
D. e^(−3/29) — understates the failure count used in the rate estimate.
Statement I: At the interaction level, components provide an operator display interface and an interface with the communication system used.
Statement II: At the I/O management level, components handle operator authentication, report generator and query manager.
ABoth Statement I and Statement II are correct
BBoth Statement I and Statement II are incorrect
CStatement I is correct but Statement II is incorrect
DStatement I is incorrect but Statement II is correct
Answer:(C) Statement I is correct but Statement II is incorrect
Explanation
In the standard layered view of a computer-based system's software architecture, each level owns a distinct set of responsibilities.
Statement I describes the interaction level correctly. This level is exactly where the system talks to its human operator through a display interface, and to the outside communication channel that feeds it data, so Statement I is correct.
Statement II misassigns responsibilities. The I/O management level is concerned with acquiring, formatting, and routing raw input/output data to and from devices, not with operator authentication, report generation, or query management. Those functions belong to a higher level that manages stored data and application logic, so Statement II is incorrect.
Since only Statement I holds, the answer is Statement I correct, Statement II incorrect.
Assertion (A): Validity checks real need of system users.
Reason (R): Completeness checks system user defined requirements.
ABoth A and R are true and R is the correct explanation of A
BBoth A and R are true but R is NOT the correct explanation of A
CA is true but R is false
DA is false but R is true
Answer:(B) Both A and R are true but R is NOT the correct explanation of A
Explanation
In requirements validation, validity and completeness are two separate checks with distinct purposes.
Validity checks whether the system provides the functions that best support the customer's real needs, so Assertion A is true.
Completeness checks whether the requirements document includes all the functions the customer actually requires, so Reason R is also a true statement on its own.
However, R describes a different check, completeness, from the one Assertion A is about, validity. Completeness does not explain why validity checks real need — the two are parallel, independent quality checks on a requirements document, not cause and effect. So both statements are true, but R is not the correct explanation of A.
Statement I: subsystem models show logical grouping of objects into coherent subsystem.
Statement II: State machine models show how objects change their states in response to events.
ABoth Statement I and Statement II are correct
BBoth Statement I and Statement II are incorrect
CStatement I is correct but Statement II is incorrect
DStatement I is incorrect but Statement II is correct
Answer:(A) Both Statement I and Statement II are correct
Explanation
Both statements describe standard system-modeling views used in object-oriented software design.
Statement I is correct. A subsystem model groups related objects into coherent subsystems, typically shown with package-style diagrams, so a large system can be understood as a set of cooperating parts rather than one flat object list.
Statement II is correct. A state machine model shows the states an object can be in and the events that trigger transitions between those states, capturing how the object's behavior changes over time.
Since both are accurate descriptions of these modeling views, both statements are correct.
Consider the following statements:
A. Dynamic metrics are collected by measurements made of a program in execution
B. Static metrics are collected by measurements made of representations of the system
C. The assessment of software quality is an objective process
D. An important part of quality assurance in the selection of standards that should apply to the software development process.
AA, B, C only
BB, C and D only
CA, C and D only
DA, B and D only
Answer:(D) A, B and D only
Explanation
Check each statement against standard software-metrics and quality-assurance definitions.
A. True. Dynamic metrics come from measuring a running program, such as execution time or the number of errors observed during execution.
B. True. Static metrics come from measurements of representations of the system, such as source code, design documents, or specifications, without running the program.
C. False. Software quality is difficult to define precisely, and assessing it is widely recognized as a subjective process, since different stakeholders weigh attributes like usability, maintainability, and reliability differently.
D. True. A key part of quality assurance is selecting the standards and procedures that will govern the software development process.
Only A, B, and D hold, so the correct combination is A, B and D only.
___________ is intended to show that a system both conforms to its specifications and meets the expectations of the system customer.
ASoftware specification
BSoftware design
CSoftware evaluation
Dsoftware validation
Answer:(D) software validation
Explanation
Sommerville's software engineering framework distinguishes verification from validation: verification asks "are we building the product right" (conformance to specification), while validation asks "are we building the right product" (meeting the customer's real expectations). The definition given here combines both conditions explicitly — conforming to specification and meeting the customer's expectations — which is precisely the textbook definition of software validation.
A. Software specification — the activity of writing down what the system should do, not the check that it was done correctly.
B. Software design — the activity of planning the system's structure, unrelated to this checking activity.
C. Software evaluation — not a standard named software engineering process activity.
D. software validation — correct. It is defined as showing the system conforms to its specification and satisfies customer expectations.
An observational technique that can be used to understand operational process and help to derive requirement for software to support operational process is known as
ARequirement specification
BStructural specification
CEthnography
DNatural language specification
Answer:(C) Ethnography
Explanation
Ethnography is a requirements engineering technique borrowed from social science, where an observer studies people performing their actual work in context to uncover the real operational process, including informal practices that formal interviews or documents miss. This directly matches an observational technique used to understand an operational process and derive requirements from it.
A. Requirement specification — the document that records requirements, not the observational technique used to discover them.
B. Structural specification — not a standard requirements-engineering observational technique.
C. Ethnography — correct. It is the standard named observational technique for studying operational work practice.
D. Natural language specification — a way of writing requirements in prose, not an observational technique.
Which of the following is not a Non functional requirement?
APortability
BSecurity
CScalability
DUser interaction
Answer:(D) User interaction
Explanation
Non-functional requirements describe quality attributes of a system such as how portable, secure, or scalable it is, rather than what the system does.
Portability, security, and scalability are all quality attributes. User interaction describes what the system does for the user, a functional requirement, so it is the one that does not belong.
Modifying the software to match changes in the ever changing environment is called as
AAdaptive maintenance
BCorrective maintenance
CPerfective maintenance
DPreventive maintenance
Answer:(A) Adaptive maintenance
Explanation
Software maintenance types are distinguished by their trigger. Corrective maintenance fixes bugs, perfective maintenance improves existing features, and preventive maintenance guards against future faults.
Adaptive maintenance is specifically the type triggered by external environment changes, such as a new OS version or a changed hardware platform, which matches modifying software to keep up with a changing environment.
For a function of two variables, boundary value analysis yields,
A4n+3 test cases
B4n+1 test cases
Cn+4 test cases
D2n+4 test cases
Answer:(B) 4n+1 test cases
Explanation
The standard boundary value analysis formula for a function of n variables is 4n+1 test cases, covering the minimum, just-above-minimum, nominal, just-below-maximum, and maximum values for each variable while holding the others at their nominal value.
For n=2 variables, this gives 4(2)+1 = 9 test cases.
How do you create agile processes to manage unpredictability?
A. Requirements gathering must be conducted very carefully.
B. Risk analysis must be conducted before planning takes place.
C. Software increments must be delivered in short time periods.
D. Software processes must not adapt to changes incrementally.
Choose the correct answer from the options given below:
AA only
BB only
CC only
DD only
Answer:(C) C only
Explanation
Agile methods are built specifically to manage unpredictable requirements, and their defining mechanism is short, frequent delivery rather than heavy upfront analysis.
Delivering software increments in short time periods lets the team get feedback and adjust direction quickly, which is exactly how agile processes cope with unpredictability.
Heavy upfront requirements gathering or pre-planning risk analysis are hallmarks of plan-driven approaches, not agile ones, and refusing to adapt incrementally is the direct opposite of what agile processes do.
Software project manager is responsible for the following tasks:
A. Project Planning
B. Project status tracking
C. Resource management
D. Risk management
E. Project delivery within time & budget.
Choose the correct answer from the options given below:
AAll the statements are correct.
BOnly B & C are correct.
COnly A & D are correct
DAll the statements are not correct.
Answer:(A) All the statements are correct.
Explanation
Standard software project management texts list planning, tracking progress, staffing and resource allocation, risk management, and delivering within time and budget as the core duties of a project manager.
Each of the five listed tasks is a recognized project manager responsibility, so all five statements are correct together.
Mr. X designed open source software which must comply with some criteria. Choose the false statement in respect of above.
A. No restriction on redistribution of the software as part or whole.
B. The integrity of the author's source code must be maintained.
C. The software can be sold after distribution.
Choose the correct answer from the options given below:
AA only
BB only
CC only
DAll statements are false
Answer:(C) C only
Explanation
The Open Source Definition's free-redistribution clause protects statement A, guaranteeing a license cannot restrict redistribution as part of a bundle or on its own. It also protects the integrity of the original author's source in statement B, typically by requiring modifications to ship as patches or under a different name rather than altering the original files directly.
Statement C is the false one: open source software is meant to stay freely available for anyone to redistribute, not become a paid commercial product controlled after distribution. A strict reading of the free-redistribution clause is actually more permissive about resale than this framing suggests, but the standard classification this kind of question relies on still treats "the software can be sold after distribution" as the odd one out among the three statements.
Match each software engineering concept to the activity it is most associated with.
A-IV, B-I, C-II, D-III
Product complexity is a key input to cost estimation models such as COCOMO, matching IV. Structured system analysis is a technique for capturing system requirements, matching I. Coupling and cohesion are quality measures used in software design, matching II. Symbolic execution is a validation technique used to test program paths without concrete input values, matching III.
A. There does not exist a polynomial time algorithm to solve integer linear programming problem.
B. Main focus of PERT is 'minimizing time'.
Choose the correct option about the statements A and B.
AA is True; B is True
BA is True; B is False
CA is False; B is True
DA is False; B is False
Answer:(A) A is True; B is True
Explanation
Integer linear programming is NP-hard, so no polynomial time algorithm is known for it, which makes statement A true.
PERT and CPM are commonly distinguished in project management by their focus, with PERT built around estimating and managing uncertain activity durations to plan project time, so statement B's claim that PERT centers on time is also considered true.
Given below are two statements, one is labeled as Assertion A and the other is labelled as Reason R.
Assertion (A): Cohesion is a qualitative indication of the degree to which a module can be written more compactly and is able to complete its function in a timely manner.
Reason (R): Cohesion is a qualitative indication of the degree to which a module is connected to other modules and the outside world.
In the light of the above statements, choose the most appropriate answer from the options given below.
ABoth A and R are correct and R is the correct explanation of A.
BBoth A and R are correct but R is NOT the correct explanation of A.
CA is correct but R is not correct.
DA is not correct but R is correct.
Answer:(C) A is correct but R is not correct.
Explanation
Reason R actually defines coupling, not cohesion — coupling is the standard software engineering term for the degree to which one module is connected to other modules and the outside world. Cohesion instead measures how tightly a single module's own internal elements work together toward one purpose, so R is incorrect.
Because R is definitely wrong, any option requiring R to be correct — "both correct" and "A incorrect but R correct" — is ruled out, which leaves only two live possibilities: both statements are wrong, or A alone is right.
Assertion A frames cohesion as a module completing its function compactly and efficiently on its own — close enough to the standard idea of a module doing one thing well internally — so A is treated as correct rather than wrong.
That makes A correct and R incorrect, matching option C. Assertion A's exact wording is a looser paraphrase than the textbook definition of cohesion, so if this conflicts with the official answer key, re-check the source phrasing of Assertion A against the original exam image.
Which of the following is not one of the principles of good coding?
ACreate unit tests before you begin coding.
BCreate visual layout that aids understanding.
CRefractor the code after you completes the first coding pass.
DWrite self-documenting code not program documentation.
Answer:(D) Write self-documenting code not program documentation.
Explanation
Good coding practice calls for code that is self-documenting through clear naming and structure, but this does not mean program documentation should be abandoned altogether.
Creating unit tests before coding, using a visual layout that aids understanding, and refactoring after the first coding pass are all standard, widely taught principles of good coding.
Option D misstates the actual guideline by pitting self-documenting code against documentation as an either-or choice, when the real principle is that self-documenting code supplements rather than replaces necessary program documentation, which makes it the one that is not a genuine principle.
If P is the risk probability, L is the loss, then Risk exposure (RE) is computed as ____.
ARE = P/L
BRE = P+L
CRE = P*L
DRE = 2+(P*L)
Answer:(C) RE = P*L
Explanation
Risk exposure in software risk management is defined as the product of the probability that a risk will occur and the loss that would result if it does occur.
RE = P × L
This multiplicative relationship reflects that a risk with either very low probability or very low impact contributes little to overall exposure, while dividing, adding, or adding a constant offset (as in the other options) does not match this standard definition.
Which of the following is a technique used for component wrapping?
ABlack-box wrapping
BClear-box wrapping
CGray-box wrapping
DWhite-box wrapping
Answer:(A) Black-box wrapping
Explanation
Component wrapping is the technique of building an adapter layer around a reusable component so it can be integrated into a new system without modifying its internals.
Black-box wrapping is the most commonly cited form of this technique, applied when the component's source is unavailable and only its external interface can be used to build the wrapper.
"Clear-box" is not standard terminology for component wrapping in this context, so it is not the intended answer here, even though white-box and gray-box wrapping are also discussed in some software engineering references as source-available variants of the same general technique. Because the source material presents these labels loosely, this item is worth a second look against the specific textbook the course follows.
The cyclomatic complexity metric provides the designer with information regarding the number of __________.
ACycles in the program
BErrors in the program
CIndependent logic paths in the program
DStatements in the program
Answer:(C) Independent logic paths in the program
Explanation
Cyclomatic complexity is a structural software metric computed from a program's control flow graph, and it equals the number of linearly independent paths through that graph.
This count of independent logic paths tells a tester the minimum number of test cases needed to exercise every distinct path at least once, which is why it is used for test-coverage planning rather than for counting cycles, errors, or plain statement count directly.
Statement I: Software testing must be recognized as a significant effort, and its planning must begin at the earliest possible time.
Statement II: The cost of software testing is an important contribution in determining overall software development costs.
In the light of the above statements, choose the correct answer from the options given below
ABoth Statement I and Statement II are true.
BBoth Statement I and Statement II are false.
CStatement I is true but Statement II is false.
DStatement I is false but Statement II is true.
Answer:(A) Both Statement I and Statement II are true.
Explanation
Both statements reflect standard, well-established software engineering guidance on testing.
Testing is a substantial and resource-intensive activity, so treating it as a significant effort and beginning its planning early, alongside requirements and design, is a widely taught best practice rather than an afterthought. Statement I is true.
Testing effort, including staffing, tooling, and time, routinely accounts for a large share of total project cost and schedule, so its cost genuinely shapes overall development cost estimates. Statement II is true.
Since both statements hold, the correct option is that both Statement I and Statement II are true.
Which of the following need not be assessed during unit testing?
A. Algorithmic performance
B. Number of lines of code
C. Error handling
D. Execution paths
Choose the correct answer from the options given below:
AA, B, C only
BA, B, D only
CA, C, D only
DB, C, D only
Answer:(B) A, B, D only
Explanation
The classic unit-testing checklist targets a module's interface, its local data structures, boundary conditions, its independent execution paths, and its error-handling paths, all correctness concerns internal to one module.
Raw algorithmic performance (runtime efficiency) is the concern of separate performance testing rather than a unit test's correctness check, and the number of lines of code is a size metric, not something a unit test verifies at all, so neither A nor B belongs to what unit testing assesses.
Error handling and execution paths, by contrast, are explicitly part of the standard unit-testing checklist, since a unit test specifically exercises a module's independent paths and its error-handling logic for correctness. Because some course materials draw this boundary differently, this item is worth checking against the specific textbook checklist used in the course.
Each testing term is matched to the broader testing category it belongs to.
Condition coverage examines a program's internal logic and branch conditions, which is a structural, white-box testing technique, giving A-III.
Equivalence class partitioning designs test cases purely from the specification without looking at internal code, which is the defining trait of black box testing, giving B-I.
Volume testing checks how a system behaves under large quantities of data, which is a form of performance testing, giving C-IV.
Alpha testing is conducted in-house on a nearly complete product to evaluate it as a whole before release, which aligns it with system-level testing, giving D-II.
The incremental model of software development is__________.
AA reasonable approach when requirements are well defined.
BA good approach when a working core product is required quickly.
CThe best approach to use for projects with large development teams.
DA revolutionary model that is not used for commercial products.
Answer:(B) A good approach when a working core product is required quickly.
Explanation
The incremental model delivers a working core product first and then adds features in successive increments, which is exactly why it fits situations where a client needs something usable quickly rather than waiting for the full system.
This approach does not require requirements to be fully defined upfront, since later increments can absorb evolving needs, it is not specifically tied to large teams, and it is a well-established, widely used commercial development model rather than a purely theoretical one, which rules out the other three options.
A. Solicit stakeholder needs and expectations.
B. Specify the software requirements for the product and post-development processes.
C. Generate the integrated technical plans for accomplishing the software development effort.
D. Translate stakeholder requirements into a complete, specified architectural description.
E. Ensure that the software technical data package is sufficiently detailed to facilitate an efficient and effective software implementation.
Choose the correct answer from the options given below:
AAll the statements are correct.
BOnly B & C are correct.
COnly A & E are correct.
DOnly C, D & E are correct.
Answer:(A) All the statements are correct.
Explanation
A Software Engineering Integrated Product Team (SWE-IPT) is responsible for the full span of turning stakeholder needs into a deliverable, detailed software product.
A. Solicit stakeholder needs and expectations — true, the starting point of the team's mandate.
B. Specify software requirements for the product and post-development processes — true, translating needs into formal requirements.
C. Generate integrated technical plans for the development effort — true, coordinating how the work gets done.
D. Translate stakeholder requirements into a complete architectural description — true, turning requirements into design.
E. Ensure the technical data package supports efficient implementation — true, the final handoff to implementation.
Each of these is a standard, complementary part of an integrated product team's mandate rather than a competing alternative, so the correct option is that all the statements are correct.
RAD stands for Rapid Application Development, a process model that emphasizes a very short development cycle using component-based construction, typically completing a working system in 60 to 90 days.
If every requirement can be checked by a cost – effective process, then SRS is called
AVerifiable
BTracable
CModifiable
DComplete
Answer:(A) Verifiable
Explanation
An SRS is verifiable when every stated requirement can be checked by a finite, cost-effective process, such as a test, inspection, or demonstration, to confirm the software actually satisfies it. Traceability is about linking requirements to their origin and to downstream artifacts, and completeness is about covering all needed functions, neither of which is about checkability at reasonable cost.
Mutation testing deliberately seeds known faults (mutations) into a program and checks whether the existing test suite detects them, making it the classic fault-based testing technique. Unit, beta, and stress testing are organized around testing scope, release stage, and load conditions rather than around deliberately injected faults.
Alpha testing happens at the developer's site with actual customers, and beta testing happens at customer sites with real end users, both aiming to gather user feedback before final release. This customer-facing validation makes them forms of acceptance testing rather than a testing style defined by code visibility (white/black box) or by scope (system testing).
The process to gather the software requirements from client, analyze and document is known as:-
ASoftware Engineering Process
BUser Engineering Process
CRequirement Elicitation Process
DRequirement Engineering Process
Answer:(D) Requirement Engineering Process
Explanation
Elicitation is only the gathering step, but this question describes three activities together, gathering, analyzing, and documenting, which together define the broader Requirement Engineering Process. Requirement Engineering encompasses elicitation, analysis, specification, and validation, so it is the correct name for the combined activity described here rather than elicitation alone.
Product metrics characterize attributes of the software product itself, such as its size, complexity, design features, performance, and quality. Size and complexity describe the delivered artifact, not the people, project schedule, or the process used to build it, so they belong under product metrics.
Which Metrics are derived by normalizing quality and/or productivity measures by considering the size of the software that has been produced?
AFunction – Oriented Metrics
BFunction – Point Metrics
CLine of Code Metrics
DSize Oriented Metrics
Answer:(D) Size Oriented Metrics
Explanation
Size-oriented metrics normalize quality and productivity measures, such as errors found or cost incurred, against a size measure of the delivered software, most commonly lines of code (KLOC). Function-point metrics normalize instead against a size measure derived from information domain values rather than software size directly, which is why the size-normalized family described here is called size-oriented metrics.
The model in which the requirements are implemented by its category is
AEvolutionary Development Model
BWaterfall Model
CPrototyping Model
DIterative Enhancement Model
Answer:(D) Iterative Enhancement Model
Explanation
The Iterative Enhancement Model groups requirements into categories and implements the software in successive increments, each iteration adding one category's worth of functionality on top of what was already built. Evolutionary development instead grows a working system through repeated prototypes shaped by user feedback rather than pre-grouped requirement categories, and the waterfall and prototyping models build the whole requirement set in one linear pass or one exploratory prototype respectively.
Which of the following is an indirect measure of product?
AQuality
BComplexity
CReliability
DAll of these
Answer:(D) All of these
Explanation
Direct measures capture something countable straight from the product, such as lines of code, execution speed, or memory size. Quality, complexity, and reliability cannot be counted directly, they are each derived from combinations of direct measures, which is exactly what makes all three indirect measures of the product.
Modules X and Y operate on the same input and output, then the cohesion is
ALogical cohesion
BSequential cohesion
CProcedural cohesion
DCommunicational cohesion
Answer:(D) Communicational cohesion
Explanation
Communicational cohesion is defined precisely as elements of a module operating on the same input data and/or producing the same output data, which is exactly the relationship described between X and Y. Sequential cohesion instead requires the output of one element to feed directly into the next, and procedural cohesion requires elements to follow a specific execution order without necessarily sharing data.
Consider the following related to Fourth Generation Technique (4GT):
A. It controls efforts.
B. It controls resources.
C. It controls cost of development.
Choose the correct answer from the options given below:
A(A) and (B) only
B(B) and (C) only
C(C) and (A) only
DAll (A), (B) and (C)
Answer:(D) All (A), (B) and (C)
Explanation
4GT tools dramatically shorten development time, but without discipline that speed can hide poor engineering practice. The standard caution about 4GT is that effort, resources, and cost of development must all still be actively controlled and measured, exactly as in any other process model, rather than left unmanaged just because the tools are fast. All three, effort, resources, and cost, are the things 4GT still needs to control.
Match List I with List II regarding software design concepts.
List-I
List-II
A. Localization
I. Encapsulation
B. Packaging or binding of a collection of items
II. Abstraction
C. Mechanism that enables designer to focus on essential details of a program component
III. Characteristic of software that indicates the manner in which information is concentrated in program
D. Information hiding
IV. Suppressing the operational details of a program component
A(A)-(I), (B)-(II), (C)-(III), (D)-(IV)
B(A)-(II), (B)-(I), (C)-(III), (D)-(IV)
C(A)-(III), (B)-(I), (C)-(II), (D)-(IV)
D(A)-(III), (B)-(I), (C)-(IV), (D)-(II)
Answer:(C) (A)-(III), (B)-(I), (C)-(II), (D)-(IV)
Explanation
Localization describes the characteristic of software indicating how information is concentrated within it.
Packaging or binding a collection of items together is the definition of encapsulation.
A mechanism that lets a designer focus on essential details while ignoring lower-level ones is abstraction.
Information hiding is precisely the suppression of a component's operational details from the rest of the system.
A top down approach to programming calls for :
Statement I: Working from the general to the specific.
Statement II: Postpone the minor decisions.
Statement III: A systematic approach.
Statement IV: Intermediate coding of the problem.
Which of the following is true?
AStatement I only
BStatement I and Statement II only
CStatement I, Statement II and Statement III only
DStatement I, Statement II and Statement IV only
Answer:(C) Statement I, Statement II and Statement III only
Explanation
Top-down design proceeds by stepwise refinement, and three of the four listed statements describe that process correctly.
Statement I. Working from the general to the specific. — true. This is the core idea of stepwise refinement: start from the overall structure and progressively add detail.
Statement II. Postpone the minor decisions. — true. Implementation-level details are deferred until the higher-level structure is settled.
Statement III. A systematic approach. — true. Refinement proceeds through an orderly sequence of steps rather than ad hoc changes.
Statement IV. Intermediate coding of the problem. — false. Top-down design defers coding until the structure is fully refined, and there is no recognized stage called intermediate coding.
Statements I, II, and III together describe top-down design, so option C is correct.
A good software requirement specification does NOT have the characteristic
ACompleteness
BConsistency
CClarity
DReliability
Answer:(D) Reliability
Explanation
The standard characteristics of a good SRS are correctness, completeness, consistency, clarity (unambiguity), verifiability, modifiability, and traceability. Reliability describes a quality of the running software system itself, not a property used to judge whether a requirements specification document is well written, so it is not one of the recognized SRS characteristics.
In software testing, beta testing is the testing performed by ______.
Apotential customers at the developer's location
Bpotential customers at their own locations
Cproduct developers at the customer's location
Dproduct developers at their own locations
Answer:(B) potential customers at their own locations
Explanation
Beta testing is done by real or potential users in their own environment, outside the developer's site, after alpha testing. Testing by customers at the developer's site is alpha testing.
In the MVC architectural pattern, the View component is responsible for:
AUser interface
BSecurity of the system
CBusiness logic and domain objects
DTranslating between user interface actions/events and operations on the domain objects
Answer:(A) User interface
Explanation
In Model-View-Controller the View handles presentation and user-interface rendering. Business logic and domain data belong to the Model, and translating user actions into Model operations is the Controller.
In software engineering, what kind of notation do formal methods predominantly use?
Atextual
Bdiagrammatic
Cmathematical
Dcomputer code
Answer:(C) mathematical
Explanation
Formal methods specify and verify software using mathematically based notations (set theory, predicate logic, algebra; e.g. Z, VDM, B) that allow rigorous proof of properties. UML-style diagrams are only semi-formal.
If every requirement stated in the Software Requirement Specification (SRS) has only one interpretation, then the SRS is said to be:
Acorrect
Bconsistent
Cunambiguous
Dverifiable
Answer:(C) unambiguous
Explanation
An SRS is unambiguous when every requirement has exactly one interpretation. Consistency means requirements do not conflict; correctness means each requirement is one the system must meet; verifiability means each can be checked.
A system has 99.99% uptime and a mean-time-between-failure (MTBF) of 1 day. How quickly must the system repair itself to meet this availability goal?
A~9 seconds
B~10 seconds
C~11 seconds
D~12 seconds
Answer:(A) ~9 seconds
Explanation
Availability = MTBF / (MTBF + MTTR). With A = 0.9999 and MTBF = 86,400 s, the repair time MTTR = MTBF x (1 - A) = 86,400 x 0.0001 = 8.64 s, i.e. about 9 seconds.
In Software Configuration Management (SCM), which kinds of files should be committed to the source control repository?
A. Code files
B. Documentation files
C. Output files
D. Automatically generated files that are required for the system to be used
Choose the correct answer from the options given below:
AA and B only
BB and C only
CC and D only
DD and A only
Answer:(A) A and B only
Explanation
Hand-authored source artefacts - code (A) and documentation (B) - belong in version control. Build outputs (C) and generated files (D) should not be committed because they are reproducible from the sources and only add merge noise and staleness.
Match List-I (Software Process Model) with List-II (Description).
List-I
List-II
A. Waterfall Model
I. Software can be developed incrementally
B. Evolutionary Model
II. Requirement compromises are inevitable
C. Component-based Software Engineering
III. Explicit recognition of risk
D. Spiral Development
IV. Inflexible partitioning of the project into stages
AA-IV, B-I, C-III, D-II
BA-I, B-IV, C-II, D-III
CA-II, B-III, C-I, D-IV
DA-IV, B-I, C-II, D-III
Answer:(D) A-IV, B-I, C-II, D-III
Explanation
Waterfall rigidly partitions the project into sequential stages (IV). The Evolutionary model builds software incrementally through iterations (I). Component-based development reuses pre-built components, so requirement compromises are inevitable (II). The Spiral model performs explicit risk analysis at each cycle (III).
Identify the correct order (lower to higher) of the five levels of the Capability Maturity Model used to measure the maturity of an organisation's software process.
A. Defined
B. Optimizing
C. Initial
D. Managed
E. Repeatable
Choose the correct answer from the options given below:
AC, A, E, D, B
BC, E, A, B, D
CC, B, D, E, A
DC, E, A, D, B
Answer:(D) C, E, A, D, B
Explanation
The Capability Maturity Model rises through five stages: Initial (ad hoc, chaotic process), Repeatable (basic project management established), Defined (process documented and standardised across the organisation), Managed (process quantitatively measured and controlled), and Optimizing (continuous, data-driven process improvement). Mapping the given letters, the increasing order is Initial C, Repeatable E, Defined A, Managed D, Optimizing B.
Statement I: The Cleanroom software process model incorporates the statistical quality certification of code increments as they accumulate into a system.
Statement II: Cleanroom software engineering follows the classic analysis, design, code, test and debug cycle, focusing on defect removal rather than defect prevention.
In light of the above statements, choose the correct answer from the options given below:
ABoth Statement I and Statement II are true
BBoth Statement I and Statement II are false
CStatement I is true but Statement II is false
DStatement I is false but Statement II is true
Answer:(C) Statement I is true but Statement II is false
Explanation
Cleanroom does use statistical usage testing to certify each code increment (Statement I true). But its philosophy is defect prevention through formal specification and correctness verification, deliberately avoiding the traditional code-and-debug cycle, so Statement II is false.
Assertion (A): Software developers do not do exhaustive software testing in practice.
Reason (R): Even for small inputs, exhaustive testing is too computationally intensive (takes too long) to run all the tests.
In light of the above statements, choose the correct answer from the options given below:
ABoth A and R are true and R is the correct explanation of A
BBoth A and R are true but R is NOT the correct explanation of A
CA is true but R is false
DA is false but R is true
Answer:(A) Both A and R are true and R is the correct explanation of A
Explanation
Exhaustive testing (trying every input/path) is practically impossible because the input space grows combinatorially, so testers sample instead (A true). That combinatorial blow-up is exactly why exhaustive testing is infeasible, so R is true and correctly explains A.
Use-case diagrams describe the actors and required system functionality without modelling a time-ordered execution. Collaboration, state-chart, and activity diagrams are behavioural or interaction views.
Perfective maintenance improves internal design, maintainability, efficiency, or other quality attributes after delivery; restructuring is a typical perfective change. Corrective maintenance fixes faults, while adaptive maintenance responds to a changed environment.
A company can use languages L₁ and L₂; an application needs three times as many LOC in L₂ as in L₁. The project has 10 years of maintenance. For what LOC in L₁ are the total development-plus-maintenance costs equal?
Parameter
L₁
L₂
Man-years for development
LOC/1000
LOC/1000
Development cost
Rs. 70,000
Rs. 90,000
Maintenance cost per year
Rs. 1,00,000
Rs. 40,000
A2000
B6000
C3000
D5000
Answer:(C) 3000
Explanation
For x lines of L₁, development costs are 70x and 270x rupees for L₁ and L₂ respectively, since the rates are per 1,000 LOC and L₂ needs 3x lines. Ten-year maintenance costs are Rs. 10,00,000 and Rs. 4,00,000; equating totals gives 70x + 10,00,000 = 270x + 4,00,000, hence x = 3,000 LOC.
A software project is estimated at 864 function points. A six-person team has one requirements gatherer (Rs. 50,000/month), one designer (Rs. 70,000/month), two programmers (Rs. 60,000/month each), and two testers (Rs. 60,000/month each). Team productivity is 12 FP per person-month. What is the projected cost?
ARs. 33,20,000
BRs. 43,20,000
CRs. 33,10,000
DRs. 22,10,000
Answer:(B) Rs. 43,20,000
Explanation
The effort is 864/12 = 72 person-months, or 72/6 = 12 calendar months for six people. Monthly payroll is 50,000 + 70,000 + 2(60,000) + 2(60,000) = Rs. 3,60,000, so the project cost is 12 × 3,60,000 = Rs. 43,20,000; it is not based on treating 864 as calendar months.
Software reliability may be described with respect to
A. execution time,
B. calendar time, and
C. clock time.
A(A) and (B) only
B(B) and (C) only
C(A), (B), and (C)
D(A) and (C) only
Answer:(C) (A), (B), and (C)
Explanation
Reliability growth and failure intensity can be modelled against CPU/execution time, elapsed calendar time, or operational clock time. The appropriate time base depends on the system and measurement model.
To create an object-behavioural model, an analyst
A. evaluates use cases,
B. builds a state-transition diagram,
C. reviews the model for accuracy and consistency, and
D. identifies events that do not drive an interaction sequence.
A(A), (B), and (C) only
B(A), (B), and (D) only
C(B), (C), and (D) only
D(A), (C), and (D) only
Answer:(A) (A), (B), and (C) only
Explanation
Use cases reveal the events and object responses, then state transitions model behaviour and the result is reviewed. Events that do not drive an interaction sequence are not part of that normal modelling step.
Which are behavioural (black-box) testing techniques?
A. Equivalence partitioning
B. Graph-based testing
C. Boundary-value analysis
D. Data-flow testing
E. Loop testing
A(B) and (D) only
B(A), (B), and (C) only
C(D) and (E) only
D(A), (C), and (E) only
Answer:(B) (A), (B), and (C) only
Explanation
Equivalence classes, boundary values, and graph-based tests derive tests from externally visible requirements or behaviour. Data-flow and loop testing require knowledge of program structure and are white-box techniques.
With reference to CMM developed by Software Engineering Institute (SEI)
List I List IT
A. INITIAL () Process measurement
B. REPEATABLE (Il) Process definition
C. DEFINED (ID Project management
D. MANAGED (Iv) ADHOC
List I
List II
Items are listed in the question stem.
Match each item to its stated description or complexity.
AAIT, B-IV, C-II. D-I
BA-IV, B-IIl. C-I, D-II
CA-IV, B-III, C-IL, D-I
DALIII, B-IV, C-I, D-II
Answer:(C) A-IV, B-III, C-IL, D-I
Explanation
CMM progresses from ad-hoc initial practice to repeatable project management, defined processes, and measured/managed processes. Option C matches those maturity descriptions.
Arrange the following types of Cohesion from best to worst type.
A. B. C. D. E. Logical Cohesion
Sequential Cohesion
Communication Cohesion
Temporal Cohesion
Procedural Cohesion
AOCR review required
BOCR review required
COCR review required
DOCR review required
Answer:(D) OCR review required
Explanation
Among the listed cohesion types, sequential is strongest, followed by communicational, procedural, temporal, and logical cohesion. The option with that best-to-worst sequence is D.
Statement I: Quality control involves the series of inspections. reviews and tests used
throughout the software process, to ensure each work product meets the
requirements placed upon it.
Statement II: Quality assurance consists of auditing and reporting functions of
management.
In the light of the above statements, choose the correct answer from the options given below
qd)
AOCR review required
BOCR review required
COCR review required
DOCR review required
Answer:(A) OCR review required
Explanation
Quality control is the product-focused inspection, review, and testing activity. Quality assurance is the management-facing audit and reporting function that ensures the process is being followed; both statements are true.
(d) Feature-driven development matches (iii). Expresses granular client features using the formal syntactic template <action> the <result> <by/for/of/to> a(n) <object>.
The matching combination is (a)-(ii), (b)-(iv), (c)-(i), (d)-(iii).
The sequence diagram for the Weather Information System takes place when an external system requests the summarized data from the weather station. The increasing order of lifeline for the objects in the system are:
UML sequence diagram for the Weather Information System
ASat comms → Weather station → Comms link → Weather data
BSat comms → Comms link → Weather station → Weather data
CWeather data → Comms link → Weather station → Sat Comms
DWeather data → Weather station → Comms link → Sat Comms
Accepted answers:(C) Weather data → Comms link → Weather station → Sat Comms, (D) Weather data → Weather station → Comms link → Sat Comms
Explanation
Analyzing object lifeline active durations in the sequence diagram:
Weather Data has the shortest active execution bar, active only while running Summarize().
Commslink is active next, invoking and receiving results from Weather Data.
Weather Station has a broader activation window coordinating reports.
Sat Comms maintains the longest activation span across request, transmission, and acknowledgement.
NTA marked this question as dropped / awarded marks to all candidates due to phrasing ambiguity regarding vertical dotted line versus execution activation box length. In increasing order of activation duration, Weather Data has the shortest active duration while Sat Comms has the longest.
An activity chart is a project schedule representation that presents project plan as a directed graph. The critical path is the __________ sequence of __________ tasks and it defines project __________.
AActivity, Shortest, Independent, Cost
BActivity, Longest, Dependent, Duration
CActivity, Longest, Independent, Duration
DActivity, Shortest, Dependent, Duration
Answer:(B) Activity, Longest, Dependent, Duration
Explanation
In software project management (PERT/CPM network models), the critical path is the longest sequence of dependent activities from project start to finish. Because tasks on this path have zero slack time, any delay directly extends the overall project duration.
In a system for a restaurant, the main scenario for placing order is given below:
(a) Customer reads menu
(b) Customer places order
(c) Order is sent to kitchen for preparation
(d) Ordered items are served
(e) Customer requests for a bill for the order
(f) Bill is prepared for this order
(g) Customer is given the bill
(h) Customer pays the bill
A sequence diagram for the scenario will have atleast how many objects among whom the messages will be exchanged?
A3
B4
C5
D6
Answer:(C) 5
Explanation
In object-oriented software engineering, actors and system entities that exchange distinct responsibilities in this scenario form lifelines in the sequence diagram.
The scenario encompasses five collaborating entities:
Customer: initiates the interaction, places the order, requests the bill, and submits payment.
Waiter or Order Taker: receives the customer order and transfers it to the preparation area.
Kitchen or Chef: prepares the ordered items.
Serving Person: delivers the completed food items to the customer.
Cashier or Billing System: prepares the invoice and collects payment.
Therefore, at least 5 interacting objects are required to model this communication sequence.
Answer the question based on flow graph F with entry node (1) and exit node (11).
How many regions are there in flowgraph F?
Flowgraph F control flow diagram
A2
B3
C4
D5
Answer:(C) 4
Explanation
In McCabe's cyclomatic complexity theory, regions in a planar control flow graph are areas bounded by nodes and directed edges, including the unbounded exterior region.
The flowgraph contains 3 enclosed internal regions plus 1 unbounded outer region, totaling 4 regions.
The number of regions also matches the cyclomatic complexity V(G) = P + 1 = 3 + 1 = 4, confirming there are 4 regions.
Answer the question based on flow graph F with entry node (1) and exit node (11).
How many nodes are there in the longest independent path?
Flowgraph F control flow diagram
A6
B7
C8
D9
Answer:(C) 8
Explanation
An independent path is a path through the control flow graph that introduces at least one edge not traversed in previous basis paths.
Traversing the longest loop cycle from entry node (1) to exit node (11) visits:
1 -> (2, 3) -> 6 -> 7 -> 9 -> 10 -> 1 -> 11
Counting the sequence of nodes along this complete path yields 8 node visits: 1, (2, 3), 6, 7, 9, 10, 1, and 11. The alternative branch traversing node 8 instead of 7 similarly contains 8 node visits. Therefore, the longest independent path contains 8 nodes.
Software products need adaptive maintenance for which of the following reasons?
ATo rectify bugs observed while the system is in use
BWhen the customers need the product to run on new platforms
CTo support the new features that users want it to support
DTo overcome wear and tear caused by the repeated use of the software
Answer:(B) When the customers need the product to run on new platforms
Explanation
Software maintenance is categorized into four standard types based on the triggering cause:
A. Corrective maintenance — rectifies latent faults and bugs discovered during production use.
B. Adaptive maintenance — modifies software to accommodate changes in its external operating environment, such as new operating systems, hardware platforms, or external libraries.
C. Perfective maintenance — enhances software by adding new functional requirements requested by users.
D. Physical wear and tear — does not apply to software artifacts, which do not deteriorate mechanically.
In the context of software testing, which of the following statements is/are NOT correct?
P: A minimal test set that achieves 100% path coverage will also achieve 100% statement coverage.
Q: A minimal test set that achieves 100% path coverage will generally detect more faults than one that achieves 100% statement coverage.
R: A minimal test set that achieves 100% statement coverage will generally detect more faults than one that achieves 100% branch coverage.
AR only
BQ only
CP and Q only
DQ and R only
Answer:(A) R only
Explanation
Evaluating the structural test coverage hierarchy:
P is correct because Path Coverage subsumes Branch Coverage and Statement Coverage. Exercising all paths guarantees executing all statements.
Q is correct because path testing explores execution sequences and variable interactions that simple statement execution misses.
R is NOT correct because statement coverage is strictly weaker than branch coverage. Branch coverage tests both true and false decision outcomes, detecting more faults than statement coverage.
Which of the following are the primary objectives of risk monitoring in software project tracking?
P: To assess whether predicted risks do, in fact, occur
Q: To ensure that risk aversion steps defined for the risk are being properly applied
R: To collect information that can be used for future risk analysis
AOnly P and Q
BOnly P and R
COnly Q and R
DAll of P, Q, R
Answer:(D) All of P, Q, R
Explanation
In software project management (RMMM framework), risk monitoring performs three core tasks throughout project execution:
P tracks whether identified and predicted risk conditions materialize in practice.
Q verifies that defined risk mitigation and contingency steps are enacted appropriately.
R gathers observational metrics to refine risk management practices in subsequent project cycles.
All three statements constitute primary objectives of risk monitoring.
P: In software engineering, defects that are discovered earlier are more expensive to fix.
Q: A software design is said to be a good design, if the components are strongly cohesive and weakly coupled.
Select the correct answer from the options given below:
AP only
BQ only
CP and Q
DNeither P nor Q
Answer:(B) Q only
Explanation
Evaluating software engineering principles:
P is false because the cost of fixing software defects escalates exponentially in later stages (Boehm's cost of change curve). Defects caught during requirements or design are much cheaper to resolve than defects found during post-release deployment.
Q is true because high cohesion (modules have single, focused responsibilities) and weak/loose coupling (modules maintain minimal interdependencies) are standard hallmarks of modular, maintainable software design.
Software validation mainly checks for inconsistencies between
Ause cases and user requirements
Bimplementation and system design blueprints
Cdetailed specifications and user requirements
Dfunctional specifications and use cases
Answer:(C) detailed specifications and user requirements
Explanation
Software validation ensures that the software product satisfies its intended use and user expectations:
While verification checks consistency between implementation and technical design blueprints ("building the product right"), validation evaluates the system against the customer's actual operational needs ("building the right product").
It primarily uncovers inconsistencies and gaps between detailed system specifications and genuine user requirements.
Match List-I with List-II:
List-I (Software Process Models)
(a) Waterfall model
(b) Incremental development
(c) Prototyping
(d) RAD
List-II (Software Systems)
(i) e-business software that starts with only the basic functionalities and then moves on to more advanced features
(ii) An inventory control system for a super-market to be developed within three months
(iii) A virtual reality system for simulating vehicle navigation in a highway
(iv) Automate the manual system for student record maintenance in a school
List-I (Software Process Models)
List-II (Software Systems)
(a) Waterfall model
(iv) Automate the manual system for student record maintenance in a school
(b) Incremental development
(i) e-business software that starts with only the basic functionalities and then moves on to more advanced features
(c) Prototyping
(iii) A virtual reality system for simulating vehicle navigation in a highway
(d) RAD
(ii) An inventory control system for a super-market to be developed within three months
A(a)-(ii); (b)-(iv); (c)-(i); (d)-(iii)
B(a)-(i); (b)-(iii); (c)-(iv); (d)-(ii)
C(a)-(iii); (b)-(ii); (c)-(iv); (d)-(i)
D(a)-(iv); (b)-(i); (c)-(iii); (d)-(ii)
Answer:(D) (a)-(iv); (b)-(i); (c)-(iii); (d)-(ii)
Explanation
Matching software development process models to ideal project scenarios:
(a)-(iv), (b)-(i), (c)-(iii), (d)-(ii)
(a) Waterfall model — fits well-defined, stable systems with predictable requirements like automating an existing manual student record system, matching (iv).
(b) Incremental development — suits staged delivery where core functionality ships first and advanced features follow incrementally, matching (i).
(c) Prototyping — clarifies ambiguous user interaction and novel technologies through early exploratory models like virtual reality navigation, matching (iii).
(d) RAD — delivers functional systems under strict, short time constraints (typically within 60 to 90 days), matching (ii).
Athe process of analysing software with the objective of recovering its design and specification
Bthe process of using existing software artifacts and knowledge to build new software
Cconcerned with reimplementing legacy system to make them more maintainable
Dthe process of analysing software to create a representation of a higher level of abstraction and breaking software down into its parts to see how it works
Answer:(B) the process of using existing software artifacts and knowledge to build new software
Explanation
Software reuse is the software engineering discipline of building new applications using pre-existing software assets, components, architectures, and design patterns rather than constructing everything from scratch.
A and D describe reverse engineering.
C describes software re-engineering / refactoring.
A Web application and its support environment has not been fully fortified against attack. Web engineers estimate that the likelihood of repelling an attack is only 30 percent. The application does not contain sensitive or controversial information, so the threat probability is 25 percent. What is the integrity of the web application?
A0.625
B0.725
C0.775
D0.825
Answer:(D) 0.825
Explanation
In software security engineering, software integrity measures the system's resilience against unauthorized attacks:
Integrity = 1 - (threat * (1 - security))
Given parameters:
Threat probability = 25% = 0.25
Security (repel probability) = 30% = 0.30
Git is a Distributed Version Control System (DVCS) designed to record and manage changes across file trees over time:
A. Issue tracking systems — track bug reports and tasks (e.g. Jira).
B. Integrated development environments — provide code authoring and debugging tools (e.g. VS Code).
C. Distributed Version Control System — allows developers to maintain complete local clones of repositories and collaborate without mandatory central connection.
D. Hosting services — provide remote cloud repositories (e.g. GitHub).
Software coupling involves dependencies among pieces of software called modules. Which of the following are correct statements with respect to module coupling ?
P : Common coupling occurs when two modules share the same global data.
Q : Control coupling occurs when modules share a composite data structure and use only parts of it.
R : Content coupling occurs when one module modifies or relies on the internal working of another module.
Choose the correct answer from the code given below :
Code :
AP and Q only
BQ and R only
CAll of P, Q and R
DP and R only
Answer:(D) P and R only
Explanation
Statements P and R correctly identify common coupling and content coupling in modular software design.
Statement P is true because common coupling occurs when two or more modules read or write to the same global data area.
Statement Q is false because sharing a composite data structure and using only portions of it defines stamp coupling. Control coupling occurs when one module controls the flow of another by passing control information or flags.
Statement R is true because content coupling (the worst form of coupling) occurs when one module modifies or depends directly on the internal implementation of another module.
Hence, statements P and R only are correct (Option D).
P : Software Reengineering is preferable for software products having high failure rates, having poor design and/or having poor code structure.
Q : Software Reverse Engineering is the process of analyzing software with the objective of recovering its design and requirements specification.
Choose the correct answer from the code given below :
Code :
ABoth P and Q
BNeither P nor Q
CP only
DQ only
Answer:(A) Both P and Q
Explanation
Both statements define established engineering practices for maintaining and evolving legacy software systems.
Statement P is true because software reengineering restructures legacy applications with high maintenance costs, poor architectural design, and frequent failures to improve reliability and maintainability.
Statement Q is true because reverse engineering analyzes an existing software product to extract high-level architectural models, design specifications, and requirements without altering functionality.
Therefore, both statements P and Q are true (Option A).
P : The clean-room strategy to software engineering is based on the incremental software process model.
Q : The clean-room strategy to software engineering is one of the ways to overcome “unconscious” copying of copyrighted code.
Choose the correct answer from the code given below :
Code :
ANeither P nor Q
BQ only
CBoth P and Q
DP only
Answer:(A) Neither P nor Q
Explanation
Both statements describe recognized definitions and applications of cleanroom software engineering.
Statement P is true because Cleanroom software engineering structures development as a pipeline of increments, using formal specification, box structures, and statistical verification without unit testing.
Statement Q is true because cleanroom design (Chinese wall technique) isolates developers from examining proprietary or copyrighted source code to prevent unconscious infringement during reverse engineering.
Because both statements P and Q are true, neither statement is false (Option A).
The Software Requirement Specification (SRS) is said to be ___________ if and only if no subset of individual requirements described in it conflict with each other.
AConsistent
BUnambiguous
CCorrect
DVerifiable
Answer:(A) Consistent
Explanation
By IEEE 830 standards, an SRS is defined as consistent if and only if no subset of individual requirements described within it conflict with one another.
Consistency requires that no two statements define contradictory system states, terms, behaviors, or constraints.
Unambiguous (Option B) means that every stated requirement possesses only a single unique interpretation.
Correct (Option C) means every stated requirement represents an actual customer need.
Verifiable (Option D) means there exists a cost-effective finite process to demonstrate that the software meets each requirement.
int f (int m, int n, boolean x, boolean y)
{
int res = 0;
if (m < 0) {res = n – m;}
else if (x || y) {
res = –1;
if (n == m) {res = 1;}
}
else {res = n;}
return res;
}/* end of */
If P is the minimum number of tests to achieve full statement coverage for f(), and Q is the minimum number of tests to achieve full branch coverage for f(), then (P, Q) =
A(3, 2)
B(2, 3)
C(4, 3)
D(3, 4)
Answer:(D) (3, 4)
Explanation
Achieving full statement coverage requires 3 test cases, while full branch coverage requires 4 test cases.
For Statement Coverage (P):
Test 1: m = -1, n = 0 covers statement res = n - m.
Test 2: m = 2, n = 2, x = true covers statements res = -1 and res = 1.
Test 3: m = 2, n = 0, x = false, y = false covers statement res = n.
Hence, P = 3.
For Branch Coverage (Q):
There are three decision points with 6 branch outcomes:
m < 0 (True branch: test with m < 0)
m < 0 (False branch) leading to else if (x || y)
(x || y) True branch with n == m True (covers True branch of inner if)
(x || y) True branch with n != m False (covers False branch of inner if)
(x || y) False branch leading to else block
Covering all true and false branch paths requires a minimum of 4 distinct test inputs.
Hence, (P, Q) = (3, 4) (Option D).
A legacy software system has 940 modules. The latest release required that 90 of these modules be changed. In addition, 40 new modules were added and 12 old modules were removed. Compute the software maturity index for the system.
A0·849
B0·923
C0·725
D0·524
Answer:(A) 0·849
Explanation
The Software Maturity Index (SMI) computed using the standard IEEE metric formula evaluates to approximately 0.849.
SMI = [M_T - (F_c + F_a + F_d)] / M_T
where:
M_T = total number of modules = 940
F_c = number of changed modules = 90
F_a = number of added modules = 40
F_d = number of deleted modules = 12
Rounding to three decimal places gives 0.849 (Option A).
Sign in to read the full explanation
Frequently asked questions
How many Software Engineering questions have been asked in UGC NET Computer Science?
146 Software Engineering questions appear in the UGC NET Computer Science papers held between 2018–2026, and all of them are on this page with their answer key.
Are the answers on this page free?
Yes. Every question, its options, and the correct answer are free to read with no account. Signing in additionally unlocks the detailed explanation under each question.
Is Software Engineering an important topic for UGC NET Computer Science?
Software Engineering appears in every recent UGC NET Computer Science paper, across all 14 sittings covered here. Its share of the paper makes it worth revising thoroughly rather than sampling.
How should I practise Software Engineering after reading these questions?
Attempt the Software Engineering topic-wise sets, which put the same questions into a timed interface with instant scoring and weak-area analysis afterwards.