ENSF 461 MIDTERM COMPREHENSIVE STUDY GUIDE 2026
FULL QUESTIONS AND SOLUTIONS GRADED A+
● Requirements Engineering. Answer: Process of defining, documenting, and maintaining
software requirements
● Functional Requirements. Answer: Statements describing what a system must do
● Non-Functional Requirements. Answer: Constraints on system quality attributes such as
performance and security
● Use Case. Answer: Description of system interactions from a user's perspective to achieve
a goal
● Use Case Diagram. Answer: UML diagram showing actors, use cases, and their
relationships
● Actor. Answer: External entity interacting with the system in a use case
● Extend Relationship. Answer: Optional use case behavior that extends another under
specific conditions
● Include Relationship. Answer: Mandatory reuse of common behavior shared between
multiple use cases
● User Story. Answer: Agile requirement format stating who wants what and why
● Acceptance Criteria. Answer: Conditions a user story must meet to be considered
complete
● Backlog. Answer: Prioritized list of features and tasks in an agile project
● Sprint. Answer: Fixed-length iteration in Scrum typically lasting one to four weeks
● Scrum. Answer: Agile framework with defined roles, events, and artifacts
● Product Owner. Answer: Role responsible for maximizing product value and managing the
backlog
● Scrum Master. Answer: Role facilitating the Scrum process and removing impediments
, ● Velocity. Answer: Measure of work completed per sprint used for future planning
● Kanban. Answer: Agile method visualizing work flow to limit work in progress
● WIP Limit. Answer: Maximum number of items allowed in a Kanban workflow stage
● UML. Answer: Unified Modeling Language providing standard notations for software design
● Class Diagram. Answer: UML diagram showing classes, attributes, methods, and
relationships
● Sequence Diagram. Answer: UML diagram showing object interactions over time
● Activity Diagram. Answer: UML diagram showing workflow or business logic
● State Machine Diagram. Answer: UML diagram showing states and transitions of an
object
● Association. Answer: Relationship indicating objects interact or are connected
● Aggregation. Answer: Weak whole-part relationship where parts can exist independently
● Composition. Answer: Strong whole-part relationship where parts cannot exist without the
whole
● Inheritance. Answer: IS-A relationship where subclass inherits from superclass
● Multiplicity. Answer: Notation indicating how many instances participate in a relationship
● Interface. Answer: Contract specifying methods a class must implement
● Abstract Class. Answer: Class that cannot be instantiated and may contain abstract
methods
● Encapsulation. Answer: Hiding internal implementation details behind a well-defined
interface
● Polymorphism. Answer: Ability of different objects to respond to the same message
differently
● Cohesion. Answer: Degree to which elements within a module belong together; high is
preferred
● Coupling. Answer: Degree of interdependence between modules; low is preferred
FULL QUESTIONS AND SOLUTIONS GRADED A+
● Requirements Engineering. Answer: Process of defining, documenting, and maintaining
software requirements
● Functional Requirements. Answer: Statements describing what a system must do
● Non-Functional Requirements. Answer: Constraints on system quality attributes such as
performance and security
● Use Case. Answer: Description of system interactions from a user's perspective to achieve
a goal
● Use Case Diagram. Answer: UML diagram showing actors, use cases, and their
relationships
● Actor. Answer: External entity interacting with the system in a use case
● Extend Relationship. Answer: Optional use case behavior that extends another under
specific conditions
● Include Relationship. Answer: Mandatory reuse of common behavior shared between
multiple use cases
● User Story. Answer: Agile requirement format stating who wants what and why
● Acceptance Criteria. Answer: Conditions a user story must meet to be considered
complete
● Backlog. Answer: Prioritized list of features and tasks in an agile project
● Sprint. Answer: Fixed-length iteration in Scrum typically lasting one to four weeks
● Scrum. Answer: Agile framework with defined roles, events, and artifacts
● Product Owner. Answer: Role responsible for maximizing product value and managing the
backlog
● Scrum Master. Answer: Role facilitating the Scrum process and removing impediments
, ● Velocity. Answer: Measure of work completed per sprint used for future planning
● Kanban. Answer: Agile method visualizing work flow to limit work in progress
● WIP Limit. Answer: Maximum number of items allowed in a Kanban workflow stage
● UML. Answer: Unified Modeling Language providing standard notations for software design
● Class Diagram. Answer: UML diagram showing classes, attributes, methods, and
relationships
● Sequence Diagram. Answer: UML diagram showing object interactions over time
● Activity Diagram. Answer: UML diagram showing workflow or business logic
● State Machine Diagram. Answer: UML diagram showing states and transitions of an
object
● Association. Answer: Relationship indicating objects interact or are connected
● Aggregation. Answer: Weak whole-part relationship where parts can exist independently
● Composition. Answer: Strong whole-part relationship where parts cannot exist without the
whole
● Inheritance. Answer: IS-A relationship where subclass inherits from superclass
● Multiplicity. Answer: Notation indicating how many instances participate in a relationship
● Interface. Answer: Contract specifying methods a class must implement
● Abstract Class. Answer: Class that cannot be instantiated and may contain abstract
methods
● Encapsulation. Answer: Hiding internal implementation details behind a well-defined
interface
● Polymorphism. Answer: Ability of different objects to respond to the same message
differently
● Cohesion. Answer: Degree to which elements within a module belong together; high is
preferred
● Coupling. Answer: Degree of interdependence between modules; low is preferred