Interview questions Flashcards
What is Software Engineering?
Software Engineering is a process of developing a software product in a well-defined systematic approach. In other words, developing a software by using scientific principles, methods, and procedures.
What is the need to learn Software Engineering Concepts?
Imagine a person, who is good at building a wall may not be good at 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-defined systematic approach. Hence, there is a need for programmers to adhere to software engineering concepts such as requirements gathering, planning, development, testing, and documentation.
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.
Explain the role of a Software Project Manager?
This is the common software Engineering Interview Questions asked in an interview. Project Manager is responsible for driving the software project in a systematic approach. Some of the key roles & responsibilities of a software project manager include project planning, tracking the progress of the project, risk management, resource management, execution of development activities, delivering the project under cost, time and quality constraints.
What is a Software Project Scope?
A scope is utilized to outline the activities performed to design, develop and deliver a software product. In other words, scope contains information on what project is intended to deliver and what it does not intend to. The scope also outlines information on what software product developed contains and what it does not contain.
What is Software Project Estimation?
Project Estimation is a process utilized to calculate the development costs such as effort, time and resources required to deliver a project. Project Estimations are derived through past project experiences or with the help of consulting experts or with the help of standard predefined business formulas.
Explain Functional Points?
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 overall execution of a project.
What is Software Configuration Management?
Software Configuration Management helps users to track the overall changes made in a software product delivery. Updates or changes made to the software are tracked in terms of development and requirements gathering.
What is Change Control?
Change control tracks the changes made in a software to ensure consistency and updates are incorporated as per the enterprise standards.
Mention few project management tools?
Many project management tools are utilized as per the enterprise standards some of them include: Gantt Charts, PERT Charts, Milestone Checklists, Histograms, MS project, Status reports etc.
What is a Software requirement?
Requirements play a key role in providing a detailed description of the software product being developed. Software requirements help the developers and other support teams associated with project delivery, to understand the proposed target system and their expectations on it.
Explain the 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.
•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 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 are Software Metrics?
Metrics are utilized to guide the software product delivery as per the business standards. Metrics can also be used to measure few features of software product delivery. Metrics are divided into requirement metrics, product metrics, performance metrics, and process metrics.