Software Engineering Interview Questions
A list of frequently asked Software Engineering Interview Questions and Answers are given below.
1) What is Software Engineering?
Software engineering is defined as the function of the systematic, disciplined, quantified approach to the development, operations, and maintenance of software.
2) What are the elements to be considered in the System Model Construction?
Elements to be considered in the System Model Construction are:
3) What does a System Engineering Model accomplish?
System Engineering Model accomplishes the following:
4) Define Framework.
A framework is the Code Skeleton that can be fleshed out with particular classes or functionality and designed to address the specific problem at hand.
5) What are the characteristics of the software?
Characteristics of the software are:
6) What are the various categories of software?
The various categories of software are:
7) What are the challenges in software?
The challenges in the software are:
8) Define Software process.
A software process is defined as the structured set of activities that are required to develop the software system.
9) What are the internal milestones?
They are the significant and quantifiable attributes of progress. They are the standard methods in the project which provide that we are on the right track. They are under the authority of the project manager.
10) What is the limitation of RAD Model?
Limitation of RAD Model are:
11) What are the disadvantages of classic life cycle model?
Disadvantages of the classic life cycle model are:
12) What are the merits of the incremental model?
The merits of the incremental model are:
13) What is the disadvantage of the spiral model?
The disadvantage of the spiral model are:
14) Name the Evolutionary process Models.
Evolutionary powers models are:
15) Define Software Prototyping.
Software prototyping is represented as rapid software development for validating the requirements.
16) What are the benefits of prototyping?
The benefits of prototyping are:
17) What are the prototyping methods in software process?
The prototyping methods in the software process are:
18) What are the advantages of evolutionary prototyping?
The advantages of evolutionary prototyping are:
19) What are the various Rapid prototyping techniques?
The various rapid prototyping techniques are:
20) What are the uses of User-Interface Prototyping?
This prototyping is used to pre-specify the looks and effectively feel of customer interface.
21) What is the principle of the prototype model?
A prototype is built to quickly determine to the user what the product would look like. The only minimal functionality of the actual product is supported during the prototyping phase.
22) Define System Context Diagram (SCD)?
System Context Diagram (SCD):
23) Define Quality Function Deployment (QFD)?
Quality Function Deployment (QFD) is a method that translates the needs of the user into a technical requirement. It concentrates on maximizing user satisfaction from the software engineering process.
24) What is Requirement Engineering?
Requirement engineering is the process of establishing services which the user required from the system and constraint under which it operates and is developed.
25) What is ERD?
Entity Relationship Diagram is the graphical description of the object relationship pair. It is primarily used in the database application.
26) What is DFD?
Data Flow Diagram depicts the data flow and the transforms which are applied to the data as it moves from input to output.
27) What is a state transition diagram?
State transition diagram is a collection of states and events. The events cause the operation to change its state. It also describes what actions are to be taken on the occurrence of particular events.
28) What is Software Quality Assurance?
Software Quality Assurance is a set of auditing and documenting functions that assess the effectiveness and completeness of quality control activities.
29) What is the use of CMM?
Software Quality means Conformance to state functional explicitly and performance requirements, explicitly documented development standards, inherent characteristics expected for professionally developed software.
30) What is coupling?
Coupling is the significant measure of the degree to which classes are linked to one another. Coupling should be kept as low as possible.
31) What is cohesion?
Cohesion is the indication of the relative functional strength of a module. It is a natural extension of Information Hiding and Performs a single task, requiring little integration with other components.
32) Define Refactoring.
Refactoring means changing a software system in a way that does not alter the external behavior of code.
33) What is Software Architecture?
Software Architecture means the overall structure of the software and how that software provides conceptual integrity for the system.
34) Define Stamp coupling.
When a portion of the data structure is passed via the module interface, then it is called as stamp coupling.
35) Define common coupling.
When several modules reference a global data area, then the coupling is called common coupling.
36) Define temporal cohesion.
When a module contains tasks that are related by the fact that all must be executed within the same period, then it is termed as temporal cohesion.
37) Define metrics.
Metrics are defined as the degree to which a system component or process possesses a given attribute.
38) What is COCOMO model?
Constructive Cost Model is a cost model, which gives the estimate of several staff-months it will take to develop the software product.
39) What is the purpose of the timeline chart?
The objective of the timeline chart is to emphasize the scope of the individual task. Hence set of functions are given as input to the timeline chart.
40) Define Smoke Testing?
Smoke testing is Integration Testing and frequently used when software products are being developed.
41) What are the benefits of Smoke Testing?
Benefits of doing Smoke Testing are:
42) What is Equivalence Partition?
Equivalence Partitions Derives an input domain of a program into classes of data from which test cases are derived. It is a Set of Objects have linked by relationships as Symmetric, Transitive, and Reflexive an equivalence class is present.
43) What are the steps followed in testing?
The steps followed in testing are:
44) Distinguish between Alpha and Beta testing.
Alpha and Beta testings are the two types of acceptance testing.
45) What are the types of Static Testing tools?
There are the three types of static testing tools.
46) Define maintenance.
Maintenance is described as the process in which changes are implemented by either modifying the existing system?s architecture or by adding new components to the system.
47) What are the types of software maintenance?
Types of software maintenance are:
Corrective Maintenance: It means the maintenance for correcting the software faults.
Adaptive maintenance: It means maintenance for adapting the change in environment.
Perfective maintenance: It means modifying or enhancing the system to meet the new requirements.
Preventive maintenance: It means changes made to improve future maintainability.
48) What is CASE Tools?
CASE Tools stands for Computer-Aided Software Engineering. It is system software that provides automated support for software process activities. It contains program used to support software process operations such as Requirement Analysis, System Modeling. Debugging and Testing.
49) What is Risk management?
Risk management is the phase of anticipating hurdles in carrying out the original plan and providing alternate methods so that the impact on the anticipated initially outcome is minimal.