Font size
WorksheetsMidtermExam-SoftwareDesign-MakScie
Total questions: 100
Worksheet time: 50mins
A banking system project requires precise documentation and strict approval at each phase before moving forward. Which SDLC model is most appropriate?
Agile
Waterfall
Spiral
Prototype
Your team is building an AI-based chatbot. The client is unsure of exact requirements and wants to see frequent demos. Which SDLC model suits best?
Incremental
Waterfall
Agile Scrum
V-Model
In the Spiral model, what is the main focus of each cycle?
Testing
Risk analysis
Documentation
Maintenance
A medical device software project emphasizes validation after each phase to ensure compliance. Which model is suitable?
V-Model
Agile
Prototype
Incremental
The main drawback of Waterfall in dynamic projects is:
Too much testing
Lack of flexibility in requirement changes
No documentation
Too many iterations
A startup wants to release an app in phases: login feature first, payments later. Which model fits?
Incremental
Waterfall
Spiral
V-Model
Which SDLC phase defines “What to build” instead of “How to build”?
Design
Requirements gathering
Implementation
Testing
During SDLC maintenance, the main activity is:
Requirement analysis
Bug fixing and updates
Prototyping
Feasibility study
A project team uses sprints, backlogs, and daily standups. Which methodology is being applied?
RAD
Agile Scrum
Waterfall
V-Model
Which SDLC model is best for projects with high security and critical systems like defense?
Waterfall
V-Model
Spiral
Agile
RAD emphasizes:
Quick prototyping
Complete documentation
Formal approvals
Risk analysis
Which phase involves converting design into actual code?
Design phase
Implementation phase
Testing phase
Maintenance phase
A government tender project has rigid contracts and cannot change scope midway. Which SDLC is most suitable?
Waterfall
Agile
Spiral
Prototype
What is the key activity in SDLC testing phase?
Debugging
Verifying against requirements
Risk identification
Designing architecture
Which SDLC model reduces time-to-market with partial deliveries?
Incremental
Waterfall
Spiral
V-Model
A hospital management system must allow patients to book appointments online. This is a:
Non-functional requirement
Functional requirement
Constraint
Business rule
“The system should respond within 2 seconds for 95% of queries.” This is:
Functional requirement
Non-functional requirement
User story
Which of the following is NOT a functional requirement?
Login authentication
Generating reports
Encryption of data in transit
Uploading documents
Scalability is an example of:
Functional requirement
Non-functional requirement
Business logic
Use case
A mobile app must support both iOS and Android. This is a:
Platform requirement
Functional requirement
Business requirement
Non-functional requirement
“The system should allow the admin to deactivate users.” This is:
Functional
Non-functional
Constraint
Quality attribute
Reliability and availability requirements are categorized as:
Functional
Non-functional
User stories
Business processes
A system must comply with GDPR laws. This is:
Non-functional requirement
Functional requirement
Business process
“The system shall generate invoices in PDF format.” This is:
Functional
Non-functional
Design constraint
Performance requirement
Which requirement describes “how well” a system performs?
Functional
Non-functional
Business rule
Constraint
The requirement “system uptime must be 99.9%” is an example of:
Performance
Availability
Functional
Security
Which type of requirement specifies encryption, authentication, and authorization?
Functional
Security (non-functional)
Business
Process
“System must process 10,000 transactions per second.” This is:
Functional
Performance (non-functional)
Usability
Availability
The requirement “users must be able to reset their passwords” is:
Functional
Non-functional
Constraint
Which requirement type usually drives system architecture?
Functional
Non-functional
Business
Stakeholder
In a library management system, “Borrow Book” is connected to “Search Book” with an «include» relationship. What does this mean?
Borrow Book is optional
Search Book is always part of Borrow Book
Borrow Book cannot exist without Search Book
Search Book is independent
In an ATM system, “Withdraw Cash” extends “Authenticate User.” What does «extend» imply?
Authentication is optional
Withdrawal depends on successful authentication
Authentication is triggered only sometimes
Withdraw Cash is always performed
Who is typically represented as an actor in a use case diagram?
End users and external systems
Only end users
Only administrators
Classes
In an e-commerce system, “Process Payment” is a use case. Which actor is most likely associated?
Database
Customer
Payment Gateway
Both b and c
Which relationship is used when one use case always requires another?
(a)
A use case diagram helps primarily in:
Showing code flow
Capturing functional requirements
Modeling database tables
Describing non-functional requirements
In an online exam system, “Take Exam” generalizes “Practice Test” and “Final Exam.” What does this mean?
Take Exam includes both
Both are specialized forms of Take Exam
Both are optional
Practice Test depends on Final Exam
Which of the following is NOT represented in a use case diagram?
Actors
System boundary
Data flow between classes
Use cases
An airline system use case “Book Ticket” involves both “Customer” and “Agent” actors. What is this called?
Extend relationship
Multiple actors association
Inheritance of actors
Include relationship
The main purpose of a use case diagram is to:
Show sequence of operations
Represent functional interactions with external entities
Model system state changes
Capture class attributes
In a class diagram, which symbol indicates inheritance?
Solid line with arrowhead
Dotted line with open arrow
Solid line with hollow triangle
Dotted line with circle
A “Car” class inherits from “Vehicle.” Which relationship exists?
Composition
Aggregation
Generalization
Dependency
If “Department” contains “Professors” but professors can exist independently, this is:
Composition
Aggregation
Association
Dependency
In a banking system, “Account” class cannot exist without “Customer.” This is:
Aggregation
Composition
Generalization
Dependency
Multiplicity “1..*” between Customer and Orders means:
One customer can place many orders
One order belongs to many customers
Each order belongs to one customer only
Both a and c
A dotted line with arrow in class diagrams represents:
Dependency
Inheritance
Aggregation
Attributes in class diagrams represent:
Methods of a class
Data members of a class
Actors of the system
System boundaries
Methods are represented in class diagrams by:
Operations
Associations
Dependencies
States
If “Teacher” and “Course” are connected with a line, it means:
Association
Aggregation
Composition
Inheritance
In UML, visibility “-” before an attribute means:
Public
Private
Protected
Static
In a sequence diagram, vertical dashed lines represent:
Messages
Lifelines
Actors
Use cases
In a sequence diagram, synchronous messages are drawn as:
Solid line with filled arrow
Dotted line with open arrow
Solid line with open arrow
The activation bar in sequence diagrams represents:
Lifeline end
Execution of an operation
System state
Looping
Which diagram best represents order of method calls?
Class diagram
Sequence diagram
Activity diagram
State diagram
A sequence diagram for ATM withdrawal shows “ATM → Bank: Validate PIN.” This means:
ATM validates
Bank validates
ATM and Bank validate together
PIN is ignored
In a sequence diagram, return messages are shown by:
Dotted lines
Solid lines
Triangular arrows
None
Which symbol is used for loops in a sequence diagram?
alt
loop
par
ref
Which UML element is NOT in sequence diagrams?
Lifelines
Activation boxes
Use cases
Sequence diagrams are most useful for:
Database schema
Describing runtime interactions
Defining system requirements
Showing inheritance
An online shopping sequence: Customer → System: Add to Cart → System → Payment Gateway. This depicts:
Collaboration between classes
Function decomposition
State transitions
Aggregation
In an activity diagram, a filled circle represents:
Decision point
Start of workflow
End of workflow
Synchronization bar
In an online shopping activity diagram, a diamond shape is used to:
Merge actions
Represent decision branching
Synchronize activities
Show end state
Which symbol represents concurrent activities?
Diamond
Fork/join bar
State box
Lifeline
Which of the following cannot be shown in activity diagrams?
a) Parallel flows
b) Object flows
c) Method calls order
Swimlanes in activity diagrams indicate:
Order of messages
Responsibility of actors/departments
Data storage
Return paths
In a railway booking activity diagram, “Confirm Ticket” comes after “Payment Successful.” This is:
Parallel flow
Sequential flow
State transition
Inheritance
The final state in activity diagrams is represented by:
Open circle
Filled circle with outer ring
Diamond
Rectangle
An activity diagram for login has two decisions: (valid credentials → success; invalid → retry). What is this?
Fork
Merge/decision
Join
State
Which diagram is most useful for modeling workflows?
Activity diagram
Sequence diagram
Class diagram
Use case diagram
Activity diagrams are best used in:
Modeling dynamic behavior of workflows
Defining static structure
In a state diagram, transitions are triggered by:
Actors
Events
Classes
Attributes
In an order system, states are: “Placed → Paid → Shipped.” These represent:
Workflow activities
Object lifecycle states
User roles
Functional requirements
Which symbol denotes the start of a state diagram?
Diamond
Filled circle
Hollow circle
Rectangle
The main purpose of state diagrams is:
Represent functional requirements
Show behavior of an object over time
Show class relationships
Model workflows
In an ATM system, states include: “Idle,” “Authenticating,” “Processing,” “Dispensing Cash.” These represent:
Activities
States in object lifecycle
Class attributes
Use cases
Transition arrows in state diagrams indicate:
(a)
Guard conditions in state diagrams are used to:
Decide transitions based on conditions
End workflows
Represent parallelism
Identify classes
Which is NOT represented in state diagrams?
States
Transitions
Activities
Associations between classes
In an elevator system, state “Moving Up” changes to “Idle” when destination is reached. This is:
Composition
Transition
Inheritance
Dependency
State diagrams are most useful when modeling:
User stories
Object lifecycle
Database schema
Business rules
The Single Responsibility Principle (SRP) means:
A class should have one reason to change
A class should handle multiple functionalities
Classes should be highly coupled
Inheritance should be avoided
In an HR system, a class “Employee” handles payroll, attendance, and reporting. This violates:
Single Responsibility Principle
Open/Closed Principle
Inheritance Principle
Encapsulation Principle
The Open/Closed Principle (OCP) states:
Software entities should be closed for extension but open for modification
Open for extension but closed for modification
Always closed for modification
Always open for changes
Adding new payment methods (PayPal, GCash) without modifying existing code but extending classes follows:
OCP
SRP
ISP
DIP
The Liskov Substitution Principle (LSP) ensures:
Derived classes must be substitutable for base classes
Derived classes must override all methods
Base classes cannot inherit
Subclasses should not extend base functionality
If “Rectangle” and “Square” violate LSP due to different area logic, what’s the issue?
ISP
SRP
LSP
OCP
The Interface Segregation Principle (ISP) states:
Clients should depend on large interfaces
Clients should not be forced to depend on methods they don’t use
Interfaces must always be abstract
Interfaces must be implemented fully
A “Printer” interface with methods print(), scan(), fax() is problematic for basic printers. This violates:
SRP
OCP
ISP
DIP
The Dependency Inversion Principle (DIP) promotes:
High-level modules depend on low-level modules
Low-level modules depend on high-level modules
Depend on abstractions, not concrete implementations
Avoid inheritance
In an order system, if OrderService depends directly on MySQLDatabase, this violates:
DIP
LSP
ISP
SRP
Which principle helps reduce tight coupling?
SRP
DIP
ISP
OCP
Which principle ensures system flexibility for new features?
SRP
OCP
ISP
DIP
A class that sends email and SMS notifications separately instead of combining them follows:
(a)
If subclasses change base class behavior unexpectedly, which principle is broken?
LSP
ISP
OCP
SRP
Large “God classes” that do everything break:
SRP
OCP
DIP
ISP
Splitting interfaces into smaller, role-specific ones demonstrates:
DIP
ISP
OCP
LSP
Which principle is directly supported by Dependency Injection?
SRP
OCP
DIP
ISP
Designing classes that can be easily tested by replacing dependencies with mocks is an application of:
DIP
OCP
SRP
ISP
Extending a logging system to support new formats without altering existing logging class is:
OCP
SRP
ISP
DIP
Collectively, SOLID principles mainly focus on:
Performance optimization
Maintainable and scalable design
Database efficiency
Faster execution
