Software Engineering is a systematic, disciplined, cost-effective technique for software development. In simple terms, it is an engineering approach to developing software.
Software Development Life Cycle
The Software Development Life Cycle is a process used in the software industry to produce and design high-quality software. The SDLC follows certain stages of designing, developing, testing software before launching it.
A typical SDLC life cycle is as follows:
There are various types of SDLC modes. Some of the popular SDLC models are as follows:
- Waterfall Model
- Iterative Model
- Spiral Model
- Big Bang Model
- V- Model
- Agile Model
- RAD Model
- The process in which developers create a model of the actual software.
- The intention behind creating this model is to get the actual requirements more deeply from the user.
- Prototyping helps a lot in getting feedback from the customer.
Process of software prototyping
- Initial requirements identification
- Prototype Development
Types of prototyping
- Rapid Prototyping/Throwaway: In this type, we build a prototype with very little effort to get the requirement from the user after getting the requirements, we throw away this prototype and start building the actual software.
- Evolutionary Prototyping: The prototype on the top of which we can build the whole actual system.
Testing in Software Engineering
At different stages of software development, we need to test what we develop. When we develop a unit, we test it when we integrate it with other units. Also, it needs to be tested before giving the software to the customer.
In some testing types, we directly deal with the code, which is known as white box testing. In some other cases, we do not have to look at the code and it is known as black-box testing. A mixture of these two is known as gray box testing.
- Testing a single unit of the software is known as unit testing.
- In this testing, we will test an isolated unit of the software, which contains lots of the units.
Here, the testing of a few units of the software is done separately. Now, after testing, those units are integrated. After integrating those units, it is again tested.
Here, a new module is made and it is added to the software. Whenever a new module is added to the software, it is tested to check whether the software is working fine with the change.
- The complete software is ready and working as a system.
- In this testing, the focus is the entire software. The testing is done based on Evolutionary are input and output.
- Software compatibility is tested on different kinds of OS.
- Testing the software comes under the black box testing category.
- The software is tested under unfavorable conditions.
- In this testing, the software is pushed to its maximum limit to check whether any failure occurs under some unfavorable conditions.
Software Engineer MCQs
If the objects focus on the problem domain, then we are concerned with
When can white-box testing be started?
By whom is unit testing done?
In which of the following categories can white-box testing be classified?
Infrastructure software is covered under which of the following categories?
What does the RAD software process stand for?
Identify the simplest model of SDLC?
Choose the correct option among the following. The software consists of?
Which is the following is the most important feature of the spiral model?
Total phases of RAD software model is-
Identify the incorrect phase of the prototype model.
Which of the following is the first step of SDLC?
Choose the correct option which does not relate to the Evolutionary Process Model?
Which of the following is a fourth-generation language?
Select the correct option which refers to internal software equality?
Identify among the following which is not recommended for software processes in software engineering?
Choose the option which is not applicable to agile software development?
Choose the correct option among the following which is involved in the system planning and designing phase of the Software Development Life Cycle (SDLC)?
Identify the major drawback of the Spiral Model?
On which of the following is model selection based upon?
Which of the following models will not result in the desired output, when the user participation isn’t involved?
Choose the correct option which states the correct definition of Software. It is considered to be a collection of
Identify the incorrect type of prototype of the Prototyping Model among the following.
For which of the following reasons is the waterfall model not suitable.
Identify the correct software metrics?
Identify the model which is also known as Verification and Validation Model?
Identify the incorrect software layers.
Which of the following is not included in the efficiency of a software product.
Identify the two dimensions of the spiral model.
On which of the following is Agile Software Development based?
FAST stands for?
Requirement Analysis does not deal with which of the following diagrams?
The SRS document is also known as _____________ specification.
Identify the correct option among the following which is not included in SRS?
Total different notations for Unified Modelling Language?
Identify the correct functional requirement.
Identify the correct measure for correctness.
Identify the fault-based testing technique.
UML diagram cannot be used to capture which of the following views?
The construction of a simpler version of a problem by ignoring details is known as
Which of the following terms is used often for the principle of abstraction?
Decomposition is also popularly known as
Identify the incorrect testing technique.
Which of the following are type of code review?
Identify the worst type of coupling.
RUP and PSP stands for?
When is the ‘risk analysis’ In the spiral model performed?
Which feature of OOPs helps in code reusability?
COCOMO model stand for?