Explain Functional Points
Functional points are the unit of measurement utilised for determining the overall size of a software programme. In some types of companies, the process of tracking and estimating the delivery of projects heavily relies on scenarios.
Mention a few software analysis & Design tools
The Data Flow Diagram (DFD), Structured Charts, Data Dictionary, UML (Unified Modeling Languages) diagrams, ER (Entity Relationship) Diagrams, and other similar tools are some of the most important software analysis and design tools.
What are SDLC models available?
- There are several different models for the creation of software that are used by different companies:
- The Waterfall Model requires that each phase be finished in its entirety before moving on to the next one.
- The V-Shaped Model is an extension of the Waterfall Model; however, rather of progressing downward in a linear manner, the process steps are curved upwards after the implementation and coding phase, to form the typical V shape. This model is an alternative to the traditional waterfall model. The early test planning that occurs in the V-shaped approach as opposed to the waterfall model is the primary distinction between the two methodologies.
- The term “Prototyping Model” refers to the process of developing working versions of software applications through the use of “prototypes.”
- This type of software development approach is known as the spiral model, and it combines aspects of the prototype model with the waterfall model. The spiral model is preferred for use in large-scale projects that are also expensive and complex.
- Iterative Model – The iterative process begins with a simple implementation of a portion of the software requirements and then iteratively enhances the evolving versions until the whole system is implemented. This method begins with a simple implementation of a subset of the software requirements.
- The incremental approach stipulates that each module must go through the processes of requirements, design, implementation, and testing before it can be considered complete.
Explain the Feasibility Study
It is necessary to do a Feasibility Study in order to evaluate the positive and useful aspects of a software development project. An organisation will conduct an in-depth analysis with the assistance of a feasibility study in order to gain an understanding of the financial, operational, and technical elements involved in the delivery of a software project.
- Economic: The costs associated with resource management, training costs, tools deployed, and project estimation costs are all included in the economic research.
- Technical: A study of the technical components of software delivery, such as machines, operating systems, the knowledge and skills of the resources that are assigned, the tools that are utilised, and training, can be analysed with the assistance of a study of the technical aspects.
- Operational: An operational study can assist a company in analysing change management and the difficulties that are involved in accordance with the requirements of the project.
What is Data Dictionary?
The term “metadata” can also refer to a data dictionary. The information pertaining to the naming conventions of objects and files utilised in the software project is stored in the Data Dictionary.
What are Software Metrics?
Metrics are utilised to guide the delivery of software products in accordance with the standards of the business. In the realm of software product delivery, certain features can also be measured with the help of metrics. The terms “requirement metrics,” “product metrics,” “performance metrics,” and “process metrics” all refer to different types of metrics.
Differentiate: Verification and Validation
What is Modularization?
The tasks of the software system are modularized so that they are split up into multiple modules. These modules are not dependent on any other modules, and the tasks that are invoked in each module are carried out in isolation from one another.
Explain Concurrency and how is it achieved during the software product delivery.
The following are some advanced software engineering interview questions that may be asked during a meeting. The practise of carrying out a number of activities or occasions all at once is known as concurrency. It is possible to achieve concurrency with the assistance of the modules, events, and tasks that are associated with the delivery of the software project.
Explain the difference between computer software and computer program.
- When executed by a computer, a piece of programming code known as a computer programme will carry out a predetermined set of responsibilities.
- The term “software” refers to a wide range of products, such as “programs,” “installation manuals,” and “documentation.”
List the different types of software.
Computer software can be classified into the following categories:
- System software
- Application software
- Web applications
- Embedded software
- AI software
- Scientific software