SOftware Engineering Question
SOftware Engineering Question
Answer:
constructing a house. In a similar way, a person who can write programs does
not have the knowledge to develop and implement the software in a well-
The order of the phases mentioned in SDLC may vary depending upon the
Related Courses
Programming Languages Training (41 Courses, 13+ Projects)C Programming Training (3 Courses, 2
Project)Selenium Training Certification (9 Courses, 4+ Projects)
Many models have been proposed, to carry out the software implementation
project manager include project planning, tracking the progress of the project,
what project is intended to deliver and what it does not intend to. The scope
Functional points are used to measure the size of the software product. In
some business, scenarios play a key role in tracking and estimating the project
delivery.
9. What is a Baseline?
Answer:
Baselines are put forth by the project managers to track the overall project
delivery. Baselines are usually placed to track the overall tasks listed under a
phase or stage. Baselines help project managers to track and monitor the
Many project management tools are utilized as per the enterprise standards
Part 2 – software Engineering Interview
Questions (Advanced)
Let us now have a look at the advanced software Engineering Interview
Questions.
with the help of feasibility study to understand the economic, operational and
Metrics are utilized to guide the software product delivery as per the business
modules are independent to other modules and tasks invoked in each module
defined in a module.
Some of the key software analysis & design tools are Data flow Diagrams
DFD (Data Flow Diagrams) Level 0 depict the entire data flow along with all
abstract details within a software information system. This type of DFD is also
along with valid inputs given. But, it does not test the implementation part of
the program.
business users.
Adaptive: This maintenance activity is performed to check the changes made
future implementations.
Requirement analysis
Specification
Software architecture
Implementation
Testing
Documentation
Training and support
Maintenance
5) What are SDLC models available?
Waterfall Model, Spiral Model, Big-bag model, Iterative Model, and V- Model are some of
the famous SDLC models.
6) What is verification and validation?
Verification:
Verification is a term that refers to the set of activities which ensure that software
implements a specific function.
Validation:
It refers to the set of activities which ensure that software that has been built according to
the need of clients.
Debugging is the process that results in the removal of error. It is very important part of the
successful testing.
8) How can you make sure that your code is both safe and fast?
In the software, development security is always first. So if the execution of the program is
slow then, I will try to identify the reason out ways to its time complexity.
9) Name two tools which are used for keeping track of software requirements?
Every developer has their views when it comes to the programming language choices.
Though, one should prefer high-level languages because they are dynamic. Like C and C++
languages.
Computer software is a package which includes a software program, its documentation, and
user guide on how to use the software.
There, is no such ranking, as SDLC Models are adopted as per the need for the
development process. It may differ software-to-software.
A software project manager is a person responsible for managing the software development
project.
The project manager is doing the project planning, monitoring the progress, communication.
He or she also manages risks and resources to deliver the project within time, cost, and
quality constraints.
Software scope is a well-defined boundary. It includes all kind of activities that are done to
develop and deliver the software product.
The software scope defines all functionalities and artifacts to be delivered as a part of the
software. The scope also identifies what the product will do? What is not the part of the
project? What is project estimation?
This process is helpful to estimate various aspects of the software product. This estimation
can be decided either consulting experts or by using pre-defined formulas.
The size of software product can be calculated using by following two methods
Function points are the features which are provided by the software product. It is considered
as a most important measurement for software size.
Decomposition technique
Empirical technique
19) What is Software configuration management?
Change control is a function which ensures that all changes made into the software system
are consistent and created using organizational rules and regulations.
We can measure project execution using Activity Monitoring, Status Reports, and Milestone
Checklists.
There are many types of management tools used as per the need for a software project.
Some of them are Pert Chart, Gantt Chart, Resource Histogram, Status Reports, etc.
It is a measure to find out how practical and beneficial the software project development will
prove to the organization. The software analyzer conducts a study to know the economic,
technical and operational feasibility of the project.
1. Economic: It includes the cost of training, cost of additional and tools and overall
estimation of costs and benefits of the project.
2. Technical: It evaluate technical aspect. Is it possible to develop this system?
Assessing the suitability of machine(s) and OS on which software will execute,
knowledge of the software development and tools available for this project.
3. Operational: Here the analyst need to assess that the organization will able to adjust
smoothly to the changes done as per the demand for the project. Is the problem worth
solving at the estimated cost?
Functional requirements are functional features which are expected by users from the
proposed software product.
Non-functional requirements are related to security, performance, look, and feel of the user
interface.
Modularization is a technique which is used for dividing a software system into various
discreet modules. That is expected to carry out the tasks independently.
Cohesion is a measure that defines the intra-dependability among the elements of the
module.
Some of the most important software analysis and designing tools are:
Highest abstraction level is called Level 0 of DFD. It is also called context level DFD. It
portrays the entire information system as one diagram.
30) What is the major difference between structured English and Pseudo Code?
Structured English is native English language. It is used to write the structure of a program
module. It uses programming language keywords. On the other hand, Pseudo Code is more
like to the programming language without syntax of any specific language.
Structured design is a conceptualization of problem. It also called solution design and which
is based on ‘divide and conquer’ strategy.
Quality Assurance checks if proper process is followed while developing the software while
Quality Control deals with maintaining the quality of software product.
34) What are CASE tools?
CASE means Computer Aided Software Engineering. They are set of automated software
application programs, which are used to support, enhance and strengthen the SDLC
activities.
35) Which process model removes defects before software get into trouble?
Clean room software engineering method removes defects before software gets into
trouble.
There are twenty different socks of two types in a drawer in one dark room. What is the
minimum number of socks you need to take to ensure you have a matching pair?”
If you pick up three socks, they may be of the same type even if the odds are 50%. Odds
never an equal reality. Therefore, the only way to ‘ensure you have a matching pair’ is to
pick up at least 11 number of shocks.
37) How you can make sure that your written code which can handle various kinds of
error situation?
A process is instance of the computer program.In a single program it is possible to have
one or more threads.
An exe is an executable program while a DLL is a file that can be loaded and executed by
programs dynamically. It is an external code repository for programs. As both are different
programs, reuse the same DLL instead of having that code in their file. It also reduces
required storage space.
Strong typing checks the types of variables at compile time. On the other hand, weak
typing checks the types of the system at run-time. Among them, Strong typing is always
preferred because it minimizes the bugs.
First, you need to design a system by evaluating data structure. Then you should move on
to the code structure needed to support it.
Polymorphism is used when there is a need for override functionality when inheriting class.
It’s about shared classes and shared contracts.
According to me, the unit testing framework is essential for testing the quality of the code.
According to me, maintenances of software will never be expensive if we are using proper
development process.
Tags are for versioning releases which are temporary holding places for doing such thing.
However, branches are deleted when those changes are merged into the trunk.
Protected class-level variables are available to any sub-class derived from the base class.
52) Is it possible to execute multiple catch blocks for a single try statement?
Yes. Multiple catch blocks can be executed for a single try statement.