Software Engineering Questions Interview Question
Software Engineering Questions Interview Questions
Software Engineering Interview Question for Freshers
What is Software Engineering ?
Software engineering is defined as a process of analyzing user requirements and then designing, building, and testing software application which will satisfy those requirements.
What is SDLC OR Software Development Life Cycle ?
SDLC defines a set of guidelines to develop a software product. SDLC has different phases namely: Gathering Requirements, Analysis, Planning, Development, Testing, Implementation, Maintenance, and Documentation. The order of the phases mentioned in SDLC may vary depending upon the model chosen to implement.
What are the different types of models available in SDLC ?
Many models have been proposed, to carry out the software implementation efficiently. Some of them include the Waterfall Model, Agile Model, Spiral Model, Iterative Model, V-Model etc.
What are Software Metrics ?
A software metric is a measure of software characteristics which are measurable or countable. Software metrics are valuable for many reasons, including measuring software performance, planning work items, measuring productivity, and many other uses.
What are functional and non- functional requirements ?
Functional requirements are utilized to specify the functional features as per the business requirements. For Example, adding a payment option to buy content from a website. Whereas non- functional requirements provide insights into security, performance, user interface, interoperability costs etc.
What is Feasibility Study ?
Feasibility Study is performed to assess the beneficial and practical attributes of a software development Thorough analysis is performed by an organization with the help of feasibility study to understand the economic, operational and technical aspects involved in a software project delivery.
What are types of Feasibility Study ?
- Economic: Economic study involves costs related to resource management, training costs, tools utilized and project estimation costs
- Technical: Technical study helps the business to analyze the technical aspects involved in software delivery such as machines, operating systems, knowledge, and skills of resource allocated, tools utilized and training.
- Operational: Operational study help business to study the change management and issues involved depending on the project needs.
What is a Software requirement ?
The software requirements are description of features and functionalities of the target system. Requirements convey the expectations of users from the software product. The requirements can be obvious or hidden, known or unknown, expected or unexpected from client' point of view.
What are the characteristics of the software ?
Software is engineered, not manufactured. Software does not wear out. Most software is custom-built rather than being assembled from components.
What are the various categories of software ?
- System software Application.
- Software Engineering / Scientific.
- Software Embedded software.
- Web Applications.
- Artificial Intelligence software.
What is Software process ?
A software process is defined as the structured set of activities that are required to develop the software system.
What is Software Prototyping ?
Software prototyping is represented as rapid software development for validating the requirements.
What is DFD Level 0 ?
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 known as Context level DFD.
What is Data Dictionary ?
A data dictionary is also known as metadata. Data Dictionary is utilized to capture the information related to naming conventions of objects and files utilized in the software project.
Mention a few software analysis & Design tools?
Some of the key software analysis & design tools are Data flow Diagrams (DFD), Structured Charts, Data Dictionary, UML (Unified Modeling Languages) diagrams, ER (Entity Relationship) Diagrams etc.
What is coupling ?
Coupling is utilized to measure the inter-dependability of various elements defined in a module.
What is Cohesion ?
Cohesion is utilized to measure the intra-dependability among various attributes defined in a module.
Explain Concurrency and how is it achieved during the software product delivery ?
This is the advanced software Engineering Interview Questions asked in an interview. Concurrency is a process of executing multiple events or tasks simultaneously. Concurrency can be achieved with the help of modules, events, and tasks associated with the software project delivery.
What are the various types of software maintenance ?
Maintenance types are corrective, adaptive, perfective and preventive.
Corrective: This type of maintenance is used to remove the errors spotted by business users.
Adaptive: This maintenance activity is performed to check the changes made in the hardware and software environment.
Perfective: This type of maintenance is used to implement changes in existing or new user requirements
Preventive: This maintenance activity is performed to avoid any issues in future implementations.
What is black box testing and white box testing ?
Black Box Testing: Black box testing is performed to validate the outputs along with valid inputs given. But, it does not test the implementation part of the program.
White Box Testing: White Box testing is performed to validate the inputs, outputs and program implementation involved in its execution.
What is CASE tools ?
CASE (Computer Aided Software Engineering tools) are utilized to implement, support, and accelerate various SDLC activities involved in a software project.
What is ERD ?
Entity Relationship Diagram is the graphical description of the object relationship pair. It is primarily used in the database application
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.
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.
What is software 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.
What are the types of software maintenance ?
- 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.
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.
What is Software Architecture ?
Software Architecture means the overall structure of the software and how that software provides conceptual integrity for the system.
What is SRS
SRS or Software Requirement Specification is a document produced at the time of requirement gathering process. It can be also seen as a process of refining requirements and documenting them.
What is modularization ?
Modularization is a technique to divide a software system into multiple discreet modules, which are expected to carry out task(s) independently.
Who is software project manager ?
A software project manager is a person who undertakes the responsibility of carrying out the software project.