Prototyping in Agile development often begins with building a _____ prototype, which is an initial version of the system containing only a few key features.

  • Final
  • High-fidelity
  • Throwaway
  • Vertical
In Agile development, prototyping often starts with building a "Vertical" prototype. This prototype includes a limited set of key features that provide a deep exploration of specific functionalities. It's not a final or complete product but serves to demonstrate essential aspects of the system.

The _____ model involves developing a system partially and determining its further development after its partial implementation.

  • Incremental
  • Rapid Application Development (RAD)
  • Waterfall
  • Big Bang
The Incremental model involves developing a system partially in small, manageable portions. After each increment, further development is determined based on the feedback and the goals achieved in the previous increment. This approach allows for early, partial implementations and continuous refinements.

Which member of the software development team typically performs Unit Testing?

  • Project manager
  • System architect
  • Business analyst
  • Developer
Typically, developers, who are responsible for writing the code, perform Unit Testing. Developers are intimately familiar with the code they've written, making them well-suited to identify and fix defects at the unit level. While other team members play important roles in software development, Unit Testing is a task that falls within the developer's domain.

What are the challenges and considerations in implementing the IEEE 1012 standard for verification and validation?

  • It is not widely accepted in the industry.
  • It lacks guidelines for testing.
  • It involves setting up a comprehensive verification and validation process, which can be time-consuming and resource-intensive.
  • It only applies to hardware.
The IEEE 1012 standard focuses on verification and validation in the context of system, software, and hardware testing. Implementing this standard involves establishing a comprehensive process, which can be resource-intensive. Challenges include defining test cases, ensuring test coverage, and managing test data. Considerations include the need for proper planning, skilled personnel, and adherence to industry best practices.

How does SQA ensure that the software development process is proceeding correctly?

  • By writing code without testing
  • By performing code reviews
  • By avoiding documentation
  • By skipping user feedback
Software Quality Assurance (SQA) ensures that the software development process is proceeding correctly by performing activities such as code reviews, ensuring compliance with standards, and verifying that the development process adheres to best practices. Code reviews help identify and rectify issues early in the development process, improving software quality.

If a software product is found to be non-compliant with regulatory standards during a software audit, discuss potential steps and strategies to rectify this issue.

  • Immediately release the product as is
  • Ignore the audit findings
  • Collaborate with regulators to understand the issues and make necessary adjustments
  • Cease the project altogether
When non-compliance with regulatory standards is identified in a software audit, it is crucial to collaborate with the relevant regulatory authorities to understand the specific issues and work on making necessary adjustments to bring the software into compliance. This may involve legal consultations and modifications to the software to meet the required standards. Ignoring or releasing the product as is can lead to legal and reputational risks.

How does adherence to the Single Responsibility Principle impact the maintainability of a software application?

  • It decreases maintainability
  • It has no impact on maintainability
  • It increases maintainability
  • It is irrelevant to maintainability
Adherence to the Single Responsibility Principle (SRP) in software design means that each module or class should have a single reason to change. When this principle is followed, it simplifies code, making it easier to understand and maintain. Changes to one responsibility do not affect others, resulting in improved maintainability.

In white box testing, the ______ is tested to check if it performs correctly and ensures that no statements or conditions go untested.

  • User interface
  • Code
  • Documentation
  • System behavior
In white box testing, the "Code" is tested to check if it performs correctly. This involves checking that all statements and conditions in the code are tested, ensuring comprehensive code coverage.

Which element of SCM involves keeping track of all changes made to the system?

  • Configuration Identification
  • Configuration Control
  • Configuration Status Accounting
  • Configuration Auditing
Configuration Status Accounting in SCM is responsible for keeping track of all changes made to the system. It provides visibility into the status of the system's components and helps in monitoring and reporting on changes.

Which component of SCM is concerned with managing changes to documents, codes, and other entities during the software process?

  • Configuration Identification
  • Configuration Control
  • Configuration Status Accounting
  • Configuration Auditing
Configuration Control in SCM is responsible for managing changes to documents, codes, and other entities during the software development process. It includes processes for submitting, reviewing, approving, and implementing changes.