Software Engineering: Question Set – 15

Software Engineering: Question Set – 15

What is the Agile software development model?

The Agile Software Development Life Cycle (SDLC) model is a combination of iterative and incremental process models, with the primary focus being on the adaptability of the process as well as the rapid delivery of working software products. The product is divided up into a series of small, incremental builds when using agile methods. Cross-functional teams are required to work simultaneously on multiple aspects of the project throughout each iteration. These aspects include planning, requirements analysis, design, coding, unit testing, and acceptance testing.

Advantage:

  • 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.

What is a function point?

Metrics based on function points offer a standardised approach to measuring the many different functions that might be performed by a software application. Metrics known as function points quantify functionality from the perspective of the user. More specifically, they do so on the basis of what the user wants and what the user receives in return.

Cohesion is an extension of which concept?

The term “cohesion” describes the degree to which the components contained within a module are cohesive with one another. is a further development of the concept of information concealment.

Distinguish between Alpha and Beta testing.

Alpha TestingBeta 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.
Alpha testing is performed at the developer’s site.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.Beta testing also concentrates on the quality of the product but collects the user’s time-long input on the product and ensures that the product is ready for real-time users.
Alpha testing requires a testing environment or a lab.Beta testing doesn’t require a testing environment or 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

What activities come under the umbrella activities?

The operations that make up the software engineering process framework are supplemented by a wide variety of activities that are performed at a higher level. The software development team is able to better monitor and control the project’s progress, quality, modifications, and risks thanks to umbrella activities, which often apply to the entire software development project. Software Project Tracking and Control are two of the most common top activities. Management of Risk and Quality Assurance of Software Measurement and Technical Analysis Review Management of Software Configurational Settings Work Product Preparation and Production, etc. related to Reusability Management and Work Product Reuse.

What are software project estimation techniques available?

There are some software project estimation approaches available:

  • PERT
  • WBS
  • Delphi method
  • User case point

What is the difference between Verification and Validation?

VerificationValidation
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. Validation is to check whether the software meets the customer’s expectations and requirements.
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.

What is the difference between Bug and Error?

  • A flaw, often known as a bug, is an error that is discovered in the development environment before the product is delivered to the end user.
  • The deviation between the actual value and the predicted or theoretical value is called an Error.