MCQ IN COMPUTER SCIENCE & ENGINEERING

COMPUTER SCIENCE AND ENGINEERING

SOFTWARE ENGINEERING

Question [CLICK ON ANY CHOICE TO KNOW THE RIGHT ANSWER]
*Refactoring is a risk:it incurs a cost now, in return for potential payoff later.
A
True
B
False
C
Either A or B
D
None of the above
Explanation: 

Detailed explanation-1: -Refactoring should always introduce new functionality to a code base. Refactoring does not introduce new end-user features. Refactoring should not be performed to enhance code modularity. Refactoring should never be done in conjunction with regression testing.

Detailed explanation-2: -Refactoring is the process of changing a software system in such a way that it does not alter the function of the code yet improves its internal structure. When carried out manually, refactoring is applied directly to the source code and is generally a labor-intensive, ad hoc, and potentially error-prone process.

Detailed explanation-3: -Expected Benefits refactoring encourages each developer to think about and understand design decisions, in particular in the context of collective ownership / collective code ownership. refactoring favors the emergence of reusable design elements (such as design patterns) and code modules.

Detailed explanation-4: -Refactoring can reduce maintenance by breaking down test automation code into smaller, more reusable pieces. And it can do the same for automated test cases. More reuse in your codebase means fewer places to fix problems. It also means less time to search for defects in your test automation code.

There is 1 question to complete.