Software engineering question bank with answers for cse




















Differentiate verification and validation. Give an example. List the characteristics of software contrasting it with characteristics of hardware. Explain How do we create a process that can manage unpredictability? Identify the human factors considered for an agile software development. Is it possible to realize Win-Win spiral model for software. Summarize the pros and cons of iterative software development model. Define agile process. Give any two agile principles. List two deficiencies in waterfall model.

Which process model do you suggest to overcome each deficiency Compare perspective and specialized process model. Predict about XP story. Discuss about the various drawbacks of spiral model It is responsible for the full software development life cycle. It is responsible for the software testing life cycle. Example: Verification Example: Validation What is the difference between Verification and Validation? Verification Validation Verification is a static practice of verifying documents, design, code, black-box, and programs human-based.

Validation is a dynamic mechanism of validation and testing the actual product. It does not involve executing the code. It always involves executing the code. It is human-based checking of documents and files. It is computer-based execution of the program. Verification uses methods like inspections, reviews, walkthroughs, and Desk-checking, etc. Validation uses methods like black box functional testing, gray box testing, and white box structural testing, etc.

Verification is to check whether the software conforms to specifications. It can catch errors that validation cannot catch. It can catch errors that verification cannot catch. Target is requirements specification, application and software architecture, high level, complete design, and database design, etc. Target is an actual product-a unit, a module, a bent of integrated modules, and an effective final product.

Verification is done by QA team to ensure that the software is as per the specifications in the SRS document. Validation is carried out with the involvement of the testing team It generally comes first done before validation.

It generally follows after verification. It is low-level exercise. It is a High-Level Exercise. For more details, please refer to the following article Software Engineering — Verification and Validation. What is reverse engineering? Software Reverse Engineering is a process of recovering the design, requirement specifications, and functions of a product from an analysis of its code. It builds a program database and generates information from this.

The purpose of reverse engineering is to facilitate maintenance work by improving the understandability of a system and producing the necessary documents for a legacy system. Reverse Engineering Goals: Cope with Complexity. Recover lost information. Detect side effects. Synthesize higher abstraction. Facilitate Reuse. For more details, please refer to the following article Software Engineering — Reverse Engineering.

What is SRS? Software Requirement Specification SRS Format is a complete specification and description of requirements of the software that needs to be fulfilled for successful development of software system.

These requirements can be functional as well as non-requirements depending upon the type of requirement. For more details please refer software requirement specification format article. Distinguish between Alpha and Beta testing.

Alpha Testing Beta Testing Alpha testing involves both white box and black box testing. Beta testing commonly uses black-box testing. Alpha testing is performed by testers who are usually black,it -box internal employees of the organization.

Beta testing is performed by clients who are not part of the organization. Beta testing is performed at the end-user, the of the product. Reliability and security testing are not checked in alpha testing. Reliability, security, and robustness are checked during beta testing. Alpha testing ensures the quality of the product before forwarding it to beta testing.

Alpha testing requires a testing environment or a lab. Alpha testing may require a real-time long execution cycle. Beta testing requires only a few weeks of execution. Developers can immediately address the critical issues or fixes in alpha testing.

Most of the issues or feedback collected from the beta testing will be implemented in future versions of the product For more details, please refer to the following article Alpha Testing and Beta Testing. What are the elements to be considered in the System Model Construction? It is an important prerequisite to ensure the success of software development that designing a reasonable and suitable software development plan.

What are CASE tools? CASE tools are a set of automated software application programs, which are used to support, accelerate and smoothen the SDLC activities.

What is the limitation of the RAD Model? For large but scalable projects RAD requires sufficient human resources. Projects fail if developers and customers are not committed in a much-shortened time frame.

What is the disadvantage of the spiral model? Can be a costly model to use. Risk analysis requires highly specific expertise. As with all estimation models, it requires sizing information and accepts it in three forms: Object points Function points Lines of source code For more details, please refer to the following article Software Engineering — COCOMO Model.

What is the Agile software development model? The agile SDLC model is a combination of iterative and incremental process models with a focus on process adaptability and customer satisfaction by rapid delivery of working software products.

Agile Methods break the product into small incremental builds. Every iteration involves cross-functional teams working simultaneously on various areas like planning, requirements analysis, design, coding, unit testing, and acceptance testing.

Advantages: Customer satisfaction by rapid, continuous delivery of useful software. Customers, developers, and testers constantly interact with each other.

Close, daily cooperation between business people and developers. Continuous attention to technical excellence and good design. Regular adaptation to changing circumstances. Even late changes in requirements are welcomed. For more details, please refer to the following article Software Engineering — Agile Development Models.

Which model can be selected if the user is involved in all the phases of SDLC? What are software project estimation techniques available? What is level-0 DFD? The 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. For more details, please refer to the following article DFD.

What is physical DFD? Physical DFD focuses on how the system is implemented. It explains the best method to implement the business activities of the system.

Moreover, it involves the physical implementation of devices and files required for the business processes. In other words, physical DFD contains the implantation-related details such as hardware, people, and other external components required to run the business processes.

What is the black hole concept in DFD? In a black hole, data can only store inbound flows. Mention the formula to calculate the Cyclomatic complexity of a program? It is a process of software development that is done to improve the maintainability of a software system.

How to find the size of a software product? Estimation of the size of the software is an essential part of Software Project Management. It helps the project manager to further predict the effort and time which will be needed to build the project.

Various measures are used in project size estimation. Some of these are: Lines of Code Number of entities in ER diagram Total number of processes in detailed data flow diagram Function points What is the difference between Bug and Error? Bug: An Error found in the development environment before the product is shipped to the customer.

What is the difference between Risk and Uncertainty? Risk is able to be measured while uncertainty is not able to be measured. Risk can be calculated while uncertainty can never be counted. You are capable of make earlier plans in order to avoid risk.

It is impossible to make prior plans for the uncertainty.



0コメント

  • 1000 / 1000