Question: What is the basic of software engineering?
Answer:-
Software Engineering include analysis, development, integration and testing of software.
Find the most commonly asked software engineering interview questions on this page. We have included top 50 Software Engineering Interview Questions with Answers.
Page Highlights:
Software Engineering is a diversion of engineering focusing on developing software. Companies like TCS, Wipro often ask Software Engineering questions in their technical interviews. In this page we have collected the most common software engineering interview questions with answers.
Software Engineering refers to the practice of developing software and software products using scientific principles and procedures, which results in a good quality product.
SDLC or Software Development Life Cycle as the name suggest s is the life cycle representing the process of building software. SDLC models include all the phases of software development.
Software project management is the process of managing all activities like time, cost, and quality management involved in software development.
A baseline is a milestone on the project which is usually defined by the project manager. Baselines are used to track the progress of the project from time to time to assess the overall health of the project.
A Software Project Manager is responsible for driving the project towards successful completion. It is the responsibility of the Software Project Manager to make sure the entire team follows a systematic and well-defined approach towards the development of software. A software project manager is also responsible for the following tasks:
During the Software Development Life Cycle, Software Configuration Management is a method for routinely managing, organizing, and controlling modifications in manuals, protocols, and other organizations. In information engineering, the SCM process is abbreviated as SCM. The main aim is to improve productivity by making as few errors as possible.
Quality Control | Quality Assurance |
---|---|
The process of ensuring that the quality of product is maintained in the long run. | Ensuring that the delivered software has the least amount of defects as possible. |
It is done by a support team responsible for quality of the product even if the product is under maintenance phase | It is done by testing team of the project |
Quality Control | Quality Assurance |
---|---|
The process of ensuring that the quality of product is maintained in the long run. | Ensuring that the delivered software has the least amount of defects as possible. |
It is done by a support team responsible for quality of the product even if the product is under maintenance phase | It is done by testing team of the project |
Verification | Validation |
---|---|
Process of ensuring that the product is bult right, from process and standards perspective. | The process of ensuring that we build the right product from a customer perspective |
It is a static testing methodology wherein the product is tested without executing the code | It is a dynamic testing methodology |
Verification | Validation |
---|---|
Process of ensuring that the product is bult right, from process and standards perspective. | The process of ensuring that we build the right product from a customer perspective |
It is a static testing methodology wherein the product is tested without executing the code | It is a dynamic testing methodology |
Interviews, polling, mission analysis, brainstorming, domain analysis, prototyping, studying current available versions of applications, and observation will all be used to collect requirements from consumers.
The answer to this question varies with the candidates. If you have done a project based on Waterfall model the interviewer wil question you on waterfall model, or if you have done agile they will question you on agile terms.
Software Metrics provide measures for various aspects of software processes and software products. They are divided into –
Top-Down Approach:-
Bottom-Up Approach:-
The generic phases of SDLC are:
The phases depend upon the model we choose to develop software.
SDLC Models are adopted as per the requirements of the development process. It may very software-to-software to ensuring which model is suitable.
We can select the best SDLC model if the following questions are satisfied –
The scope of a software project is a well-defined boundary that includes all of the tasks involved in developing and delivering a software product.
Both functionalities and objects to be provided as part of the program are well described in the software scope.
The scope defines what the product can and will not do, as well as what the final product will and will not contain.
It is a process to estimate various aspects of the software products in order to calculate the cost of development in terms of efforts, time, and resources. This estimation can be derived from past experience, by consulting experts, or by using pre-defined formulas.
Two techniques can be used to measure the scale of a software product. They are :
In an agile project the tasks are divided into smaller iterations or segments. In agile the software product is broken down into incremental modules and each module is completed to finish the project. Each iteration contains planning, designing, coding, testing and maintenance of the software.
In an iterative waterfall model a feedback loop to the previous phase is provided for the customer such that it is easy to make any changes in the previous phase if necessary. This is not allowed in the waterfall model.
Project management tools include Gnatt charts, Network Diagrams, Status Report.
Feasibility study is done to see how much a project will profit the organization. It includes the total budget of the project, whether the project is practical or not and whether the final product will be in demand or not. Based on all this information the feasibility study is done and a report is prepared.
Software Prototyping is the process of creating a prototype of the software product, to evaluate customer satisfaction. In the prototyping process the software is built and tested to evaluate the customer reviews and satisfaction. The advantage of this method is that it helps make changes based on the customer reviews.
RAD model or rapid application software development model is based on the iterative and prototype model. In RAD the project is broken down into small segments or modules and when all the modules are completed, they are integrated to make a final software product. There are 4 phases:-
Alpha Testing:- It is used to find the defects/bugs in software applications before delivering the product to the customers or public. There are two phases:-
Beta Testing:- It is performed after the alpha testing, and is done at the client or users end. Also known as Field Testing or Pre Release Testing, it is done to check the quality of the software product and to ensure that the product is ready to use for real time users or the public
There are numerous approaches used in SDLC, the most common amongst them being:-
Hybrid Approach in software testing as the name suggest is a combination of top down approach and bottom up approach. It is also known as Sandwich integration testing or Mixed Integration testing
Login/Signup to comment