SOFTWARE ENGINEERING PRACTICE TESTS (WITH
ANSWERS)
✅ TEST 1
SECTION A: Short Answer (Answer in 2–4 lines)
1. Define Software Engineering and explain why it is considered a process.
2. Differentiate between Waterfall and Spiral models.
3. List any four software application domains with examples.
4. What is the role of abstraction in class-based modeling?
5. Define Use Case and give one example from a university registration system.
SECTION B: Scenario-Based Questions
1. Scenario: A student logs in to an academic system, selects a course, checks availability, and enrolls if
seats are available.
2. Draw the activity diagram for this process.
3. Scenario: In the MyBradley system, students register for classes, advisers approve them, and the
database updates schedules.
4. Create a Swimlane Diagram showing responsibilities of Students, Advisers, and Database.
5. Scenario: You’re designing a software system for a library. Identify 3 likely class objects, each with 2
attributes and 2 methods.
✅ TEST 1 ANSWERS
1. SE is the application of engineering to software development using a systematic process to ensure
quality and manageability.
2. Waterfall is linear with no iteration, Spiral is iterative with risk management and incremental
evolution.
3. Examples:
4. System software (OS)
5. Application software (MS Word)
6. Embedded software (Car systems)
7. AI software (Speech recognition)
8. Abstraction helps manage complexity by hiding implementation and focusing on essential object
behavior.
1
9. A Use Case is a description of user-system interaction. Example: "Register for Course" in a university
system.
10. [Diagram: Login -> Select Course -> Check Availability (Decision) -> Enroll or Show Error]
11. [Swimlane: Students - Initiate request, Adviser - Approve/Reject, Database - Update schedule] 8.
12. Book: title, author; checkout(), return()
13. Student: name, ID; borrowBook(), viewHistory()
14. Librarian: name, branch; addBook(), blockUser()
✅ TEST 2
SECTION A: Short Answer
1. List the 5 core activities in the Software Engineering process.
2. Explain how RAD differs from Incremental Model.
3. What is a class diagram and what elements does it include?
4. Describe the difference between data object and class object.
5. What is a use case scenario?
SECTION B: Scenario-Based Questions
1. Scenario: Design a use case diagram for a student interacting with the academic portal to view
results, pay fees, and print transcripts.
2. Scenario: A bank software system requires a client to login, choose account, withdraw money, and
get confirmation.
3. Develop the activity diagram for this scenario.
4. Scenario: Identify 2 possible use cases and associated actors for a hotel reservation system.
✅ TEST 2 ANSWERS
1. Communication, Planning, Modeling, Construction, Deployment
2. RAD is fast, tool-supported with parallel development; Incremental builds versions over time but
may not be as fast.
3. A class diagram shows classes, their attributes, methods, and relationships.
4. Data object has only data; class object adds behaviors (methods) to data.
5. A specific path in a use case representing one possible interaction flow.
6. [Actors: Student | Use Cases: View Results, Pay Fees, Print Transcript]
7. [Diagram: Login -> Select Account -> Enter Amount -> Confirm Withdrawal -> Show Receipt] 8.
8. Actor: Guest → Use Case: Make Reservation
9. Actor: Receptionist → Use Case: Modify Booking
2
✅ TEST 3
SECTION A: Short Answer
1. Name and describe the four pillars of object-oriented modeling.
2. What is the difference between Evolutionary and Prototyping Models?
3. What does a Swimlane Diagram show?
4. Why is stakeholder communication important in the SE process?
5. Provide two advantages of Agile development.
SECTION B: Scenario-Based Questions
1. Scenario: For an online shopping system, create a use case diagram showing a customer browsing
items, placing an order, and tracking it.
2. Scenario: A user registers an account, receives a confirmation email, and logs in to start shopping.
3. Create an activity diagram for this scenario.
4. Scenario: Give class objects for a Hospital System with at least 2 classes, 2 attributes, and 2 methods
per class.
✅ TEST 3 ANSWERS
1. Abstraction, Encapsulation, Inheritance, Polymorphism
2. Prototyping is fast and throwaway; Evolutionary improves the same system over time.
3. It shows activity flow while assigning responsibilities to actors.
4. Communication ensures requirements are accurate, reducing errors and increasing satisfaction.
5. Faster delivery, better customer collaboration
6. [Actor: Customer | Use Cases: Browse Items, Place Order, Track Order]
7. [Diagram: Register -> Send Email -> Confirm Email -> Login -> Start Shopping] 8.
8. Patient: name, age; bookAppointment(), viewReport()
9. Doctor: name, specialty; prescribeMedicine(), updatePatientRecord()