Font size
WorksheetsSQA final
Total questions: 87
Worksheet time: 44mins
What are the consequences of software failure?
a) Money is lost
b) People's lives being threatened
c) Business operations are interrupted
d) All of the above
Which activities is not a part of the main activities of software engineering?
a) Software specification
b) Software development
c) Software validation
d) Software evaluation
What is a software process model?
a) A set of related activities in software engineering
b) A framework for devising software processes
c) A specific order for software process activities
d) All of the above
Which does not cause software failure?
a) Complex, changing requirements
b) Limited budget, time, human resources
c) Lack of quality assurance
d) All software is bound to fail eventually
What defines large-scale projects?
a) Projects involving coordination between stakeholder services and business units
b) Projects requiring negotiation and execution of transactions
c) Projects that are small in scale and do not involve coordination with stakeholders
d) Projects that involve a single transaction
What is considered software failure?
a) Not satisfying customer's needs
b) Containing bugs
c) Late delivery and overbudget
d) All of the above
Which factor can cause software failure?
a) Complex, changing requirements
b) Limited budget, time, and human resources
c) Lack of quality assurance
d) Lack of stakeholder coordination
What are the consequences of software failure?
a) Financial loss
b) Threat to people's lives
c) Interruption of business operations
d) All of the above
Which software process model describes a specific order of activities?
Waterfall
Incremental
Iterative
All of the above
Which software process model emphasizes adaptability and flexibility?
a) Waterfall
b) Agile
c) Prototyping
d) Formal methods
What is the purpose of software validation?
a) To check if the software satisfies customer needs
b) To ensure the software is bug-free
c) To verify if the software meets quality standards
d) All of the above
What activity involves modifying software based on changing customer and market requirements?
a) Software specification
b) Software development
c) Software evolution
d) Software validation
Which activities are part of the software process?
a) Requirement analysis
b) Design
c) Programming
d) All of the above
Choose the correct statement about Software Quality Assurance (SQA):
a) SQA is only applicable during the testing stage.
b) SQA is not necessary for maintaining software quality.
c) SQA is an umbrella activity applicable in every stage of a software process.
d) SQA is only practiced by testers and administrators.
Which role can practice SQA?
a) Manager
b) Programmer
c) Tester
d) All roles (manager, analyst, programmer, tester, administrator...)
Test-Driven Development (TDD) is based on the principle of:
a) Design first, then coding.
b) Testing first, then coding.
c) Documentation first, then coding.
d) Coding first, then testing.
Choose the correct statement about software projects:
a) Software projects never face delays or changes in requirements.
b) Overrun on time/budget is a common occurrence in software projects.
c) Software projects always deliver the required functionality and quality.
d) Under delivery of functionality or quality never happens in software projects.
Classic mistakes in software projects include:
a) People-related mistakes
b) Process-related mistakes
c) Product-related mistakes
d) All of the above
Software Quality Assurance (SQA) planning is an element of:
a) Software process
b) Risk identification & reduction
c) SE standards
d) Review activities
What is the main purpose of the Review activities in Software Quality Assurance (SQA)?
a) Discovering defects through testing
b) Assessing the progress of the software development process
c) Measuring the quality of the software
c) Measuring the quality of the software
Which software engineering methodology does Test-Driven Development (TDD) originate from?
a) Agile
b) Waterfall
c) Extreme Programming (XP)
d) Prototyping
The elements of Software Quality Assurance (SQA) do not include:
a) Software process
b) SQA planning
c) Risk identification & reduction
d) Software validation
What are some typical umbrella activities in software development?
a) Project planning and execution
b) Risk management
c) Quality assurance
d) All of the above
What defines software quality?
a) Measurable values
b) Developer's capability
c) Product's complexity
d) All of the above
What is the purpose of a Software Quality Assurance (SQA) plan?
a) To create a road map for software development
b) To define the purpose and scope of SQA
c) To outline software engineering work products
d) To specify configuration management procedures
What is the difference between verification and validation?
a) Verification ensures compliance with software requirements, while validation determines if previous requirements were fulfilled.
b) Verification evaluates software at the end of the development process, while validation determines if requirements were met during each stage.
c) Verification checks if products meet established requirements, while validation evaluates software compliance at the end of the development process.
d) Verification and validation are the same concept in software development.
What is the purpose of Process Quality Assurance?
a) To build a software process based on a process model
b) To monitor the correct implementation of the software process
c) To address process-related issues through feedback
d) All of the above
What activities are part of Requirements Quality Assurance?
a) Eliciting requirements
b) Writing requirements documents
c) Reviewing requirements
d) All of the above
Which activities are involved in Software Modeling QA?
a) Choosing modeling techniques
b) Accepting or rejecting models
c) Making changes to models
d) All of the above
What are some deliverables of Software Implementation QA?
a) Source code
b) GUI
c) Database
d) All of the above
What is the use of a use case in software development?
a) It depicts the software or system from the end user's point of view.
b) It outlines the tasks and interactions in the software.
c) It provides a narrative text or user story.
d) All of the above
What elements are typically included in a template-based use case?
a) ID, name, stakeholders
b) Actor, trigger, pre-conditions
c) Post-conditions, minimal guarantee
d) All of the above
What are the elements of Software Quality Assurance (SQA)?
a) Security management
b) Safety
c) Risk management
d) All of the above
What is one of the tasks of SQA?
a) Prepare an SQA plan for a project
b) Participate in software development process
c) Record and report deviations from the software process
d) All of the above
What is one of the goals of SQA?
a) Requirements quality
b) Design quality
c) Code quality
d) All of the above
What are formal approaches to SQA suitable for?
a) Algorithm-heavy programs
b) User interface design
c) Performance optimization
d) All types of software
What are some challenges with requirements gathering?
a) Customers cannot describe the software
b) Customers propose problematic functional descriptions
c) Customers talk a lot but their ideas don't add up
d) All of the above
What is one of the tasks in requirements elicitation?
a) Determining system requirements from stakeholders
b) Creating wireframes and mock-upsc) Writing code based on requirements
c) Writing code based on requirements
d) Conducting market studies
What is one of the tasks in requirements elicitation?
a) Determining system requirements from stakeholders
b) Creating wireframes and mock-upsc) Writing code based on requirements
c) Writing code based on requirements
d) Conducting market studies
What is the difference between functional and non-functional requirements?
a) Functional requirements describe explicit behaviors, while non-functional requirements are constraints on services.
b) Functional requirements are constraints, while non-functional requirements describe behaviors.
c) Functional requirements apply to the whole software system, while non-functional requirements are specific and measurable.
d) Functional requirements and non-functional requirements are the same thing.
What are some methods of specifying requirements?
a) Data-flow diagrams
b) E-R models
c) Use cases
d) All of the above
What type of diagram is close to real-life business operations?
a) Data-flow diagrams
b) E-R diagrams
c) Use-case diagrams
d) Activity diagrams
What can E-R diagrams be used for?
a) Modeling data and relationships between data
b) Specifying user interactions
c) Describing conditional control flow
d) Creating prototypes
What do use-case diagrams summarize?
a) System requirements
b) User interactions
c) UI design
d) Wireframes
What can activity diagrams describe?
a) Actions as part of activity flows
b) System architecture
c) Database design
d) Prototypes
What is a wireframe?
a) A rough layout of a website's elements
b) A detailed UI design
c) An interactive prototype
d) A database model
What is the difference between a mock-up and a prototype?
a) A mock-up is a draft version of the software's UI, while a prototype is an early version of the software that shows the UI design and is interactive.
b) A mock-up is an early version of the software that shows the UI design and is interactive, while a prototype is a draft version of the software's UI.
c) A mock-up is a detailed and finished version of the software's UI, while a prototype is a rough layout of the website's elements.
d) A mock-up and a prototype refer to the same thing in the context of software development.
What is the purpose of a mock-up?
a) To present a draft version of the software's UI
b) To create an interactive prototype
c) To model data and relationships between data
d) To summarize system requirements
What is the purpose of a prototype?
a) To create a detailed UI designb) To demonstrate the functionality of the software
b) To demonstrate the functionality of the software
c) To model the database structure
d) To specify system requirements
What is evolutionary prototyping?
a) A process where a prototype is continually updated based on customer feedback
b) A method to verify software compliance with requirements
c) A technique to gather user feedback on the UI design
d) A process to finalize the software architecture
What are some tasks in capturing requirements?a) Talk to the customer to understand their concepts and viewpoints
a) Talk to the customer to understand their concepts and viewpoints
b) Use critical thinking to find mistakes in customer's requirements
c) Ask the customer for examples to derive requirements
d) All of the above
What is one of the methods used to specify requirements?
a) Data-flow diagrams
b) E-R models
c) Use cases
d) All of the above
What is the purpose of architectural design in software development?
a) To determine the project budget
b) To design the user interface
c) To identify the main structural components
d) To conduct performance testing
Which type of modeling focuses on the interactions between the user and the system?
a) Context modeling
b) Interaction modeling
c) Structural modeling
d) Behavioral modeling
What is the main output of architectural design?
a) Code documentation
b) System requirements
c) Architectural model
d) Test cases
Which architectural pattern separates the system data from its presentation and interaction?
a) Layered architecture
b) Repository architecture
c) Call-and-Return architecture
d) Model-View-Controller (MVC) pattern
What is the primary goal of the Model-View-Controller (MVC) pattern?
a) To optimize system performance
b) To ensure data security
c) To separate concerns and enhance maintainability
d) To simplify user interaction
What is the role of the View in the Model-View-Controller (MVC) pattern?
a) Manages system data and operations
b) Handles user interactions and input validation
c) Defines and manages the presentation of data
d) Facilitates communication between components
Which architectural pattern uses a layered approach to organize the system components?
a) Layered architecture
b) Repository architecture
c) Call-and-Return architecture
d) Pipe and filter architecture
What is the benefit of using architectural patterns in software development?a) Faster development time
a) Faster development time
b) Reduced maintenance efforts
c) Improved user experience
d) Design consistency and reusability
What type of architecture is suitable for systems with large amounts of shared data?
a) Layered architecture
b) Repository architecture
c) Call-and-Return architecture
d) Pipe and filter architecture
Which type of modeling describes the components of the system and their relationships?
a) Context modeling
b) Interaction modeling
c) Structural modeling
d) Behavioral modeling
What is the main purpose of context modeling in software development?
a) To define the system requirements
b) To identify potential risks
c) To establish communication channels
d) To determine the system boundary
Which modeling technique is commonly used to represent the system interactions and flows?
a) Data-flow diagrams
b) E-R models
c) Use case diagrams
d) Activity diagrams
What is the primary focus of behavioral modeling in software development?
a) Defining system components
b) Analyzing system performance
c) Modeling system behavior and responses
d) Identifying user requirements
Which architectural pattern involves sequential transformations of inputs to produce outputs?
a) Layered architectureb) Repository architecture
b) Repository architecture
c) Call-and-Return architectured) Pipe and filter architecture
d) Pipe and filter architecture
What is the purpose of the Pipe and Filter architecture?
a) To optimize system performance
b) To simplify user interactions
c) To process sequential transformations of inputs
d) To enhance data security
Which type of modeling focuses on the system's response to triggers from the environment?
a) Context modeling
b) Interaction modeling
c) Structural modeling
d) Behavioral modeling
What is the key characteristic of the Call-and-Return architecture?
a) Easy modification and scaling of the program structure
b) Centralized data repository shared among sub-systems
c) Distribution of components across multiple machines over a network
d) Separation of presentation and interaction from system data
Which modeling technique is commonly used to represent the relationships between data?
a) Data-flow diagrams
b) E-R models
c) Use case diagrams
d) Activity diagrams
What is the main focus of structural modeling in software development?
a) Defining system components
b) Analyzing system performance
c) Modeling system behavior and responses
d) Identifying user requirements
Which type of modeling is used to determine the system boundary and scope?
a) Context modeling
b) Interaction modeling
c) Structural modeling
d) Behavioral modeling
Which interaction method involves entering specific commands?
a) Command-line Interaction
b) Menu Interaction
c) Form Interaction
d) Icon-based Interaction
Which interaction method involves choosing software features from a menu?
a) Command-line Interaction
b) Menu Interaction
c) Form Interaction
d) Icon-based Interaction
Which interaction method involves filling in the blanks while working with the system?
a) Command-line Interaction
b) Menu Interaction
c) Form Interaction
d) Icon-based Interaction
Which interaction method uses graphic symbols to represent processing options?
a) Command-line Interaction
b) Menu Interaction
c) Form Interaction
d) Icon-based Interaction
Which interface element includes buttons, text fields, checkboxes, and dropdown lists?
a) Input Controls
b) Navigational Components
c) Informational Components
d) Containers
Which interface element includes breadcrumb, pagination, nav bars, menus, and icons?
a) Input Controls
b) Navigational Components
c) Informational Components
d) Containers
Which interface element includes texts, labels, tooltips, icons, and message boxes?
a) Input Controls
b) Navigational Components
c) Informational Components
d) Containers
Which interface element includes windows, boxes, and modals?
a) Input Controls
b) Navigational Components
c) Informational Components
d) Containers
Which interaction method involves talking or typing in natural language?
a) Command-line Interaction
b) Menu Interaction
c) Form Interaction
d) Natural Language Interaction
Which interaction method is quickly understood by most users and adds more meaning to the software UI?
a) Command-line Interaction
b) Menu Interaction
c) Form Interaction
d) Icon-based Interaction
Which interaction method uses a single-level or multiple-level menu?
a) Command-line Interaction
b) Menu Interaction
c) Form Interaction
d) Icon-based Interaction
Which interaction method involves entering specific commands to perform tasks?
a) Command-line Interaction
b) Menu Interaction
c) Form Interaction
d) Icon-based Interaction
Which interface element includes buttons, text fields, checkboxes, and dropdown lists?
a) Input Controls
b) Navigational Components
c) Informational Components
d) Containers
Which interface element includes breadcrumb, pagination, nav bars, menus, and icons?
a) Input Controls
b) Navigational Components
c) Informational Components
d) Containers
Which interface element includes texts, labels, tooltips, icons, and message boxes?
a) Input Controls
b) Navigational Components
c) Informational Components
d) Containers
