Software Engineering 3 - words/knowledge needed for 11-16 of the "Multible choice" Flashcards

1
Q

Shortly explain Recovery testing

A

Recovery testing:

Recovery testing evaluates how well a system can recover from abnormal situations such as crashes, hardware failures, or data corruption.
It confronts the program with failure scenarios to ensure it can restore itself to normal operations or minimize data loss.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Shortly explain Security testing

A

Security testing:

Focuses on assessing the system’s ability to protect against unauthorized access, breaches, or vulnerabilities.
It ensures data confidentiality, integrity, and availability.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Shortly explain Stress testing

A

Stress testing:

Involves testing the system under extreme conditions (e.g., heavy loads, limited resources) to see how it behaves beyond its normal capacity.
While this confronts the system with challenging situations, it is not explicitly about abnormal conditions but rather high loads.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Shortly explain Performance testing

A

Performance testing:

Measures the speed, responsiveness, and stability of the software under various loads.
It focuses on meeting performance requirements rather than handling failures.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Shortly explain Usage testing

A

Usage testing:

Evaluates the software by simulating real-world user scenarios to ensure the application works as expected under normal use.
It does not directly address abnormal conditions.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Explain the 4 key elements of product backlog

A

Key Elements of a Product Backlog:

  • Description
    Clearly defines what each item is.
    Includes essential details from the user’s perspective to guide the Development Team.
  • Value
    Indicates how much business or user value the item provides.
    Helps prioritize items based on their impact.
  • Estimate
    Reflects the effort required by the Development Team to complete each item.
    Used for planning and resource allocation.
  • Order (Priority)
    Arranges items in a stacked rank from highest to lowest priority.
    Ensures the team focuses on the most important items first.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Explain User stories

A

User stories are short, simple descriptions of a deliverable told
from the perspective of the user.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Explain Epics

A

Epics are a collection of user stories.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Explain the “I” in I.N.V.E.S.T.

A
  • Independent: The story’s completion is not dependent on another
    story.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Explain the “N” in I.N.V.E.S.T.

A
  • Negotiable: There is room for discussion about this item.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Explain the “V” in I.N.V.E.S.T.

A
  • Valuable: Completing the user story has to deliver value.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Explain the “E” in I.N.V.E.S.T.

A
  • Estimable: The Definition of Done must be clear so that the team can give each user story an estimate.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Explain the “S” in I.N.V.E.S.T.

A
  • Small: Each user story needs to be able to fit within a planned Sprint.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Explain the “T” in I.N.V.E.S.T.

A
  • Testable: A test can be conducted to check that it meets the criteria.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Mention the 4 key processes of Product Backlog

A

Key processes of Product Backlog:
*Description: Each item should have a clear description.
*Value: Items should reflect their business value.
*Prioritization: Items are ordered based on importance.
*Estimation: Effort for each item is estimated.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Explain Backlog Refinement

A

Backlog Refinement is the process of updating and
organizing the Product Backlog.

17
Q

What are the 5 Goals of Backlog Refinement?

A

Goals of Backlog Refinement:
*Ensure relevant items are included.
*Remove outdated or completed items.
*Prioritize items by value and effort.
*Define clear acceptance criteria for high-priority items.
*Provide effort estimates to aid planning.

18
Q

Mention 5 Scrum benefits

A

▪ The product is broken down into a set of manageable and
understandable chunks.
▪ Unstable requirements do not hold up progress.
▪ The whole team have visibility of everything and consequently team communication is improved.
▪ Customers see on-time delivery of increments and gain
feedback on how the product works.
▪ Trust between customers and developers is established and a positive culture is created in which everyone expects the project to succeed.

19
Q

Explain Entity-Relationship Diagram (ERD) (in UML:S)

A

Entity-Relationship Diagram (ERD):
- ERDs are used to model the data relationships in a system.
- It shows entities (objects or tables), their attributes (properties), and relationships (connections) between entities.
- Common in database design to visualize how data will be stored and linked.
- Example: A “Customer” entity relates to “Orders” via a one-to-many relationship.

20
Q

Explain Data Flow Diagram (DFD) (in UML:S)

A

Data Flow Diagram (DFD):
- DFDs represent the flow of data through a system.
- It shows processes (functions), data stores (files, databases), data flows (arrows), and external entities (users, systems).
- Used to visualize how data is input, processed, and output in a system.
- Example: Data flows from “User” → “Login Process” → “Database.”

21
Q

Explain State Diagram (in UML:S)

A

State Diagram:
- A State Diagram shows how a system or object transitions between different states based on internal or external events.
- States represent conditions (e.g., “Idle,” “Active,” “Error”).
- Transitions are triggered by events or actions (e.g., “User Logs In”).
- Example: A vending machine transitions from “Waiting” → “Dispensing” → “Idle.”

22
Q

Explain Database Schema (in UML:S)

A

Database Schema:
- A blueprint of a database that defines its structure.
It includes tables, fields (columns), data types, primary keys, foreign keys, and constraints.
- Represents how data is stored and organized for efficient access.
- Example: A table “Students” with fields: ID (PK), Name, and Age.

23
Q

What is the main focus of Entity-Relationship Diagram (ERD)? (in UML:S)

A

Relationships between entities

24
Q

What is the main focus of Data Flow Diagram (DFD)? (in UML:S)

A

The flow of data.

25
Q

What is the main focus State Diagrams? (in UML:S)

A

State changes due to events.

26
Q

What is the main focus Database Schema (in UML:S)

A

The physical structure of stored data.

27
Q

Explain Specification-Based Testing / Black Box Testing

A

Specification-Based Testing / Black Box Testing:
- Focuses on testing functionality of the software without knowledge of its internal code.
- Test cases are derived from specifications, inputs, and expected outputs.
- Example: Testing if a login system works correctly based on valid/invalid credentials.

28
Q

Explain Validation Testing

A

Validation Testing:
- Ensures the software meets user requirements and expectations.
- Answers the question: “Are we building the right product?”
- Typically performed near the end of the development lifecycle.

29
Q

Explain Verification Testing

A

Verification Testing:
- Confirms the software meets design and technical specifications.
- Answers the question: “Are we building the product correctly?”
- Involves code reviews, inspections, and white-box testing.

30
Q

Explain Unit Testing

A

Unit Testing:
- Tests individual components or units of the software in isolation.
- Ensures each function or module works as expected.
- Typically performed by developers using white-box techniques.

31
Q

Stress Testing

A

Stress Testing:
- Evaluates the software’s behavior under extreme conditions (e.g., high load or heavy data).
- Checks system stability, reliability, and performance limits.
- Example: Testing how a website performs under heavy traffic.

32
Q

Coupling is a Metrics for good code design, explain it

A

Coupling - Measures the level of dependency between modules. Low coupling is desirable for maintainability.

33
Q

Primitiveness is a Metrics for good code design, explain it

A

Primitiveness - Refers to designing functions or modules to perform a single, well-defined task.

34
Q

Sufficiency is a Metrics for good code design, explain it

A

Sufficiency - Ensures the module has all the necessary elements to perform its responsibilities.

35
Q

Completeness is a Metrics for good code design, explain it

A

Completeness - Ensures the code satisfies all required functionality and design specifications.